diff --git a/data/glade/features_window.glade b/data/glade/features_window.glade
new file mode 100644
index 0000000000000000000000000000000000000000..0e06e2717747d23d6d9357a2f60c6142f7e1ea1d
--- /dev/null
+++ b/data/glade/features_window.glade
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
+<!--Generated with glade3 3.2.0 on Tue Jun 26 23:59:52 2007 by asterix@obelix-->
+<glade-interface>
+  <widget class="GtkWindow" id="features_window">
+    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+    <property name="border_width">12</property>
+    <property name="title" translatable="yes">Features</property>
+    <property name="default_width">200</property>
+    <property name="default_height">350</property>
+    <child>
+      <widget class="GtkVBox" id="vbox1">
+        <property name="visible">True</property>
+        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+        <property name="spacing">6</property>
+        <child>
+          <widget class="GtkLabel" id="label1">
+            <property name="visible">True</property>
+            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+            <property name="label" translatable="yes">List of possible features in Gajim:</property>
+          </widget>
+          <packing>
+            <property name="expand">False</property>
+          </packing>
+        </child>
+        <child>
+          <widget class="GtkScrolledWindow" id="scrolledwindow1">
+            <property name="visible">True</property>
+            <property name="can_focus">True</property>
+            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+            <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+            <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+            <child>
+              <widget class="GtkTreeView" id="features_treeview">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                <property name="headers_clickable">True</property>
+                <signal name="row_activated" handler="on_features_treeview_row_activated"/>
+              </widget>
+            </child>
+          </widget>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child>
+          <widget class="GtkHButtonBox" id="hbuttonbox1">
+            <property name="visible">True</property>
+            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+            <property name="layout_style">GTK_BUTTONBOX_END</property>
+            <child>
+              <widget class="GtkButton" id="close_button">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                <property name="label" translatable="yes">gtk-close</property>
+                <property name="use_stock">True</property>
+                <signal name="clicked" handler="on_close_button_clicked"/>
+              </widget>
+            </child>
+          </widget>
+          <packing>
+            <property name="expand">False</property>
+            <property name="position">2</property>
+          </packing>
+        </child>
+      </widget>
+    </child>
+  </widget>
+</glade-interface>
diff --git a/data/glade/roster_window.glade b/data/glade/roster_window.glade
index 5e393ae45e56bdb7da0feedcb45ae49e8cf03ef8..21265b3d6e4ec7d3edea56814f7f1b799aa20e5f 100644
--- a/data/glade/roster_window.glade
+++ b/data/glade/roster_window.glade
@@ -1,444 +1,344 @@
-<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
-<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
-
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
+<!--*- mode: xml -*-->
 <glade-interface>
-
-<widget class="GtkWindow" id="roster_window">
-  <property name="width_request">85</property>
-  <property name="height_request">200</property>
-  <property name="title" translatable="yes">Gajim</property>
-  <property name="type">GTK_WINDOW_TOPLEVEL</property>
-  <property name="window_position">GTK_WIN_POS_NONE</property>
-  <property name="modal">False</property>
-  <property name="default_width">200</property>
-  <property name="default_height">400</property>
-  <property name="resizable">True</property>
-  <property name="destroy_with_parent">False</property>
-  <property name="role">roster</property>
-  <property name="decorated">True</property>
-  <property name="skip_taskbar_hint">False</property>
-  <property name="skip_pager_hint">False</property>
-  <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
-  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
-  <property name="focus_on_map">True</property>
-  <property name="urgency_hint">False</property>
-  <signal name="delete_event" handler="on_roster_window_delete_event" last_modification_time="Mon, 21 Mar 2005 12:34:59 GMT"/>
-  <signal name="focus_in_event" handler="on_roster_window_focus_in_event" last_modification_time="Sun, 04 Sep 2005 16:33:35 GMT"/>
-  <signal name="key_press_event" handler="on_roster_window_key_press_event" last_modification_time="Tue, 20 Sep 2005 19:26:27 GMT"/>
-  <signal name="focus_out_event" handler="on_roster_window_focus_out_event" last_modification_time="Tue, 08 Nov 2005 14:01:01 GMT"/>
-  <signal name="popup_menu" handler="on_roster_window_popup_menu" last_modification_time="Sat, 18 Nov 2006 21:12:06 GMT"/>
-
-  <child>
-    <widget class="GtkVBox" id="roster_vbox">
-      <property name="visible">True</property>
-      <property name="homogeneous">False</property>
-      <property name="spacing">0</property>
-
-      <child>
-	<widget class="GtkMenuBar" id="menubar">
-	  <property name="visible">True</property>
-	  <property name="pack_direction">GTK_PACK_DIRECTION_LTR</property>
-	  <property name="child_pack_direction">GTK_PACK_DIRECTION_LTR</property>
-
-	  <child>
-	    <widget class="GtkMenuItem" id="actions_menu">
-	      <property name="visible">True</property>
-	      <property name="label" translatable="yes">_Actions</property>
-	      <property name="use_underline">True</property>
-	      <signal name="activate" handler="on_actions_menuitem_activate" last_modification_time="Sun, 19 Feb 2006 17:10:56 GMT"/>
-
-	      <child>
-		<widget class="GtkMenu" id="actions_menu_menu">
-
-		  <child>
-		    <widget class="GtkImageMenuItem" id="new_chat_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">_Start Chat</property>
-		      <property name="use_underline">True</property>
-
-		      <child internal-child="image">
-			<widget class="GtkImage" id="image1605">
-			  <property name="visible">True</property>
-			  <property name="stock">gtk-jump-to</property>
-			  <property name="icon_size">1</property>
-			  <property name="xalign">0.5</property>
-			  <property name="yalign">0.5</property>
-			  <property name="xpad">0</property>
-			  <property name="ypad">0</property>
-			</widget>
-		      </child>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkImageMenuItem" id="join_gc_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">_Group Chat</property>
-		      <property name="use_underline">True</property>
-
-		      <child internal-child="image">
-			<widget class="GtkImage" id="image1606">
-			  <property name="visible">True</property>
-			  <property name="stock">gtk-connect</property>
-			  <property name="icon_size">1</property>
-			  <property name="xalign">0.5</property>
-			  <property name="yalign">0.5</property>
-			  <property name="xpad">0</property>
-			  <property name="ypad">0</property>
-			</widget>
-		      </child>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkSeparatorMenuItem" id="separatormenuitem1">
-		      <property name="visible">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkImageMenuItem" id="add_new_contact_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Add _Contact</property>
-		      <property name="use_underline">True</property>
-
-		      <child internal-child="image">
-			<widget class="GtkImage" id="image1607">
-			  <property name="visible">True</property>
-			  <property name="stock">gtk-add</property>
-			  <property name="icon_size">1</property>
-			  <property name="xalign">0.5</property>
-			  <property name="yalign">0.5</property>
-			  <property name="xpad">0</property>
-			  <property name="ypad">0</property>
-			</widget>
-		      </child>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkImageMenuItem" id="service_disco_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">_Discover Services</property>
-		      <property name="use_underline">True</property>
-
-		      <child internal-child="image">
-			<widget class="GtkImage" id="image1608">
-			  <property name="visible">True</property>
-			  <property name="stock">gtk-find</property>
-			  <property name="icon_size">1</property>
-			  <property name="xalign">0.5</property>
-			  <property name="yalign">0.5</property>
-			  <property name="xpad">0</property>
-			  <property name="ypad">0</property>
-			</widget>
-		      </child>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="advanced_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">_Advanced</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkSeparatorMenuItem" id="separator1">
-		      <property name="visible">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkImageMenuItem" id="quit_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">_Quit</property>
-		      <property name="use_underline">True</property>
-		      <signal name="activate" handler="on_quit_menuitem_activate" last_modification_time="Tue, 01 Mar 2005 23:37:49 GMT"/>
-		      <accelerator key="Q" modifiers="GDK_CONTROL_MASK" signal="activate"/>
-
-		      <child internal-child="image">
-			<widget class="GtkImage" id="image1609">
-			  <property name="visible">True</property>
-			  <property name="stock">gtk-quit</property>
-			  <property name="icon_size">1</property>
-			  <property name="xalign">0.5</property>
-			  <property name="yalign">0.5</property>
-			  <property name="xpad">0</property>
-			  <property name="ypad">0</property>
-			</widget>
-		      </child>
-		    </widget>
-		  </child>
-		</widget>
-	      </child>
-	    </widget>
-	  </child>
-
-	  <child>
-	    <widget class="GtkMenuItem" id="edit_menu">
-	      <property name="visible">True</property>
-	      <property name="label" translatable="yes">_Edit</property>
-	      <property name="use_underline">True</property>
-	      <signal name="activate" handler="on_edit_menuitem_activate" last_modification_time="Fri, 07 Apr 2006 22:46:56 GMT"/>
-
-	      <child>
-		<widget class="GtkMenu" id="edit_menu_menu">
-
-		  <child>
-		    <widget class="GtkImageMenuItem" id="accounts_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">A_ccounts</property>
-		      <property name="use_underline">True</property>
-		      <signal name="activate" handler="on_accounts_menuitem_activate" last_modification_time="Tue, 01 Mar 2005 23:23:19 GMT"/>
-		      <accelerator key="A" modifiers="GDK_CONTROL_MASK" signal="activate"/>
-
-		      <child internal-child="image">
-			<widget class="GtkImage" id="image1610">
-			  <property name="visible">True</property>
-			  <property name="stock">gtk-network</property>
-			  <property name="icon_size">1</property>
-			  <property name="xalign">0.5</property>
-			  <property name="yalign">0.5</property>
-			  <property name="xpad">0</property>
-			  <property name="ypad">0</property>
-			</widget>
-		      </child>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkImageMenuItem" id="profile_avatar_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Profile, A_vatar</property>
-		      <property name="use_underline">True</property>
-
-		      <child internal-child="image">
-			<widget class="GtkImage" id="image1611">
-			  <property name="visible">True</property>
-			  <property name="stock">gtk-properties</property>
-			  <property name="icon_size">1</property>
-			  <property name="xalign">0.5</property>
-			  <property name="yalign">0.5</property>
-			  <property name="xpad">0</property>
-			  <property name="ypad">0</property>
-			</widget>
-		      </child>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkSeparatorMenuItem" id="separator2">
-		      <property name="visible">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkImageMenuItem" id="preferences_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">_Preferences</property>
-		      <property name="use_underline">True</property>
-		      <signal name="activate" handler="on_preferences_menuitem_activate" last_modification_time="Tue, 01 Mar 2005 22:58:18 GMT"/>
-		      <accelerator key="P" modifiers="GDK_CONTROL_MASK" signal="activate"/>
-
-		      <child internal-child="image">
-			<widget class="GtkImage" id="image1612">
-			  <property name="visible">True</property>
-			  <property name="stock">gtk-preferences</property>
-			  <property name="icon_size">1</property>
-			  <property name="xalign">0.5</property>
-			  <property name="yalign">0.5</property>
-			  <property name="xpad">0</property>
-			  <property name="ypad">0</property>
-			</widget>
-		      </child>
-		    </widget>
-		  </child>
-		</widget>
-	      </child>
-	    </widget>
-	  </child>
-
-	  <child>
-	    <widget class="GtkMenuItem" id="view_menu">
-	      <property name="visible">True</property>
-	      <property name="label" translatable="yes">_View</property>
-	      <property name="use_underline">True</property>
-	      <signal name="activate" handler="on_view_menu_activate" last_modification_time="Fri, 29 Sep 2006 14:56:42 GMT"/>
-
-	      <child>
-		<widget class="GtkMenu" id="view_menu_menu">
-
-		  <child>
-		    <widget class="GtkCheckMenuItem" id="show_offline_contacts_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Show _Offline Contacts</property>
-		      <property name="use_underline">True</property>
-		      <property name="active">False</property>
-		      <signal name="activate" handler="on_show_offline_contacts_menuitem_activate" last_modification_time="Tue, 01 Mar 2005 23:29:52 GMT"/>
-		      <accelerator key="O" modifiers="GDK_CONTROL_MASK" signal="activate"/>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkCheckMenuItem" id="show_transports_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Show Trans_ports</property>
-		      <property name="use_underline">True</property>
-		      <property name="active">False</property>
-		      <signal name="activate" handler="on_show_transports_menuitem_activate" last_modification_time="Fri, 29 Sep 2006 15:35:28 GMT"/>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkSeparatorMenuItem" id="separator3">
-		      <property name="visible">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkImageMenuItem" id="file_transfers_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">File _Transfers</property>
-		      <property name="use_underline">True</property>
-		      <signal name="activate" handler="on_file_transfers_menuitem_activate" last_modification_time="Wed, 03 Aug 2005 15:44:28 GMT"/>
-		      <accelerator key="T" modifiers="GDK_CONTROL_MASK" signal="activate"/>
-
-		      <child internal-child="image">
-			<widget class="GtkImage" id="image1613">
-			  <property name="visible">True</property>
-			  <property name="stock">gtk-file</property>
-			  <property name="icon_size">1</property>
-			  <property name="xalign">0.5</property>
-			  <property name="yalign">0.5</property>
-			  <property name="xpad">0</property>
-			  <property name="ypad">0</property>
-			</widget>
-		      </child>
-		    </widget>
-		  </child>
-		</widget>
-	      </child>
-	    </widget>
-	  </child>
-
-	  <child>
-	    <widget class="GtkMenuItem" id="help_menu">
-	      <property name="visible">True</property>
-	      <property name="label" translatable="yes">_Help</property>
-	      <property name="use_underline">True</property>
-
-	      <child>
-		<widget class="GtkMenu" id="help_menu_menu">
-
-		  <child>
-		    <widget class="GtkImageMenuItem" id="contents_menuitem">
-		      <property name="visible">True</property>
-		      <property name="tooltip" translatable="yes">Help online</property>
-		      <property name="label" translatable="yes">_Contents</property>
-		      <property name="use_underline">True</property>
-		      <signal name="activate" handler="on_contents_menuitem_activate" last_modification_time="Thu, 06 Oct 2005 23:29:10 GMT"/>
-
-		      <child internal-child="image">
-			<widget class="GtkImage" id="image1614">
-			  <property name="visible">True</property>
-			  <property name="stock">gtk-help</property>
-			  <property name="icon_size">1</property>
-			  <property name="xalign">0.5</property>
-			  <property name="yalign">0.5</property>
-			  <property name="xpad">0</property>
-			  <property name="ypad">0</property>
-			</widget>
-		      </child>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="faq_menuitem">
-		      <property name="visible">True</property>
-		      <property name="tooltip" translatable="yes">Frequently Asked Questions (online)</property>
-		      <property name="label" translatable="yes">_FAQ</property>
-		      <property name="use_underline">True</property>
-		      <signal name="activate" handler="on_faq_menuitem_activate" last_modification_time="Thu, 06 Oct 2005 23:29:10 GMT"/>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkImageMenuItem" id="about_menuitem">
-		      <property name="visible">True</property>
-		      <property name="label">gtk-about</property>
-		      <property name="use_stock">True</property>
-		      <signal name="activate" handler="on_about_menuitem_activate" last_modification_time="Tue, 01 Mar 2005 22:56:45 GMT"/>
-		    </widget>
-		  </child>
-		</widget>
-	      </child>
-	    </widget>
-	  </child>
-	</widget>
-	<packing>
-	  <property name="padding">0</property>
-	  <property name="expand">False</property>
-	  <property name="fill">False</property>
-	</packing>
-      </child>
-
-      <child>
-	<widget class="GtkScrolledWindow" id="scrolledwindow">
-	  <property name="border_width">2</property>
-	  <property name="visible">True</property>
-	  <property name="can_focus">True</property>
-	  <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
-	  <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-	  <property name="shadow_type">GTK_SHADOW_NONE</property>
-	  <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
-
-	  <child>
-	    <widget class="GtkTreeView" id="roster_treeview">
-	      <property name="visible">True</property>
-	      <property name="can_focus">True</property>
-	      <property name="headers_visible">False</property>
-	      <property name="rules_hint">False</property>
-	      <property name="reorderable">True</property>
-	      <property name="enable_search">True</property>
-	      <property name="fixed_height_mode">False</property>
-	      <property name="hover_selection">False</property>
-	      <property name="hover_expand">False</property>
-	      <signal name="button_press_event" handler="on_roster_treeview_button_press_event" last_modification_time="Mon, 28 Feb 2005 14:16:44 GMT"/>
-	      <signal name="row_activated" handler="on_roster_treeview_row_activated" last_modification_time="Mon, 28 Feb 2005 14:18:06 GMT"/>
-	      <signal name="row_expanded" handler="on_roster_treeview_row_expanded" last_modification_time="Mon, 28 Feb 2005 14:18:14 GMT"/>
-	      <signal name="row_collapsed" handler="on_roster_treeview_row_collapsed" last_modification_time="Mon, 28 Feb 2005 14:18:33 GMT"/>
-	      <signal name="key_press_event" handler="on_roster_treeview_key_press_event" last_modification_time="Sat, 26 Mar 2005 20:39:36 GMT"/>
-	      <signal name="motion_notify_event" handler="on_roster_treeview_motion_notify_event" last_modification_time="Wed, 06 Jul 2005 14:38:58 GMT"/>
-	      <signal name="leave_notify_event" handler="on_roster_treeview_leave_notify_event" last_modification_time="Wed, 06 Jul 2005 14:39:06 GMT"/>
-	      <signal name="scroll_event" handler="on_roster_treeview_scroll_event" last_modification_time="Fri, 08 Jul 2005 22:09:03 GMT"/>
-	      <signal name="style_set" handler="on_roster_treeview_style_set" last_modification_time="Tue, 08 Nov 2005 14:03:30 GMT"/>
-	    </widget>
-	  </child>
-	</widget>
-	<packing>
-	  <property name="padding">0</property>
-	  <property name="expand">True</property>
-	  <property name="fill">True</property>
-	</packing>
-      </child>
-
-      <child>
-	<widget class="GtkComboBox" id="status_combobox">
-	  <property name="visible">True</property>
-	  <property name="add_tearoffs">False</property>
-	  <property name="focus_on_click">True</property>
-	  <signal name="changed" handler="on_status_combobox_changed" last_modification_time="Sat, 05 Nov 2005 18:07:49 GMT"/>
-	</widget>
-	<packing>
-	  <property name="padding">0</property>
-	  <property name="expand">False</property>
-	  <property name="fill">True</property>
-	</packing>
-      </child>
-    </widget>
-  </child>
-</widget>
-
+  <widget class="GtkWindow" id="roster_window">
+    <property name="width_request">85</property>
+    <property name="height_request">200</property>
+    <property name="title" translatable="yes">Gajim</property>
+    <property name="role">roster</property>
+    <property name="default_width">200</property>
+    <property name="default_height">400</property>
+    <signal name="popup_menu" handler="on_roster_window_popup_menu"/>
+    <signal name="focus_out_event" handler="on_roster_window_focus_out_event"/>
+    <signal name="focus_in_event" handler="on_roster_window_focus_in_event"/>
+    <signal name="key_press_event" handler="on_roster_window_key_press_event"/>
+    <signal name="delete_event" handler="on_roster_window_delete_event"/>
+    <child>
+      <widget class="GtkVBox" id="roster_vbox">
+        <property name="visible">True</property>
+        <child>
+          <widget class="GtkMenuBar" id="menubar">
+            <property name="visible">True</property>
+            <child>
+              <widget class="GtkMenuItem" id="actions_menu">
+                <property name="visible">True</property>
+                <property name="label" translatable="yes">_Actions</property>
+                <property name="use_underline">True</property>
+                <signal name="activate" handler="on_actions_menuitem_activate"/>
+                <child>
+                  <widget class="GtkMenu" id="actions_menu_menu">
+                    <child>
+                      <widget class="GtkImageMenuItem" id="new_chat_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">_Start Chat</property>
+                        <property name="use_underline">True</property>
+                        <child internal-child="image">
+                          <widget class="GtkImage" id="image1605">
+                            <property name="visible">True</property>
+                            <property name="stock">gtk-jump-to</property>
+                            <property name="icon_size">1</property>
+                          </widget>
+                        </child>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkImageMenuItem" id="join_gc_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">_Group Chat</property>
+                        <property name="use_underline">True</property>
+                        <child internal-child="image">
+                          <widget class="GtkImage" id="image1606">
+                            <property name="visible">True</property>
+                            <property name="stock">gtk-connect</property>
+                            <property name="icon_size">1</property>
+                          </widget>
+                        </child>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkSeparatorMenuItem" id="separatormenuitem1">
+                        <property name="visible">True</property>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkImageMenuItem" id="add_new_contact_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">Add _Contact</property>
+                        <property name="use_underline">True</property>
+                        <child internal-child="image">
+                          <widget class="GtkImage" id="image1607">
+                            <property name="visible">True</property>
+                            <property name="stock">gtk-add</property>
+                            <property name="icon_size">1</property>
+                          </widget>
+                        </child>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkImageMenuItem" id="service_disco_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">_Discover Services</property>
+                        <property name="use_underline">True</property>
+                        <child internal-child="image">
+                          <widget class="GtkImage" id="image1608">
+                            <property name="visible">True</property>
+                            <property name="stock">gtk-find</property>
+                            <property name="icon_size">1</property>
+                          </widget>
+                        </child>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkMenuItem" id="advanced_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">_Advanced</property>
+                        <property name="use_underline">True</property>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkSeparatorMenuItem" id="separator1">
+                        <property name="visible">True</property>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkImageMenuItem" id="quit_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">_Quit</property>
+                        <property name="use_underline">True</property>
+                        <signal name="activate" handler="on_quit_menuitem_activate"/>
+                        <accelerator key="Q" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+                        <child internal-child="image">
+                          <widget class="GtkImage" id="image1609">
+                            <property name="visible">True</property>
+                            <property name="stock">gtk-quit</property>
+                            <property name="icon_size">1</property>
+                          </widget>
+                        </child>
+                      </widget>
+                    </child>
+                  </widget>
+                </child>
+              </widget>
+            </child>
+            <child>
+              <widget class="GtkMenuItem" id="edit_menu">
+                <property name="visible">True</property>
+                <property name="label" translatable="yes">_Edit</property>
+                <property name="use_underline">True</property>
+                <signal name="activate" handler="on_edit_menuitem_activate"/>
+                <child>
+                  <widget class="GtkMenu" id="edit_menu_menu">
+                    <child>
+                      <widget class="GtkImageMenuItem" id="accounts_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">A_ccounts</property>
+                        <property name="use_underline">True</property>
+                        <signal name="activate" handler="on_accounts_menuitem_activate"/>
+                        <accelerator key="A" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+                        <child internal-child="image">
+                          <widget class="GtkImage" id="image1610">
+                            <property name="visible">True</property>
+                            <property name="stock">gtk-network</property>
+                            <property name="icon_size">1</property>
+                          </widget>
+                        </child>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkImageMenuItem" id="profile_avatar_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">Profile, A_vatar</property>
+                        <property name="use_underline">True</property>
+                        <child internal-child="image">
+                          <widget class="GtkImage" id="image1611">
+                            <property name="visible">True</property>
+                            <property name="stock">gtk-properties</property>
+                            <property name="icon_size">1</property>
+                          </widget>
+                        </child>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkSeparatorMenuItem" id="separator2">
+                        <property name="visible">True</property>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkImageMenuItem" id="preferences_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">_Preferences</property>
+                        <property name="use_underline">True</property>
+                        <signal name="activate" handler="on_preferences_menuitem_activate"/>
+                        <accelerator key="P" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+                        <child internal-child="image">
+                          <widget class="GtkImage" id="image1612">
+                            <property name="visible">True</property>
+                            <property name="stock">gtk-preferences</property>
+                            <property name="icon_size">1</property>
+                          </widget>
+                        </child>
+                      </widget>
+                    </child>
+                  </widget>
+                </child>
+              </widget>
+            </child>
+            <child>
+              <widget class="GtkMenuItem" id="view_menu">
+                <property name="visible">True</property>
+                <property name="label" translatable="yes">_View</property>
+                <property name="use_underline">True</property>
+                <signal name="activate" handler="on_view_menu_activate"/>
+                <child>
+                  <widget class="GtkMenu" id="view_menu_menu">
+                    <child>
+                      <widget class="GtkCheckMenuItem" id="show_offline_contacts_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">Show _Offline Contacts</property>
+                        <property name="use_underline">True</property>
+                        <signal name="activate" handler="on_show_offline_contacts_menuitem_activate"/>
+                        <accelerator key="O" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkCheckMenuItem" id="show_transports_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">Show Trans_ports</property>
+                        <property name="use_underline">True</property>
+                        <signal name="activate" handler="on_show_transports_menuitem_activate"/>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkSeparatorMenuItem" id="separator3">
+                        <property name="visible">True</property>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkImageMenuItem" id="file_transfers_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">File _Transfers</property>
+                        <property name="use_underline">True</property>
+                        <signal name="activate" handler="on_file_transfers_menuitem_activate"/>
+                        <accelerator key="T" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+                        <child internal-child="image">
+                          <widget class="GtkImage" id="image1613">
+                            <property name="visible">True</property>
+                            <property name="stock">gtk-missing-image</property>
+                            <property name="icon_size">1</property>
+                          </widget>
+                        </child>
+                      </widget>
+                    </child>
+                  </widget>
+                </child>
+              </widget>
+            </child>
+            <child>
+              <widget class="GtkMenuItem" id="help_menu">
+                <property name="visible">True</property>
+                <property name="label" translatable="yes">_Help</property>
+                <property name="use_underline">True</property>
+                <child>
+                  <widget class="GtkMenu" id="help_menu_menu">
+                    <child>
+                      <widget class="GtkImageMenuItem" id="contents_menuitem">
+                        <property name="visible">True</property>
+                        <property name="tooltip" translatable="yes">Help online</property>
+                        <property name="label" translatable="yes">_Contents</property>
+                        <property name="use_underline">True</property>
+                        <signal name="activate" handler="on_contents_menuitem_activate"/>
+                        <child internal-child="image">
+                          <widget class="GtkImage" id="image1614">
+                            <property name="visible">True</property>
+                            <property name="stock">gtk-help</property>
+                            <property name="icon_size">1</property>
+                          </widget>
+                        </child>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkMenuItem" id="faq_menuitem">
+                        <property name="visible">True</property>
+                        <property name="tooltip" translatable="yes">Frequently Asked Questions (online)</property>
+                        <property name="label" translatable="yes">_FAQ</property>
+                        <property name="use_underline">True</property>
+                        <signal name="activate" handler="on_faq_menuitem_activate"/>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkSeparatorMenuItem" id="menuitem1">
+                        <property name="visible">True</property>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkMenuItem" id="features_menuitem">
+                        <property name="visible">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label" translatable="yes">Fea_tures</property>
+                        <property name="use_underline">True</property>
+                        <signal name="activate" handler="on_features_menuitem_activate"/>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkImageMenuItem" id="about_menuitem">
+                        <property name="visible">True</property>
+                        <property name="label">gtk-about</property>
+                        <property name="use_underline">True</property>
+                        <property name="use_stock">True</property>
+                        <signal name="activate" handler="on_about_menuitem_activate"/>
+                      </widget>
+                    </child>
+                  </widget>
+                </child>
+              </widget>
+            </child>
+          </widget>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">False</property>
+          </packing>
+        </child>
+        <child>
+          <widget class="GtkScrolledWindow" id="scrolledwindow">
+            <property name="visible">True</property>
+            <property name="can_focus">True</property>
+            <property name="border_width">2</property>
+            <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+            <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+            <child>
+              <widget class="GtkTreeView" id="roster_treeview">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="headers_visible">False</property>
+                <property name="reorderable">True</property>
+                <signal name="leave_notify_event" handler="on_roster_treeview_leave_notify_event"/>
+                <signal name="button_press_event" handler="on_roster_treeview_button_press_event"/>
+                <signal name="motion_notify_event" handler="on_roster_treeview_motion_notify_event"/>
+                <signal name="row_collapsed" handler="on_roster_treeview_row_collapsed"/>
+                <signal name="row_expanded" handler="on_roster_treeview_row_expanded"/>
+                <signal name="key_press_event" handler="on_roster_treeview_key_press_event"/>
+                <signal name="row_activated" handler="on_roster_treeview_row_activated"/>
+                <signal name="scroll_event" handler="on_roster_treeview_scroll_event"/>
+                <signal name="style_set" handler="on_roster_treeview_style_set"/>
+              </widget>
+            </child>
+          </widget>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child>
+          <widget class="GtkComboBox" id="status_combobox">
+            <property name="visible">True</property>
+            <signal name="changed" handler="on_status_combobox_changed"/>
+          </widget>
+          <packing>
+            <property name="expand">False</property>
+            <property name="position">2</property>
+          </packing>
+        </child>
+      </widget>
+    </child>
+  </widget>
 </glade-interface>
diff --git a/src/features_window.py b/src/features_window.py
new file mode 100644
index 0000000000000000000000000000000000000000..171043c72bdf8f911d0db494a4d24fba6c9c0e6a
--- /dev/null
+++ b/src/features_window.py
@@ -0,0 +1,200 @@
+##	features_window.py
+##
+## Copyright (C) 2007 Yann Le Boulanger <asterix@lagaule.org>
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published
+## by the Free Software Foundation; version 2 only.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+
+import os
+import gtk
+import gobject
+import gtkgui_helpers
+
+import dialogs
+
+from common import gajim
+from common import helpers
+
+class FeaturesWindow:
+	'''Class for features window'''
+
+	def __init__(self):
+		self.xml = gtkgui_helpers.get_glade('features_window.glade')
+		self.window = self.xml.get_widget('features_window')
+		treeview = self.xml.get_widget('features_treeview')
+
+		# {name: (available_function, unix_text, windows_text)}
+		self.features = {
+			_('PyOpenSSL'): (self.pyopenssl_available,
+				_('You need to install python-pyopenssl to have a more secure connection.'),
+				_('You need to install python-pyopenssl to have a more secure connection.')),
+			_('Bonjour / Zeroconf'): (self.zeroconf_available,
+				_('You need to install python-avahai to use Zeroconf network.'),
+				_('This feature is not available under Windows.')),
+			_('Gajim-remote'): (self.dbus_available,
+				_('You need to install python-dbus to control gajim from a script.'),
+				_('This feature is not available under Windows.')),
+			_('OpenGPG'): (self.gpg_available,
+				_('You need to install gpg and python-GnuPGIntergace to use OpenGPG.'),
+				_('This feature is not available under Windows.')),
+			_('Network Manager'): (self.network_manager_available,
+				_('You need to install network-manager and python-dbus to use Network Manager.'),
+				_('This feature is not available under Windows.')),
+			_('Session Management'): (self.session_management_available,
+				_('You need to install python-gnome2 to use Session Management.'),
+				_('This feature is not available under Windows.')),
+			_('Gnome-Keyring'): (self.gnome_keyring_available,
+				_('You need to install python-gnome2-desktop to use Gnome Keyring.'),
+				_('This feature is not available under Windows.')),
+			_('SRV'): (self.srv_available,
+				_('You need to install dnsutils to have nslookup to use SRV records.'),
+				_('You need to have nslookup to use SRV records.')),
+			_('Spell Checker'): (self.speller_available,
+				_('You need to install python-gnome2-extras or compile gtkspell module from Gajim sources to use spell checker.'),
+				_('This feature is not available under Windows.')),
+			_('Notification-daemon'): (self.notification_available,
+				_('You need to have dbus available and to install notification-daemon. Another solution is to install python-notify.'),
+				_('This feature is not available under Windows.')),
+			_('Trayicon'): (self.trayicon_available,
+				_('You need to install python-gnome2-extras or compile trayicon module from Gajim sources to use the trayicon.'),
+				_('You need PyGTK > 2.10 to use the trayicon.')),
+			_('Idle'): (self.idle_available,
+				_('You need to compile idle module from Gajim sources to use it.'),
+				_('You need to compile idle module from Gajim sources to use it.')),
+		}
+
+		# name, supported
+		self.model = gtk.ListStore(str, bool)
+		treeview.set_model(self.model)
+
+		col = gtk.TreeViewColumn(_('Feature'))
+		treeview.append_column(col)
+		cell = gtk.CellRendererText()
+		col.pack_start(cell, expand = True)
+		col.add_attribute(cell, 'text', 0)
+
+		col = gtk.TreeViewColumn(_('Available'))
+		treeview.append_column(col)
+		cell = gtk.CellRendererToggle()
+		col.pack_start(cell)
+		col.set_attributes(cell, active = 1)
+
+		# Fill model
+		for feature in self.features:
+			func = self.features[feature][0]
+			rep = func()
+			self.model.append([feature, rep])
+		self.xml.signal_autoconnect(self)
+		self.window.show_all()
+		self.xml.get_widget('close_button').grab_focus()
+
+	def on_close_button_clicked(self, widget):
+		self.window.destroy()
+
+	def on_features_treeview_row_activated(self, widget, path, col):
+		available = self.model[path][1]
+		if available:
+			return
+		feature = self.model[path][0]
+		if os.name == 'nt':
+			text = self.features[feature][2]
+		else:
+			text = self.features[feature][1]
+		dialogs.InformationDialog(_('Feature not available'), text)
+
+	def pyopenssl_available(self):
+		try:
+			import OpenSSL.SSL
+			import OpenSSL.crypto
+		except:
+			return False
+		return True
+
+	def zeroconf_available(self):
+		if os.name == 'nt':
+			return False
+		try:
+			import avahi
+		except:
+			return False
+		return True
+
+	def dbus_available(self):
+		if os.name == 'nt':
+			return False
+		from common import dbus_support
+		return dbus_support.supported
+
+	def gpg_available(self):
+		if os.name == 'nt':
+			return False
+		from common import GnuPG
+		return GnuPG.USE_GPG
+
+	def network_manager_available(self):
+		if os.name == 'nt':
+			return False
+		import network_manager_listener
+		return network_manager_listener.supported
+
+	def session_management_available(self):
+		if os.name == 'nt':
+			return False
+		try:
+			import gnome.ui
+		except:
+			return False
+		return True
+
+	def gnome_keyring_available(self):
+		if os.name == 'nt':
+			return False
+		try:
+			import gnomekeyring
+		except:
+			return False
+		return True
+
+	def srv_available(self):
+		return helpers.is_in_path('nslookup')
+
+	def speller_available(self):
+		if os.name == 'nt':
+			return False
+		try:
+			import gtkspell
+		except:
+			return False
+		return True
+
+	def notification_available(self):
+		if os.name == 'nt':
+			return False
+		if self.dbus_available() and dbus_support.get_notifications_interface():
+			return True
+		try:
+			import pynotify
+		except:
+			return False
+		return True
+
+	def trayicon_available(self):
+		if os.name == 'nt' and gtk.pygtk_version >= (2, 10, 0) and \
+		gtk.gtk_version >= (2, 10, 0):
+			return True
+		try:
+			import systray
+		except:
+			return False
+		return True
+
+	def idle_available(self):
+		from common import sleepy
+		return sleepy.SUPPORTED
diff --git a/src/roster_window.py b/src/roster_window.py
index b15dea360dbc37a18f2029ebc28e7be78654a0a7..46e6fbe4a828acaaf54599dc7a4891d27423be2c 100644
--- a/src/roster_window.py
+++ b/src/roster_window.py
@@ -34,6 +34,7 @@ import tooltips
 import message_control
 import adhoc_commands
 import notify
+import features_window
 
 from common import gajim
 from common import helpers
@@ -3832,6 +3833,9 @@ class RosterWindow:
 		helpers.launch_browser_mailer('url',
 			'http://trac.gajim.org/wiki/GajimFaq')
 
+	def on_features_menuitem_activate(self, widget):
+		features_window.FeaturesWindow()
+
 	def on_about_menuitem_activate(self, widget):
 		dialogs.AboutDialog()