summaryrefslogtreecommitdiffstats
path: root/ui
diff options
context:
space:
mode:
authorHuang Peng <shawn.p.huang@gmail.com>2009-02-15 15:40:54 +0800
committerHuang Peng <shawn.p.huang@gmail.com>2009-02-15 15:40:54 +0800
commit2cc05f88271b213d98b6fada10283f1a2fe39caa (patch)
tree8d69fb815200eb8a62d96d799be1f6f66b72327b /ui
parent05f1fc037cd2113da03315fb863352f6cdfceee6 (diff)
downloadibus-2cc05f88271b213d98b6fada10283f1a2fe39caa.tar.gz
ibus-2cc05f88271b213d98b6fada10283f1a2fe39caa.tar.xz
ibus-2cc05f88271b213d98b6fada10283f1a2fe39caa.zip
Make language transparent when inactivate.
Diffstat (limited to 'ui')
-rw-r--r--ui/gtk/languagebar.py17
-rw-r--r--ui/gtk/panel.py1
2 files changed, 14 insertions, 4 deletions
diff --git a/ui/gtk/languagebar.py b/ui/gtk/languagebar.py
index 99b1af0..eb758f2 100644
--- a/ui/gtk/languagebar.py
+++ b/ui/gtk/languagebar.py
@@ -114,6 +114,11 @@ class LanguageBar(gtk.Toolbar):
map(lambda i: i.destroy(), self.__properties)
self.__properties = []
+ def __set_opacity(self, opacity):
+ if self.__toplevel.window == None:
+ self.__toplevel.realize()
+ self.__toplevel.window.set_opacity(opacity)
+
def do_show(self):
gtk.Toolbar.do_show(self)
@@ -129,10 +134,14 @@ class LanguageBar(gtk.Toolbar):
def set_enabled(self, enabled):
self.__enabled = enabled
- if self.__enabled and self.__has_focus:
- self.show_all()
- if not self.__enabled and self.__auto_hide:
- self.hide_all()
+ if self.__enabled:
+ self.__set_opacity(1.0)
+ if self.__has_focus:
+ self.show_all()
+ else:
+ self.__set_opacity(0.5)
+ if self.__auto_hide:
+ self.hide_all()
def is_enabled(self):
return self.__enabled
diff --git a/ui/gtk/panel.py b/ui/gtk/panel.py
index d3cd249..d968393 100644
--- a/ui/gtk/panel.py
+++ b/ui/gtk/panel.py
@@ -191,6 +191,7 @@ class Panel(ibus.PanelBase):
def focus_out(self, ic):
self.reset()
self.__focus_ic = None
+ self.__language_bar.set_enabled(False)
self.__language_bar.focus_out()
self.__set_im_icon(self.__ibus_icon)