diff --git a/data/glade/message_window.glade b/data/glade/message_window.glade
index ca13daf31..0a18b7587 100644
--- a/data/glade/message_window.glade
+++ b/data/glade/message_window.glade
@@ -34,7 +34,7 @@
True
5
- None
+ gtk-missing-image
False
@@ -96,7 +96,6 @@
60
- True
True
3
GTK_POLICY_AUTOMATIC
@@ -116,9 +115,11 @@
GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
True
gtk-dialog-authentication
+ 1
False
+ 2
@@ -152,168 +153,212 @@
True
-
+
True
- 1
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ Show a list of emoticons
+ GTK_RELIEF_NONE
+ False
+ 0
+
+
+ True
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ gtk-missing-image
+ 1
+
+
+
+ False
+
-
+
True
- 3
- 6
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+
+
+ False
+ 1
+
+
+
+
+ True
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ Send a file
+ GTK_RELIEF_NONE
+ False
+ 0
-
+
True
- True
- Click to insert an emoticon (Alt+M)
- 0
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ gtk-save
+ 1
+
+
+
+
+ False
+ 2
+
+
+
+
+ True
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ Invite contacts to conversation
+ GTK_RELIEF_NONE
+ False
+ 0
+
+
+ True
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ gtk-missing-image
+ 1
+
+
+
+
+ False
+ 3
+
+
+
+
+ True
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ Show contact information
+ GTK_RELIEF_NONE
+ False
+ 0
+
+
+ True
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ gtk-info
+ 2
+
+
+
+
+ False
+ 4
+
+
+
+
+ True
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ Browse history
+ GTK_RELIEF_NONE
+ False
+ 0
+
+
+ True
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ gtk-justify-fill
+ 1
+
+
+
+
+ False
+ 5
+
+
+
+
+ True
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+
+
+ False
+ 6
+
+
+
+
+ True
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ Show a menu of advanced functions
+ GTK_RELIEF_NONE
+ 0
+
+
+ True
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ gtk-execute
+ 1
+
+
+
+
+ False
+ 7
+
+
+
+
+ True
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+
+
+
+
+
+ 8
+
+
+
+
+ True
+ True
+ 0
+
+
+ True
+ 0
+ 0
-
+
True
+ 2
-
+
True
- 2
- None
-
-
-
-
- True
- GTK_ARROW_DOWN
+ gtk-jump-to
+ 2
+ False
+ False
+
+
+
+
+ True
+ _Send
+ True
+
+
+ False
+ False
1
-
- False
- False
-
-
-
-
- True
- True
- 0
-
-
- True
- 0
- 0
-
-
- True
- 2
-
-
- True
- gtk-execute
-
-
- False
- False
-
-
-
-
- True
- _Actions
- True
-
-
- False
- False
- 1
-
-
-
-
- True
- GTK_ARROW_DOWN
-
-
- False
- False
- 2
-
-
-
-
-
-
-
-
- False
- False
- 1
-
-
-
-
- True
-
-
- False
- False
- 2
-
-
-
-
- True
- True
- 0
-
-
- True
- 0
- 0
-
-
- True
- 2
-
-
- True
- gtk-jump-to
-
-
- False
- False
-
-
-
-
- True
- _Send
- True
-
-
- False
- False
- 1
-
-
-
-
-
-
-
-
- False
- False
- 3
-
False
- 1
+ 9
@@ -335,7 +380,7 @@
True
- None
+ gtk-missing-image
False
@@ -403,7 +448,7 @@
True
- None
+ gtk-missing-image
False
@@ -551,7 +596,7 @@
True
2
- None
+ gtk-missing-image
@@ -714,7 +759,7 @@
True
- None
+ gtk-missing-image
False
diff --git a/src/chat_control.py b/src/chat_control.py
index 1989fb20f..880daa234 100644
--- a/src/chat_control.py
+++ b/src/chat_control.py
@@ -137,6 +137,31 @@ class ChatControlBase(MessageControl):
resource = None):
MessageControl.__init__(self, type_id, parent_win, widget_name,
contact, acct, resource = resource);
+
+ widget = self.xml.get_widget('contact_information_button')
+ # FIXME: Required as it's not in GC yet
+ if widget != None:
+ id = widget.connect('clicked', self._on_contact_information_menuitem_activate)
+ self.handlers[id] = widget
+
+ widget = self.xml.get_widget('history_button')
+ # FIXME: Required as it's not in GC yet
+ if widget != None:
+ id = widget.connect('clicked', self._on_history_menuitem_activate)
+ self.handlers[id] = widget
+
+ widget = self.xml.get_widget('send_file_button')
+ # FIXME: Required as it's not in GC yet
+ if widget != None:
+ id = widget.connect('clicked', self._on_send_file_menuitem_activate)
+ self.handlers[id] = widget
+
+ widget = self.xml.get_widget('convert_to_gc_button')
+ # FIXME: Required as it's not in GC yet
+ if widget != None:
+ id = widget.connect('clicked', self._on_convert_to_gc_menuitem_activate)
+ self.handlers[id] = widget
+
# when/if we do XHTML we will put formatting buttons back
widget = self.xml.get_widget('emoticons_button')
id = widget.connect('clicked', self.on_emoticons_button_clicked)
@@ -1032,6 +1057,10 @@ class ChatControl(ChatControlBase):
# Add lock image to show chat encryption
self.lock_image = self.xml.get_widget('lock_image')
self.lock_tooltip = gtk.Tooltips()
+
+ # Convert to GC icon
+ img = self.xml.get_widget('convert_to_gc_button_image')
+ img.set_from_pixbuf(gtkgui_helpers.load_icon('muc_active').get_pixbuf())
# keep timeout id and window obj for possible big avatar
# it is on enter-notify and leave-notify so no need to be per jid