<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On 10 June 2016 at 11:04, Jussi Kukkonen <span dir="ltr">&lt;<a href="mailto:jussi.kukkonen@intel.com" target="_blank">jussi.kukkonen@intel.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class=""><div class="h5">Upstream is not really active anymore: patch the Gtk+3 upgrade<br>
in for now (long term solution is to change to another UI).<br>
<br>
Signed-off-by: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com">jussi.kukkonen@intel.com</a>&gt;<br>
---<br>
 .../connman/connman-gnome/0001-Port-to-Gtk3.patch  | 277 +++++++++++++++++++++<br>
 .../connman/<a href="http://connman-gnome_0.7.bb" rel="noreferrer" target="_blank">connman-gnome_0.7.bb</a>                   |   5 +-<br>
 .../connman/connman/0001-Port-to-Gtk3.patch        | 277 +++++++++++++++++++++<br>
 3 files changed, 557 insertions(+), 2 deletions(-)<br>
 create mode 100644 meta/recipes-connectivity/connman/connman-gnome/0001-Port-to-Gtk3.patch<br>
 create mode 100644 meta/recipes-connectivity/connman/connman/0001-Port-to-Gtk3.patch<br></div></div></blockquote><div><br></div><div>... that still wasn&#39;t right: I&#39;ve removed the completely unnecessary duplicate patch and force pushed the same jku/sato-gtk3-v2 branch. </div><div>Sorry about that and thanks to Alexander for keeping eyes open.</div><div><br></div><div>Jussi<br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class=""><div class="h5">
diff --git a/meta/recipes-connectivity/connman/connman-gnome/0001-Port-to-Gtk3.patch b/meta/recipes-connectivity/connman/connman-gnome/0001-Port-to-Gtk3.patch<br>
new file mode 100644<br>
index 0000000..c93e9b4<br>
--- /dev/null<br>
+++ b/meta/recipes-connectivity/connman/connman-gnome/0001-Port-to-Gtk3.patch<br>
@@ -0,0 +1,277 @@<br>
+From a59b0fac02e74a971ac3f08bf28c17ce361a9526 Mon Sep 17 00:00:00 2001<br>
+From: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com">jussi.kukkonen@intel.com</a>&gt;<br>
+Date: Wed, 2 Mar 2016 15:47:49 +0200<br>
+Subject: [PATCH] Port to Gtk3<br>
+<br>
+Some unused (or not useful) code was removed, functionality should stay<br>
+the same.<br>
+<br>
+Code still contains quite a few uses of deprecated API.<br>
+<br>
+Upstream-Status: Submitted<br>
+Signed-off-by: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com">jussi.kukkonen@intel.com</a>&gt;<br>
+---<br>
+ applet/agent.c        |  3 +--<br>
+ applet/main.c         | 43 -------------------------------------------<br>
+ applet/status.c       |  8 --------<br>
+ <a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a>          |  3 +--<br>
+ properties/ethernet.c | 14 +++++++-------<br>
+ properties/main.c     |  2 +-<br>
+ properties/wifi.c     | 12 ++++++------<br>
+ 7 files changed, 16 insertions(+), 69 deletions(-)<br>
+<br>
+diff --git a/applet/agent.c b/applet/agent.c<br>
+index 65bed08..04fe86a 100644<br>
+--- a/applet/agent.c<br>
++++ b/applet/agent.c<br>
+@@ -126,7 +126,6 @@ static void request_input_dialog(GHashTable *request,<br>
+       gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_CENTER);<br>
+       gtk_window_set_keep_above(GTK_WINDOW(dialog), TRUE);<br>
+       gtk_window_set_urgency_hint(GTK_WINDOW(dialog), TRUE);<br>
+-      gtk_dialog_set_has_separator(GTK_DIALOG(dialog), FALSE);<br>
+       input-&gt;dialog = dialog;<br>
+<br>
+       gtk_dialog_add_button(GTK_DIALOG(dialog),<br>
+@@ -139,7 +138,7 @@ static void request_input_dialog(GHashTable *request,<br>
+       gtk_table_set_row_spacings(GTK_TABLE(table), 4);<br>
+       gtk_table_set_col_spacings(GTK_TABLE(table), 20);<br>
+       gtk_container_set_border_width(GTK_CONTAINER(table), 12);<br>
+-      gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)-&gt;vbox), table);<br>
++      gtk_container_add(GTK_CONTAINER(gtk_dialog_get_content_area (GTK_DIALOG(dialog))), table);<br>
+<br>
+       label = gtk_label_new(_(&quot;Please provide some network information:&quot;));<br>
+       gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.0);<br>
+diff --git a/applet/main.c b/applet/main.c<br>
+index f12d371..cd16285 100644<br>
+--- a/applet/main.c<br>
++++ b/applet/main.c<br>
+@@ -157,46 +157,6 @@ static void name_owner_changed(DBusGProxy *proxy, const char *name,<br>
+       }<br>
+ }<br>
+<br>
+-static void open_uri(GtkWindow *parent, const char *uri)<br>
+-{<br>
+-      GtkWidget *dialog;<br>
+-      GdkScreen *screen;<br>
+-      GError *error = NULL;<br>
+-      gchar *cmdline;<br>
+-<br>
+-      screen = gtk_window_get_screen(parent);<br>
+-<br>
+-      cmdline = g_strconcat(&quot;xdg-open &quot;, uri, NULL);<br>
+-<br>
+-      if (gdk_spawn_command_line_on_screen(screen,<br>
+-                              cmdline, &amp;error) == FALSE) {<br>
+-              dialog = gtk_message_dialog_new(parent,<br>
+-                              GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR,<br>
+-                              GTK_BUTTONS_CLOSE, &quot;%s&quot;, error-&gt;message);<br>
+-              gtk_dialog_run(GTK_DIALOG(dialog));<br>
+-              gtk_widget_destroy(dialog);<br>
+-              g_error_free(error);<br>
+-      }<br>
+-<br>
+-      g_free(cmdline);<br>
+-}<br>
+-<br>
+-static void about_url_hook(GtkAboutDialog *dialog,<br>
+-                              const gchar *url, gpointer data)<br>
+-{<br>
+-      open_uri(GTK_WINDOW(dialog), url);<br>
+-}<br>
+-<br>
+-static void about_email_hook(GtkAboutDialog *dialog,<br>
+-                              const gchar *email, gpointer data)<br>
+-{<br>
+-      gchar *uri;<br>
+-<br>
+-      uri = g_strconcat(&quot;mailto:&quot;, email, NULL);<br>
+-      open_uri(GTK_WINDOW(dialog), uri);<br>
+-      g_free(uri);<br>
+-}<br>
+-<br>
+ static void about_callback(GtkWidget *item, gpointer user_data)<br>
+ {<br>
+       const gchar *authors[] = {<br>
+@@ -204,9 +164,6 @@ static void about_callback(GtkWidget *item, gpointer user_data)<br>
+               NULL<br>
+       };<br>
+<br>
+-      gtk_about_dialog_set_url_hook(about_url_hook, NULL, NULL);<br>
+-      gtk_about_dialog_set_email_hook(about_email_hook, NULL, NULL);<br>
+-<br>
+       gtk_show_about_dialog(NULL, &quot;version&quot;, VERSION,<br>
+                       &quot;copyright&quot;, &quot;Copyright \xc2\xa9 2008 Intel Corporation&quot;,<br>
+                       &quot;comments&quot;, _(&quot;A connection manager for the GNOME desktop&quot;),<br>
+diff --git a/applet/status.c b/applet/status.c<br>
+index aed6f1e..015ff29 100644<br>
+--- a/applet/status.c<br>
++++ b/applet/status.c<br>
+@@ -102,8 +102,6 @@ static void icon_animation_start(IconAnimation *animation,<br>
+ {<br>
+       available = TRUE;<br>
+<br>
+-      gtk_status_icon_set_tooltip(statusicon, NULL);<br>
+-<br>
+       animation-&gt;start = start;<br>
+       animation-&gt;end = (end == 0) ? animation-&gt;count - 1 : end;<br>
+<br>
+@@ -120,8 +118,6 @@ static void icon_animation_stop(IconAnimation *animation)<br>
+ {<br>
+       available = TRUE;<br>
+<br>
+-      gtk_status_icon_set_tooltip(statusicon, NULL);<br>
+-<br>
+       if (animation-&gt;id &gt; 0)<br>
+               g_source_remove(animation-&gt;id);<br>
+<br>
+@@ -251,8 +247,6 @@ void status_unavailable(void)<br>
+       available = FALSE;<br>
+<br>
+       gtk_status_icon_set_from_pixbuf(statusicon, pixbuf_notifier);<br>
+-      gtk_status_icon_set_tooltip(statusicon,<br>
+-                              &quot;Connection Manager daemon is not running&quot;);<br>
+<br>
+       gtk_status_icon_set_visible(statusicon, TRUE);<br>
+ }<br>
+@@ -299,7 +293,6 @@ static void set_ready(gint signal)<br>
+<br>
+       if (signal &lt; 0) {<br>
+               gtk_status_icon_set_from_pixbuf(statusicon, pixbuf_wired);<br>
+-              gtk_status_icon_set_tooltip(statusicon, NULL);<br>
+               return;<br>
+       }<br>
+<br>
+@@ -311,7 +304,6 @@ static void set_ready(gint signal)<br>
+               index = 4;<br>
+<br>
+       gtk_status_icon_set_from_pixbuf(statusicon, pixbuf_signal[index]);<br>
+-      gtk_status_icon_set_tooltip(statusicon, NULL);<br>
+ }<br>
+<br>
+ struct timeout_data {<br>
+diff --git a/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> b/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
+index b972e07..a4dad5d 100644<br>
+--- a/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
++++ b/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
+@@ -55,8 +55,7 @@ AC_SUBST(DBUS_LIBS)<br>
+ DBUS_BINDING_TOOL=&quot;dbus-binding-tool&quot;<br>
+ AC_SUBST(DBUS_BINDING_TOOL)<br>
+<br>
+-PKG_CHECK_MODULES(GTK, gtk+-2.0 &gt;= 2.8, dummy=yes,<br>
+-                              AC_MSG_ERROR(gtk+ &gt;= 2.8 is required))<br>
++PKG_CHECK_MODULES(GTK, gtk+-3.0)<br>
+ AC_SUBST(GTK_CFLAGS)<br>
+ AC_SUBST(GTK_LIBS)<br>
+<br>
+diff --git a/properties/ethernet.c b/properties/ethernet.c<br>
+index 31db7a0..0b6b423 100644<br>
+--- a/properties/ethernet.c<br>
++++ b/properties/ethernet.c<br>
+@@ -82,7 +82,7 @@ void add_ethernet_switch_button(GtkWidget *mainbox, GtkTreeIter *iter,<br>
+       gtk_container_set_border_width(GTK_CONTAINER(vbox), 24);<br>
+       gtk_box_pack_start(GTK_BOX(mainbox), vbox, FALSE, FALSE, 0);<br>
+<br>
+-      table = gtk_table_new(1, 1, TRUE);<br>
++      table = gtk_table_new(1, 1, FALSE);<br>
+       gtk_table_set_row_spacings(GTK_TABLE(table), 10);<br>
+       gtk_table_set_col_spacings(GTK_TABLE(table), 10);<br>
+       gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 0);<br>
+@@ -136,7 +136,7 @@ void add_ethernet_service(GtkWidget *mainbox, GtkTreeIter *iter, struct config_d<br>
+       gtk_container_set_border_width(GTK_CONTAINER(vbox), 24);<br>
+       gtk_box_pack_start(GTK_BOX(mainbox), vbox, FALSE, FALSE, 0);<br>
+<br>
+-      table = gtk_table_new(5, 5, TRUE);<br>
++      table = gtk_table_new(5, 5, FALSE);<br>
+       gtk_table_set_row_spacings(GTK_TABLE(table), 10);<br>
+       gtk_table_set_col_spacings(GTK_TABLE(table), 10);<br>
+       gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 0);<br>
+@@ -144,9 +144,9 @@ void add_ethernet_service(GtkWidget *mainbox, GtkTreeIter *iter, struct config_d<br>
+       label = gtk_label_new(_(&quot;Configuration:&quot;));<br>
+       gtk_table_attach_defaults(GTK_TABLE(table), label, 1, 2, 0, 1);<br>
+<br>
+-      combo = gtk_combo_box_new_text();<br>
+-      gtk_combo_box_append_text(GTK_COMBO_BOX(combo), &quot;DHCP&quot;);<br>
+-      gtk_combo_box_append_text(GTK_COMBO_BOX(combo), &quot;MANUAL&quot;);<br>
++      combo = gtk_combo_box_text_new();<br>
++      gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), &quot;DHCP&quot;);<br>
++      gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), &quot;MANUAL&quot;);<br>
+       gtk_combo_box_set_row_separator_func(GTK_COMBO_BOX(combo),<br>
+                                       separator_function, NULL, NULL);<br>
+       gtk_table_attach_defaults(GTK_TABLE(table), combo, 2, 4, 0, 1);<br>
+@@ -219,7 +219,7 @@ void update_ethernet_ipv4(struct config_data *data, guint policy)<br>
+       case CONNMAN_POLICY_DHCP:<br>
+               gtk_combo_box_set_active(GTK_COMBO_BOX(combo), 0);<br>
+               for (i = 0; i &lt; 3; i++) {<br>
+-                      gtk_entry_set_editable(GTK_ENTRY(entry[i]), 0);<br>
++                      gtk_editable_set_editable(GTK_EDITABLE(entry[i]), 0);<br>
+                       gtk_widget_set_sensitive(entry[i], 0);<br>
+                       gtk_entry_set_text(GTK_ENTRY(entry[i]), _(&quot;&quot;));<br>
+               }<br>
+@@ -227,7 +227,7 @@ void update_ethernet_ipv4(struct config_data *data, guint policy)<br>
+       case CONNMAN_POLICY_MANUAL:<br>
+               gtk_combo_box_set_active(GTK_COMBO_BOX(combo), 1);<br>
+               for (i = 0; i &lt; 3; i++) {<br>
+-                      gtk_entry_set_editable(GTK_ENTRY(entry[i]), 1);<br>
++                      gtk_editable_set_editable(GTK_EDITABLE(entry[i]), 1);<br>
+                       gtk_widget_set_sensitive(entry[i], 1);<br>
+               }<br>
+               break;<br>
+diff --git a/properties/main.c b/properties/main.c<br>
+index c05f443..6f76361 100644<br>
+--- a/properties/main.c<br>
++++ b/properties/main.c<br>
+@@ -429,7 +429,7 @@ static GtkWidget *create_interfaces(GtkWidget *window)<br>
+<br>
+       scrolled = gtk_scrolled_window_new(NULL, NULL);<br>
+       gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled),<br>
+-                              GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);<br>
++                              GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);<br>
+       gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolled),<br>
+                                                       GTK_SHADOW_OUT);<br>
+       gtk_box_pack_start(GTK_BOX(hbox), scrolled, FALSE, TRUE, 0);<br>
+diff --git a/properties/wifi.c b/properties/wifi.c<br>
+index bd325ef..a5827e0 100644<br>
+--- a/properties/wifi.c<br>
++++ b/properties/wifi.c<br>
+@@ -125,7 +125,7 @@ void add_wifi_switch_button(GtkWidget *mainbox, GtkTreeIter *iter,<br>
+       gtk_container_set_border_width(GTK_CONTAINER(vbox), 24);<br>
+       gtk_box_pack_start(GTK_BOX(mainbox), vbox, FALSE, FALSE, 0);<br>
+<br>
+-      table = gtk_table_new(1, 1, TRUE);<br>
++      table = gtk_table_new(1, 1, FALSE);<br>
+       gtk_table_set_row_spacings(GTK_TABLE(table), 10);<br>
+       gtk_table_set_col_spacings(GTK_TABLE(table), 10);<br>
+       gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 0);<br>
+@@ -185,9 +185,9 @@ static void wifi_ipconfig(GtkWidget *table, struct config_data *data, GtkTreeIte<br>
+       gtk_table_attach_defaults(GTK_TABLE(table), label, 1, 2, 3, 4);<br>
+       data-&gt;ipv4.label[0] = label;<br>
+<br>
+-      combo = gtk_combo_box_new_text();<br>
+-      gtk_combo_box_append_text(GTK_COMBO_BOX(combo), &quot;DHCP&quot;);<br>
+-      gtk_combo_box_append_text(GTK_COMBO_BOX(combo), &quot;Manual&quot;);<br>
++      combo = gtk_combo_box_text_new();<br>
++      gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), &quot;DHCP&quot;);<br>
++      gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), &quot;Manual&quot;);<br>
+<br>
+       gtk_combo_box_set_row_separator_func(GTK_COMBO_BOX(combo),<br>
+                       separator_function, NULL, NULL);<br>
+@@ -335,14 +335,14 @@ void update_wifi_ipv4(struct config_data *data, guint policy)<br>
+       case CONNMAN_POLICY_DHCP:<br>
+               gtk_combo_box_set_active(GTK_COMBO_BOX(combo), 0);<br>
+               for (i = 0; i &lt; 3; i++) {<br>
+-                      gtk_entry_set_editable(GTK_ENTRY(entry[i]), 0);<br>
++                      gtk_editable_set_editable(GTK_EDITABLE(entry[i]), 0);<br>
+                       gtk_widget_set_sensitive(entry[i], 0);<br>
+               }<br>
+               break;<br>
+       case CONNMAN_POLICY_MANUAL:<br>
+               gtk_combo_box_set_active(GTK_COMBO_BOX(combo), 1);<br>
+               for (i = 0; i &lt; 3; i++) {<br>
+-                      gtk_entry_set_editable(GTK_ENTRY(entry[i]), 1);<br>
++                      gtk_editable_set_editable(GTK_EDITABLE(entry[i]), 1);<br>
+                       gtk_widget_set_sensitive(entry[i], 1);<br>
+               }<br>
+               break;<br>
+--<br>
+2.8.1<br>
+<br>
diff --git a/meta/recipes-connectivity/connman/<a href="http://connman-gnome_0.7.bb" rel="noreferrer" target="_blank">connman-gnome_0.7.bb</a> b/meta/recipes-connectivity/connman/<a href="http://connman-gnome_0.7.bb" rel="noreferrer" target="_blank">connman-gnome_0.7.bb</a><br>
index 3521c7f..a56bd37 100644<br>
--- a/meta/recipes-connectivity/connman/<a href="http://connman-gnome_0.7.bb" rel="noreferrer" target="_blank">connman-gnome_0.7.bb</a><br>
+++ b/meta/recipes-connectivity/connman/<a href="http://connman-gnome_0.7.bb" rel="noreferrer" target="_blank">connman-gnome_0.7.bb</a><br>
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = &quot;file://COPYING;md5=eb723b61539feef013de476e68b5c50a \<br>
                     file://properties/main.c;beginline=1;endline=20;md5=50c77c81871308b033ab7a1504626afb \<br>
                     file://common/connman-dbus.c;beginline=1;endline=20;md5=de6b485c0e717a0236402d220187717a&quot;<br>
<br>
-DEPENDS = &quot;gtk+ dbus-glib dbus-glib-native intltool-native gettext-native&quot;<br>
+DEPENDS = &quot;gtk+3 dbus-glib dbus-glib-native intltool-native gettext-native&quot;<br>
<br>
 # 0.7 tag<br>
 SRCREV = &quot;cf3c325b23dae843c5499a113591cfbc98acb143&quot;<br>
@@ -15,12 +15,13 @@ SRC_URI = &quot;git://<a href="http://github.com/connectivity/connman-gnome.git" rel="noreferrer" target="_blank">github.com/connectivity/connman-gnome.git</a> \<br>
            file://null_check_for_ipv4_config.patch \<br>
            file://images/* \<br>
            file://connman-gnome-fix-dbus-interface-name.patch \<br>
+           file://0001-Port-to-Gtk3.patch \<br>
           &quot;<br>
<br>
 S = &quot;${WORKDIR}/git&quot;<br>
<br>
 inherit autotools-brokensep gtk-icon-cache pkgconfig distro_features_check<br>
-ANY_OF_DISTRO_FEATURES = &quot;${GTK2DISTROFEATURES}&quot;<br>
+ANY_OF_DISTRO_FEATURES = &quot;${GTK3DISTROFEATURES}&quot;<br>
<br>
 RDEPENDS_${PN} = &quot;connman&quot;<br>
<br>
diff --git a/meta/recipes-connectivity/connman/connman/0001-Port-to-Gtk3.patch b/meta/recipes-connectivity/connman/connman/0001-Port-to-Gtk3.patch<br>
new file mode 100644<br>
index 0000000..c93e9b4<br>
--- /dev/null<br>
+++ b/meta/recipes-connectivity/connman/connman/0001-Port-to-Gtk3.patch<br>
@@ -0,0 +1,277 @@<br>
+From a59b0fac02e74a971ac3f08bf28c17ce361a9526 Mon Sep 17 00:00:00 2001<br>
+From: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com">jussi.kukkonen@intel.com</a>&gt;<br>
+Date: Wed, 2 Mar 2016 15:47:49 +0200<br>
+Subject: [PATCH] Port to Gtk3<br>
+<br>
+Some unused (or not useful) code was removed, functionality should stay<br>
+the same.<br>
+<br>
+Code still contains quite a few uses of deprecated API.<br>
+<br>
+Upstream-Status: Submitted<br>
+Signed-off-by: Jussi Kukkonen &lt;<a href="mailto:jussi.kukkonen@intel.com">jussi.kukkonen@intel.com</a>&gt;<br>
+---<br>
+ applet/agent.c        |  3 +--<br>
+ applet/main.c         | 43 -------------------------------------------<br>
+ applet/status.c       |  8 --------<br>
+ <a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a>          |  3 +--<br>
+ properties/ethernet.c | 14 +++++++-------<br>
+ properties/main.c     |  2 +-<br>
+ properties/wifi.c     | 12 ++++++------<br>
+ 7 files changed, 16 insertions(+), 69 deletions(-)<br>
+<br>
+diff --git a/applet/agent.c b/applet/agent.c<br>
+index 65bed08..04fe86a 100644<br>
+--- a/applet/agent.c<br>
++++ b/applet/agent.c<br>
+@@ -126,7 +126,6 @@ static void request_input_dialog(GHashTable *request,<br>
+       gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_CENTER);<br>
+       gtk_window_set_keep_above(GTK_WINDOW(dialog), TRUE);<br>
+       gtk_window_set_urgency_hint(GTK_WINDOW(dialog), TRUE);<br>
+-      gtk_dialog_set_has_separator(GTK_DIALOG(dialog), FALSE);<br>
+       input-&gt;dialog = dialog;<br>
+<br>
+       gtk_dialog_add_button(GTK_DIALOG(dialog),<br>
+@@ -139,7 +138,7 @@ static void request_input_dialog(GHashTable *request,<br>
+       gtk_table_set_row_spacings(GTK_TABLE(table), 4);<br>
+       gtk_table_set_col_spacings(GTK_TABLE(table), 20);<br>
+       gtk_container_set_border_width(GTK_CONTAINER(table), 12);<br>
+-      gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)-&gt;vbox), table);<br>
++      gtk_container_add(GTK_CONTAINER(gtk_dialog_get_content_area (GTK_DIALOG(dialog))), table);<br>
+<br>
+       label = gtk_label_new(_(&quot;Please provide some network information:&quot;));<br>
+       gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.0);<br>
+diff --git a/applet/main.c b/applet/main.c<br>
+index f12d371..cd16285 100644<br>
+--- a/applet/main.c<br>
++++ b/applet/main.c<br>
+@@ -157,46 +157,6 @@ static void name_owner_changed(DBusGProxy *proxy, const char *name,<br>
+       }<br>
+ }<br>
+<br>
+-static void open_uri(GtkWindow *parent, const char *uri)<br>
+-{<br>
+-      GtkWidget *dialog;<br>
+-      GdkScreen *screen;<br>
+-      GError *error = NULL;<br>
+-      gchar *cmdline;<br>
+-<br>
+-      screen = gtk_window_get_screen(parent);<br>
+-<br>
+-      cmdline = g_strconcat(&quot;xdg-open &quot;, uri, NULL);<br>
+-<br>
+-      if (gdk_spawn_command_line_on_screen(screen,<br>
+-                              cmdline, &amp;error) == FALSE) {<br>
+-              dialog = gtk_message_dialog_new(parent,<br>
+-                              GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR,<br>
+-                              GTK_BUTTONS_CLOSE, &quot;%s&quot;, error-&gt;message);<br>
+-              gtk_dialog_run(GTK_DIALOG(dialog));<br>
+-              gtk_widget_destroy(dialog);<br>
+-              g_error_free(error);<br>
+-      }<br>
+-<br>
+-      g_free(cmdline);<br>
+-}<br>
+-<br>
+-static void about_url_hook(GtkAboutDialog *dialog,<br>
+-                              const gchar *url, gpointer data)<br>
+-{<br>
+-      open_uri(GTK_WINDOW(dialog), url);<br>
+-}<br>
+-<br>
+-static void about_email_hook(GtkAboutDialog *dialog,<br>
+-                              const gchar *email, gpointer data)<br>
+-{<br>
+-      gchar *uri;<br>
+-<br>
+-      uri = g_strconcat(&quot;mailto:&quot;, email, NULL);<br>
+-      open_uri(GTK_WINDOW(dialog), uri);<br>
+-      g_free(uri);<br>
+-}<br>
+-<br>
+ static void about_callback(GtkWidget *item, gpointer user_data)<br>
+ {<br>
+       const gchar *authors[] = {<br>
+@@ -204,9 +164,6 @@ static void about_callback(GtkWidget *item, gpointer user_data)<br>
+               NULL<br>
+       };<br>
+<br>
+-      gtk_about_dialog_set_url_hook(about_url_hook, NULL, NULL);<br>
+-      gtk_about_dialog_set_email_hook(about_email_hook, NULL, NULL);<br>
+-<br>
+       gtk_show_about_dialog(NULL, &quot;version&quot;, VERSION,<br>
+                       &quot;copyright&quot;, &quot;Copyright \xc2\xa9 2008 Intel Corporation&quot;,<br>
+                       &quot;comments&quot;, _(&quot;A connection manager for the GNOME desktop&quot;),<br>
+diff --git a/applet/status.c b/applet/status.c<br>
+index aed6f1e..015ff29 100644<br>
+--- a/applet/status.c<br>
++++ b/applet/status.c<br>
+@@ -102,8 +102,6 @@ static void icon_animation_start(IconAnimation *animation,<br>
+ {<br>
+       available = TRUE;<br>
+<br>
+-      gtk_status_icon_set_tooltip(statusicon, NULL);<br>
+-<br>
+       animation-&gt;start = start;<br>
+       animation-&gt;end = (end == 0) ? animation-&gt;count - 1 : end;<br>
+<br>
+@@ -120,8 +118,6 @@ static void icon_animation_stop(IconAnimation *animation)<br>
+ {<br>
+       available = TRUE;<br>
+<br>
+-      gtk_status_icon_set_tooltip(statusicon, NULL);<br>
+-<br>
+       if (animation-&gt;id &gt; 0)<br>
+               g_source_remove(animation-&gt;id);<br>
+<br>
+@@ -251,8 +247,6 @@ void status_unavailable(void)<br>
+       available = FALSE;<br>
+<br>
+       gtk_status_icon_set_from_pixbuf(statusicon, pixbuf_notifier);<br>
+-      gtk_status_icon_set_tooltip(statusicon,<br>
+-                              &quot;Connection Manager daemon is not running&quot;);<br>
+<br>
+       gtk_status_icon_set_visible(statusicon, TRUE);<br>
+ }<br>
+@@ -299,7 +293,6 @@ static void set_ready(gint signal)<br>
+<br>
+       if (signal &lt; 0) {<br>
+               gtk_status_icon_set_from_pixbuf(statusicon, pixbuf_wired);<br>
+-              gtk_status_icon_set_tooltip(statusicon, NULL);<br>
+               return;<br>
+       }<br>
+<br>
+@@ -311,7 +304,6 @@ static void set_ready(gint signal)<br>
+               index = 4;<br>
+<br>
+       gtk_status_icon_set_from_pixbuf(statusicon, pixbuf_signal[index]);<br>
+-      gtk_status_icon_set_tooltip(statusicon, NULL);<br>
+ }<br>
+<br>
+ struct timeout_data {<br>
+diff --git a/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> b/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
+index b972e07..a4dad5d 100644<br>
+--- a/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
++++ b/<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a><br>
+@@ -55,8 +55,7 @@ AC_SUBST(DBUS_LIBS)<br>
+ DBUS_BINDING_TOOL=&quot;dbus-binding-tool&quot;<br>
+ AC_SUBST(DBUS_BINDING_TOOL)<br>
+<br>
+-PKG_CHECK_MODULES(GTK, gtk+-2.0 &gt;= 2.8, dummy=yes,<br>
+-                              AC_MSG_ERROR(gtk+ &gt;= 2.8 is required))<br>
++PKG_CHECK_MODULES(GTK, gtk+-3.0)<br>
+ AC_SUBST(GTK_CFLAGS)<br>
+ AC_SUBST(GTK_LIBS)<br>
+<br>
+diff --git a/properties/ethernet.c b/properties/ethernet.c<br>
+index 31db7a0..0b6b423 100644<br>
+--- a/properties/ethernet.c<br>
++++ b/properties/ethernet.c<br>
+@@ -82,7 +82,7 @@ void add_ethernet_switch_button(GtkWidget *mainbox, GtkTreeIter *iter,<br>
+       gtk_container_set_border_width(GTK_CONTAINER(vbox), 24);<br>
+       gtk_box_pack_start(GTK_BOX(mainbox), vbox, FALSE, FALSE, 0);<br>
+<br>
+-      table = gtk_table_new(1, 1, TRUE);<br>
++      table = gtk_table_new(1, 1, FALSE);<br>
+       gtk_table_set_row_spacings(GTK_TABLE(table), 10);<br>
+       gtk_table_set_col_spacings(GTK_TABLE(table), 10);<br>
+       gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 0);<br>
+@@ -136,7 +136,7 @@ void add_ethernet_service(GtkWidget *mainbox, GtkTreeIter *iter, struct config_d<br>
+       gtk_container_set_border_width(GTK_CONTAINER(vbox), 24);<br>
+       gtk_box_pack_start(GTK_BOX(mainbox), vbox, FALSE, FALSE, 0);<br>
+<br>
+-      table = gtk_table_new(5, 5, TRUE);<br>
++      table = gtk_table_new(5, 5, FALSE);<br>
+       gtk_table_set_row_spacings(GTK_TABLE(table), 10);<br>
+       gtk_table_set_col_spacings(GTK_TABLE(table), 10);<br>
+       gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 0);<br>
+@@ -144,9 +144,9 @@ void add_ethernet_service(GtkWidget *mainbox, GtkTreeIter *iter, struct config_d<br>
+       label = gtk_label_new(_(&quot;Configuration:&quot;));<br>
+       gtk_table_attach_defaults(GTK_TABLE(table), label, 1, 2, 0, 1);<br>
+<br>
+-      combo = gtk_combo_box_new_text();<br>
+-      gtk_combo_box_append_text(GTK_COMBO_BOX(combo), &quot;DHCP&quot;);<br>
+-      gtk_combo_box_append_text(GTK_COMBO_BOX(combo), &quot;MANUAL&quot;);<br>
++      combo = gtk_combo_box_text_new();<br>
++      gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), &quot;DHCP&quot;);<br>
++      gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), &quot;MANUAL&quot;);<br>
+       gtk_combo_box_set_row_separator_func(GTK_COMBO_BOX(combo),<br>
+                                       separator_function, NULL, NULL);<br>
+       gtk_table_attach_defaults(GTK_TABLE(table), combo, 2, 4, 0, 1);<br>
+@@ -219,7 +219,7 @@ void update_ethernet_ipv4(struct config_data *data, guint policy)<br>
+       case CONNMAN_POLICY_DHCP:<br>
+               gtk_combo_box_set_active(GTK_COMBO_BOX(combo), 0);<br>
+               for (i = 0; i &lt; 3; i++) {<br>
+-                      gtk_entry_set_editable(GTK_ENTRY(entry[i]), 0);<br>
++                      gtk_editable_set_editable(GTK_EDITABLE(entry[i]), 0);<br>
+                       gtk_widget_set_sensitive(entry[i], 0);<br>
+                       gtk_entry_set_text(GTK_ENTRY(entry[i]), _(&quot;&quot;));<br>
+               }<br>
+@@ -227,7 +227,7 @@ void update_ethernet_ipv4(struct config_data *data, guint policy)<br>
+       case CONNMAN_POLICY_MANUAL:<br>
+               gtk_combo_box_set_active(GTK_COMBO_BOX(combo), 1);<br>
+               for (i = 0; i &lt; 3; i++) {<br>
+-                      gtk_entry_set_editable(GTK_ENTRY(entry[i]), 1);<br>
++                      gtk_editable_set_editable(GTK_EDITABLE(entry[i]), 1);<br>
+                       gtk_widget_set_sensitive(entry[i], 1);<br>
+               }<br>
+               break;<br>
+diff --git a/properties/main.c b/properties/main.c<br>
+index c05f443..6f76361 100644<br>
+--- a/properties/main.c<br>
++++ b/properties/main.c<br>
+@@ -429,7 +429,7 @@ static GtkWidget *create_interfaces(GtkWidget *window)<br>
+<br>
+       scrolled = gtk_scrolled_window_new(NULL, NULL);<br>
+       gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled),<br>
+-                              GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);<br>
++                              GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);<br>
+       gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolled),<br>
+                                                       GTK_SHADOW_OUT);<br>
+       gtk_box_pack_start(GTK_BOX(hbox), scrolled, FALSE, TRUE, 0);<br>
+diff --git a/properties/wifi.c b/properties/wifi.c<br>
+index bd325ef..a5827e0 100644<br>
+--- a/properties/wifi.c<br>
++++ b/properties/wifi.c<br>
+@@ -125,7 +125,7 @@ void add_wifi_switch_button(GtkWidget *mainbox, GtkTreeIter *iter,<br>
+       gtk_container_set_border_width(GTK_CONTAINER(vbox), 24);<br>
+       gtk_box_pack_start(GTK_BOX(mainbox), vbox, FALSE, FALSE, 0);<br>
+<br>
+-      table = gtk_table_new(1, 1, TRUE);<br>
++      table = gtk_table_new(1, 1, FALSE);<br>
+       gtk_table_set_row_spacings(GTK_TABLE(table), 10);<br>
+       gtk_table_set_col_spacings(GTK_TABLE(table), 10);<br>
+       gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 0);<br>
+@@ -185,9 +185,9 @@ static void wifi_ipconfig(GtkWidget *table, struct config_data *data, GtkTreeIte<br>
+       gtk_table_attach_defaults(GTK_TABLE(table), label, 1, 2, 3, 4);<br>
+       data-&gt;ipv4.label[0] = label;<br>
+<br>
+-      combo = gtk_combo_box_new_text();<br>
+-      gtk_combo_box_append_text(GTK_COMBO_BOX(combo), &quot;DHCP&quot;);<br>
+-      gtk_combo_box_append_text(GTK_COMBO_BOX(combo), &quot;Manual&quot;);<br>
++      combo = gtk_combo_box_text_new();<br>
++      gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), &quot;DHCP&quot;);<br>
++      gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), &quot;Manual&quot;);<br>
+<br>
+       gtk_combo_box_set_row_separator_func(GTK_COMBO_BOX(combo),<br>
+                       separator_function, NULL, NULL);<br>
+@@ -335,14 +335,14 @@ void update_wifi_ipv4(struct config_data *data, guint policy)<br>
+       case CONNMAN_POLICY_DHCP:<br>
+               gtk_combo_box_set_active(GTK_COMBO_BOX(combo), 0);<br>
+               for (i = 0; i &lt; 3; i++) {<br>
+-                      gtk_entry_set_editable(GTK_ENTRY(entry[i]), 0);<br>
++                      gtk_editable_set_editable(GTK_EDITABLE(entry[i]), 0);<br>
+                       gtk_widget_set_sensitive(entry[i], 0);<br>
+               }<br>
+               break;<br>
+       case CONNMAN_POLICY_MANUAL:<br>
+               gtk_combo_box_set_active(GTK_COMBO_BOX(combo), 1);<br>
+               for (i = 0; i &lt; 3; i++) {<br>
+-                      gtk_entry_set_editable(GTK_ENTRY(entry[i]), 1);<br>
++                      gtk_editable_set_editable(GTK_EDITABLE(entry[i]), 1);<br>
+                       gtk_widget_set_sensitive(entry[i], 1);<br>
+               }<br>
+               break;<br>
+--<br>
+2.8.1<br>
+<br>
--<br>
2.1.4<br>
<br>
</div></div></blockquote></div><br></div></div>