diff --git a/README b/README
index 962e134fb34612ea2918747b9bff9343a32a1612..5370d60528fafe1e603fbb2ac00d0e6a271e5c44 100644
--- a/README
+++ b/README
@@ -38,5 +38,8 @@ http://gajim.org
 
 
 PS.
-sounds & emoticons taken from Psi
+sounds and stellar iconstyle taken from Psi
+some emoticons taken from Psi
+some (the basic emoticons) taken from Gossip
 gossip iconstyle taken from Imendio Gossip
+If you think we're violating a license please inform us
diff --git a/plugins/gtkgui/config.py b/plugins/gtkgui/config.py
index b535b8d7ad9e669b9b8dd751e7bc9e98891fecb9..24ff9a3aa54a313383877e83ecef326aacfbdee9 100644
--- a/plugins/gtkgui/config.py
+++ b/plugins/gtkgui/config.py
@@ -48,11 +48,9 @@ class Preferences_window:
 		self.notebook.set_current_page(0)
 		
 	def on_checkbutton_toggled(self, widget, config_name, \
-		extra_function = None, change_sensitivity_widgets = None):
+		change_sensitivity_widgets = None):
 		if widget.get_active():
 			self.plugin.config[config_name] = 1
-			if extra_function != None:
-				apply(extra_function)
 		else:
 			self.plugin.config[config_name] = 0
 		if change_sensitivity_widgets != None:
@@ -325,7 +323,7 @@ class Preferences_window:
 		self.update_text_tags()
 
 	def on_use_emoticons_checkbutton_toggled(self, widget):
-		self.on_checkbutton_toggled(widget, 'useemoticons', None, \
+		self.on_checkbutton_toggled(widget, 'useemoticons', \
 			[self.xml.get_widget('add_remove_emoticons_button')])
 	
 	def on_add_remove_emoticons_button_clicked(self, widget):
@@ -336,7 +334,7 @@ class Preferences_window:
 			window.show_all()
 
 	def on_auto_popup_checkbutton_toggled(self, widget):
-		self.on_checkbutton_toggled(widget, 'autopopup', None,\
+		self.on_checkbutton_toggled(widget, 'autopopup', \
 			[self.auto_popup_away_checkbutton])
 
 	def on_auto_popup_away_checkbutton_toggled(self, widget):
@@ -346,7 +344,10 @@ class Preferences_window:
 		self.on_checkbutton_toggled(widget, 'ignore_unknown_contacts')
 
 	def on_play_sounds_checkbutton_toggled(self, widget):
-		self.on_checkbutton_toggled(widget, 'ignore_unknown_contacts')
+		self.on_checkbutton_toggled(widget, 'sounds_on',\
+										[self.xml.get_widget('sound_player_hbox'),\
+										self.xml.get_widget('sounds_scrolledwindow'),\
+										self.xml.get_widget('browse_sounds_hbox')])
 		
 	
 	def on_soundplayer_entry_changed(self, widget):
@@ -372,7 +373,7 @@ class Preferences_window:
 			iter = model.iter_next(iter)
 
 	def on_auto_away_checkbutton_toggled(self, widget):
-		self.on_checkbutton_toggled(widget, 'autoaway', None,\
+		self.on_checkbutton_toggled(widget, 'autoaway', \
 			[self.auto_away_time_spinbutton])
 
 	def on_auto_away_time_spinbutton_value_changed(self, widget):
@@ -383,7 +384,7 @@ class Preferences_window:
 			self.plugin.config['autoxatime']*60)
 
 	def on_auto_xa_checkbutton_toggled(self, widget):
-		self.on_checkbutton_toggled(widget, 'autoxa', None,\
+		self.on_checkbutton_toggled(widget, 'autoxa', \
 			[self.auto_xa_time_spinbutton])
 
 	def on_auto_xa_time_spinbutton_value_changed(self, widget):
@@ -725,6 +726,12 @@ class Preferences_window:
 		self.xml.get_widget('ignore_events_from_unknown_contacts_checkbutton').\
 			set_active(self.plugin.config['ignore_unknown_contacts'])
 
+		if not self.plugin.config['sounds_on']:
+			self.xml.get_widget('sound_player_hbox').set_sensitive(False)
+			self.xml.get_widget('sounds_scrolledwindow').set_sensitive(False)
+			self.xml.get_widget('browse_sounds_hbox').set_sensitive(False)
+			#FIXME:
+		
 		#sound player
 		self.xml.get_widget('soundplayer_entry').set_text(\
 			self.plugin.config['soundplayer'])
diff --git a/plugins/gtkgui/emoticons/biggrin.png b/plugins/gtkgui/emoticons/biggrin.png
index dc3d8df97108f58b31e50463767aef09ac311383..9df1b0a4089d49a7a0ebeb1ab494993351ec737a 100644
Binary files a/plugins/gtkgui/emoticons/biggrin.png and b/plugins/gtkgui/emoticons/biggrin.png differ
diff --git a/plugins/gtkgui/emoticons/coolglasses.png b/plugins/gtkgui/emoticons/coolglasses.png
index cbb49eda170db096e85190f6e8446310545829b4..c72e1740fa13fe876ea4c02eddcb9707c78c4f09 100644
Binary files a/plugins/gtkgui/emoticons/coolglasses.png and b/plugins/gtkgui/emoticons/coolglasses.png differ
diff --git a/plugins/gtkgui/emoticons/cry.png b/plugins/gtkgui/emoticons/cry.png
index 4136f7ff23cdbe8658cfee299c5abb05ce6cd18c..d9b9fb2760a6cf8559dfdbb5b389cc9296aa0841 100644
Binary files a/plugins/gtkgui/emoticons/cry.png and b/plugins/gtkgui/emoticons/cry.png differ
diff --git a/plugins/gtkgui/emoticons/frowning.png b/plugins/gtkgui/emoticons/frowning.png
index ab04d33e721f79882131761b566acac94ca10dc5..fa4b5f97773242db6d0c639926f6ddaae2547ae2 100644
Binary files a/plugins/gtkgui/emoticons/frowning.png and b/plugins/gtkgui/emoticons/frowning.png differ
diff --git a/plugins/gtkgui/emoticons/smile.png b/plugins/gtkgui/emoticons/smile.png
index 981b7d915d23798a88c70808e08205a0075f04c2..f7d7a4b93434b92a28ad5d9ed89975dc08af20a3 100644
Binary files a/plugins/gtkgui/emoticons/smile.png and b/plugins/gtkgui/emoticons/smile.png differ
diff --git a/plugins/gtkgui/emoticons/stare.png b/plugins/gtkgui/emoticons/stare.png
index 69b393e5dabf94de9d157ba963bb19fc07f6b2b3..03250b0fb0b70465c597d3cc6814bc87de861fd0 100644
Binary files a/plugins/gtkgui/emoticons/stare.png and b/plugins/gtkgui/emoticons/stare.png differ
diff --git a/plugins/gtkgui/emoticons/tongue.png b/plugins/gtkgui/emoticons/tongue.png
index 33cfb22e3f13cb8db402d7ed3f90067dc80f95d9..283b54a7c0fd211c5fbc594caec42cc65052d078 100644
Binary files a/plugins/gtkgui/emoticons/tongue.png and b/plugins/gtkgui/emoticons/tongue.png differ
diff --git a/plugins/gtkgui/emoticons/unhappy.png b/plugins/gtkgui/emoticons/unhappy.png
index 464b3de4229080e6a06858062735fcc6265ea5a3..cdce8a7dbec0691075e24baa61626c19228d874d 100644
Binary files a/plugins/gtkgui/emoticons/unhappy.png and b/plugins/gtkgui/emoticons/unhappy.png differ
diff --git a/plugins/gtkgui/emoticons/wink.png b/plugins/gtkgui/emoticons/wink.png
index d00392599f8736d8080e3418d9f1ac8ab2eb1074..b13e3a9c8886fd995e2622fdbeb4bff28efb9e6c 100644
Binary files a/plugins/gtkgui/emoticons/wink.png and b/plugins/gtkgui/emoticons/wink.png differ
diff --git a/plugins/gtkgui/gtkgui.glade b/plugins/gtkgui/gtkgui.glade
index 8b3e44347f7ca96c605262ce27ad9396c22b6cf8..6af78fa3383231f9097699a14d244ea320b616b3 100644
--- a/plugins/gtkgui/gtkgui.glade
+++ b/plugins/gtkgui/gtkgui.glade
@@ -4198,7 +4198,7 @@
 	      </child>
 
 	      <child>
-		<widget class="GtkFrame" id="frame26">
+		<widget class="GtkFrame" id="sounds_frame">
 		  <property name="visible">True</property>
 		  <property name="label_xalign">0</property>
 		  <property name="label_yalign">0.5</property>
@@ -4249,7 +4249,7 @@
 			      </child>
 
 			      <child>
-				<widget class="GtkHBox" id="hbox2911">
+				<widget class="GtkHBox" id="sound_player_hbox">
 				  <property name="visible">True</property>
 				  <property name="homogeneous">False</property>
 				  <property name="spacing">5</property>
@@ -4311,7 +4311,7 @@
 			  </child>
 
 			  <child>
-			    <widget class="GtkScrolledWindow" id="scrolledwindow29">
+			    <widget class="GtkScrolledWindow" id="sounds_scrolledwindow">
 			      <property name="visible">True</property>
 			      <property name="can_focus">True</property>
 			      <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
@@ -4339,7 +4339,7 @@
 			  </child>
 
 			  <child>
-			    <widget class="GtkHBox" id="hbox2910">
+			    <widget class="GtkHBox" id="browse_sounds_hbox">
 			      <property name="visible">True</property>
 			      <property name="homogeneous">False</property>
 			      <property name="spacing">5</property>
@@ -9512,7 +9512,7 @@ send a chat message to</property>
       <property name="spacing">0</property>
 
       <child>
-	<widget class="GtkScrolledWindow" id="scrolledwindow25">
+	<widget class="GtkScrolledWindow" id="emoticons_scrolledwindow">
 	  <property name="border_width">5</property>
 	  <property name="visible">True</property>
 	  <property name="can_focus">True</property>
diff --git a/plugins/gtkgui/gtkgui.py b/plugins/gtkgui/gtkgui.py
index 93dd95d7563d938770e805d7549c011da81c20c6..673d7553b1cd96270cbaa47368cb61084b2968ab 100644
--- a/plugins/gtkgui/gtkgui.py
+++ b/plugins/gtkgui/gtkgui.py
@@ -880,6 +880,7 @@ class plugin:
 			'print_time': 'always',\
 			'useemoticons': 1,\
 			'emoticons': ':-)\tplugins/gtkgui/emoticons/smile.png\t(@)\tplugins/gtkgui/emoticons/pussy.png\t8)\tplugins/gtkgui/emoticons/coolglasses.png\t:(\tplugins/gtkgui/emoticons/unhappy.png\t:)\tplugins/gtkgui/emoticons/smile.png\t(})\tplugins/gtkgui/emoticons/hugleft.png\t:$\tplugins/gtkgui/emoticons/blush.png\t(Y)\tplugins/gtkgui/emoticons/yes.png\t:-@\tplugins/gtkgui/emoticons/angry.png\t:-D\tplugins/gtkgui/emoticons/biggrin.png\t(U)\tplugins/gtkgui/emoticons/brheart.png\t(F)\tplugins/gtkgui/emoticons/flower.png\t:-[\tplugins/gtkgui/emoticons/bat.png\t:>\tplugins/gtkgui/emoticons/biggrin.png\t(T)\tplugins/gtkgui/emoticons/phone.png\t:-S\tplugins/gtkgui/emoticons/frowing.png\t:-P\tplugins/gtkgui/emoticons/tongue.png\t(H)\tplugins/gtkgui/emoticons/coolglasses.png\t(D)\tplugins/gtkgui/emoticons/drink.png\t:-O\tplugins/gtkgui/emoticons/oh.png\t(C)\tplugins/gtkgui/emoticons/coffee.png\t({)\tplugins/gtkgui/emoticons/hugright.png\t(*)\tplugins/gtkgui/emoticons/star.png\tB-)\tplugins/gtkgui/emoticons/coolglasses.png\t(Z)\tplugins/gtkgui/emoticons/boy.png\t(E)\tplugins/gtkgui/emoticons/mail.png\t(N)\tplugins/gtkgui/emoticons/no.png\t(P)\tplugins/gtkgui/emoticons/photo.png\t(K)\tplugins/gtkgui/emoticons/kiss.png\t(R)\tplugins/gtkgui/emoticons/rainbow.png\t:-|\tplugins/gtkgui/emoticons/stare.png\t;-)\tplugins/gtkgui/emoticons/wink.png\t;-(\tplugins/gtkgui/emoticons/cry.png\t(6)\tplugins/gtkgui/emoticons/devil.png\t(L)\tplugins/gtkgui/emoticons/heart.png\t(W)\tplugins/gtkgui/emoticons/brflower.png\t:|\tplugins/gtkgui/emoticons/stare.png\t:O\tplugins/gtkgui/emoticons/oh.png\t;)\tplugins/gtkgui/emoticons/wink.png\t;(\tplugins/gtkgui/emoticons/cry.png\t:S\tplugins/gtkgui/emoticons/frowing.png\t;\'-(\tplugins/gtkgui/emoticons/cry.png\t:-(\tplugins/gtkgui/emoticons/unhappy.png\t8-)\tplugins/gtkgui/emoticons/coolglasses.png\t(B)\tplugins/gtkgui/emoticons/beer.png\t:D\tplugins/gtkgui/emoticons/biggrin.png\t(8)\tplugins/gtkgui/emoticons/music.png\t:@\tplugins/gtkgui/emoticons/angry.png\tB)\tplugins/gtkgui/emoticons/coolglasses.png\t:-$\tplugins/gtkgui/emoticons/blush.png\t:\'(\tplugins/gtkgui/emoticons/cry.png\t:->\tplugins/gtkgui/emoticons/biggrin.png\t:[\tplugins/gtkgui/emoticons/bat.png\t(I)\tplugins/gtkgui/emoticons/lamp.png\t:P\tplugins/gtkgui/emoticons/tongue.png\t(%)\tplugins/gtkgui/emoticons/cuffs.png\t(S)\tplugins/gtkgui/emoticons/moon.png',\
+			'sounds_on': 1,\
 			'soundplayer': 'play',\
 			'sound_first_message_received': 1,\
 			'sound_first_message_received_file': 'sounds/message1.wav',\