Index: chatwindow.tcl
===================================================================
--- chatwindow.tcl	(revision 7056)
+++ chatwindow.tcl	(working copy)
@@ -2201,13 +2201,23 @@
 	proc webcambuttonAction { w } {
 		if {[::config::getKey webcamDevice] != ""} {
 			::amsn::ShowChatList \"[trans sendwebcaminvite]\" $w ::MSNCAM::SendInviteQueue
-
 		} else {
-			::CAMGUI::WebcamWizard
+			if {[OnMac]} {
+				# On mac webcamDevice always returns 0. So we need to check manually if the grabber is open. If the grabber isn't open then we create it.
+				# The behaviour of the grabber window opening without the user configuring the cam first is default for most OS X applications, and a lot of users have requested this.
+				if {[winfo exists .grabber]} {
+					::amsn::ShowChatList \"[trans sendwebcaminvite]\" $w ::MSNCAM::SendInviteQueue
+				} else {
+					::CAMGUI::CreateGrabberWindowMac
+					::amsn::ShowChatList \"[trans sendwebcaminvite]\" $w ::MSNCAM::SendInviteQueue
+				}
+			} else {
+				::CAMGUI::WebcamWizard
+			}
 		}
 	}		
 	proc SetWebcamText {} {
-		if {[::config::getKey webcamDevice] != ""} {
+		if {[::config::getKey webcamDevice] != "" || [OnMac]} {
 			return "[trans sendwebcaminvite]"
 
 		} else {
Index: msncam.tcl
===================================================================
--- msncam.tcl	(revision 7056)
+++ msncam.tcl	(working copy)
@@ -1975,6 +1975,8 @@
 			spinbox $w.zoom -from 1 -to 5 -increment 0.5 -width 2 -command "catch {$w.seq configure -zoom %s}"
 			pack $w.zoomtext
 			pack $w.zoom
+			
+			wm title $w "[trans webcam] - [::config::getKey login]"
 		} else {
 			destroy $w
 			#If it's not possible to create the video frame, show the error
