From ef40555ed3c69b35f78596f206896b947e653301 Mon Sep 17 00:00:00 2001 From: Tomeu Vizoso Date: Tue, 01 Apr 2008 09:52:11 +0000 Subject: Add support for accelerators to buttons. --- (limited to 'sugar/activity/activity.py') diff --git a/sugar/activity/activity.py b/sugar/activity/activity.py index 146d863..2c1eaae 100644 --- a/sugar/activity/activity.py +++ b/sugar/activity/activity.py @@ -28,6 +28,7 @@ See the methods of the Activity class below for more information on what you will need for a real activity. """ # Copyright (C) 2006-2007 Red Hat, Inc. +# Copyright (C) 2007-2008 One Laptop Per Child # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -125,14 +126,14 @@ class ActivityToolbar(gtk.Toolbar): self._update_share() - self.keep = ToolButton('document-save') - self.keep.set_tooltip(_('Keep')) + self.keep = ToolButton('document-save', tooltip=_('Keep')) + self.keep.props.accelerator = 'S' self.keep.connect('clicked', self.__keep_clicked_cb) self.insert(self.keep, -1) self.keep.show() - self.stop = ToolButton('activity-stop') - self.stop.set_tooltip(_('Stop')) + self.stop = ToolButton('activity-stop', tooltip=_('Stop')) + self.stop.props.accelerator = 'Q' self.stop.connect('clicked', self.__stop_clicked_cb) self.insert(self.stop, -1) self.stop.show() @@ -418,7 +419,6 @@ class Activity(Window, gtk.Container): self.connect('realize', self.__realize_cb) self.connect('delete-event', self.__delete_event_cb) - self.connect("key_press_event", self.__key_press_event_cb) self._active = False self._activity_id = handle.activity_id @@ -433,6 +433,10 @@ class Activity(Window, gtk.Container): self._max_participants = 0 self._invites_queue = [] + accel_group = gtk.AccelGroup() + self.set_data('sugar-accel-group', accel_group) + self.add_accel_group(accel_group) + self._bus = ActivityService(self) self._owns_file = False @@ -905,13 +909,6 @@ class Activity(Window, gtk.Container): metadata = property(get_metadata, None) - def __key_press_event_cb(self, widget, event): - key = gtk.gdk.keyval_name(event.keyval) - if key == 's' and (event.state & gtk.gdk.CONTROL_MASK): - logging.debug('Keep requested') - self.copy() - return True - def get_bundle_name(): """Return the bundle name for the current process' bundle""" return os.environ['SUGAR_BUNDLE_NAME'] -- cgit v0.9.1