[meld] Unbind Ctrl(+Shift)+Z from sourceviewer undo (closes bgo#594924)



commit 361d3da721da333be77d871f4bf152fcfe9b8849
Author: Kai Willadsen <kai willadsen gmail com>
Date:   Mon Nov 2 08:25:31 2009 +1000

    Unbind Ctrl(+Shift)+Z from sourceviewer undo (closes bgo#594924)
    
    Some sourceviewer modules bind Ctrl+Z and Ctrl+Shift+Z for their own
    undo/redo implementation. The UIManager bindings override these, except
    when the relevant actions are insensitive (see for example bgo#594924). So
    as not to fall back on the sourceview undo stack, we remove the bindings.

 meld/filediff.py |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)
---
diff --git a/meld/filediff.py b/meld/filediff.py
index 46e6337..9e7a584 100644
--- a/meld/filediff.py
+++ b/meld/filediff.py
@@ -107,6 +107,11 @@ class FileDiff(melddoc.MeldDoc, gnomeglade.Component):
         self.map_widgets_into_lists(["textview", "fileentry", "diffmap", "scrolledwindow", "linkmap", "statusimage", "msgarea_mgr", "vbox"])
         self._update_regexes()
         self.warned_bad_comparison = False
+        # Some sourceviews bind their own undo mechanism, which we replace
+        gtk.binding_entry_remove(srcviewer.GtkTextView, gtk.keysyms.z,
+                                 gtk.gdk.CONTROL_MASK)
+        gtk.binding_entry_remove(srcviewer.GtkTextView, gtk.keysyms.z,
+                                 gtk.gdk.CONTROL_MASK | gtk.gdk.SHIFT_MASK)
         for v in self.textview:
             v.set_buffer(srcviewer.GtkTextBuffer())
             v.set_show_line_numbers(self.prefs.show_line_numbers)



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