gnucash stable: Multiple changes pushed

John Ralls jralls at code.gnucash.org
Sun May 3 16:14:00 EDT 2026


Updated	 via  https://github.com/Gnucash/gnucash/commit/e2ddac1a (commit)
	 via  https://github.com/Gnucash/gnucash/commit/28ee45ad (commit)
	from  https://github.com/Gnucash/gnucash/commit/67374d45 (commit)



commit e2ddac1a06acea01c832662cb0c582e1d38b4198
Merge: 67374d45cb 28ee45ad51
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun May 3 13:12:24 2026 -0700

    Merge Sherlock's 'fix-event-callback' into stable.


commit 28ee45ad517e9ca17e6504078d25ac11d1092ebd
Author: Sherlock <119709043+agwekixj at users.noreply.github.com>
Date:   Wed Apr 29 15:34:40 2026 -0700

    Correct key_press_event and key_release_event callback function return definition.
    
    While debugging another issue, noted the improper void return definition of the key-press-event callback function key_press_item() in combocell-gnome.c.  A quick search found the same issue in completioncell-gnome.c and datecell-gnome.c and inconsistent scope and return types in five other files.

diff --git a/gnucash/gnome-utils/dialog-options.cpp b/gnucash/gnome-utils/dialog-options.cpp
index b24ced1007..84c3d64a61 100644
--- a/gnucash/gnome-utils/dialog-options.cpp
+++ b/gnucash/gnome-utils/dialog-options.cpp
@@ -456,7 +456,7 @@ dialog_destroy_cb (GtkWidget *object, GncOptionsDialog *win)
 }
 
 // "key_press_event" signal handler
-static int
+static gboolean
 dialog_window_key_press_cb(GtkWidget *widget, GdkEventKey *event, gpointer data)
 {
     GncOptionsDialog *win = static_cast<decltype(win)>(data);
diff --git a/gnucash/gnome-utils/gnc-date-edit.c b/gnucash/gnome-utils/gnc-date-edit.c
index dabed64afc..73634c5283 100644
--- a/gnucash/gnome-utils/gnc-date-edit.c
+++ b/gnucash/gnome-utils/gnc-date-edit.c
@@ -163,7 +163,7 @@ delete_popup (GtkWidget *widget, GdkEvent *event, gpointer data)
     return TRUE;
 }
 
-static gint
+static gboolean
 key_press_popup (GtkWidget *widget, GdkEventKey *event, gpointer data)
 {
     GNCDateEdit *gde = data;
@@ -782,7 +782,7 @@ date_accel_key_press(GtkWidget *widget, GdkEventKey *event, gpointer data)
     return TRUE;
 }
 
-static gint
+static gboolean
 key_press_entry (GtkWidget *widget, GdkEventKey *event, gpointer data)
 {
     if (!date_accel_key_press(widget, event, data))
diff --git a/gnucash/gnome/dialog-commodities.cpp b/gnucash/gnome/dialog-commodities.cpp
index 3f00b56078..b672355d81 100644
--- a/gnucash/gnome/dialog-commodities.cpp
+++ b/gnucash/gnome/dialog-commodities.cpp
@@ -82,9 +82,9 @@ void gnc_commodities_dialog_rename_namespace_clicked (GtkWidget *widget, gpointe
 void gnc_commodities_show_currencies_toggled (GtkToggleButton *toggle, CommoditiesDialog *cd);
 }
 
-gboolean gnc_commodities_window_key_press_cb (GtkWidget *widget,
-                                              GdkEventKey *event,
-                                              gpointer data);
+static gboolean gnc_commodities_window_key_press_cb (GtkWidget *widget,
+                                                     GdkEventKey *event,
+                                                     gpointer data);
 
 
 void
@@ -508,7 +508,7 @@ show_handler (const char *klass, gint component_id,
     return(TRUE);
 }
 
-gboolean
+static gboolean
 gnc_commodities_window_key_press_cb (GtkWidget *widget, GdkEventKey *event,
                                      gpointer data)
 {
diff --git a/gnucash/gnome/dialog-price-edit-db.cpp b/gnucash/gnome/dialog-price-edit-db.cpp
index 336edfdc31..2308e36e30 100644
--- a/gnucash/gnome/dialog-price-edit-db.cpp
+++ b/gnucash/gnome/dialog-price-edit-db.cpp
@@ -926,7 +926,7 @@ show_handler (const char *klass, gint component_id,
 }
 
 
-gboolean
+static gboolean
 gnc_prices_dialog_key_press_cb (GtkWidget *widget, GdkEventKey *event,
                                 gpointer data)
 {
diff --git a/gnucash/register/register-gnome/combocell-gnome.c b/gnucash/register/register-gnome/combocell-gnome.c
index 0f00e5028a..9f8ee160b8 100644
--- a/gnucash/register/register-gnome/combocell-gnome.c
+++ b/gnucash/register/register-gnome/combocell-gnome.c
@@ -202,7 +202,7 @@ activate_item_cb (GncItemList* item_list, char* item_string, gpointer data)
     box->list_popped = FALSE;
 }
 
-static void
+static gboolean
 key_press_item_cb (GncItemList* item_list, GdkEventKey* event, gpointer data)
 {
     ComboCell* cell = data;
@@ -220,6 +220,7 @@ key_press_item_cb (GncItemList* item_list, GdkEventKey* event, gpointer data)
                           (GdkEvent*) event);
         break;
     }
+    return TRUE;
 }
 
 static void
diff --git a/gnucash/register/register-gnome/completioncell-gnome.c b/gnucash/register/register-gnome/completioncell-gnome.c
index 77fca94b39..64235375c2 100644
--- a/gnucash/register/register-gnome/completioncell-gnome.c
+++ b/gnucash/register/register-gnome/completioncell-gnome.c
@@ -261,7 +261,7 @@ unblock_list_signals (CompletionCell* cell)
                                        0, 0, NULL, NULL, cell);
 }
 
-static void
+static gboolean
 key_press_item_cb (GncItemList* item_list, GdkEventKey* event, gpointer user_data)
 {
     CompletionCell* cell = user_data;
@@ -281,6 +281,7 @@ key_press_item_cb (GncItemList* item_list, GdkEventKey* event, gpointer user_dat
                           (GdkEvent*) event);
         break;
     }
+    return TRUE;
 }
 
 static void
diff --git a/gnucash/register/register-gnome/datecell-gnome.c b/gnucash/register/register-gnome/datecell-gnome.c
index ca0b961f79..351019912b 100644
--- a/gnucash/register/register-gnome/datecell-gnome.c
+++ b/gnucash/register/register-gnome/datecell-gnome.c
@@ -286,7 +286,7 @@ date_selected_cb (GNCDatePicker *gdp, gpointer data)
     box->in_date_select = FALSE;
 }
 
-static void
+static gboolean
 key_press_item_cb (GNCDatePicker *gdp, GdkEventKey *event, gpointer data)
 {
     DateCell *cell = data;
@@ -303,6 +303,7 @@ key_press_item_cb (GNCDatePicker *gdp, GdkEventKey *event, gpointer data)
         gtk_widget_event(GTK_WIDGET (box->sheet), (GdkEvent *) event);
         break;
     }
+    return TRUE;
 }
 
 static void
diff --git a/gnucash/register/register-gnome/gnucash-sheet.c b/gnucash/register/register-gnome/gnucash-sheet.c
index eccdc249af..4fca89639c 100644
--- a/gnucash/register/register-gnome/gnucash-sheet.c
+++ b/gnucash/register/register-gnome/gnucash-sheet.c
@@ -1783,7 +1783,7 @@ pass_to_entry_handler (GnucashSheet *sheet, GdkEventKey *event)
     return result;
 }
 
-static gint
+static gboolean
 gnucash_sheet_key_press_event_internal (GtkWidget *widget, GdkEventKey *event)
 {
     Table *table;
@@ -1866,7 +1866,7 @@ gnucash_sheet_key_press_event_internal (GtkWidget *widget, GdkEventKey *event)
     return TRUE;
 }
 
-static gint
+static gboolean
 gnucash_sheet_key_press_event (GtkWidget *widget, GdkEventKey *event)
 {
     GnucashSheet *sheet;
@@ -1887,7 +1887,7 @@ gnucash_sheet_key_press_event (GtkWidget *widget, GdkEventKey *event)
     return gnucash_sheet_key_press_event_internal (widget, event);
 }
 
-static gint
+static gboolean
 gnucash_sheet_key_release_event (GtkWidget *widget, GdkEventKey *event)
 {
     g_return_val_if_fail (widget != NULL, TRUE);



Summary of changes:
 gnucash/gnome-utils/dialog-options.cpp                 | 2 +-
 gnucash/gnome-utils/gnc-date-edit.c                    | 4 ++--
 gnucash/gnome/dialog-commodities.cpp                   | 8 ++++----
 gnucash/gnome/dialog-price-edit-db.cpp                 | 2 +-
 gnucash/register/register-gnome/combocell-gnome.c      | 3 ++-
 gnucash/register/register-gnome/completioncell-gnome.c | 3 ++-
 gnucash/register/register-gnome/datecell-gnome.c       | 3 ++-
 gnucash/register/register-gnome/gnucash-sheet.c        | 6 +++---
 8 files changed, 17 insertions(+), 14 deletions(-)



More information about the gnucash-changes mailing list