diff --git a/x11-libs/gtk+:3/gtk+-3.24.1_insert.patch b/x11-libs/gtk+:3/gtk+-3.24.1_insert.patch index de3ba20..0e2a746 100644 --- a/x11-libs/gtk+:3/gtk+-3.24.1_insert.patch +++ b/x11-libs/gtk+:3/gtk+-3.24.1_insert.patch @@ -1,6 +1,6 @@ -diff -ur gtk+-3.24.1/gtk/gtkentry.c gtk+-3.24.1_patched/gtk/gtkentry.c ---- gtk+-3.24.1/gtk/gtkentry.c 2018-06-03 15:43:28.000000000 +0200 -+++ gtk+-3.24.1_patched/gtk/gtkentry.c 2019-03-24 12:26:55.484614867 +0100 +diff '--color=auto' -ur gtk-3.24.48-orig/gtk/gtkentry.c gtk-3.24.48/gtk/gtkentry.c +--- gtk-3.24.48-orig/gtk/gtkentry.c 2025-01-25 14:25:12.000000000 +0100 ++++ gtk-3.24.48/gtk/gtkentry.c 2025-03-24 10:55:25.453442872 +0100 @@ -323,6 +323,7 @@ CUT_CLIPBOARD, COPY_CLIPBOARD, @@ -9,14 +9,14 @@ diff -ur gtk+-3.24.1/gtk/gtkentry.c gtk+-3.24.1_patched/gtk/gtkentry.c TOGGLE_OVERWRITE, ICON_PRESS, ICON_RELEASE, -@@ -552,6 +553,7 @@ +@@ -553,6 +554,7 @@ static void gtk_entry_cut_clipboard (GtkEntry *entry); static void gtk_entry_copy_clipboard (GtkEntry *entry); static void gtk_entry_paste_clipboard (GtkEntry *entry); +static void gtk_entry_paste_selection (GtkEntry *entry); static void gtk_entry_toggle_overwrite (GtkEntry *entry); + static void gtk_entry_toggle_direction (GtkEntry *entry); static void gtk_entry_insert_emoji (GtkEntry *entry); - static void gtk_entry_select_all (GtkEntry *entry); @@ -816,6 +818,7 @@ class->cut_clipboard = gtk_entry_cut_clipboard; class->copy_clipboard = gtk_entry_copy_clipboard; @@ -25,23 +25,23 @@ diff -ur gtk+-3.24.1/gtk/gtkentry.c gtk+-3.24.1_patched/gtk/gtkentry.c class->toggle_overwrite = gtk_entry_toggle_overwrite; class->insert_emoji = gtk_entry_insert_emoji; class->activate = gtk_entry_real_activate; -@@ -1828,6 +1831,15 @@ +@@ -1829,6 +1832,15 @@ NULL, G_TYPE_NONE, 0); + signals[PASTE_SELECTION] = -+ g_signal_new (I_("paste-selection"), -+ G_OBJECT_CLASS_TYPE (gobject_class), -+ G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, -+ G_STRUCT_OFFSET (GtkEntryClass, paste_selection), -+ NULL, NULL, -+ NULL, -+ G_TYPE_NONE, 0); ++ g_signal_new (I_("paste-selection"), ++ G_OBJECT_CLASS_TYPE (gobject_class), ++ G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, ++ G_STRUCT_OFFSET (GtkEntryClass, paste_selection), ++ NULL, NULL, ++ NULL, ++ G_TYPE_NONE, 0); + /** * GtkEntry::toggle-overwrite: * @entry: the object which received the signal -@@ -2086,14 +2098,14 @@ +@@ -2096,14 +2108,14 @@ gtk_binding_entry_add_signal (binding_set, GDK_KEY_Insert, GDK_CONTROL_MASK, "copy-clipboard", 0); gtk_binding_entry_add_signal (binding_set, GDK_KEY_Insert, GDK_SHIFT_MASK, @@ -58,37 +58,37 @@ diff -ur gtk+-3.24.1/gtk/gtkentry.c gtk+-3.24.1_patched/gtk/gtkentry.c /* Overwrite */ gtk_binding_entry_add_signal (binding_set, GDK_KEY_Insert, 0, -@@ -5986,6 +5998,27 @@ - } - } +@@ -6000,6 +6012,27 @@ + else + gtk_widget_error_bell (GTK_WIDGET (entry)); -+static void -+gtk_entry_paste_selection (GtkEntry *entry) -+{ -+ GtkEntryPrivate *priv = entry->priv; -+ -+ if (priv->editable) -+ gtk_entry_paste (entry, GDK_SELECTION_PRIMARY); -+ else -+ gtk_widget_error_bell (GTK_WIDGET (entry)); -+ -+ if (priv->text_handle) ++ if (priv->text_handle) + { -+ GtkTextHandleMode handle_mode; ++ GtkTextHandleMode handle_mode; + -+ handle_mode = _gtk_text_handle_get_mode (priv->text_handle); ++ handle_mode = _gtk_text_handle_get_mode (priv->text_handle); + -+ if (handle_mode != GTK_TEXT_HANDLE_MODE_NONE) -+ gtk_entry_update_handles (entry, GTK_TEXT_HANDLE_MODE_CURSOR); ++ if (handle_mode != GTK_TEXT_HANDLE_MODE_NONE) ++ gtk_entry_update_handles (entry, GTK_TEXT_HANDLE_MODE_CURSOR); + } +} + - static void - gtk_entry_delete_cb (GtkEntry *entry) - { -diff -ur gtk+-3.24.1/gtk/gtkentry.h gtk+-3.24.1_patched/gtk/gtkentry.h ---- gtk+-3.24.1/gtk/gtkentry.h 2017-11-27 00:24:51.000000000 +0100 -+++ gtk+-3.24.1_patched/gtk/gtkentry.h 2019-03-24 11:55:03.848566726 +0100 ++static void ++gtk_entry_paste_selection (GtkEntry *entry) ++{ ++ GtkEntryPrivate *priv = entry->priv; ++ ++ if (priv->editable) ++ gtk_entry_paste (entry, GDK_SELECTION_PRIMARY); ++ else ++ gtk_widget_error_bell (GTK_WIDGET (entry)); ++ + if (priv->text_handle) + { + GtkTextHandleMode handle_mode; +diff '--color=auto' -ur gtk-3.24.48-orig/gtk/gtkentry.h gtk-3.24.48/gtk/gtkentry.h +--- gtk-3.24.48-orig/gtk/gtkentry.h 2025-01-25 14:25:12.000000000 +0100 ++++ gtk-3.24.48/gtk/gtkentry.h 2025-03-24 10:29:15.753717742 +0100 @@ -145,6 +145,7 @@ void (* cut_clipboard) (GtkEntry *entry); void (* copy_clipboard) (GtkEntry *entry); @@ -97,18 +97,18 @@ diff -ur gtk+-3.24.1/gtk/gtkentry.h gtk+-3.24.1_patched/gtk/gtkentry.h void (* toggle_overwrite) (GtkEntry *entry); /* hooks to add other objects beside the entry (like in GtkSpinButton) */ -@@ -168,7 +169,6 @@ +@@ -169,7 +170,6 @@ + void (*_gtk_reserved2) (void); void (*_gtk_reserved3) (void); void (*_gtk_reserved4) (void); - void (*_gtk_reserved5) (void); -- void (*_gtk_reserved6) (void); +- void (*_gtk_reserved5) (void); }; GDK_AVAILABLE_IN_ALL -diff -ur gtk+-3.24.1/gtk/gtktextview.c gtk+-3.24.1_patched/gtk/gtktextview.c ---- gtk+-3.24.1/gtk/gtktextview.c 2018-07-25 14:29:25.000000000 +0200 -+++ gtk+-3.24.1_patched/gtk/gtktextview.c 2019-03-24 11:46:29.476553772 +0100 -@@ -327,6 +327,7 @@ +diff '--color=auto' -ur gtk-3.24.48-orig/gtk/gtktextview.c gtk-3.24.48/gtk/gtktextview.c +--- gtk-3.24.48-orig/gtk/gtktextview.c 2025-01-25 14:25:12.000000000 +0100 ++++ gtk-3.24.48/gtk/gtktextview.c 2025-03-24 10:38:47.534703867 +0100 +@@ -329,6 +329,7 @@ CUT_CLIPBOARD, COPY_CLIPBOARD, PASTE_CLIPBOARD, @@ -116,7 +116,7 @@ diff -ur gtk+-3.24.1/gtk/gtktextview.c gtk+-3.24.1_patched/gtk/gtktextview.c TOGGLE_OVERWRITE, MOVE_VIEWPORT, SELECT_ALL, -@@ -497,6 +498,7 @@ +@@ -499,6 +500,7 @@ static void gtk_text_view_cut_clipboard (GtkTextView *text_view); static void gtk_text_view_copy_clipboard (GtkTextView *text_view); static void gtk_text_view_paste_clipboard (GtkTextView *text_view); @@ -124,7 +124,7 @@ diff -ur gtk+-3.24.1/gtk/gtktextview.c gtk+-3.24.1_patched/gtk/gtktextview.c static void gtk_text_view_toggle_overwrite (GtkTextView *text_view); static void gtk_text_view_toggle_cursor_visible (GtkTextView *text_view); -@@ -785,6 +787,7 @@ +@@ -787,6 +789,7 @@ klass->cut_clipboard = gtk_text_view_cut_clipboard; klass->copy_clipboard = gtk_text_view_copy_clipboard; klass->paste_clipboard = gtk_text_view_paste_clipboard; @@ -132,23 +132,23 @@ diff -ur gtk+-3.24.1/gtk/gtktextview.c gtk+-3.24.1_patched/gtk/gtktextview.c klass->toggle_overwrite = gtk_text_view_toggle_overwrite; klass->create_buffer = gtk_text_view_create_buffer; klass->extend_selection = gtk_text_view_extend_selection; -@@ -1305,6 +1308,15 @@ +@@ -1316,6 +1319,15 @@ NULL, G_TYPE_NONE, 0); + signals[PASTE_SELECTION] = -+ g_signal_new (I_("paste-selection"), -+ G_OBJECT_CLASS_TYPE (gobject_class), -+ G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, -+ G_STRUCT_OFFSET (GtkTextViewClass, paste_selection), -+ NULL, NULL, -+ NULL, -+ G_TYPE_NONE, 0); ++ g_signal_new (I_("paste-selection"), ++ G_OBJECT_CLASS_TYPE (gobject_class), ++ G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, ++ G_STRUCT_OFFSET (GtkTextViewClass, paste_selection), ++ NULL, NULL, ++ NULL, ++ G_TYPE_NONE, 0); + /** * GtkTextView::toggle-overwrite: * @text_view: the object which received the signal -@@ -1652,14 +1664,14 @@ +@@ -1666,14 +1678,14 @@ gtk_binding_entry_add_signal (binding_set, GDK_KEY_KP_Insert, GDK_CONTROL_MASK, "copy-clipboard", 0); gtk_binding_entry_add_signal (binding_set, GDK_KEY_KP_Insert, GDK_SHIFT_MASK, @@ -165,29 +165,30 @@ diff -ur gtk+-3.24.1/gtk/gtktextview.c gtk+-3.24.1_patched/gtk/gtktextview.c /* Overwrite */ gtk_binding_entry_add_signal (binding_set, GDK_KEY_Insert, 0, -@@ -7221,6 +7233,19 @@ - } +@@ -7247,6 +7259,20 @@ + text_view->priv->scroll_after_paste = TRUE; - static void -+gtk_text_view_paste_selection (GtkTextView *text_view) -+{ -+ GtkClipboard *clipboard = gtk_widget_get_clipboard (GTK_WIDGET (text_view), -+ GDK_SELECTION_PRIMARY); -+ -+ text_view->priv->scroll_after_paste = TRUE; -+ gtk_text_buffer_paste_clipboard (get_buffer (text_view), -+ clipboard, -+ NULL, -+ text_view->priv->editable); + gtk_text_buffer_paste_clipboard (get_buffer (text_view), ++ clipboard, ++ NULL, ++ text_view->priv->editable); +} + +static void - gtk_text_view_paste_done_handler (GtkTextBuffer *buffer, - GtkClipboard *clipboard, - gpointer data) -diff -ur gtk+-3.24.1/gtk/gtktextview.h gtk+-3.24.1_patched/gtk/gtktextview.h ---- gtk+-3.24.1/gtk/gtktextview.h 2017-11-26 22:31:46.000000000 +0100 -+++ gtk+-3.24.1_patched/gtk/gtktextview.h 2019-03-24 11:57:41.592570698 +0100 ++gtk_text_view_paste_selection (GtkTextView *text_view) ++{ ++ GtkClipboard *clipboard = gtk_widget_get_clipboard (GTK_WIDGET (text_view), ++ GDK_SELECTION_PRIMARY); ++ ++ text_view->priv->scroll_after_paste = TRUE; ++ ++ gtk_text_buffer_paste_clipboard (get_buffer (text_view), + clipboard, + NULL, + text_view->priv->editable); +diff '--color=auto' -ur gtk-3.24.48-orig/gtk/gtktextview.h gtk-3.24.48/gtk/gtktextview.h +--- gtk-3.24.48-orig/gtk/gtktextview.h 2025-01-25 14:25:12.000000000 +0100 ++++ gtk-3.24.48/gtk/gtktextview.h 2025-03-24 10:32:51.750647605 +0100 @@ -181,6 +181,7 @@ void (* cut_clipboard) (GtkTextView *text_view); void (* copy_clipboard) (GtkTextView *text_view);