summaryrefslogtreecommitdiffstats
path: root/ui/gtk
diff options
context:
space:
mode:
authorHuang Peng <shawn.p.huang@gmail.com>2009-03-06 10:42:28 +0800
committerHuang Peng <shawn.p.huang@gmail.com>2009-03-06 10:42:28 +0800
commita1ac8682c81051518ad0ff613958a0b96054091c (patch)
treeca42efb67a1dc9ef299e2a5fb145fa6183ca91a1 /ui/gtk
parentd415e945d62d69c097cf6aae701f42806529dfb7 (diff)
downloadibus-a1ac8682c81051518ad0ff613958a0b96054091c.tar.gz
ibus-a1ac8682c81051518ad0ff613958a0b96054091c.tar.xz
ibus-a1ac8682c81051518ad0ff613958a0b96054091c.zip
Implement language panel: Always hide feature.1.1.0.20090306
Diffstat (limited to 'ui/gtk')
-rw-r--r--ui/gtk/languagebar.py24
-rw-r--r--ui/gtk/panel.py12
2 files changed, 21 insertions, 15 deletions
diff --git a/ui/gtk/languagebar.py b/ui/gtk/languagebar.py
index 2a10a43..d2d6a60 100644
--- a/ui/gtk/languagebar.py
+++ b/ui/gtk/languagebar.py
@@ -50,7 +50,7 @@ class LanguageBar(gtk.Toolbar):
def __init__ (self):
super(LanguageBar, self).__init__()
- self.__auto_hide = False
+ self.__show = 1
self.__enabled = False
self.__has_focus = False
self.set_style(gtk.TOOLBAR_ICONS)
@@ -137,24 +137,27 @@ class LanguageBar(gtk.Toolbar):
if self.__enabled:
self.__set_opacity(1.0)
if self.__has_focus:
- self.show_all()
+ if self.__show in (1, 2):
+ self.show_all()
else:
self.__set_opacity(0.5)
- if self.__auto_hide:
+ if self.__show in (1, 0):
self.hide_all()
def is_enabled(self):
return self.__enabled
- def set_auto_hide(self, auto_hide):
- self.__auto_hide = auto_hide
+ def set_show(self, show):
+ if show not in (0, 1, 2):
+ show = 1
+ self.__show = show
if self.__has_focus:
self.focus_in()
else:
self.focus_out()
- def get_auto_hide(self):
- return self.__auto_hide
+ def get_show(self):
+ return self.__show
def register_properties(self, props):
self.__remove_properties()
@@ -206,12 +209,15 @@ class LanguageBar(gtk.Toolbar):
self.__has_focus = True
self.__im_menu.set_sensitive(True)
if self.__enabled:
- self.show_all()
+ if self.__show in (1, 2):
+ self.show_all()
+ else:
+ self.hide_all()
def focus_out(self):
self.__has_focus = False
self.__im_menu.set_sensitive(False)
- if self.__auto_hide:
+ if self.__show in (0, 1):
self.hide_all()
else:
self.show_all()
diff --git a/ui/gtk/panel.py b/ui/gtk/panel.py
index f046d23..2640c65 100644
--- a/ui/gtk/panel.py
+++ b/ui/gtk/panel.py
@@ -98,7 +98,7 @@ class Panel(ibus.PanelBase):
self.__status_icon.set_visible(True)
self.__config_load_lookup_table_orientation()
- self.__config_load_auto_hide()
+ self.__config_load_show()
self.__config_load_custom_font()
# self.__bus.request_name(ibus.panel.IBUS_SERVICE_PANEL, 0)
@@ -234,9 +234,9 @@ class Panel(ibus.PanelBase):
else:
self.__candidate_panel.set_orientation(gtk.ORIENTATION_VERTICAL)
- def __config_load_auto_hide(self):
- auto_hide = self.__config.get_value("panel", "auto_hide", True)
- self.__language_bar.set_auto_hide(auto_hide)
+ def __config_load_show(self):
+ show = self.__config.get_value("panel", "show", 1)
+ self.__language_bar.set_show(show)
def __config_load_custom_font(self):
use_custom_font = self.__config.get_value("panel", "use_custom_font", False)
@@ -260,8 +260,8 @@ class Panel(ibus.PanelBase):
return
if name == "lookup_table_orientation":
self.__config_load_lookup_table_orientation()
- elif name == "auto_hide":
- self.__config_load_auto_hide()
+ elif name == "show":
+ self.__config_load_show()
elif name == "use_custom_font" or name == "custom_font":
self.__config_load_custom_font()