summaryrefslogtreecommitdiffstats
path: root/src/Gui
diff options
context:
space:
mode:
authorJiri Moskovcak <jmoskovc@redhat.com>2009-10-08 10:07:35 +0200
committerJiri Moskovcak <jmoskovc@redhat.com>2009-10-08 10:07:35 +0200
commita1aadc72bb236567a5c95f3d4ab6e6a286eb3f97 (patch)
tree3c326a55652238c1c09fe99201b3d44de0d66182 /src/Gui
parent97e93c8456762295af923a3198dcd769314c6cfb (diff)
downloadabrt-a1aadc72bb236567a5c95f3d4ab6e6a286eb3f97.tar.gz
abrt-a1aadc72bb236567a5c95f3d4ab6e6a286eb3f97.tar.xz
abrt-a1aadc72bb236567a5c95f3d4ab6e6a286eb3f97.zip
GUI: fixed report cells editing rhbz#527763
- changed cell behavior, so now it remembers the text even on "focus-out" and forgets the new text only if escape is pressed
Diffstat (limited to 'src/Gui')
-rw-r--r--src/Gui/CellRenderers.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/Gui/CellRenderers.py b/src/Gui/CellRenderers.py
index 5777a7ce..0bedf7a0 100644
--- a/src/Gui/CellRenderers.py
+++ b/src/Gui/CellRenderers.py
@@ -29,11 +29,12 @@ class MultilineCellRenderer(gtk.CellRendererText):
def __init__(self):
gtk.CellRendererText.__init__(self)
self._in_editor_menu = False
+ self.old_text = ""
- def _on_editor_focus_out_event(self, editor, *args):
+ def _on_editor_focus_out_event(self, editor, event):
if self._in_editor_menu: return
editor.remove_widget()
- self.emit("editing-canceled")
+ self.emit("edited", editor.get_data("path"), editor.get_text())
def _on_editor_key_press_event(self, editor, event):
if event.state & (gtk.gdk.SHIFT_MASK | gtk.gdk.CONTROL_MASK): return
@@ -41,6 +42,7 @@ class MultilineCellRenderer(gtk.CellRendererText):
editor.remove_widget()
self.emit("edited", editor.get_data("path"), editor.get_text())
elif event.keyval == gtk.keysyms.Escape:
+ editor.set_text(self.old_text)
editor.remove_widget()
self.emit("editing-canceled")
@@ -53,6 +55,7 @@ class MultilineCellRenderer(gtk.CellRendererText):
def do_start_editing(self, event, widget, path, bg_area, cell_area, flags):
editor = CellTextView()
editor.modify_font(self.props.font_desc)
+ self.old_text = self.props.text
editor.set_text(self.props.text)
editor.set_size_request(cell_area.width, cell_area.height)
editor.set_border_width(min(self.props.xpad, self.props.ypad))