diff options
author | Tomeu Vizoso <tomeu@sugarlabs.org> | 2009-02-24 11:31:10 (GMT) |
---|---|---|
committer | Tomeu Vizoso <tomeu@sugarlabs.org> | 2009-02-24 11:31:10 (GMT) |
commit | 7589b213245f469d20ecc4efea200ae8dd30582f (patch) | |
tree | d5813abeae86660167f4503353ed8a57b035b233 /extensions/deviceicon | |
parent | 49dd11de789ee68962af03d821adbc0adde4e274 (diff) |
Fix palette appearance on right-click #403
Diffstat (limited to 'extensions/deviceicon')
-rw-r--r-- | extensions/deviceicon/battery.py | 4 | ||||
-rw-r--r-- | extensions/deviceicon/speaker.py | 17 | ||||
-rw-r--r-- | extensions/deviceicon/volume.py | 3 |
3 files changed, 16 insertions, 8 deletions
diff --git a/extensions/deviceicon/battery.py b/extensions/deviceicon/battery.py index 1b3a752..76b1565 100644 --- a/extensions/deviceicon/battery.py +++ b/extensions/deviceicon/battery.py @@ -52,10 +52,10 @@ class DeviceView(TrayIcon): TrayIcon.__init__(self, icon_name=_ICON_NAME, xo_color=self._color) + self.set_palette_invoker(FrameWidgetInvoker(self)) + self._model = DeviceModel(udi) self.palette = BatteryPalette(_('My Battery')) - self.set_palette(self.palette) - self.palette.props.invoker = FrameWidgetInvoker(self) self.palette.set_group_id('frame') self._model.connect('notify::level', diff --git a/extensions/deviceicon/speaker.py b/extensions/deviceicon/speaker.py index d32c4d1..d8e7a2b 100644 --- a/extensions/deviceicon/speaker.py +++ b/extensions/deviceicon/speaker.py @@ -42,11 +42,9 @@ class DeviceView(TrayIcon): TrayIcon.__init__(self, icon_name=_ICON_NAME, xo_color=self._color) - self._model = DeviceModel() - self.palette = SpeakerPalette(_('My Speakers'), model=self._model) - self.palette.props.invoker = FrameWidgetInvoker(self) - self.palette.set_group_id('frame') + self.set_palette_invoker(FrameWidgetInvoker(self)) + self._model = DeviceModel() self._model.connect('notify::level', self.__speaker_status_changed_cb) self._model.connect('notify::muted', self.__speaker_status_changed_cb) @@ -57,6 +55,11 @@ class DeviceView(TrayIcon): self._update_info() + def create_palette(self): + palette = SpeakerPalette(_('My Speakers'), model=self._model) + palette.set_group_id('frame') + return palette + def _update_info(self): name = _ICON_NAME current_level = self._model.props.level @@ -71,7 +74,11 @@ class DeviceView(TrayIcon): self.icon.props.xo_color = xo_color def __button_release_event_cb(self, widget, event): - self._model.props.muted = not self._model.props.muted + if event.button == 1: + self._model.props.muted = not self._model.props.muted + return True + else: + return False def __expose_event_cb(self, *args): self._update_info() diff --git a/extensions/deviceicon/volume.py b/extensions/deviceicon/volume.py index a7b4aac..c795328 100644 --- a/extensions/deviceicon/volume.py +++ b/extensions/deviceicon/volume.py @@ -61,11 +61,12 @@ class DeviceView(TrayIcon): TrayIcon.__init__(self, icon_name=icon_name, xo_color=color) + self.set_palette_invoker(FrameWidgetInvoker(self)) + self.connect('button-release-event', self.__button_release_event_cb) def create_palette(self): palette = VolumePalette(self._mount) - palette.props.invoker = FrameWidgetInvoker(self) palette.set_group_id('frame') return palette |