From 4d8a751cb27d284942f304334b389a6a9a80c1ef Mon Sep 17 00:00:00 2001 From: Thomas Perl Date: Mon, 28 Sep 2009 16:34:10 +0200 Subject: [PATCH] Copy shownotes to clipboard on Maemo 4 (bug 566) Add an option to the menu in Maemo 4 that allows users to copy the selected shownotes text to the clipboard. Thanks to Dan Ramos for this feature request. --- data/ui/maemo/gpoddershownotes.ui | 5 +++++ src/gpodder/gtkui/maemo/shownotes.py | 14 ++++++++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/data/ui/maemo/gpoddershownotes.ui b/data/ui/maemo/gpoddershownotes.ui index 4330283f..78cbe7fe 100644 --- a/data/ui/maemo/gpoddershownotes.ui +++ b/data/ui/maemo/gpoddershownotes.ui @@ -65,6 +65,11 @@ gtk-delete + + Copy selected text + gtk-copy + + Visit website diff --git a/src/gpodder/gtkui/maemo/shownotes.py b/src/gpodder/gtkui/maemo/shownotes.py index 3ef5f2e3..2a7bcb8a 100644 --- a/src/gpodder/gtkui/maemo/shownotes.py +++ b/src/gpodder/gtkui/maemo/shownotes.py @@ -52,9 +52,8 @@ class gPodderShownotes(gPodderShownotesBase): menu.append(self.action_resume.create_menu_item()) menu.append(self.action_cancel.create_menu_item()) menu.append(gtk.SeparatorMenuItem()) + menu.append(self.action_copy_text.create_menu_item()) menu.append(self.action_visit_website.create_menu_item()) - menu.append(gtk.SeparatorMenuItem()) - menu.append(self.action_close.create_menu_item()) self.main_window.set_menu(self.set_finger_friendly(menu)) def _on_key_press_event(self, widget, event): @@ -73,6 +72,17 @@ class gPodderShownotes(gPodderShownotesBase): return True + def on_copy_text_button_clicked(self, widget): + clip_selection = gtk.Clipboard(selection='PRIMARY') + def receive_selection_text(clipboard, text, data=None): + if text: + clip_clipboard = gtk.Clipboard(selection='CLIPBOARD') + clip_clipboard.set_text(text) + self.show_message(_('Text copied to clipboard.')) + else: + self.show_message(_('Selection is empty.')) + clip_selection.request_text(receive_selection_text) + def on_scroll_down(self): if not hasattr(self.scrolled_window, 'get_vscrollbar'): return -- 2.11.4.GIT