[evolution/gnome-42] I#1895 - Misc: Handle numpad Enter similarly as the Enter key



commit 7462aaf534440a0bdd954abaeae5ca660ba98534
Author: Milan Crha <mcrha redhat com>
Date:   Tue May 10 09:22:48 2022 +0200

    I#1895 - Misc: Handle numpad Enter similarly as the Enter key
    
    Closes https://gitlab.gnome.org/GNOME/evolution/-/issues/1895

 .../gui/contact-list-editor/e-contact-list-editor.c            |  2 +-
 src/addressbook/gui/widgets/e-contact-map-window.c             |  2 +-
 src/composer/e-composer-actions.c                              |  2 +-
 src/e-util/e-calendar-item.c                                   |  1 +
 src/e-util/e-dateedit.c                                        | 10 +++++-----
 src/e-util/e-html-editor-find-dialog.c                         |  2 +-
 src/e-util/e-html-editor-link-dialog.c                         |  2 +-
 7 files changed, 11 insertions(+), 10 deletions(-)
---
diff --git a/src/addressbook/gui/contact-list-editor/e-contact-list-editor.c 
b/src/addressbook/gui/contact-list-editor/e-contact-list-editor.c
index b8b6808634..525804cb9e 100644
--- a/src/addressbook/gui/contact-list-editor/e-contact-list-editor.c
+++ b/src/addressbook/gui/contact-list-editor/e-contact-list-editor.c
@@ -799,7 +799,7 @@ contact_list_editor_email_entry_key_press_event_cb (GtkWidget *widget,
                }
        }
 
-       if (can_comma || event->keyval == GDK_KEY_Return) {
+       if (can_comma || event->keyval == GDK_KEY_Return || event->keyval == GDK_KEY_KP_Enter) {
                g_signal_emit_by_name (WIDGET (EMAIL_ENTRY), "activate", 0);
 
                return TRUE;
diff --git a/src/addressbook/gui/widgets/e-contact-map-window.c 
b/src/addressbook/gui/widgets/e-contact-map-window.c
index 63103c4f8f..486f2d66d2 100644
--- a/src/addressbook/gui/widgets/e-contact-map-window.c
+++ b/src/addressbook/gui/widgets/e-contact-map-window.c
@@ -268,7 +268,7 @@ contact_map_window_entry_key_pressed_cb (GtkWidget *entry,
                                          GdkEventKey *event,
                                          gpointer user_data)
 {
-       if (event->keyval == GDK_KEY_Return)
+       if (event->keyval == GDK_KEY_Return || event->keyval == GDK_KEY_KP_Enter)
                contact_map_window_find_contact_cb (NULL, user_data);
 
        return FALSE;
diff --git a/src/composer/e-composer-actions.c b/src/composer/e-composer-actions.c
index 67adb5e15d..846a6a7c20 100644
--- a/src/composer/e-composer-actions.c
+++ b/src/composer/e-composer-actions.c
@@ -311,7 +311,7 @@ composer_actions_accel_activate_cb (GtkAccelGroup *accel_group,
 {
        EMsgComposer *composer = user_data;
 
-       if (keyval == GDK_KEY_Return && (modifier & GDK_MODIFIER_MASK) == GDK_CONTROL_MASK &&
+       if ((keyval == GDK_KEY_Return || keyval == GDK_KEY_KP_Enter) && (modifier & GDK_MODIFIER_MASK) == 
GDK_CONTROL_MASK &&
            !e_util_prompt_user (GTK_WINDOW (composer), "org.gnome.evolution.mail",
                "prompt-on-accel-send", "mail-composer:prompt-accel-send", NULL)) {
                return TRUE;
diff --git a/src/e-util/e-calendar-item.c b/src/e-util/e-calendar-item.c
index 14669d4396..34b8e4d47e 100644
--- a/src/e-util/e-calendar-item.c
+++ b/src/e-util/e-calendar-item.c
@@ -2083,6 +2083,7 @@ e_calendar_item_key_press_event (ECalendarItem *calitem,
                break;
        case GDK_KEY_space:
        case GDK_KEY_Return:
+       case GDK_KEY_KP_Enter:
                e_calendar_item_stop_selecting (calitem, event->key.time);
                break;
        default:
diff --git a/src/e-util/e-dateedit.c b/src/e-util/e-dateedit.c
index ab7dd6d572..f3eabed0fa 100644
--- a/src/e-util/e-dateedit.c
+++ b/src/e-util/e-dateedit.c
@@ -1929,7 +1929,7 @@ on_date_entry_key_press (GtkWidget *widget,
 
        if (event_state & GDK_MOD1_MASK
            && (event_keyval == GDK_KEY_Up || event_keyval == GDK_KEY_Down
-               || event_keyval == GDK_KEY_Return)) {
+               || event_keyval == GDK_KEY_Return || event_keyval == GDK_KEY_KP_Enter)) {
                g_signal_stop_emission_by_name (widget, "key_press_event");
                e_date_edit_show_date_popup (dedit, key_event);
                return TRUE;
@@ -1937,7 +1937,7 @@ on_date_entry_key_press (GtkWidget *widget,
 
        /* If the user hits the return key emit a "date_changed" signal if
         * needed. But let the signal carry on. */
-       if (event_keyval == GDK_KEY_Return) {
+       if (event_keyval == GDK_KEY_Return || event_keyval == GDK_KEY_KP_Enter) {
                e_date_edit_check_date_changed (dedit);
                return FALSE;
        }
@@ -1962,10 +1962,10 @@ on_time_entry_key_press (GtkWidget *widget,
        /* I'd like to use Alt+Up/Down for popping up the list, like Win32,
         * but the combo steals any Up/Down keys, so we use Alt + Return. */
 #if 0
-       if (event_state & GDK_MOD1_MASK
+       if ((event_state & GDK_MOD1_MASK) != 0
            && (event_keyval == GDK_KEY_Up || event_keyval == GDK_KEY_Down)) {
 #else
-       if (event_state & GDK_MOD1_MASK && event_keyval == GDK_KEY_Return) {
+       if ((event_state & GDK_MOD1_MASK) != 0 && (event_keyval == GDK_KEY_Return || event_keyval == 
GDK_KEY_KP_Enter)) {
 #endif
                g_signal_stop_emission_by_name (widget, "key_press_event");
                g_signal_emit_by_name (child, "activate", 0);
@@ -1974,7 +1974,7 @@ on_time_entry_key_press (GtkWidget *widget,
 
        /* Stop the return key from emitting the activate signal, and check
         * if we need to emit a "time_changed" signal. */
-       if (event_keyval == GDK_KEY_Return) {
+       if (event_keyval == GDK_KEY_Return || event_keyval == GDK_KEY_KP_Enter) {
                g_signal_stop_emission_by_name (widget, "key_press_event");
                e_date_edit_check_time_changed (dedit);
                return TRUE;
diff --git a/src/e-util/e-html-editor-find-dialog.c b/src/e-util/e-html-editor-find-dialog.c
index f38e3883c4..a4244d4bf4 100644
--- a/src/e-util/e-html-editor-find-dialog.c
+++ b/src/e-util/e-html-editor-find-dialog.c
@@ -148,7 +148,7 @@ entry_key_release_event (GtkWidget *widget,
        GdkEventKey *key = &event->key;
        EHTMLEditorFindDialog *dialog = user_data;
 
-       if (key->keyval == GDK_KEY_Return) {
+       if (key->keyval == GDK_KEY_Return || key->keyval == GDK_KEY_KP_Enter) {
                html_editor_find_dialog_find_cb (dialog);
                return TRUE;
        }
diff --git a/src/e-util/e-html-editor-link-dialog.c b/src/e-util/e-html-editor-link-dialog.c
index 3ad8ceac78..a474193077 100644
--- a/src/e-util/e-html-editor-link-dialog.c
+++ b/src/e-util/e-html-editor-link-dialog.c
@@ -108,7 +108,7 @@ html_editor_link_dialog_entry_key_pressed (EHTMLEditorLinkDialog *dialog,
 {
        /* We can't do things in key_released, because then you could not open
         * this dialog from main menu by pressing enter on Insert->Link action */
-       if (event->keyval == GDK_KEY_Return) {
+       if (event->keyval == GDK_KEY_Return || event->keyval == GDK_KEY_KP_Enter) {
                html_editor_link_dialog_ok (dialog);
                return TRUE;
        }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]