diff --git a/plugins/gtkgui/config.py b/plugins/gtkgui/config.py
index e70014fbe133cd28725be11ec5f4d11a612d1376..9c9970ab75f232da96eda0fce9c655041839d492 100644
--- a/plugins/gtkgui/config.py
+++ b/plugins/gtkgui/config.py
@@ -326,10 +326,14 @@ class Preferences_window:
 
 	def on_use_emoticons_checkbutton_toggled(self, widget):
 		self.on_checkbutton_toggled(widget, 'useemoticons', None, \
-			self.xml.get_widget('add_remove_emoticons_button'))
+			[self.xml.get_widget('add_remove_emoticons_button')])
 	
 	def on_add_remove_emoticons_button_clicked(self, widget):
-		Add_remove_emoticons_window(self.plugin)
+		window = self.plugin.windows['add_remove_emoticons_window'].window
+		if window.get_property('visible'):
+			window.present()
+		else:
+			window.show_all()
 
 	def on_auto_popup_checkbutton_toggled(self, widget):
 		self.on_checkbutton_toggled(widget, 'autopopup', None,\
@@ -341,6 +345,10 @@ class Preferences_window:
 	def on_ignore_events_from_unknown_contacts_checkbutton_toggled(self, widget):
 		self.on_checkbutton_toggled(widget, 'ignore_unknown_contacts')
 
+	def on_play_sounds_checkbutton_toggled(self, widget):
+		self.on_checkbutton_toggled(widget, 'ignore_unknown_contacts')
+		
+	
 	def on_soundplayer_entry_changed(self, widget):
 		self.plugin.config['soundplayer'] = widget.get_text()
 		
@@ -1367,7 +1375,7 @@ class Add_remove_emoticons_window:
 		self.emot_tree = self.xml.get_widget('emoticons_treeview')
 		model = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_STRING, gtk.Image)
 		self.emot_tree.set_model(model)
-		col = gtk.TreeViewColumn(_('Name'))
+		col = gtk.TreeViewColumn(_('Text'))
 		self.emot_tree.append_column(col)
 		renderer = gtk.CellRendererText()
 		renderer.connect('edited', self.on_emot_cell_edited)
@@ -1389,7 +1397,6 @@ class Add_remove_emoticons_window:
 
 		self.plugin = plugin
 		self.xml.signal_autoconnect(self)
-		self.window.show_all()
 
 	def on_add_remove_emoticons_window_delete_event(self, widget, event):
 		self.window.hide()
diff --git a/plugins/gtkgui/gtkgui.glade b/plugins/gtkgui/gtkgui.glade
index d73cf5c6100539024238d479be8046927a7e8c64..24d72e6dec6e3d080888a3fb42ca916cfac0a241 100644
--- a/plugins/gtkgui/gtkgui.glade
+++ b/plugins/gtkgui/gtkgui.glade
@@ -4490,6 +4490,7 @@
 				  <property name="active">False</property>
 				  <property name="inconsistent">False</property>
 				  <property name="draw_indicator">True</property>
+				  <signal name="toggled" handler="on_play_sounds_checkbutton_toggled" last_modification_time="Wed, 06 Apr 2005 19:05:21 GMT"/>
 				</widget>
 				<packing>
 				  <property name="padding">0</property>
@@ -5901,11 +5902,11 @@ Custom</property>
 	    <widget class="GtkTable" id="table4">
 	      <property name="border_width">4</property>
 	      <property name="visible">True</property>
-	      <property name="n_rows">6</property>
+	      <property name="n_rows">7</property>
 	      <property name="n_columns">2</property>
 	      <property name="homogeneous">False</property>
-	      <property name="row_spacing">0</property>
-	      <property name="column_spacing">0</property>
+	      <property name="row_spacing">5</property>
+	      <property name="column_spacing">5</property>
 
 	      <child>
 		<widget class="GtkLabel" id="label56">
@@ -5918,8 +5919,8 @@ Custom</property>
 		  <property name="selectable">False</property>
 		  <property name="xalign">0</property>
 		  <property name="yalign">0.5</property>
-		  <property name="xpad">5</property>
-		  <property name="ypad">5</property>
+		  <property name="xpad">0</property>
+		  <property name="ypad">0</property>
 		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
 		  <property name="width_chars">-1</property>
 		  <property name="single_line_mode">False</property>
@@ -6004,8 +6005,8 @@ Custom</property>
 		  <property name="selectable">False</property>
 		  <property name="xalign">0</property>
 		  <property name="yalign">0.5</property>
-		  <property name="xpad">5</property>
-		  <property name="ypad">5</property>
+		  <property name="xpad">0</property>
+		  <property name="ypad">0</property>
 		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
 		  <property name="width_chars">-1</property>
 		  <property name="single_line_mode">False</property>
@@ -6032,8 +6033,8 @@ Custom</property>
 		  <property name="selectable">False</property>
 		  <property name="xalign">0</property>
 		  <property name="yalign">0.5</property>
-		  <property name="xpad">5</property>
-		  <property name="ypad">6</property>
+		  <property name="xpad">0</property>
+		  <property name="ypad">0</property>
 		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
 		  <property name="width_chars">-1</property>
 		  <property name="single_line_mode">False</property>
@@ -6081,8 +6082,8 @@ Custom</property>
 		  <property name="selectable">False</property>
 		  <property name="xalign">0</property>
 		  <property name="yalign">0.5</property>
-		  <property name="xpad">5</property>
-		  <property name="ypad">5</property>
+		  <property name="xpad">0</property>
+		  <property name="ypad">0</property>
 		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
 		  <property name="width_chars">-1</property>
 		  <property name="single_line_mode">False</property>
@@ -6137,8 +6138,8 @@ Custom</property>
 		  <property name="selectable">False</property>
 		  <property name="xalign">0</property>
 		  <property name="yalign">0.5</property>
-		  <property name="xpad">5</property>
-		  <property name="ypad">5</property>
+		  <property name="xpad">0</property>
+		  <property name="ypad">0</property>
 		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
 		  <property name="width_chars">-1</property>
 		  <property name="single_line_mode">False</property>
@@ -6154,6 +6155,98 @@ Custom</property>
 		</packing>
 	      </child>
 
+	      <child>
+		<widget class="GtkHBox" id="hbox46">
+		  <property name="visible">True</property>
+		  <property name="homogeneous">False</property>
+		  <property name="spacing">0</property>
+
+		  <child>
+		    <widget class="GtkLabel" id="subscription_label">
+		      <property name="width_request">100</property>
+		      <property name="visible">True</property>
+		      <property name="label" translatable="yes"></property>
+		      <property name="use_underline">False</property>
+		      <property name="use_markup">False</property>
+		      <property name="justify">GTK_JUSTIFY_LEFT</property>
+		      <property name="wrap">False</property>
+		      <property name="selectable">False</property>
+		      <property name="xalign">0</property>
+		      <property name="yalign">0.5</property>
+		      <property name="xpad">5</property>
+		      <property name="ypad">5</property>
+		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+		      <property name="width_chars">-1</property>
+		      <property name="single_line_mode">False</property>
+		      <property name="angle">0</property>
+		    </widget>
+		    <packing>
+		      <property name="padding">0</property>
+		      <property name="expand">False</property>
+		      <property name="fill">False</property>
+		    </packing>
+		  </child>
+
+		  <child>
+		    <widget class="GtkLabel" id="label172">
+		      <property name="visible">True</property>
+		      <property name="label" translatable="yes">Ask:</property>
+		      <property name="use_underline">False</property>
+		      <property name="use_markup">False</property>
+		      <property name="justify">GTK_JUSTIFY_LEFT</property>
+		      <property name="wrap">False</property>
+		      <property name="selectable">False</property>
+		      <property name="xalign">0.5</property>
+		      <property name="yalign">0.5</property>
+		      <property name="xpad">0</property>
+		      <property name="ypad">0</property>
+		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+		      <property name="width_chars">-1</property>
+		      <property name="single_line_mode">False</property>
+		      <property name="angle">0</property>
+		    </widget>
+		    <packing>
+		      <property name="padding">0</property>
+		      <property name="expand">False</property>
+		      <property name="fill">False</property>
+		    </packing>
+		  </child>
+
+		  <child>
+		    <widget class="GtkLabel" id="ask_label">
+		      <property name="visible">True</property>
+		      <property name="label" translatable="yes"></property>
+		      <property name="use_underline">False</property>
+		      <property name="use_markup">False</property>
+		      <property name="justify">GTK_JUSTIFY_LEFT</property>
+		      <property name="wrap">False</property>
+		      <property name="selectable">False</property>
+		      <property name="xalign">0.5</property>
+		      <property name="yalign">0.5</property>
+		      <property name="xpad">0</property>
+		      <property name="ypad">0</property>
+		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+		      <property name="width_chars">-1</property>
+		      <property name="single_line_mode">False</property>
+		      <property name="angle">0</property>
+		    </widget>
+		    <packing>
+		      <property name="padding">0</property>
+		      <property name="expand">False</property>
+		      <property name="fill">False</property>
+		    </packing>
+		  </child>
+		</widget>
+		<packing>
+		  <property name="left_attach">1</property>
+		  <property name="right_attach">2</property>
+		  <property name="top_attach">4</property>
+		  <property name="bottom_attach">5</property>
+		  <property name="x_options">fill</property>
+		  <property name="y_options">fill</property>
+		</packing>
+	      </child>
+
 	      <child>
 		<widget class="GtkCheckButton" id="log_checkbutton">
 		  <property name="border_width">5</property>
@@ -6170,33 +6263,33 @@ Custom</property>
 		<packing>
 		  <property name="left_attach">0</property>
 		  <property name="right_attach">2</property>
-		  <property name="top_attach">5</property>
-		  <property name="bottom_attach">6</property>
+		  <property name="top_attach">6</property>
+		  <property name="bottom_attach">7</property>
 		  <property name="x_options">fill</property>
 		  <property name="y_options"></property>
 		</packing>
 	      </child>
 
 	      <child>
-		<widget class="GtkHBox" id="hbox46">
+		<widget class="GtkHBox" id="hbox2949">
 		  <property name="visible">True</property>
 		  <property name="homogeneous">False</property>
 		  <property name="spacing">0</property>
 
 		  <child>
-		    <widget class="GtkLabel" id="subscription_label">
-		      <property name="width_request">100</property>
+		    <widget class="GtkLabel" id="client_name_version_label">
 		      <property name="visible">True</property>
+		      <property name="can_focus">True</property>
 		      <property name="label" translatable="yes"></property>
 		      <property name="use_underline">False</property>
 		      <property name="use_markup">False</property>
 		      <property name="justify">GTK_JUSTIFY_LEFT</property>
 		      <property name="wrap">False</property>
-		      <property name="selectable">False</property>
-		      <property name="xalign">0</property>
+		      <property name="selectable">True</property>
+		      <property name="xalign">0.5</property>
 		      <property name="yalign">0.5</property>
-		      <property name="xpad">5</property>
-		      <property name="ypad">5</property>
+		      <property name="xpad">0</property>
+		      <property name="ypad">0</property>
 		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
 		      <property name="width_chars">-1</property>
 		      <property name="single_line_mode">False</property>
@@ -6210,9 +6303,9 @@ Custom</property>
 		  </child>
 
 		  <child>
-		    <widget class="GtkLabel" id="label172">
+		    <widget class="GtkLabel" id="label237">
 		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Ask:</property>
+		      <property name="label" translatable="yes">Platform:</property>
 		      <property name="use_underline">False</property>
 		      <property name="use_markup">False</property>
 		      <property name="justify">GTK_JUSTIFY_LEFT</property>
@@ -6235,14 +6328,15 @@ Custom</property>
 		  </child>
 
 		  <child>
-		    <widget class="GtkLabel" id="ask_label">
+		    <widget class="GtkLabel" id="platform_label">
 		      <property name="visible">True</property>
+		      <property name="can_focus">True</property>
 		      <property name="label" translatable="yes"></property>
 		      <property name="use_underline">False</property>
 		      <property name="use_markup">False</property>
 		      <property name="justify">GTK_JUSTIFY_LEFT</property>
 		      <property name="wrap">False</property>
-		      <property name="selectable">False</property>
+		      <property name="selectable">True</property>
 		      <property name="xalign">0.5</property>
 		      <property name="yalign">0.5</property>
 		      <property name="xpad">0</property>
@@ -6262,10 +6356,38 @@ Custom</property>
 		<packing>
 		  <property name="left_attach">1</property>
 		  <property name="right_attach">2</property>
-		  <property name="top_attach">4</property>
-		  <property name="bottom_attach">5</property>
+		  <property name="top_attach">5</property>
+		  <property name="bottom_attach">6</property>
+		  <property name="x_options"></property>
+		  <property name="y_options"></property>
+		</packing>
+	      </child>
+
+	      <child>
+		<widget class="GtkLabel" id="label236">
+		  <property name="visible">True</property>
+		  <property name="label" translatable="yes">Client:</property>
+		  <property name="use_underline">False</property>
+		  <property name="use_markup">False</property>
+		  <property name="justify">GTK_JUSTIFY_LEFT</property>
+		  <property name="wrap">False</property>
+		  <property name="selectable">False</property>
+		  <property name="xalign">0</property>
+		  <property name="yalign">0.5</property>
+		  <property name="xpad">0</property>
+		  <property name="ypad">0</property>
+		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+		  <property name="width_chars">-1</property>
+		  <property name="single_line_mode">False</property>
+		  <property name="angle">0</property>
+		</widget>
+		<packing>
+		  <property name="left_attach">0</property>
+		  <property name="right_attach">1</property>
+		  <property name="top_attach">5</property>
+		  <property name="bottom_attach">6</property>
 		  <property name="x_options">fill</property>
-		  <property name="y_options">fill</property>
+		  <property name="y_options"></property>
 		</packing>
 	      </child>
 	    </widget>
@@ -6305,8 +6427,8 @@ Custom</property>
 	      <property name="n_rows">6</property>
 	      <property name="n_columns">2</property>
 	      <property name="homogeneous">False</property>
-	      <property name="row_spacing">6</property>
-	      <property name="column_spacing">15</property>
+	      <property name="row_spacing">5</property>
+	      <property name="column_spacing">5</property>
 
 	      <child>
 		<widget class="GtkLabel" id="label115">
@@ -6638,8 +6760,8 @@ Custom</property>
 	      <property name="n_rows">6</property>
 	      <property name="n_columns">2</property>
 	      <property name="homogeneous">False</property>
-	      <property name="row_spacing">6</property>
-	      <property name="column_spacing">15</property>
+	      <property name="row_spacing">5</property>
+	      <property name="column_spacing">5</property>
 
 	      <child>
 		<widget class="GtkLabel" id="label121">
@@ -6971,8 +7093,8 @@ Custom</property>
 	      <property name="n_rows">4</property>
 	      <property name="n_columns">2</property>
 	      <property name="homogeneous">False</property>
-	      <property name="row_spacing">6</property>
-	      <property name="column_spacing">15</property>
+	      <property name="row_spacing">5</property>
+	      <property name="column_spacing">5</property>
 
 	      <child>
 		<widget class="GtkLabel" id="label127">
diff --git a/plugins/gtkgui/gtkgui.py b/plugins/gtkgui/gtkgui.py
index 679280ebc33866aace21238b5f308ae377d98cb2..1aaa8bc0cb35f3d77cccba340cc5e9b3bdd8afb5 100644
--- a/plugins/gtkgui/gtkgui.py
+++ b/plugins/gtkgui/gtkgui.py
@@ -960,6 +960,8 @@ class plugin:
 		
 		# get instances for windows/dialogs that will show_all()/hide()
 		self.windows['preferences'] = Preferences_window(self)
+		self.windows['add_remove_emoticons_window'] = \
+														Add_remove_emoticons_window(self)
 		self.windows['roster'] = self.roster
 
 		gtk.gdk.threads_enter()
diff --git a/plugins/gtkgui/roster_window.py b/plugins/gtkgui/roster_window.py
index 3a4d4838bc8d6c004df7dd55e8d00c6edbcd6076..f644f336866a825a596ade45fd27cc206fcaeb41 100644
--- a/plugins/gtkgui/roster_window.py
+++ b/plugins/gtkgui/roster_window.py
@@ -903,7 +903,7 @@ class Roster_window:
 
 	def on_preferences_menuitem_activate(self, widget):
 		if self.plugin.windows['preferences'].window.get_property('visible'):
-			self.plugin.windows['preferences'].window.present() # give focus
+			self.plugin.windows['preferences'].window.present()
 		else:
 			self.plugin.windows['preferences'].window.show_all()