Merge lp:~om26er/ubuntu/maverick/gnome-terminal/gnome-terminal-fix-630383 into lp:ubuntu/maverick/gnome-terminal

Proposed by Omer Akram
Status: Merged
Merge reported by: Dustin Kirkland 
Merged at revision: not available
Proposed branch: lp:~om26er/ubuntu/maverick/gnome-terminal/gnome-terminal-fix-630383
Merge into: lp:ubuntu/maverick/gnome-terminal
Diff against target: 169 lines (+89/-12)
5 files modified
.pc/applied-patches (+1/-0)
debian/changelog (+7/-0)
debian/patches/21_watch_clipboard.patch (+68/-0)
debian/patches/series (+1/-0)
src/terminal-window.c (+12/-12)
To merge this branch: bzr merge lp:~om26er/ubuntu/maverick/gnome-terminal/gnome-terminal-fix-630383
Reviewer Review Type Date Requested Status
Dustin Kirkland  Needs Fixing
Review via email: mp+53172@code.launchpad.net

Description of the change

backport the patch from mterry to fix bug 630383 in Maverick

To post a comment you must log in.
Revision history for this message
Dustin Kirkland  (kirkland) wrote :

Hmm, this doesn't look quite right.

There's a patch file added, debian/patches/21_watch_clipboard.patch, which modifies src/terminal-window.c.

But there's also changes directly in src/terminal-window.c.

Looks like the diff is already applied in your proposed branch.

review: Needs Fixing
Revision history for this message
Dustin Kirkland  (kirkland) wrote :

Okay, I'm fixing this up.

I have:
 $ bzr revert src/terminal-window.c

To undo the in-branch change.

And I have updated the target release to maverick-proposed.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file '.pc/applied-patches'
--- .pc/applied-patches 2010-09-27 17:05:38 +0000
+++ .pc/applied-patches 2011-03-13 15:27:02 +0000
@@ -2,3 +2,4 @@
201_lpi.patch201_lpi.patch
302_add_transparency_properties.patch302_add_transparency_properties.patch
420_add_alt_screen_toggle_ui.patch420_add_alt_screen_toggle_ui.patch
521_watch_clipboard.patch
56
=== modified file 'debian/changelog'
--- debian/changelog 2010-09-27 17:05:38 +0000
+++ debian/changelog 2011-03-13 15:27:02 +0000
@@ -1,3 +1,10 @@
1gnome-terminal (2.32.0-0ubuntu1.1) maverick; urgency=low
2
3 * debian/patches/21_watch_clipboard.patch:
4 - Watch clipboard contents for paste shorkey to work. (LP: #630383)
5
6 -- Omer Akram <om26er@ubuntu.com> Sun, 13 Mar 2011 20:20:13 +0500
7
1gnome-terminal (2.32.0-0ubuntu1) maverick; urgency=low8gnome-terminal (2.32.0-0ubuntu1) maverick; urgency=low
29
3 * New upstream version 2.32.010 * New upstream version 2.32.0
411
=== added file 'debian/patches/21_watch_clipboard.patch'
--- debian/patches/21_watch_clipboard.patch 1970-01-01 00:00:00 +0000
+++ debian/patches/21_watch_clipboard.patch 2011-03-13 15:27:02 +0000
@@ -0,0 +1,68 @@
1From: Omer Akram <om26er@ubuntu.com>
2Author: Michael Terry <michael.terry@canonical.com>
3Subject: Update paste sensitivity whenever clipboard changes.
4Bug: https://bugs.gnome.org/600876
5Bug-Ubuntu: https://launchpad.net/bugs/630383
6
7--- gnome-terminal-2.32.1.orig/src/terminal-window.c 2011-03-07 10:15:11.241700961 -0500
8+++ gnome-terminal-2.32.1/src/terminal-window.c 2011-03-07 10:15:15.891838092 -0500
9@@ -1032,10 +1032,8 @@
10 }
11
12 static void
13-edit_menu_activate_callback (GtkMenuItem *menuitem,
14- gpointer user_data)
15+update_edit_menu (TerminalWindow *window)
16 {
17- TerminalWindow *window = (TerminalWindow *) user_data;
18 GtkClipboard *clipboard;
19
20 clipboard = gtk_widget_get_clipboard (GTK_WIDGET (window), GDK_SELECTION_CLIPBOARD);
21@@ -1988,6 +1986,7 @@
22 GError *error;
23 GtkWindowGroup *window_group;
24 GtkAccelGroup *accel_group;
25+ GtkClipboard *clipboard;
26
27 priv = window->priv = G_TYPE_INSTANCE_GET_PRIVATE (window, TERMINAL_TYPE_WINDOW, TerminalWindowPrivate);
28
29@@ -2061,15 +2060,10 @@
30 gtk_ui_manager_insert_action_group (manager, action_group, 0);
31 g_object_unref (action_group);
32
33- action = gtk_action_group_get_action (action_group, "Edit");
34- g_signal_connect (action, "activate",
35- G_CALLBACK (edit_menu_activate_callback), window);
36-
37- /* Set this action invisible so the Edit menu doesn't flash the first
38- * time it's shown and there's no text/uri-list on the clipboard.
39- */
40- action = gtk_action_group_get_action (priv->action_group, "EditPasteURIPaths");
41- gtk_action_set_visible (action, FALSE);
42+ clipboard = gtk_widget_get_clipboard (GTK_WIDGET (window), GDK_SELECTION_CLIPBOARD);
43+ g_signal_connect_swapped (clipboard, "owner-change",
44+ G_CALLBACK (update_edit_menu), window);
45+ update_edit_menu (window);
46
47 /* Idem for this action, since the window is not fullscreen. */
48 action = gtk_action_group_get_action (priv->action_group, "PopupLeaveFullscreen");
49@@ -2162,6 +2156,7 @@
50 TerminalWindowPrivate *priv = window->priv;
51 TerminalApp *app;
52 GdkScreen *screen;
53+ GtkClipboard *clipboard;
54
55 remove_popup_info (window);
56
57@@ -2186,6 +2181,11 @@
58 G_CALLBACK (terminal_window_encoding_list_changed_cb),
59 window);
60
61+ clipboard = gtk_widget_get_clipboard (GTK_WIDGET (window), GDK_SELECTION_CLIPBOARD);
62+ g_signal_handlers_disconnect_by_func (clipboard,
63+ G_CALLBACK (update_edit_menu),
64+ window);
65+
66 screen = gtk_widget_get_screen (GTK_WIDGET (object));
67 if (screen)
68 {
069
=== modified file 'debian/patches/series'
--- debian/patches/series 2010-09-27 17:05:38 +0000
+++ debian/patches/series 2011-03-13 15:27:02 +0000
@@ -2,3 +2,4 @@
201_lpi.patch201_lpi.patch
302_add_transparency_properties.patch302_add_transparency_properties.patch
420_add_alt_screen_toggle_ui.patch420_add_alt_screen_toggle_ui.patch
521_watch_clipboard.patch
56
=== modified file 'src/terminal-window.c'
--- src/terminal-window.c 2010-09-27 17:05:38 +0000
+++ src/terminal-window.c 2011-03-13 15:27:02 +0000
@@ -1032,10 +1032,8 @@
1032}1032}
10331033
1034static void1034static void
1035edit_menu_activate_callback (GtkMenuItem *menuitem,1035update_edit_menu (TerminalWindow *window)
1036 gpointer user_data)
1037{1036{
1038 TerminalWindow *window = (TerminalWindow *) user_data;
1039 GtkClipboard *clipboard;1037 GtkClipboard *clipboard;
10401038
1041 clipboard = gtk_widget_get_clipboard (GTK_WIDGET (window), GDK_SELECTION_CLIPBOARD);1039 clipboard = gtk_widget_get_clipboard (GTK_WIDGET (window), GDK_SELECTION_CLIPBOARD);
@@ -1988,6 +1986,7 @@
1988 GError *error;1986 GError *error;
1989 GtkWindowGroup *window_group;1987 GtkWindowGroup *window_group;
1990 GtkAccelGroup *accel_group;1988 GtkAccelGroup *accel_group;
1989 GtkClipboard *clipboard;
19911990
1992 priv = window->priv = G_TYPE_INSTANCE_GET_PRIVATE (window, TERMINAL_TYPE_WINDOW, TerminalWindowPrivate);1991 priv = window->priv = G_TYPE_INSTANCE_GET_PRIVATE (window, TERMINAL_TYPE_WINDOW, TerminalWindowPrivate);
19931992
@@ -2061,15 +2060,10 @@
2061 gtk_ui_manager_insert_action_group (manager, action_group, 0);2060 gtk_ui_manager_insert_action_group (manager, action_group, 0);
2062 g_object_unref (action_group);2061 g_object_unref (action_group);
20632062
2064 action = gtk_action_group_get_action (action_group, "Edit");2063 clipboard = gtk_widget_get_clipboard (GTK_WIDGET (window), GDK_SELECTION_CLIPBOARD);
2065 g_signal_connect (action, "activate",2064 g_signal_connect_swapped (clipboard, "owner-change",
2066 G_CALLBACK (edit_menu_activate_callback), window);2065 G_CALLBACK (update_edit_menu), window);
20672066 update_edit_menu (window);
2068 /* Set this action invisible so the Edit menu doesn't flash the first
2069 * time it's shown and there's no text/uri-list on the clipboard.
2070 */
2071 action = gtk_action_group_get_action (priv->action_group, "EditPasteURIPaths");
2072 gtk_action_set_visible (action, FALSE);
20732067
2074 /* Idem for this action, since the window is not fullscreen. */2068 /* Idem for this action, since the window is not fullscreen. */
2075 action = gtk_action_group_get_action (priv->action_group, "PopupLeaveFullscreen");2069 action = gtk_action_group_get_action (priv->action_group, "PopupLeaveFullscreen");
@@ -2162,6 +2156,7 @@
2162 TerminalWindowPrivate *priv = window->priv;2156 TerminalWindowPrivate *priv = window->priv;
2163 TerminalApp *app;2157 TerminalApp *app;
2164 GdkScreen *screen;2158 GdkScreen *screen;
2159 GtkClipboard *clipboard;
21652160
2166 remove_popup_info (window);2161 remove_popup_info (window);
21672162
@@ -2186,6 +2181,11 @@
2186 G_CALLBACK (terminal_window_encoding_list_changed_cb),2181 G_CALLBACK (terminal_window_encoding_list_changed_cb),
2187 window);2182 window);
21882183
2184 clipboard = gtk_widget_get_clipboard (GTK_WIDGET (window), GDK_SELECTION_CLIPBOARD);
2185 g_signal_handlers_disconnect_by_func (clipboard,
2186 G_CALLBACK (update_edit_menu),
2187 window);
2188
2189 screen = gtk_widget_get_screen (GTK_WIDGET (object));2189 screen = gtk_widget_get_screen (GTK_WIDGET (object));
2190 if (screen)2190 if (screen)
2191 {2191 {

Subscribers

People subscribed via source and target branches

to all changes: