summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLubomir Rintel <lkundrak@v3.sk>2019-02-18 13:30:42 +0100
committerLubomir Rintel <lkundrak@v3.sk>2019-09-20 15:22:38 +0200
commit2ded57d949db06816d9f8a59cf34bc91ff69c3d6 (patch)
tree00d1d5370da1ea02b928ae052dc55c9ecef4bf1b
parent17136e2690ffc69c92506ae33b9e95c99228f9f4 (diff)
downloadnetwork-manager-applet-2ded57d949db06816d9f8a59cf34bc91ff69c3d6.tar.gz
utils: support GTK4
Cover a trivial difference with an ifdef.
-rw-r--r--src/libnma/nma-ui-utils.c20
-rw-r--r--src/utils/utils.c11
2 files changed, 29 insertions, 2 deletions
diff --git a/src/libnma/nma-ui-utils.c b/src/libnma/nma-ui-utils.c
index cca10be8..7a4e6770 100644
--- a/src/libnma/nma-ui-utils.c
+++ b/src/libnma/nma-ui-utils.c
@@ -219,14 +219,32 @@ nma_gtk_widget_activate_default (GtkWidget *widget)
static void
icon_release_cb (GtkEntry *entry,
GtkEntryIconPosition position,
+#if !GTK_CHECK_VERSION(3,90,0)
GdkEventButton *event,
+#endif
gpointer data)
{
GtkMenu *menu = GTK_MENU (data);
+#if GTK_CHECK_VERSION(3,90,0)
+ GdkRectangle icon_area;
+#endif
+
if (position == GTK_ENTRY_ICON_SECONDARY) {
- gtk_widget_show_all (GTK_WIDGET (data));
+ gtk_widget_show (GTK_WIDGET (data));
+#if GTK_CHECK_VERSION(3,90,0)
+ gtk_entry_get_icon_area (entry,
+ GTK_ENTRY_ICON_SECONDARY,
+ &icon_area);
+ gtk_menu_popup_at_rect (menu,
+ gtk_widget_get_surface (GTK_WIDGET (entry)),
+ &icon_area,
+ GDK_GRAVITY_CENTER,
+ GDK_GRAVITY_CENTER,
+ NULL);
+#else
gtk_menu_popup (menu, NULL, NULL, NULL, NULL,
event->button, event->time);
+#endif
}
}
diff --git a/src/utils/utils.c b/src/utils/utils.c
index ef6e6a85..3a6f07e0 100644
--- a/src/utils/utils.c
+++ b/src/utils/utils.c
@@ -318,10 +318,19 @@ utils_override_bg_color (GtkWidget *widget, GdkRGBA *rgba)
if (rgba) {
css = g_strdup_printf ("* { background-color: %s; background-image: none; }",
gdk_rgba_to_string (rgba));
+#if GTK_CHECK_VERSION(3,90,0)
+ gtk_css_provider_load_from_data (provider, css, -1);
+#else
gtk_css_provider_load_from_data (provider, css, -1, NULL);
+#endif
g_free (css);
- } else
+ } else {
+#if GTK_CHECK_VERSION(3,90,0)
+ gtk_css_provider_load_from_data (provider, "", -1);
+#else
gtk_css_provider_load_from_data (provider, "", -1, NULL);
+#endif
+ }
}
void