gnucash master: Multiple changes pushed

Robert Fewell bobit at code.gnucash.org
Fri May 1 07:03:53 EDT 2020


Updated	 via  https://github.com/Gnucash/gnucash/commit/b835bbd3 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/3602753f (commit)
	 via  https://github.com/Gnucash/gnucash/commit/06500219 (commit)
	from  https://github.com/Gnucash/gnucash/commit/fbf7171a (commit)



commit b835bbd389017d87cc57fc1a2334c72a3a7a2364
Author: Robert Fewell <14uBobIT at gmail.com>
Date:   Fri May 1 11:58:00 2020 +0100

    Change occurrences of gdk_display_get_default
    
    It would be better to obtain the display from the current window
    instead of using the default one.

diff --git a/gnucash/gnome-utils/dialog-utils.c b/gnucash/gnome-utils/dialog-utils.c
index 25526b21d..cb4c1870a 100644
--- a/gnucash/gnome-utils/dialog-utils.c
+++ b/gnucash/gnome-utils/dialog-utils.c
@@ -104,15 +104,18 @@ gnc_restore_window_size(const char *group, GtkWindow *window, GtkWindow *parent)
 
     g_return_if_fail(group != NULL);
     g_return_if_fail(window != NULL);
+    g_return_if_fail(parent != NULL);
 
     if (!gnc_prefs_get_bool(GNC_PREFS_GROUP_GENERAL, GNC_PREF_SAVE_GEOMETRY))
         return;
 
     geometry = gnc_prefs_get_value (group, GNC_PREF_LAST_GEOMETRY);
+
     if (g_variant_is_of_type (geometry, (const GVariantType *) "(iiii)") )
     {
+        GdkWindow *win = gtk_widget_get_window (GTK_WIDGET(parent));
         GdkRectangle monitor_size;
-        GdkDisplay *display = gdk_display_get_default ();
+        GdkDisplay *display = gdk_window_get_display (win);
         GdkMonitor *mon;
 
         g_variant_get (geometry, "(iiii)",
@@ -234,7 +237,8 @@ gnc_save_window_size(const char *group, GtkWindow *window)
 void
 gnc_window_adjust_for_screen(GtkWindow * window)
 {
-    GdkDisplay *display = gdk_display_get_default ();
+    GdkWindow *win;
+    GdkDisplay *display;
     GdkMonitor *mon;
     GdkRectangle monitor_size;
     gint wpos[2];
@@ -250,6 +254,9 @@ gnc_window_adjust_for_screen(GtkWindow * window)
     if (gtk_widget_get_window (GTK_WIDGET(window)) == NULL)
         return;
 
+    win = gtk_widget_get_window (GTK_WIDGET(window));
+    display = gdk_window_get_display (win);
+
     gtk_window_get_position(GTK_WINDOW(window), &wpos[0], &wpos[1]);
     gtk_window_get_size(GTK_WINDOW(window), &width, &height);
 
diff --git a/gnucash/gnome-utils/gnc-cell-renderer-popup.c b/gnucash/gnome-utils/gnc-cell-renderer-popup.c
index 43dc4a5ff..e8b921aff 100644
--- a/gnucash/gnome-utils/gnc-cell-renderer-popup.c
+++ b/gnucash/gnome-utils/gnc-cell-renderer-popup.c
@@ -217,7 +217,7 @@ static gboolean
 gcrp_grab_on_window (GdkWindow *window,
                      guint32    activate_time)
 {
-    GdkDisplay *display = gdk_display_get_default ();
+    GdkDisplay *display = gdk_window_get_display (window);
     GdkSeat *seat;
     GdkEvent *event = gtk_get_current_event ();
 
diff --git a/gnucash/gnome-utils/gnc-date-edit.c b/gnucash/gnome-utils/gnc-date-edit.c
index 06d9ea8f0..40758a5af 100644
--- a/gnucash/gnome-utils/gnc-date-edit.c
+++ b/gnucash/gnome-utils/gnc-date-edit.c
@@ -149,12 +149,15 @@ gnc_date_edit_popdown(GNCDateEdit *gde)
 {
     GdkSeat *seat;
     GdkDevice *pointer;
+    GdkWindow *window;
 
     g_return_if_fail (GNC_IS_DATE_EDIT (gde));
 
     ENTER("gde %p", gde);
 
-    seat = gdk_display_get_default_seat (gdk_display_get_default());
+    window = gtk_widget_get_window (GTK_WIDGET(gde));
+
+    seat = gdk_display_get_default_seat (gdk_window_get_display (window));
     pointer = gdk_seat_get_pointer (seat);
 
     gtk_grab_remove (gde->cal_popup);
@@ -253,7 +256,7 @@ popup_grab_on_window (GdkWindow *window,
                       GdkDevice *pointer,
                       guint32    activate_time)
 {
-    GdkDisplay *display = gdk_display_get_default ();
+    GdkDisplay *display = gdk_window_get_display (window);
     GdkSeat *seat = gdk_display_get_default_seat (display);
     GdkEvent *event = gtk_get_current_event ();
 
diff --git a/gnucash/gnome/reconcile-view.c b/gnucash/gnome/reconcile-view.c
index c97d29ab4..8c9039f93 100644
--- a/gnucash/gnome/reconcile-view.c
+++ b/gnucash/gnome/reconcile-view.c
@@ -191,7 +191,7 @@ gnc_reconcile_view_tooltip_cb (GNCQueryView *qview, gint x, gint y,
                     x = root_x + cur_x + 10;
                     y = root_y + cur_y + 10;
 
-                    mon = gdk_display_get_monitor_at_point (gdk_display_get_default(), x, y);
+                    mon = gdk_display_get_monitor_at_point (gdk_window_get_display (parent_window), x, y);
                     gdk_monitor_get_geometry (mon, &monitor);
 
                     if (x + requisition.width > monitor.x + monitor.width)
diff --git a/gnucash/register/register-gnome/gnucash-header.c b/gnucash/register/register-gnome/gnucash-header.c
index afdfcb2b0..fd40e9821 100644
--- a/gnucash/register/register-gnome/gnucash-header.c
+++ b/gnucash/register/register-gnome/gnucash-header.c
@@ -399,9 +399,14 @@ static gint
 gnc_header_event (GtkWidget *widget, GdkEvent *event)
 {
     GncHeader *header = GNC_HEADER(widget);
+    GdkWindow *window = gtk_widget_get_window (widget);
     int x, y;
     int col;
 
+    if (!header->resize_cursor)
+        header->resize_cursor = gdk_cursor_new_for_display (gdk_window_get_display (window),
+                                                            GDK_SB_H_DOUBLE_ARROW);
+
     switch (event->type)
     {
     case GDK_MOTION_NOTIFY:
@@ -425,11 +430,9 @@ gnc_header_event (GtkWidget *widget, GdkEvent *event)
 
         if (pointer_on_resize_line(header, x, y, &col) &&
                 gnucash_style_col_is_resizable (header->style, col))
-            gdk_window_set_cursor (gtk_widget_get_window (widget),
-                                   header->resize_cursor);
+            gdk_window_set_cursor (window, header->resize_cursor);
         else
-            gdk_window_set_cursor (gtk_widget_get_window (widget),
-                                   header->normal_cursor);
+            gdk_window_set_cursor (window, header->normal_cursor);
         break;
 
     case GDK_BUTTON_PRESS:
@@ -589,7 +592,7 @@ gnc_header_init (GncHeader *header)
     header->cursor_name = NULL;
     header->in_resize = FALSE;
     header->resize_col = -1;
-    header->resize_cursor = gdk_cursor_new_for_display (gdk_display_get_default (), GDK_SB_H_DOUBLE_ARROW);
+    header->resize_cursor = NULL;
     header->normal_cursor = NULL;
     header->height = 20;
     header->width = 400;
diff --git a/gnucash/register/register-gnome/gnucash-sheet.c b/gnucash/register/register-gnome/gnucash-sheet.c
index 2693245dc..62409b691 100644
--- a/gnucash/register/register-gnome/gnucash-sheet.c
+++ b/gnucash/register/register-gnome/gnucash-sheet.c
@@ -1413,15 +1413,17 @@ gnucash_sheet_check_grab (GnucashSheet *sheet)
     GdkModifierType mods;
     GdkDevice *device;
     GdkSeat *seat;
+    GdkWindow *window;
 
     if (!sheet->grabbed)
         return;
 
-    seat = gdk_display_get_default_seat (gdk_display_get_default());
+    window = gtk_widget_get_window (GTK_WIDGET(sheet));
+
+    seat = gdk_display_get_default_seat (gdk_window_get_display (window));
     device = gdk_seat_get_pointer (seat);
 
-    gdk_device_get_state (device, gtk_widget_get_window (GTK_WIDGET(sheet)),
-                          0, &mods);
+    gdk_device_get_state (device, window, 0, &mods);
 
     if (!(mods & GDK_BUTTON1_MASK))
     {

commit 3602753f5093313592dee6acf92b821fc604c976
Author: Robert Fewell <14uBobIT at gmail.com>
Date:   Fri May 1 11:54:58 2020 +0100

    Remove some Gtk version checks in code
    
    With the requirement for Gtk+ 3.22, the version checks dealing with
    checking for version 3.20 or 3.22 are no longer required so these have
    been removed in the source files.

diff --git a/borrowed/goffice/go-optionmenu.c b/borrowed/goffice/go-optionmenu.c
index e4b350bc4..4e0ba1b65 100644
--- a/borrowed/goffice/go-optionmenu.c
+++ b/borrowed/goffice/go-optionmenu.c
@@ -106,67 +106,6 @@ static void go_option_menu_select_item(GOOptionMenu *option_menu,
     go_option_menu_update_contents(option_menu);
 }
 
-#if !GTK_CHECK_VERSION(3,22,0)
-static void go_option_menu_position(GtkMenu *menu, gint *x, gint *y,
-        gboolean *push_in, gpointer user_data)
-{
-    GOOptionMenu *option_menu = user_data;
-    GtkWidget *widget;
-    GtkRequisition requisition;
-    GList *children;
-    gint screen_width;
-    gint menu_xpos;
-    gint menu_ypos;
-    gint menu_width;
-    GtkAllocation allocation;
-
-    widget = GTK_WIDGET(option_menu);
-
-    gtk_widget_get_preferred_size(GTK_WIDGET(menu), &requisition, NULL);
-    menu_width = requisition.width;
-
-    gdk_window_get_origin(gtk_widget_get_window(widget), &menu_xpos,
-            &menu_ypos);
-
-    gtk_widget_get_allocation(widget, &allocation);
-    menu_xpos += allocation.x;
-    menu_ypos += allocation.y + allocation.height / 2 - 2;
-
-    children = gtk_container_get_children(GTK_CONTAINER(option_menu->menu));
-    while (children)
-    {
-        GtkWidget *child = children->data;
-
-        if (GTK_IS_CHECK_MENU_ITEM(child)
-                && gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(child)))
-        {
-            gtk_widget_get_preferred_size(child, &requisition, NULL);
-            menu_ypos -= requisition.height / 2;
-            break;
-        }
-
-        if (gtk_widget_get_visible(child))
-        {
-            gtk_widget_get_preferred_size(child, &requisition, NULL);
-            menu_ypos -= requisition.height;
-        }
-
-        children = children->next;
-    }
-
-    screen_width = gdk_screen_get_width(gtk_widget_get_screen(widget));
-
-    if (menu_xpos + menu_width > screen_width)
-        menu_xpos -= (menu_xpos + menu_width) - screen_width;
-    if (menu_xpos < 0)
-        menu_xpos = 0;
-
-    *x = menu_xpos;
-    *y = menu_ypos;
-    *push_in = TRUE;
-}
-#endif
-
 static gint go_option_menu_button_press(GtkWidget *widget,
         GdkEventButton *event)
 {
@@ -179,21 +118,13 @@ static gint go_option_menu_button_press(GtkWidget *widget,
 
     if (event->type == GDK_BUTTON_PRESS && event->button == 1)
     {
-#if GTK_CHECK_VERSION(3,22,0)
         gtk_menu_popup_at_widget (GTK_MENU(option_menu->menu),
                                   widget,
                                   GDK_GRAVITY_SOUTH_WEST,
                                   GDK_GRAVITY_NORTH_WEST,
                                   (GdkEvent *) event);
-#else
-        gtk_menu_popup(GTK_MENU(option_menu->menu), NULL, NULL,
-                go_option_menu_position, option_menu, event->button,
-                event->time);
-
-#endif
         return TRUE;
     }
-
     return FALSE;
 }
 
@@ -205,16 +136,11 @@ static gint go_option_menu_key_press(GtkWidget *widget, GdkEventKey *event)
     {
     case GDK_KEY_KP_Space:
     case GDK_KEY_space:
-#if GTK_CHECK_VERSION(3,22,0)
         gtk_menu_popup_at_widget (GTK_MENU(option_menu->menu),
                                   widget,
                                   GDK_GRAVITY_SOUTH_WEST,
                                   GDK_GRAVITY_NORTH_WEST,
                                   (GdkEvent *) event);
-#else
-        gtk_menu_popup(GTK_MENU(option_menu->menu), NULL, NULL,
-                go_option_menu_position, option_menu, 0, event->time);
-#endif
         return TRUE;
     }
 
diff --git a/gnucash/gnome-utils/dialog-utils.c b/gnucash/gnome-utils/dialog-utils.c
index c5473708f..25526b21d 100644
--- a/gnucash/gnome-utils/dialog-utils.c
+++ b/gnucash/gnome-utils/dialog-utils.c
@@ -112,26 +112,15 @@ gnc_restore_window_size(const char *group, GtkWindow *window, GtkWindow *parent)
     if (g_variant_is_of_type (geometry, (const GVariantType *) "(iiii)") )
     {
         GdkRectangle monitor_size;
-
-#if GTK_CHECK_VERSION(3,22,0)
         GdkDisplay *display = gdk_display_get_default ();
         GdkMonitor *mon;
-#else
-        GdkScreen *screen = gdk_screen_get_default ();
-        gint mon_num;
-#endif
 
         g_variant_get (geometry, "(iiii)",
                        &wpos[0],  &wpos[1],
                        &wsize[0], &wsize[1]);
 
-#if GTK_CHECK_VERSION(3,22,0)
         mon = gdk_display_get_monitor_at_point (display, wpos[0], wpos[1]);
         gdk_monitor_get_geometry (mon, &monitor_size);
-#else
-        mon_num = gdk_screen_get_monitor_at_point (screen, wpos[0], wpos[1]);
-        gdk_screen_get_monitor_geometry (screen, mon_num, &monitor_size);
-#endif
 
         DEBUG("monitor left top corner x: %d, y: %d, width: %d, height: %d",
               monitor_size.x, monitor_size.y, monitor_size.width, monitor_size.height);
@@ -245,19 +234,13 @@ gnc_save_window_size(const char *group, GtkWindow *window)
 void
 gnc_window_adjust_for_screen(GtkWindow * window)
 {
+    GdkDisplay *display = gdk_display_get_default ();
+    GdkMonitor *mon;
     GdkRectangle monitor_size;
     gint wpos[2];
     gint width;
     gint height;
 
-#if GTK_CHECK_VERSION(3,22,0)
-    GdkDisplay *display = gdk_display_get_default ();
-    GdkMonitor *mon;
-#else
-    GdkScreen *screen = gdk_screen_get_default ();
-    gint mon_num;
-#endif
-
     ENTER("");
 
     if (window == NULL)
@@ -270,13 +253,8 @@ gnc_window_adjust_for_screen(GtkWindow * window)
     gtk_window_get_position(GTK_WINDOW(window), &wpos[0], &wpos[1]);
     gtk_window_get_size(GTK_WINDOW(window), &width, &height);
 
-#if GTK_CHECK_VERSION(3,22,0)
     mon = gdk_display_get_monitor_at_point (display, wpos[0], wpos[1]);
     gdk_monitor_get_geometry (mon, &monitor_size);
-#else
-    mon_num = gdk_screen_get_monitor_at_point (screen, wpos[0], wpos[1]);
-    gdk_screen_get_monitor_geometry (screen, mon_num, &monitor_size);
-#endif
 
     DEBUG("monitor width is %d, height is %d; wwindow width is %d, height is %d",
            monitor_size.width, monitor_size.height, width, height);
diff --git a/gnucash/gnome-utils/gnc-cell-renderer-popup.c b/gnucash/gnome-utils/gnc-cell-renderer-popup.c
index d170d1f2b..43dc4a5ff 100644
--- a/gnucash/gnome-utils/gnc-cell-renderer-popup.c
+++ b/gnucash/gnome-utils/gnc-cell-renderer-popup.c
@@ -218,46 +218,20 @@ gcrp_grab_on_window (GdkWindow *window,
                      guint32    activate_time)
 {
     GdkDisplay *display = gdk_display_get_default ();
-#if GTK_CHECK_VERSION(3,20,0)
     GdkSeat *seat;
-#else
-    GdkDeviceManager *device_manager;
-    GdkDevice *device;
-#endif
-
-#if GTK_CHECK_VERSION(3,20,0)
     GdkEvent *event = gtk_get_current_event ();
-#endif
 
-#if GTK_CHECK_VERSION(3,20,0)
     seat = gdk_display_get_default_seat (display);
-#else
-    device_manager = gdk_display_get_device_manager (display);
-    device = gdk_device_manager_get_client_pointer (device_manager);
-#endif
 
-#if GTK_CHECK_VERSION(3,20,0)
     if ((gdk_seat_grab (seat, window, GDK_SEAT_CAPABILITY_POINTER, TRUE, NULL,
-                        event, NULL, NULL) == GDK_GRAB_SUCCESS )) {
+                        event, NULL, NULL) == GDK_GRAB_SUCCESS))
+    {
         if (gdk_seat_grab (seat, window, GDK_SEAT_CAPABILITY_KEYBOARD, TRUE, NULL,
-                        event, NULL, NULL) == GDK_GRAB_SUCCESS )
-#else
-    if ((gdk_device_grab (device, window, GDK_OWNERSHIP_WINDOW, TRUE,
-                          GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK |
-                          GDK_POINTER_MOTION_MASK,
-                          NULL, activate_time) == GDK_GRAB_SUCCESS)) {
-
-        if (gdk_device_grab (device, window, GDK_OWNERSHIP_WINDOW, TRUE,
-                             GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK,
-                 NULL, activate_time) == GDK_GRAB_SUCCESS)
-#endif
+                        event, NULL, NULL) == GDK_GRAB_SUCCESS)
             return TRUE;
-        else {
-#if GTK_CHECK_VERSION(3,20,0)
+        else
+        {
             gdk_seat_ungrab (seat);
-#else
-            gdk_device_ungrab (device, activate_time);
-#endif
             return FALSE;
         }
     }
@@ -272,11 +246,9 @@ gcrp_show_popup (GncCellRendererPopup *cell,
                  gint                  x2,
                  gint                  y2)
 {
-#if GTK_CHECK_VERSION(3,22,0)
-        GdkWindow *win;
-        GdkMonitor *mon;
-        GdkRectangle monitor_size;
-#endif
+    GdkWindow *win;
+    GdkMonitor *mon;
+    GdkRectangle monitor_size;
     GtkAllocation alloc;
     gint          x, y;
     gint          screen_height, screen_width;
@@ -299,17 +271,12 @@ gcrp_show_popup (GncCellRendererPopup *cell,
 
     button_height = y2 - y1;
 
-#if GTK_CHECK_VERSION(3,22,0)
     win = gdk_screen_get_root_window (gtk_window_get_screen (GTK_WINDOW(cell->popup_window)));
     mon = gdk_display_get_monitor_at_window (gtk_widget_get_display (GTK_WIDGET(cell->popup_window)), win);
     gdk_monitor_get_geometry (mon, &monitor_size);
 
     screen_width = monitor_size.width;
     screen_height = monitor_size.height - y;
-#else
-    screen_width = gdk_screen_width();
-    screen_height = gdk_screen_height() - y;
-#endif
 
     /* Check if it fits in the available height. */
     if (alloc.height > screen_height)
diff --git a/gnucash/gnome-utils/gnc-combott.c b/gnucash/gnome-utils/gnc-combott.c
index f0e359572..2be7adc97 100644
--- a/gnucash/gnome-utils/gnc-combott.c
+++ b/gnucash/gnome-utils/gnc-combott.c
@@ -93,14 +93,6 @@ static void gnc_combott_get_property (GObject *object,
 
 static void gnc_combott_finalize (GObject *object);
 
-#if !GTK_CHECK_VERSION(3,22,0)
-static void gnc_combott_menu_position (GtkMenu *menu,
-                                        gint *x,
-                                        gint *y,
-                                        gint *push_in,
-                                        gpointer user_data);
-#endif
-
 static void gnc_combott_changed (GncCombott *combott);
 static void gnc_combott_set_model (GncCombott *combott, GtkTreeModel *model);
 static void gnc_combott_refresh_menu (GncCombott *combott, GtkTreeModel *model);
@@ -441,61 +433,6 @@ gnc_combott_changed(GncCombott *combott)
 }
 
 
-#if !GTK_CHECK_VERSION(3,22,0)
-static void
-gnc_combott_menu_position (GtkMenu  *menu,
-                            gint     *x,
-                            gint     *y,
-                            gint     *push_in,
-                            gpointer  user_data)
-{
-    GncCombott *combott = GNC_COMBOTT (user_data);
-    GncCombottPrivate *priv = GNC_COMBOTT_GET_PRIVATE (combott);
-    gint sx, sy;
-    GtkWidget *child;
-    GtkRequisition req;
-    GtkAllocation alloc;
-    GtkBorder padding;
-    GtkStyleContext *sc = gtk_widget_get_style_context (GTK_WIDGET (priv->button));
-    GtkStateFlags state_flags = gtk_style_context_get_state (sc);
-
-    child = gtk_bin_get_child (GTK_BIN (priv->button));
-
-    sx = sy = 0;
-
-    if (!gtk_widget_get_has_window (child))
-    {
-        gtk_widget_get_allocation (child, &alloc);
-        sx += alloc.x;
-        sy += alloc.y;
-    }
-
-    gdk_window_get_root_coords (gtk_widget_get_window (child), sx, sy, &sx, &sy);
-
-    gtk_style_context_get_padding (sc, state_flags, &padding);
-
-    sx -= padding.left;
-
-    gtk_widget_get_preferred_size (GTK_WIDGET (menu), &req, NULL);
-
-    if (gtk_widget_get_direction (GTK_WIDGET (priv->button)) == GTK_TEXT_DIR_LTR)
-        *x = sx;
-    else
-    {
-        gtk_widget_get_allocation (child, &alloc);
-        *x = sx + alloc.width - req.width;
-    }
-
-    if(priv->active == -1 || priv->active == 0)
-        *y = sy;
-    else
-        *y = sy - ((req.height / priv->num_items) * (priv->active - 1));
-
-    *push_in = FALSE;
-}
-#endif
-
-
 static void
 button_getsize_cb (GtkWidget *widget, GtkAllocation *allocation, gpointer *user_data)
 {
@@ -557,20 +494,11 @@ button_press_cb (GtkWidget *widget, GdkEvent *event, gpointer *user_data )
     {
         if (event->type == GDK_BUTTON_PRESS)
         {
-            GdkEventButton *bevent = (GdkEventButton *) event;
-
-#if GTK_CHECK_VERSION(3,22,0)
             gtk_menu_popup_at_widget (GTK_MENU(priv->menu),
                                       widget,
                                       GDK_GRAVITY_SOUTH_WEST,
                                       GDK_GRAVITY_NORTH_WEST,
                                       event);
-#else
-            gtk_menu_popup (GTK_MENU (priv->menu),
-                            NULL, NULL,
-                            gnc_combott_menu_position, combott,
-                            bevent->button, bevent->time);
-#endif
 
             /* Tell calling code that we have handled this event; the buck
              * stops here. */
diff --git a/gnucash/gnome-utils/gnc-date-edit.c b/gnucash/gnome-utils/gnc-date-edit.c
index 47a956378..06d9ea8f0 100644
--- a/gnucash/gnome-utils/gnc-date-edit.c
+++ b/gnucash/gnome-utils/gnc-date-edit.c
@@ -147,33 +147,21 @@ gnc_strtok_r (char *s, const char *delim, char **save_ptr)
 static void
 gnc_date_edit_popdown(GNCDateEdit *gde)
 {
-#if GTK_CHECK_VERSION(3,20,0)
     GdkSeat *seat;
-#else
-    GdkDeviceManager *device_manager;
-#endif
     GdkDevice *pointer;
 
     g_return_if_fail (GNC_IS_DATE_EDIT (gde));
 
     ENTER("gde %p", gde);
 
-#if GTK_CHECK_VERSION(3,20,0)
     seat = gdk_display_get_default_seat (gdk_display_get_default());
     pointer = gdk_seat_get_pointer (seat);
-#else
-    device_manager = gdk_display_get_device_manager (gdk_display_get_default());
-    pointer = gdk_device_manager_get_client_pointer (device_manager);
-#endif
 
     gtk_grab_remove (gde->cal_popup);
     gtk_widget_hide (gde->cal_popup);
+
     if (pointer)
-#if GTK_CHECK_VERSION(3,20,0)
         gdk_seat_ungrab (seat);
-#else
-        gdk_device_ungrab (pointer, GDK_CURRENT_TIME);
-#endif
 
     gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gde->date_button),
                                   FALSE);
@@ -265,39 +253,20 @@ popup_grab_on_window (GdkWindow *window,
                       GdkDevice *pointer,
                       guint32    activate_time)
 {
-
-#if GTK_CHECK_VERSION(3,20,0)
     GdkDisplay *display = gdk_display_get_default ();
     GdkSeat *seat = gdk_display_get_default_seat (display);
     GdkEvent *event = gtk_get_current_event ();
 
     if (keyboard && gdk_seat_grab (seat, window, GDK_SEAT_CAPABILITY_KEYBOARD, TRUE, NULL,
-                                   event, NULL, NULL) != GDK_GRAB_SUCCESS )
-#else
-    if (keyboard && gdk_device_grab (keyboard, window,
-                                     GDK_OWNERSHIP_WINDOW, TRUE,
-                                     GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK,
-                                     NULL, activate_time) != GDK_GRAB_SUCCESS)
-#endif
+                                   event, NULL, NULL) != GDK_GRAB_SUCCESS)
         return FALSE;
 
-#if GTK_CHECK_VERSION(3,20,0)
     if (pointer && gdk_seat_grab (seat, window, GDK_SEAT_CAPABILITY_POINTER, TRUE, NULL,
-                                  event, NULL, NULL) != GDK_GRAB_SUCCESS )
-#else
-    if (pointer && gdk_device_grab (pointer, window,
-                                    GDK_OWNERSHIP_WINDOW, TRUE,
-                                    GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK |
-                                    GDK_POINTER_MOTION_MASK,
-                                    NULL, activate_time) != GDK_GRAB_SUCCESS)
-#endif
+                                  event, NULL, NULL) != GDK_GRAB_SUCCESS)
     {
         if (keyboard)
-#if GTK_CHECK_VERSION(3,20,0)
             gdk_seat_ungrab (seat);
-#else
-            gdk_device_ungrab (keyboard, activate_time);
-#endif
+
         return FALSE;
     }
     return TRUE;
diff --git a/gnucash/gnome-utils/gnc-dense-cal.c b/gnucash/gnome-utils/gnc-dense-cal.c
index e24bf9742..1fd79247f 100644
--- a/gnucash/gnome-utils/gnc-dense-cal.c
+++ b/gnucash/gnome-utils/gnc-dense-cal.c
@@ -993,10 +993,8 @@ gnc_dense_cal_draw_to_buffer(GncDenseCal *dcal)
 
         gtk_style_context_save (stylectxt);
         gtk_style_context_add_class (stylectxt, marker_color_class);
-#if GTK_CHECK_VERSION(3,22,0)
         gtk_style_context_add_class (stylectxt, GTK_STYLE_CLASS_VIEW);
         gtk_style_context_set_state (stylectxt, GTK_STATE_FLAG_SELECTED);
-#endif
 
         for (i = 0; i < dcal->numMarks; i++)
         {
@@ -1250,27 +1248,18 @@ static gint
 gnc_dense_cal_button_press(GtkWidget *widget,
                            GdkEventButton *evt)
 {
-#if GTK_CHECK_VERSION(3,22,0)
     GdkWindow *win = gdk_screen_get_root_window (gtk_widget_get_screen (widget));
     GdkMonitor *mon = gdk_display_get_monitor_at_window (gtk_widget_get_display (widget), win);
     GdkRectangle work_area_size;
-#else
-    GdkScreen *screen = gdk_screen_get_default ();
-#endif
     GtkAllocation alloc;
     GncDenseCal *dcal = GNC_DENSE_CAL(widget);
     gint win_xpos = evt->x_root + 5;
     gint win_ypos = evt->y_root + 5;
 
-#if GTK_CHECK_VERSION(3,22,0)
     gdk_monitor_get_workarea (mon, &work_area_size);
 
     dcal->screen_width = work_area_size.width;
     dcal->screen_height = work_area_size.height;
-#else
-    dcal->screen_width = gdk_screen_get_width (screen);
-    dcal->screen_height = gdk_screen_get_height (screen);
-#endif
 
     dcal->doc = wheres_this(dcal, evt->x, evt->y);
     dcal->showPopup = ~(dcal->showPopup);
@@ -1325,13 +1314,8 @@ gnc_dense_cal_motion_notify(GtkWidget *widget,
     /* As per https://www.gtk.org/tutorial/sec-eventhandling.html */
     if (event->is_hint)
     {
-#if GTK_CHECK_VERSION(3,20,0)
         GdkSeat *seat = gdk_display_get_default_seat (gdk_window_get_display (event->window));
         GdkDevice *pointer = gdk_seat_get_pointer (seat);
-#else
-        GdkDeviceManager *device_manager = gdk_display_get_device_manager (gdk_window_get_display (event->window));
-        GdkDevice *pointer = gdk_device_manager_get_client_pointer (device_manager);
-#endif
 
         gdk_window_get_device_position (event->window, pointer,  &unused,  &unused, &unused2);
     }
diff --git a/gnucash/gnome-utils/gnc-gnome-utils.c b/gnucash/gnome-utils/gnc-gnome-utils.c
index 7e893de97..17ff06918 100644
--- a/gnucash/gnome-utils/gnc-gnome-utils.c
+++ b/gnucash/gnome-utils/gnc-gnome-utils.c
@@ -410,11 +410,9 @@ gnc_gnome_help (const char *file_name, const char *anchor)
         uri = g_strconcat ("ghelp:", file_name, NULL);
 
     DEBUG ("Attempting to opening help uri %s", uri);
-#if GTK_CHECK_VERSION(3,22,0)
+
     success = gtk_show_uri_on_window (NULL, uri, gtk_get_current_event_time (), &error);
-#else
-    success = gtk_show_uri (NULL, uri, gtk_get_current_event_time (), &error);
-#endif
+
     g_free (uri);
     if (success)
         return;
@@ -507,11 +505,9 @@ gnc_launch_assoc (GtkWindow *parent, const char *uri)
         return;
 
     DEBUG ("Attempting to open uri %s", uri);
-#if GTK_CHECK_VERSION(3,22,0)
+
     success = gtk_show_uri_on_window (NULL, uri, gtk_get_current_event_time (), &error);
-#else
-    success = gtk_show_uri (NULL, uri, gtk_get_current_event_time (), &error);
-#endif
+
     if (success)
         return;
 
diff --git a/gnucash/gnome-utils/gnc-main-window.c b/gnucash/gnome-utils/gnc-main-window.c
index a9ab38578..8dfc6cb93 100644
--- a/gnucash/gnome-utils/gnc-main-window.c
+++ b/gnucash/gnome-utils/gnc-main-window.c
@@ -4825,7 +4825,6 @@ do_popup_menu(GncPluginPage *page, GdkEventButton *event)
 {
     GtkUIManager *ui_merge;
     GtkWidget *menu;
-    int button, event_time;
 
     g_return_if_fail(GNC_IS_PLUGIN_PAGE(page));
 
@@ -4843,22 +4842,8 @@ do_popup_menu(GncPluginPage *page, GdkEventButton *event)
         LEAVE("no menu");
         return;
     }
-
-#if GTK_CHECK_VERSION(3,22,0)
     gtk_menu_popup_at_pointer (GTK_MENU(menu), (GdkEvent *) event);
-#else
-    if (event)
-    {
-        button = event->button;
-        event_time = event->time;
-    }
-    else
-    {
-        button = 0;
-        event_time = gtk_get_current_event_time ();
-    }
-    gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, button, event_time);
-#endif
+
     LEAVE(" ");
 }
 
diff --git a/gnucash/gnome-utils/gnc-tree-view.c b/gnucash/gnome-utils/gnc-tree-view.c
index 6735fe23d..27a765dc9 100644
--- a/gnucash/gnome-utils/gnc-tree-view.c
+++ b/gnucash/gnome-utils/gnc-tree-view.c
@@ -279,11 +279,8 @@ gnc_tree_view_init (GncTreeView *view, void *data)
     priv->column_menu_icon_box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
     gtk_box_set_homogeneous (GTK_BOX(priv->column_menu_icon_box), FALSE);
 
-#if GTK_CHECK_VERSION(3,12,0)
     gtk_widget_set_margin_start (GTK_WIDGET(icon), 5);
-#else
-    gtk_widget_set_margin_left (GTK_WIDGET(icon), 5);
-#endif
+
     gtk_box_pack_end (GTK_BOX(priv->column_menu_icon_box), icon, FALSE, FALSE, 0);
 
     sep = gtk_separator_new (GTK_ORIENTATION_VERTICAL);
@@ -1405,12 +1402,7 @@ gnc_tree_view_select_column_cb (GtkTreeViewColumn *column,
     gtk_widget_show_all (menu);
 
     /* Pop the menu up at the button */
-#if GTK_CHECK_VERSION(3,22,0)
     gtk_menu_popup_at_pointer (GTK_MENU(priv->column_menu), NULL);
-#else
-    gtk_menu_popup (GTK_MENU(priv->column_menu), NULL, GTK_WIDGET(menu),
-                    NULL, NULL, 0, gtk_get_current_event_time ());
-#endif
 }
 
 
diff --git a/gnucash/gnome/reconcile-view.c b/gnucash/gnome/reconcile-view.c
index d600bca9c..c97d29ab4 100644
--- a/gnucash/gnome/reconcile-view.c
+++ b/gnucash/gnome/reconcile-view.c
@@ -150,11 +150,7 @@ gnc_reconcile_view_tooltip_cb (GNCQueryView *qview, gint x, gint y,
 
             if (keyboard_mode == FALSE)
             {
-#if GTK_CHECK_VERSION(3,20,0)
                 GdkSeat *seat;
-#else
-                GdkDeviceManager *device_manager;
-#endif
                 GdkDevice *pointer;
                 GtkWindow *tip_win = NULL;
                 GdkWindow *parent_window;
@@ -162,13 +158,9 @@ gnc_reconcile_view_tooltip_cb (GNCQueryView *qview, gint x, gint y,
 
                 parent_window = gtk_widget_get_parent_window (GTK_WIDGET (qview));
 
-#if GTK_CHECK_VERSION(3,20,0)
                 seat = gdk_display_get_default_seat (gdk_window_get_display (parent_window));
                 pointer = gdk_seat_get_pointer (seat);
-#else
-                device_manager = gdk_display_get_device_manager (gdk_window_get_display (parent_window));
-                pointer = gdk_device_manager_get_client_pointer (device_manager);
-#endif
+
                 gdk_window_get_device_position (parent_window, pointer, &cur_x, &cur_y, NULL);
 
                 gdk_window_get_origin (parent_window, &root_x, &root_y);
@@ -189,12 +181,7 @@ gnc_reconcile_view_tooltip_cb (GNCQueryView *qview, gint x, gint y,
 
                 if (GTK_IS_WINDOW (tip_win))
                 {
-#if GTK_CHECK_VERSION(3,22,0)
                     GdkMonitor *mon;
-#else
-                    GdkScreen *screen;
-                    gint monitor_num;
-#endif
                     GdkRectangle monitor;
                     GtkRequisition requisition;
                     gint x, y;
@@ -204,14 +191,9 @@ gnc_reconcile_view_tooltip_cb (GNCQueryView *qview, gint x, gint y,
                     x = root_x + cur_x + 10;
                     y = root_y + cur_y + 10;
 
-#if GTK_CHECK_VERSION(3,22,0)
                     mon = gdk_display_get_monitor_at_point (gdk_display_get_default(), x, y);
                     gdk_monitor_get_geometry (mon, &monitor);
-#else
-                    screen = gtk_widget_get_screen (GTK_WIDGET (qview));
-                    monitor_num = gdk_screen_get_monitor_at_point (screen, x, y);
-                    gdk_screen_get_monitor_geometry (screen, monitor_num, &monitor);
-#endif
+
                     if (x + requisition.width > monitor.x + monitor.width)
                         x -= x - (monitor.x + monitor.width) + requisition.width;
                     else if (x < monitor.x)
diff --git a/gnucash/gnome/window-reconcile.c b/gnucash/gnome/window-reconcile.c
index 431c3f64c..01d471028 100644
--- a/gnucash/gnome/window-reconcile.c
+++ b/gnucash/gnome/window-reconcile.c
@@ -954,31 +954,12 @@ gnc_reconcile_window_row_cb(GNCReconcileView *view, gpointer item,
 static void
 do_popup_menu(RecnWindow *recnData, GdkEventButton *event)
 {
-    GtkWidget *menu;
-    int button, event_time;
+    GtkWidget *menu = gtk_ui_manager_get_widget (recnData->ui_merge, "/MainPopup");
 
-    menu = gtk_ui_manager_get_widget(recnData->ui_merge, "/MainPopup");
     if (!menu)
-    {
         return;
-    }
 
-#if GTK_CHECK_VERSION(3,22,0)
     gtk_menu_popup_at_pointer (GTK_MENU(menu), (GdkEvent *) event);
-#else
-    if (event)
-    {
-        button = event->button;
-        event_time = event->time;
-    }
-    else
-    {
-        button = 0;
-        event_time = gtk_get_current_event_time ();
-    }
-
-    gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, button, event_time);
-#endif
 }
 
 
diff --git a/gnucash/gnome/window-reconcile2.c b/gnucash/gnome/window-reconcile2.c
index 17650de0d..1cd02dd71 100644
--- a/gnucash/gnome/window-reconcile2.c
+++ b/gnucash/gnome/window-reconcile2.c
@@ -886,31 +886,12 @@ gnc_reconcile_window_row_cb (GNCReconcileView *view, gpointer item,
 static void
 do_popup_menu (RecnWindow2 *recnData, GdkEventButton *event)
 {
-    GtkWidget *menu;
-    int button, event_time;
+    GtkWidget *menu = gtk_ui_manager_get_widget (recnData->ui_merge, "/MainPopup");
 
-    menu = gtk_ui_manager_get_widget (recnData->ui_merge, "/MainPopup");
     if (!menu)
-    {
         return;
-    }
 
-#if GTK_CHECK_VERSION(3,22,0)
     gtk_menu_popup_at_pointer (GTK_MENU(menu), (GdkEvent *) event);
-#else
-    if (event)
-    {
-        button = event->button;
-        event_time = event->time;
-    }
-    else
-    {
-        button = 0;
-        event_time = gtk_get_current_event_time ();
-    }
-
-    gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, button, event_time);
-#endif
 }
 
 
diff --git a/gnucash/html/gnc-html-webkit2.c b/gnucash/html/gnc-html-webkit2.c
index 8dfb6d441..f776b33ce 100644
--- a/gnucash/html/gnc-html-webkit2.c
+++ b/gnucash/html/gnc-html-webkit2.c
@@ -245,15 +245,9 @@ gnc_html_webkit_dispose( GObject* obj )
 
      if ( priv->web_view != NULL )
      {
-         // In Gtk Version 3.20 they relaxed the fact that the widget should be a
-         // direct child of the container otherwise it would be a critical error
-#if GTK_CHECK_VERSION(3,20,0)
-          gtk_container_remove( GTK_CONTAINER(priv->base.container),
-                                GTK_WIDGET(priv->web_view) );
-#else
-          GtkWidget *parent = gtk_widget_get_parent(GTK_WIDGET(priv->web_view));
-          gtk_container_remove( GTK_CONTAINER(priv->base.container), parent);
-#endif
+          gtk_container_remove (GTK_CONTAINER(priv->base.container),
+                                GTK_WIDGET(priv->web_view));
+
           priv->web_view = NULL;
      }
 
diff --git a/gnucash/import-export/csv-imp/gnc-csv-gnumeric-popup.c b/gnucash/import-export/csv-imp/gnc-csv-gnumeric-popup.c
index b2a5cc7ee..6c445b1e3 100644
--- a/gnucash/import-export/csv-imp/gnc-csv-gnumeric-popup.c
+++ b/gnucash/import-export/csv-imp/gnc-csv-gnumeric-popup.c
@@ -211,11 +211,5 @@ gnumeric_popup_menu (GtkMenu *menu, GdkEventButton *event)
      * instead pass 0.  Otherwise bringing up a menu with
      * the right button will disable clicking on the menu with the left.
      */
-#if GTK_CHECK_VERSION(3,22,0)
     gtk_menu_popup_at_pointer (GTK_MENU(menu), (GdkEvent *) event);
-#else
-    gtk_menu_popup (menu, NULL, NULL, NULL, NULL, 0,
-                    (event != NULL) ? event->time
-                    : gtk_get_current_event_time());
-#endif
 }
diff --git a/gnucash/import-export/import-main-matcher.c b/gnucash/import-export/import-main-matcher.c
index 53474891f..d7d20d656 100644
--- a/gnucash/import-export/import-main-matcher.c
+++ b/gnucash/import-export/import-main-matcher.c
@@ -633,16 +633,9 @@ gnc_gen_trans_view_popup_menu (GtkTreeView *treeview,
     gtk_menu_shell_append (GTK_MENU_SHELL(menu), menuitem);
     gtk_widget_show_all (menu);
     event_button = (GdkEventButton *) event;
-    /* Note: event can be NULL here when called from view_onPopupMenu;
-     *  gdk_event_get_time() accepts a NULL argument */
-    /* replace deprecated function for GTK versions >=3.22 */
-#if GTK_CHECK_VERSION(3,22,0)
-   gtk_menu_popup_at_pointer (GTK_MENU(menu), (GdkEvent*)event);
-#else
-    gtk_menu_popup (GTK_MENU(menu), NULL, NULL, NULL, NULL,
-                     (event_button != NULL) ? event_button->button : 0,
-                     gdk_event_get_time ((GdkEvent*)event));
-#endif
+    /* Note: event can be NULL here when called from view_onPopupMenu; */
+    gtk_menu_popup_at_pointer (GTK_MENU(menu), (GdkEvent*)event);
+
     LEAVE ("");
 }
 
diff --git a/gnucash/register/register-gnome/gnucash-sheet-private.c b/gnucash/register/register-gnome/gnucash-sheet-private.c
index 1980e3e55..0d36e967b 100644
--- a/gnucash/register/register-gnome/gnucash-sheet-private.c
+++ b/gnucash/register/register-gnome/gnucash-sheet-private.c
@@ -702,12 +702,3 @@ gnucash_sheet_draw_cursor (GnucashCursor *cursor, cairo_t *cr)
     cairo_set_line_width (cr, 1.0);
     cairo_stroke (cr);
 }
-
-void
-gnc_widget_add_style_class (GtkWidget *widget, const char *name)
-{
-#if !GTK_CHECK_VERSION(3,20,0)
-    GtkStyleContext *context = gtk_widget_get_style_context (widget);
-    gtk_style_context_add_class (context, name);
-#endif
-}
diff --git a/gnucash/register/register-gnome/gnucash-sheet.c b/gnucash/register/register-gnome/gnucash-sheet.c
index 6c6616ea7..2693245dc 100644
--- a/gnucash/register/register-gnome/gnucash-sheet.c
+++ b/gnucash/register/register-gnome/gnucash-sheet.c
@@ -1412,22 +1412,13 @@ gnucash_sheet_check_grab (GnucashSheet *sheet)
 {
     GdkModifierType mods;
     GdkDevice *device;
-#if GTK_CHECK_VERSION(3,20,0)
     GdkSeat *seat;
-#else
-    GdkDeviceManager *device_manager;
-#endif
 
     if (!sheet->grabbed)
         return;
 
-#if GTK_CHECK_VERSION(3,20,0)
     seat = gdk_display_get_default_seat (gdk_display_get_default());
     device = gdk_seat_get_pointer (seat);
-#else
-    device_manager = gdk_display_get_device_manager (gdk_display_get_default());
-    device = gdk_device_manager_get_client_pointer (device_manager);
-#endif
 
     gdk_device_get_state (device, gtk_widget_get_window (GTK_WIDGET(sheet)),
                           0, &mods);
@@ -1519,13 +1510,7 @@ gnucash_sheet_button_press_event (GtkWidget *widget, GdkEventButton *event)
     if (virt_loc_equal (new_virt_loc, cur_virt_loc) &&
         sheet->editing && do_popup)
     {
-#if GTK_CHECK_VERSION(3,22,0)
         gtk_menu_popup_at_pointer (GTK_MENU(sheet->popup), (GdkEvent *) event);
-#else
-        gtk_menu_popup(GTK_MENU(sheet->popup), NULL, NULL, NULL,
-                       sheet->popup_data, event->button, event->time);
-#endif
-
         return TRUE;
     }
 
@@ -1548,12 +1533,8 @@ gnucash_sheet_button_press_event (GtkWidget *widget, GdkEventButton *event)
         gnucash_sheet_check_grab (sheet);
 
     if (do_popup)
-#if GTK_CHECK_VERSION(3,22,0)
         gtk_menu_popup_at_pointer (GTK_MENU(sheet->popup), (GdkEvent *) event);
-#else
-        gtk_menu_popup(GTK_MENU(sheet->popup), NULL, NULL, NULL,
-                       sheet->popup_data, event->button, event->time);
-#endif
+
     return button_1 || do_popup;
 }
 
diff --git a/gnucash/register/register-gnome/gnucash-sheetP.h b/gnucash/register/register-gnome/gnucash-sheetP.h
index dc9d18e09..bb624af00 100644
--- a/gnucash/register/register-gnome/gnucash-sheetP.h
+++ b/gnucash/register/register-gnome/gnucash-sheetP.h
@@ -139,7 +139,5 @@ gboolean gnucash_sheet_draw_internal (GnucashSheet *sheet, cairo_t *cr,
                                       GtkAllocation *alloc);
 void gnucash_sheet_draw_cursor (GnucashCursor *cursor, cairo_t *cr);
 
-void gnc_widget_add_style_class (GtkWidget *widget, const char *name);
-
 /** @} */
 #endif

commit 065002190adef7734827a09a6551c5fd5d1095d5
Author: Robert Fewell <14uBobIT at gmail.com>
Date:   Fri May 1 11:46:49 2020 +0100

    Remove some Gtk version checks for CSS
    
    With the requirement for Gtk+ 3.22, the version checks dealing with CSS
    can be removed and the application CSS files dealing with version 3.10
    can be removed with the remaining being renamed.

diff --git a/doc/gtk-3.0.css b/doc/gtk-3.0.css
index 3494db505..ad780199a 100755
--- a/doc/gtk-3.0.css
+++ b/doc/gtk-3.0.css
@@ -38,35 +38,25 @@ scrollbar slider {
 }
 
 
-/* Register sheet font setting, use .gnc-class-sheet < gtk3.20 */
+/* Register sheet font setting */
 gnc-id-sheet {
   font: 10px arial, sans-serif;
 }
 
 
-/* Register header font setting, use .gnc-class-header < gtk3.20 */
+/* Register header font setting */
 gnc-id-header {
   background-color: pink;
   color:blue;
 }
 
 
-/* Register cursor font setting, use .gnc-class-cursor < gtk3.20 */
+/* Register cursor font setting */
 gnc-id-cursor {
   background-color: #BDB76B;
   color: white;
 }
 
-xgnc-id-cursor entry {
-  background-color: pink;
-
-  margin: 2px 5px 2px 5px;
-  padding: 0px 2px 0px 2px;
-
-/*  border-color: green;
-  color: white; */
-}
-
 gnc-id-cursor button {
   border-width: 1px;
   border-color: green;
diff --git a/gnucash/gnome-utils/gnc-dense-cal.c b/gnucash/gnome-utils/gnc-dense-cal.c
index 6a87f07a9..e24bf9742 100644
--- a/gnucash/gnome-utils/gnc-dense-cal.c
+++ b/gnucash/gnome-utils/gnc-dense-cal.c
@@ -222,9 +222,7 @@ gnc_dense_cal_class_init(GncDenseCalClass *klass)
     object_class = G_OBJECT_CLASS (klass);
     widget_class = GTK_WIDGET_CLASS (klass);
 
-#if GTK_CHECK_VERSION(3,20,0)
     gtk_widget_class_set_css_name (GTK_WIDGET_CLASS(klass), "calendar");
-#endif
 
     parent_class = g_type_class_peek_parent (klass);
 
diff --git a/gnucash/gnome-utils/gnc-gnome-utils.c b/gnucash/gnome-utils/gnc-gnome-utils.c
index 494f159f1..7e893de97 100644
--- a/gnucash/gnome-utils/gnc-gnome-utils.c
+++ b/gnucash/gnome-utils/gnc-gnome-utils.c
@@ -198,12 +198,8 @@ gnc_add_css_file (void)
     gtk_style_context_add_provider_for_screen (screen, GTK_STYLE_PROVIDER (provider_app), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
     gtk_style_context_add_provider_for_screen (screen, GTK_STYLE_PROVIDER (provider_user), GTK_STYLE_PROVIDER_PRIORITY_USER);
 
-#if GTK_CHECK_VERSION(3,20,0)
-    gtk_css_provider_load_from_resource (provider_app, "/org/gnucash/gnucash-320.css");
-#else
-    gtk_css_provider_load_from_resource (provider_app, "/org/gnucash/gnucash-310.css");
-#endif
-    gtk_css_provider_load_from_resource (provider_fallback,  "/org/gnucash/gnucash-fallback-310.css");
+    gtk_css_provider_load_from_resource (provider_app, "/org/gnucash/gnucash.css");
+    gtk_css_provider_load_from_resource (provider_fallback,  "/org/gnucash/gnucash-fallback.css");
 
     var = gnc_userconfig_dir ();
     if (var)
diff --git a/gnucash/gnucash-310.css b/gnucash/gnucash-310.css
deleted file mode 100644
index 7d5654a8f..000000000
--- a/gnucash/gnucash-310.css
+++ /dev/null
@@ -1,87 +0,0 @@
-/* Note: Widgets obtained from Glade files will not be addressable
-   unless they have been named or have style classes added. Only
-   the widget type can be configured unless they are named in code */
-
-
-/* Negative value label colors */
-.gnc-class-default-color {
-  color: @default-color;
-}
-
-.gnc-class-negative-numbers {
-  color: @negative-numbers;
-}
-
-/* Register Cursor settings, top, right, bottom, left */
-.gnc-class-cursor .entry {
-  margin: 2px 5px 2px 5px;  /* this only works by doing it in code, yellow area */
-  padding: 2px 2px 2px 2px; /* all work with different values, around the text blue area */
-}
-
-.gnc-class-cursor .button {
-  margin: 1px 1px 1px 1px; /* does not work, not used, here for completeness */
-}
-
-/* Register defaults */
- at define-color register_header_bg_color #96B183;
- at define-color register_primary_bg_color #BFDEB9;
- at define-color register_secondary_bg_color #F6FFDA;
- at define-color register_split_bg_color #EDE7D3;
- at define-color register_cursor_bg_color #FFEF98;
- at define-color register_fg_color black;
-
-*.gnc-class-register-foreground {
-  color: @register_fg_color;
-}
-
-*.gnc-class-register-header {
-  background-color: @register_header_bg_color;
-}
-
-*.gnc-class-register-primary {
-  background-color: @register_primary_bg_color;
-}
-
-*.gnc-class-register-primary:insensitive {
-  background-color: mix (@register_primary_bg_color, grey, 0.2);
-}
-
-*.gnc-class-register-secondary {
-  background-color: @register_secondary_bg_color;
-}
-
-*.gnc-class-register-secondary:insensitive {
-  background-color: mix (@register_secondary_bg_color, grey, 0.2);
-}
-
-*.gnc-class-register-split {
-  background-color: @register_split_bg_color;
-}
-
-*.gnc-class-register-split:insensitive {
-  background-color: mix (@register_split_bg_color, grey, 0.2);
-}
-
-*.gnc-class-register-cursor {
-  background-color: @register_cursor_bg_color;
-}
-
-*.gnc-class-register-cursor:insensitive {
-  background-color: mix (@register_cursor_bg_color, grey, 0.2);
-}
-
-/* Change font color by mixing with grey */
-.gnc-class-lighter-grey-mix {
-  color: mix (currentColor, grey, 0.8);
-}
-
-.gnc-class-darker-grey-mix {
-  color: mix (currentColor, grey, 0.2);
-}
-
-/* Some tweaks for the about dialog */
-dialog#GnuCash > box > box > label
-{
-  font-size: 24px;
-}
-
diff --git a/gnucash/gnucash-fallback-310.css b/gnucash/gnucash-fallback.css
similarity index 100%
rename from gnucash/gnucash-fallback-310.css
rename to gnucash/gnucash-fallback.css
diff --git a/gnucash/gnucash-gresources.xml b/gnucash/gnucash-gresources.xml
index 78dbc6d32..b152e45f2 100644
--- a/gnucash/gnucash-gresources.xml
+++ b/gnucash/gnucash-gresources.xml
@@ -2,8 +2,7 @@
 
 <gresources>
   <gresource prefix="/org/gnucash">
-    <file>gnucash-310.css</file>
-    <file>gnucash-320.css</file>
-    <file>gnucash-fallback-310.css</file>
+    <file>gnucash.css</file>
+    <file>gnucash-fallback.css</file>
   </gresource>
 </gresources>
diff --git a/gnucash/gnucash-320.css b/gnucash/gnucash.css
similarity index 96%
rename from gnucash/gnucash-320.css
rename to gnucash/gnucash.css
index 44a3f3eeb..92e8dca84 100644
--- a/gnucash/gnucash-320.css
+++ b/gnucash/gnucash.css
@@ -79,6 +79,11 @@ gnc-id-cursor button {
   color: mix (currentColor, grey, 0.2);
 }
 
+/* Highlight some text */
+.gnc-class-highlight {
+  color: blue;
+}
+
 /* Some tweaks for the about dialog */
 dialog#GnuCash > box > box > label
 {
diff --git a/gnucash/register/register-gnome/gnucash-header.c b/gnucash/register/register-gnome/gnucash-header.c
index 76f2faff6..afdfcb2b0 100644
--- a/gnucash/register/register-gnome/gnucash-header.c
+++ b/gnucash/register/register-gnome/gnucash-header.c
@@ -595,9 +595,6 @@ gnc_header_init (GncHeader *header)
     header->width = 400;
     header->style = NULL;
 
-    // This sets a style class for when Gtk+ version is less than 3.20
-    gnc_widget_add_style_class (GTK_WIDGET(header), "gnc-class-header");
-
     gtk_widget_add_events(GTK_WIDGET(header), (GDK_EXPOSURE_MASK
                           | GDK_BUTTON_PRESS_MASK
                           | GDK_BUTTON_RELEASE_MASK
@@ -616,9 +613,7 @@ gnc_header_class_init (GncHeaderClass *header_class)
     GObjectClass  *object_class = G_OBJECT_CLASS (header_class);
     GtkWidgetClass *item_class = GTK_WIDGET_CLASS (header_class);
 
-#if GTK_CHECK_VERSION(3,20,0)
     gtk_widget_class_set_css_name (GTK_WIDGET_CLASS(header_class), "gnc-id-header");
-#endif
 
     parent_class = g_type_class_peek_parent (header_class);
 
diff --git a/gnucash/register/register-gnome/gnucash-item-edit.c b/gnucash/register/register-gnome/gnucash-item-edit.c
index cf3ed6982..519056d9b 100644
--- a/gnucash/register/register-gnome/gnucash-item-edit.c
+++ b/gnucash/register/register-gnome/gnucash-item-edit.c
@@ -146,9 +146,7 @@ gnc_item_edit_tb_class_init (GncItemEditTbClass *gnc_item_edit_tb_class)
     GObjectClass  *object_class;
     GtkWidgetClass *widget_class;
 
-#if GTK_CHECK_VERSION(3,20,0)
     gtk_widget_class_set_css_name (GTK_WIDGET_CLASS(gnc_item_edit_tb_class), "button");
-#endif
 
     gnc_item_edit_tb_parent_class = g_type_class_peek_parent (gnc_item_edit_tb_class);
 
@@ -208,9 +206,6 @@ gnc_item_edit_tb_new (GnucashSheet *sheet)
                           "sheet", sheet,
                            NULL);
 
-    // This sets a style class for when Gtk+ version is less than 3.20
-    gnc_widget_add_style_class (GTK_WIDGET(item_edit_tb), "button");
-
     context = gtk_widget_get_style_context (GTK_WIDGET(item_edit_tb));
     gtk_style_context_add_class (context, GTK_STYLE_CLASS_BUTTON);
 
@@ -552,15 +547,12 @@ draw_text_cursor_cb (GtkWidget *widget, cairo_t *cr, gpointer user_data)
     // Now draw a vertical line
     cairo_set_source_rgb (cr, fg_color->red, fg_color->green, fg_color->blue);
     cairo_set_line_width (cr, 1.0);
-#if GTK_CHECK_VERSION(3,20,0)
+
     cairo_move_to (cr, cursor_x + 0.5, gnc_item_edit_get_margin (item_edit, top) +
                                        gnc_item_edit_get_padding_border (item_edit, top));
     cairo_rel_line_to (cr, 0, height - gnc_item_edit_get_margin (item_edit, top_bottom) -
                                        gnc_item_edit_get_padding_border (item_edit, top_bottom));
-#else
-    cairo_move_to (cr, cursor_x + 0.5, gnc_item_edit_get_padding_border (item_edit, top));
-    cairo_rel_line_to (cr, 0, height - gnc_item_edit_get_padding_border (item_edit, top_bottom));
-#endif
+
     cairo_stroke (cr);
 
     return FALSE;
@@ -710,9 +702,7 @@ gnc_item_edit_class_init (GncItemEditClass *gnc_item_edit_class)
     GObjectClass  *object_class;
     GtkWidgetClass *widget_class;
 
-#if GTK_CHECK_VERSION(3,20,0)
     gtk_widget_class_set_css_name (GTK_WIDGET_CLASS(gnc_item_edit_class), "gnc-id-cursor");
-#endif
 
     gnc_item_edit_parent_class = g_type_class_peek_parent (gnc_item_edit_class);
 
@@ -865,9 +855,6 @@ gnc_item_edit_new (GnucashSheet *sheet)
                            NULL);
     gtk_layout_put (GTK_LAYOUT(sheet), GTK_WIDGET(item_edit), 0, 0);
 
-    // This sets a style class for when Gtk+ version is less than 3.20
-    gnc_widget_add_style_class (GTK_WIDGET(item_edit), "gnc-class-cursor");
-
     /* Create the text entry */
     item_edit->editor = gtk_entry_new();
     sheet->entry = item_edit->editor;
@@ -889,17 +876,6 @@ gnc_item_edit_new (GnucashSheet *sheet)
     gtk_widget_set_can_focus (GTK_WIDGET(item_edit->editor), FALSE);
     gtk_entry_set_has_frame (GTK_ENTRY(item_edit->editor), FALSE);
 
-#if !GTK_CHECK_VERSION(3,20,0)
-    gtk_widget_set_margin_start (GTK_WIDGET(item_edit->editor),
-                                 gnc_item_edit_get_margin (item_edit, left));
-    gtk_widget_set_margin_end (GTK_WIDGET(item_edit->editor),
-                               gnc_item_edit_get_margin (item_edit, right));
-    gtk_widget_set_margin_top (GTK_WIDGET(item_edit->editor),
-                               gnc_item_edit_get_margin (item_edit, top));
-    gtk_widget_set_margin_bottom (GTK_WIDGET(item_edit->editor),
-                                  gnc_item_edit_get_margin (item_edit, bottom));
-#endif
-
     // Connect to the draw signal so we can draw a cursor
     g_signal_connect_after (item_edit->editor, "draw",
                             G_CALLBACK (draw_text_cursor_cb), item_edit);
diff --git a/gnucash/register/register-gnome/gnucash-register.c b/gnucash/register/register-gnome/gnucash-register.c
index 2ad63065a..3cafe0870 100644
--- a/gnucash/register/register-gnome/gnucash-register.c
+++ b/gnucash/register/register-gnome/gnucash-register.c
@@ -338,9 +338,7 @@ gnucash_register_class_init (GnucashRegisterClass *klass)
 
     gobject_class = G_OBJECT_CLASS (klass);
 
-#if GTK_CHECK_VERSION(3,20,0)
     gtk_widget_class_set_css_name (GTK_WIDGET_CLASS(klass), "gnc-id-register");
-#endif
 
     register_parent_class = g_type_class_peek_parent (klass);
 
@@ -399,9 +397,6 @@ gnucash_register_init (GnucashRegister *g_reg)
     gtk_widget_set_can_focus (GTK_WIDGET(table), FALSE);
     gtk_widget_set_can_default (GTK_WIDGET(table), FALSE);
 
-    // This sets a style class for when Gtk+ version is less than 3.20
-    gnc_widget_add_style_class (GTK_WIDGET(g_reg), "gnc-class-register");
-
     gtk_grid_set_row_homogeneous (GTK_GRID(table), FALSE);
     gtk_grid_set_column_homogeneous (GTK_GRID(table), FALSE);
 }
diff --git a/gnucash/register/register-gnome/gnucash-sheet.c b/gnucash/register/register-gnome/gnucash-sheet.c
index 76ef15227..6c6616ea7 100644
--- a/gnucash/register/register-gnome/gnucash-sheet.c
+++ b/gnucash/register/register-gnome/gnucash-sheet.c
@@ -2590,9 +2590,7 @@ gnucash_sheet_class_init (GnucashSheetClass *klass)
     gobject_class = G_OBJECT_CLASS (klass);
     widget_class = GTK_WIDGET_CLASS (klass);
 
-#if GTK_CHECK_VERSION(3,20,0)
     gtk_widget_class_set_css_name (GTK_WIDGET_CLASS(klass), "gnc-id-sheet");
-#endif
 
     sheet_parent_class = g_type_class_peek_parent (klass);
 
@@ -2620,9 +2618,6 @@ gnucash_sheet_init (GnucashSheet *sheet)
     gtk_widget_set_can_focus (GTK_WIDGET(sheet), TRUE);
     gtk_widget_set_can_default (GTK_WIDGET(sheet), TRUE);
 
-    // This sets a style class for when Gtk+ version is less than 3.20
-    gnc_widget_add_style_class (GTK_WIDGET(sheet), "gnc-class-sheet");
-
     sheet->num_visible_blocks = 1;
     sheet->num_visible_phys_rows = 1;
 



Summary of changes:
 borrowed/goffice/go-optionmenu.c                   | 74 ------------------
 doc/gtk-3.0.css                                    | 16 +---
 gnucash/gnome-utils/dialog-utils.c                 | 35 +++------
 gnucash/gnome-utils/gnc-cell-renderer-popup.c      | 51 +++----------
 gnucash/gnome-utils/gnc-combott.c                  | 72 ------------------
 gnucash/gnome-utils/gnc-date-edit.c                | 46 +++---------
 gnucash/gnome-utils/gnc-dense-cal.c                | 18 -----
 gnucash/gnome-utils/gnc-gnome-utils.c              | 20 ++---
 gnucash/gnome-utils/gnc-main-window.c              | 17 +----
 gnucash/gnome-utils/gnc-tree-view.c                | 10 +--
 gnucash/gnome/reconcile-view.c                     | 24 +-----
 gnucash/gnome/window-reconcile.c                   | 21 +-----
 gnucash/gnome/window-reconcile2.c                  | 21 +-----
 gnucash/gnucash-310.css                            | 87 ----------------------
 ...ucash-fallback-310.css => gnucash-fallback.css} |  0
 gnucash/gnucash-gresources.xml                     |  5 +-
 gnucash/{gnucash-320.css => gnucash.css}           |  5 ++
 gnucash/html/gnc-html-webkit2.c                    | 12 +--
 .../import-export/csv-imp/gnc-csv-gnumeric-popup.c |  6 --
 gnucash/import-export/import-main-matcher.c        | 13 +---
 gnucash/register/register-gnome/gnucash-header.c   | 18 ++---
 .../register/register-gnome/gnucash-item-edit.c    | 28 +------
 gnucash/register/register-gnome/gnucash-register.c |  5 --
 .../register-gnome/gnucash-sheet-private.c         |  9 ---
 gnucash/register/register-gnome/gnucash-sheet.c    | 34 ++-------
 gnucash/register/register-gnome/gnucash-sheetP.h   |  2 -
 26 files changed, 73 insertions(+), 576 deletions(-)
 delete mode 100644 gnucash/gnucash-310.css
 rename gnucash/{gnucash-fallback-310.css => gnucash-fallback.css} (100%)
 rename gnucash/{gnucash-320.css => gnucash.css} (96%)



More information about the gnucash-changes mailing list