Updated ibus-HEAD.patch from upstream.
Fixed ibus-setup SEGV when an engine is selected. Fixed ibus-setup deprecated warnings with the latest python3-gobject. Integrated the 'IBUS_SETUP_XID' environment variable for each engine setup. Set prgname 'ibus-setup' for ibus-setup.
This commit is contained in:
parent
6f58b8fb0d
commit
e08ec45e28
@ -1,6 +1,6 @@
|
|||||||
From a6d4b9ac9a22c5b88c362b659eaf6fd59a0cf5bd Mon Sep 17 00:00:00 2001
|
From 91f6d9f3d0fc854711c2ba151c0dc5105a0a9152 Mon Sep 17 00:00:00 2001
|
||||||
From: fujiwarat <takao.fujiwara1@gmail.com>
|
From: fujiwarat <takao.fujiwara1@gmail.com>
|
||||||
Date: Tue, 14 Jan 2014 15:30:24 +0900
|
Date: Mon, 14 Jul 2014 16:20:21 +0900
|
||||||
Subject: [PATCH] Reload preload engines until users customize the list.
|
Subject: [PATCH] Reload preload engines until users customize the list.
|
||||||
|
|
||||||
The idea is, if users don't customize the preload_engines with ibus-setup,
|
The idea is, if users don't customize the preload_engines with ibus-setup,
|
||||||
@ -18,14 +18,14 @@ IBUS_PRELOAD_ENGINE_MODE_USER and users can customize the value
|
|||||||
'preload-engines'.
|
'preload-engines'.
|
||||||
---
|
---
|
||||||
data/ibus.schemas.in | 24 ++++++++++++++
|
data/ibus.schemas.in | 24 ++++++++++++++
|
||||||
setup/main.py | 70 +++++++++++++++++++++++++++++++++++----
|
setup/main.py | 72 ++++++++++++++++++++++++++++++++++++----
|
||||||
setup/setup.ui | 22 +++++++++++--
|
setup/setup.ui | 22 +++++++++++--
|
||||||
src/ibustypes.h | 10 ++++++
|
src/ibustypes.h | 10 ++++++
|
||||||
ui/gtk3/panel.vala | 93 ++++++++++++++++++++++++++++++++++++++++++++++++++++
|
ui/gtk3/panel.vala | 93 ++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
5 files changed, 210 insertions(+), 9 deletions(-)
|
5 files changed, 212 insertions(+), 9 deletions(-)
|
||||||
|
|
||||||
diff --git a/data/ibus.schemas.in b/data/ibus.schemas.in
|
diff --git a/data/ibus.schemas.in b/data/ibus.schemas.in
|
||||||
index 8fd7e15..28d2219 100644
|
index 1e4776b..9ee0b1a 100644
|
||||||
--- a/data/ibus.schemas.in
|
--- a/data/ibus.schemas.in
|
||||||
+++ b/data/ibus.schemas.in
|
+++ b/data/ibus.schemas.in
|
||||||
@@ -2,6 +2,30 @@
|
@@ -2,6 +2,30 @@
|
||||||
@ -60,7 +60,7 @@ index 8fd7e15..28d2219 100644
|
|||||||
<applyto>/desktop/ibus/general/preload_engines</applyto>
|
<applyto>/desktop/ibus/general/preload_engines</applyto>
|
||||||
<owner>ibus</owner>
|
<owner>ibus</owner>
|
||||||
diff --git a/setup/main.py b/setup/main.py
|
diff --git a/setup/main.py b/setup/main.py
|
||||||
index d3f4414..235ef9c 100644
|
index dee7be4..a991438 100644
|
||||||
--- a/setup/main.py
|
--- a/setup/main.py
|
||||||
+++ b/setup/main.py
|
+++ b/setup/main.py
|
||||||
@@ -190,16 +190,30 @@ class Setup(object):
|
@@ -190,16 +190,30 @@ class Setup(object):
|
||||||
@ -124,7 +124,7 @@ index d3f4414..235ef9c 100644
|
|||||||
def __treeview_notify_cb(self, treeview, prop):
|
def __treeview_notify_cb(self, treeview, prop):
|
||||||
if prop.name not in ("active-engine", "engines"):
|
if prop.name not in ("active-engine", "engines"):
|
||||||
return
|
return
|
||||||
@@ -321,6 +343,43 @@ class Setup(object):
|
@@ -321,6 +343,44 @@ class Setup(object):
|
||||||
del self.__engine_setup_exec_list[name]
|
del self.__engine_setup_exec_list[name]
|
||||||
self.__engine_setup_exec_list[name] = os.spawnl(os.P_NOWAIT, *args)
|
self.__engine_setup_exec_list[name] = os.spawnl(os.P_NOWAIT, *args)
|
||||||
|
|
||||||
@ -140,9 +140,10 @@ index d3f4414..235ef9c 100644
|
|||||||
+ "cleared immediately and the list will be " \
|
+ "cleared immediately and the list will be " \
|
||||||
+ "configured by the login language every time. " \
|
+ "configured by the login language every time. " \
|
||||||
+ "Do you agree with this?")
|
+ "Do you agree with this?")
|
||||||
+ dlg = Gtk.MessageDialog(type = Gtk.MessageType.QUESTION,
|
+ dlg = Gtk.MessageDialog(message_type = Gtk.MessageType.QUESTION,
|
||||||
|
+ transient_for = self.__window,
|
||||||
+ buttons = Gtk.ButtonsType.YES_NO,
|
+ buttons = Gtk.ButtonsType.YES_NO,
|
||||||
+ message_format = message)
|
+ text = message)
|
||||||
+ id = dlg.run()
|
+ id = dlg.run()
|
||||||
+ dlg.destroy()
|
+ dlg.destroy()
|
||||||
+ self.__flush_gtk_events()
|
+ self.__flush_gtk_events()
|
||||||
@ -169,7 +170,7 @@ index d3f4414..235ef9c 100644
|
|||||||
self.__bus = IBus.Bus()
|
self.__bus = IBus.Bus()
|
||||||
if self.__bus.is_connected():
|
if self.__bus.is_connected():
|
||||||
diff --git a/setup/setup.ui b/setup/setup.ui
|
diff --git a/setup/setup.ui b/setup/setup.ui
|
||||||
index 65dcee4..a6a001b 100644
|
index 5ffbe47..7c60b72 100644
|
||||||
--- a/setup/setup.ui
|
--- a/setup/setup.ui
|
||||||
+++ b/setup/setup.ui
|
+++ b/setup/setup.ui
|
||||||
@@ -677,7 +677,23 @@
|
@@ -677,7 +677,23 @@
|
||||||
@ -197,7 +198,7 @@ index 65dcee4..a6a001b 100644
|
|||||||
<property name="orientation">horizontal</property>
|
<property name="orientation">horizontal</property>
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="can_focus">False</property>
|
<property name="can_focus">False</property>
|
||||||
@@ -868,7 +884,7 @@
|
@@ -869,7 +885,7 @@
|
||||||
<packing>
|
<packing>
|
||||||
<property name="expand">True</property>
|
<property name="expand">True</property>
|
||||||
<property name="fill">True</property>
|
<property name="fill">True</property>
|
||||||
@ -206,7 +207,7 @@ index 65dcee4..a6a001b 100644
|
|||||||
</packing>
|
</packing>
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
@@ -916,7 +932,7 @@
|
@@ -917,7 +933,7 @@
|
||||||
<packing>
|
<packing>
|
||||||
<property name="expand">False</property>
|
<property name="expand">False</property>
|
||||||
<property name="fill">True</property>
|
<property name="fill">True</property>
|
||||||
@ -237,7 +238,7 @@ index 86fc2cc..cb9eb22 100644
|
|||||||
* @x: x coordinate.
|
* @x: x coordinate.
|
||||||
* @y: y coordinate.
|
* @y: y coordinate.
|
||||||
diff --git a/ui/gtk3/panel.vala b/ui/gtk3/panel.vala
|
diff --git a/ui/gtk3/panel.vala b/ui/gtk3/panel.vala
|
||||||
index 1da7966..fc60fd4 100644
|
index 7a15049..e6c128a 100644
|
||||||
--- a/ui/gtk3/panel.vala
|
--- a/ui/gtk3/panel.vala
|
||||||
+++ b/ui/gtk3/panel.vala
|
+++ b/ui/gtk3/panel.vala
|
||||||
@@ -141,6 +141,10 @@ class Panel : IBus.PanelService {
|
@@ -141,6 +141,10 @@ class Panel : IBus.PanelService {
|
||||||
@ -349,5 +350,5 @@ index 1da7966..fc60fd4 100644
|
|||||||
|
|
||||||
private void update_xkb_engines() {
|
private void update_xkb_engines() {
|
||||||
--
|
--
|
||||||
1.8.0
|
1.8.5.3
|
||||||
|
|
||||||
|
434
ibus-HEAD.patch
434
ibus-HEAD.patch
@ -212,7 +212,7 @@ index 1b617f8..c16f86a 100644
|
|||||||
From 9bad0c944162a1700dcb6615aab2a6a9cfd9eff5 Mon Sep 17 00:00:00 2001
|
From 9bad0c944162a1700dcb6615aab2a6a9cfd9eff5 Mon Sep 17 00:00:00 2001
|
||||||
From: fujiwarat <takao.fujiwara1@gmail.com>
|
From: fujiwarat <takao.fujiwara1@gmail.com>
|
||||||
Date: Thu, 12 Jun 2014 11:38:43 +0900
|
Date: Thu, 12 Jun 2014 11:38:43 +0900
|
||||||
Subject: [PATCH 1/8] Fix escape key with Ctrl+Shift+U ISO 14755.
|
Subject: [PATCH] Fix escape key with Ctrl+Shift+U ISO 14755.
|
||||||
|
|
||||||
GtkIMContextSimple uses gdk_keymap_get_for_display() to check the readable
|
GtkIMContextSimple uses gdk_keymap_get_for_display() to check the readable
|
||||||
hex codes but IBusEngineSimple ignored it because does not have the display
|
hex codes but IBusEngineSimple ignored it because does not have the display
|
||||||
@ -314,7 +314,7 @@ index 8c076ac..300a828 100644
|
|||||||
From b6afffbd1a06ecf17af009f1de3e513988ecb92e Mon Sep 17 00:00:00 2001
|
From b6afffbd1a06ecf17af009f1de3e513988ecb92e Mon Sep 17 00:00:00 2001
|
||||||
From: fujiwarat <takao.fujiwara1@gmail.com>
|
From: fujiwarat <takao.fujiwara1@gmail.com>
|
||||||
Date: Wed, 18 Jun 2014 11:42:34 +0900
|
Date: Wed, 18 Jun 2014 11:42:34 +0900
|
||||||
Subject: [PATCH 2/8] Update ibuscomposetable.h for pt-br.
|
Subject: [PATCH] Update ibuscomposetable.h for pt-br.
|
||||||
|
|
||||||
pt_BR.UTF-8/Compose file is updated:
|
pt_BR.UTF-8/Compose file is updated:
|
||||||
http://cgit.freedesktop.org/xorg/lib/libX11/commit/?id=e3dc0d1733
|
http://cgit.freedesktop.org/xorg/lib/libX11/commit/?id=e3dc0d1733
|
||||||
@ -1000,7 +1000,7 @@ index 2ba3571..22aab48 100644
|
|||||||
From a5300750e38b5327bdd255d777544d0c0ebcb4d9 Mon Sep 17 00:00:00 2001
|
From a5300750e38b5327bdd255d777544d0c0ebcb4d9 Mon Sep 17 00:00:00 2001
|
||||||
From: fujiwarat <takao.fujiwara1@gmail.com>
|
From: fujiwarat <takao.fujiwara1@gmail.com>
|
||||||
Date: Tue, 24 Jun 2014 11:24:40 +0900
|
Date: Tue, 24 Jun 2014 11:24:40 +0900
|
||||||
Subject: [PATCH 4/8] Do not sort ibus engines when they are saved by
|
Subject: [PATCH] Do not sort ibus engines when they are saved by
|
||||||
ibus-setup.
|
ibus-setup.
|
||||||
|
|
||||||
ibus 1.5 changes the engine order with Super+space shortcut key
|
ibus 1.5 changes the engine order with Super+space shortcut key
|
||||||
@ -1099,7 +1099,7 @@ index dee7be4..1d89f3d 100644
|
|||||||
From 8ef258ec31f12405e4f5ded6a7a4d80114a219d4 Mon Sep 17 00:00:00 2001
|
From 8ef258ec31f12405e4f5ded6a7a4d80114a219d4 Mon Sep 17 00:00:00 2001
|
||||||
From: Osamu Aoki <osamu@debian.org>
|
From: Osamu Aoki <osamu@debian.org>
|
||||||
Date: Thu, 3 Jul 2014 11:39:32 +0900
|
Date: Thu, 3 Jul 2014 11:39:32 +0900
|
||||||
Subject: [PATCH 5/8] Use "keycode Linux_keycode = X11_keysym" format
|
Subject: [PATCH] Use "keycode Linux_keycode = X11_keysym" format
|
||||||
|
|
||||||
Delete non-Linux keyboard compatibility.
|
Delete non-Linux keyboard compatibility.
|
||||||
|
|
||||||
@ -1150,7 +1150,7 @@ index 2c78347..e5546fa 100644
|
|||||||
From 3dcf24742216d6234a45ace1b433b864efdf08a2 Mon Sep 17 00:00:00 2001
|
From 3dcf24742216d6234a45ace1b433b864efdf08a2 Mon Sep 17 00:00:00 2001
|
||||||
From: fujiwarat <takao.fujiwara1@gmail.com>
|
From: fujiwarat <takao.fujiwara1@gmail.com>
|
||||||
Date: Fri, 4 Jul 2014 16:03:57 +0900
|
Date: Fri, 4 Jul 2014 16:03:57 +0900
|
||||||
Subject: [PATCH 7/8] Add ibus reset-config and read-config sub-commands.
|
Subject: [PATCH] Add ibus reset-config and read-config sub-commands.
|
||||||
|
|
||||||
BUG=rhbz#530711
|
BUG=rhbz#530711
|
||||||
TEST=tools/ibus
|
TEST=tools/ibus
|
||||||
@ -1243,17 +1243,20 @@ index db4fd23..ecce80a 100644
|
|||||||
--
|
--
|
||||||
1.8.5.3
|
1.8.5.3
|
||||||
|
|
||||||
From 4c245bbbac3edea90980a0f47ef2d5c0c070f936 Mon Sep 17 00:00:00 2001
|
From 9e5a2bd2c40f9eed8d99710b63b3dab737aa9b95 Mon Sep 17 00:00:00 2001
|
||||||
From: fujiwarat <takao.fujiwara1@gmail.com>
|
From: fujiwarat <takao.fujiwara1@gmail.com>
|
||||||
Date: Mon, 7 Jul 2014 16:17:25 +0900
|
Date: Tue, 8 Jul 2014 11:42:12 +0900
|
||||||
Subject: [PATCH 8/8] Update ibus(1) for read-config and reset-config.
|
Subject: [PATCH] Update ibus(1) for read-config and reset-config.
|
||||||
|
|
||||||
|
TEST=tools/ibus.1.gz
|
||||||
|
|
||||||
|
Review URL: https://codereview.appspot.com/111900044
|
||||||
---
|
---
|
||||||
tools/ibus.1.in | 7 +++++++
|
tools/ibus.1.in | 7 +++++++
|
||||||
1 file changed, 7 insertions(+)
|
1 file changed, 7 insertions(+)
|
||||||
|
|
||||||
diff --git a/tools/ibus.1.in b/tools/ibus.1.in
|
diff --git a/tools/ibus.1.in b/tools/ibus.1.in
|
||||||
index ab99db4..f777f65 100644
|
index ab99db4..6ac92ff 100644
|
||||||
--- a/tools/ibus.1.in
|
--- a/tools/ibus.1.in
|
||||||
+++ b/tools/ibus.1.in
|
+++ b/tools/ibus.1.in
|
||||||
@@ -85,6 +85,13 @@ directories, separated by ':'.
|
@@ -85,6 +85,13 @@ directories, separated by ':'.
|
||||||
@ -1261,7 +1264,7 @@ index ab99db4..f777f65 100644
|
|||||||
Show the D-Bus address of ibus-daemon.
|
Show the D-Bus address of ibus-daemon.
|
||||||
.TP
|
.TP
|
||||||
+\fBread\-config\fR
|
+\fBread\-config\fR
|
||||||
+Show the setting values in a gsettings configuration file.
|
+Print the setting values in a gsettings configuration file.
|
||||||
+.TP
|
+.TP
|
||||||
+\fBreset\-config\fR
|
+\fBreset\-config\fR
|
||||||
+Reset the user setting values to the default ones in a gsettings
|
+Reset the user setting values to the default ones in a gsettings
|
||||||
@ -1273,3 +1276,414 @@ index ab99db4..f777f65 100644
|
|||||||
--
|
--
|
||||||
1.8.5.3
|
1.8.5.3
|
||||||
|
|
||||||
|
From 10483bfebd1f51ffa52ad7d017193ae728f93bf5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: fujiwarat <takao.fujiwara1@gmail.com>
|
||||||
|
Date: Thu, 10 Jul 2014 11:54:30 +0900
|
||||||
|
Subject: [PATCH] Fix ibus-setup SEGV in enginetreeview.py
|
||||||
|
|
||||||
|
When an engine is added on ibus-setup, enginetreeview.append_engine()
|
||||||
|
calls self.__model.append(None) and it causes engine == None in
|
||||||
|
__icon_cell_data_cb() and __name_cell_data_cb() in enginetreeview
|
||||||
|
with python3-gobject 3.13.x which version has implemented several
|
||||||
|
deprecated warnings in gi/overrides/Gtk.py .
|
||||||
|
I think this problem also could happen in the old versions if
|
||||||
|
the system would be slow.
|
||||||
|
|
||||||
|
BUG=rhbz#1048429
|
||||||
|
TEST=setup in Fedora 21
|
||||||
|
|
||||||
|
Review URL: https://codereview.appspot.com/104620043
|
||||||
|
---
|
||||||
|
setup/enginetreeview.py | 15 +++++++++++++--
|
||||||
|
1 file changed, 13 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/setup/enginetreeview.py b/setup/enginetreeview.py
|
||||||
|
index 3ab81b7..afb23fc 100644
|
||||||
|
--- a/setup/enginetreeview.py
|
||||||
|
+++ b/setup/enginetreeview.py
|
||||||
|
@@ -128,12 +128,25 @@ class EngineTreeView(Gtk.TreeView):
|
||||||
|
def __icon_cell_data_cb(self, celllayout, renderer, model, it, data):
|
||||||
|
engine = self.__model.get_value(it, 0)
|
||||||
|
|
||||||
|
+ # When append_engine() is called, self.__model.append(None)
|
||||||
|
+ # is called internally and engine == None could happen in
|
||||||
|
+ # a slow system.
|
||||||
|
+ if engine == None:
|
||||||
|
+ return
|
||||||
|
+
|
||||||
|
icon_size = Gtk.icon_size_lookup(Gtk.IconSize.LARGE_TOOLBAR)[0]
|
||||||
|
pixbuf = load_icon(engine.get_icon(), Gtk.IconSize.LARGE_TOOLBAR)
|
||||||
|
renderer.set_property("pixbuf", pixbuf)
|
||||||
|
|
||||||
|
def __name_cell_data_cb(self, celllayout, renderer, model, it, data):
|
||||||
|
engine = self.__model.get_value(it, 0)
|
||||||
|
+
|
||||||
|
+ # When append_engine() is called, self.__model.append(None)
|
||||||
|
+ # is called internally and engine == None could happen in
|
||||||
|
+ # a slow system.
|
||||||
|
+ if engine == None:
|
||||||
|
+ return
|
||||||
|
+
|
||||||
|
renderer.set_property("sensitive", True)
|
||||||
|
language = IBus.get_language_name(engine.get_language())
|
||||||
|
renderer.set_property("text",
|
||||||
|
@@ -215,7 +228,6 @@ class EngineTreeView(Gtk.TreeView):
|
||||||
|
it = self.__model.prepend(None)
|
||||||
|
self.__model.set(it, 0, engine)
|
||||||
|
self.__engines = [engine] + self.__engines
|
||||||
|
- self.scroll_to_cell(self.__model[0].path, None)
|
||||||
|
|
||||||
|
def append_engine(self, engine):
|
||||||
|
if engine == None or engine in self.__engines:
|
||||||
|
@@ -223,7 +235,6 @@ class EngineTreeView(Gtk.TreeView):
|
||||||
|
it = self.__model.append(None)
|
||||||
|
self.__model.set(it, 0, engine)
|
||||||
|
self.__engines.append(engine)
|
||||||
|
- self.scroll_to_cell(self.__model[-1].path, None)
|
||||||
|
|
||||||
|
def remove_engine(self):
|
||||||
|
it = self.get_selected_iter()
|
||||||
|
--
|
||||||
|
1.8.5.3
|
||||||
|
|
||||||
|
From a17dc8e8bd288adedb77ae417d6825419337daae Mon Sep 17 00:00:00 2001
|
||||||
|
From: fujiwarat <takao.fujiwara1@gmail.com>
|
||||||
|
Date: Fri, 11 Jul 2014 11:45:05 +0900
|
||||||
|
Subject: [PATCH] Fix deprecated warnings with python3-gobject 3.13.3.
|
||||||
|
|
||||||
|
python3-gobject adds several warnings in gi/overrides/Gtk.py
|
||||||
|
|
||||||
|
/usr/share/ibus/setup/main.py:74: PyGIDeprecationWarning:
|
||||||
|
Using positional arguments with the GObject constructor has been
|
||||||
|
deprecated. Please specify keyword(s) for "schema" or use a class
|
||||||
|
specific constructor.
|
||||||
|
See: https://wiki.gnome.org/PyGObject/InitializerDeprecations
|
||||||
|
|
||||||
|
/usr/share/ibus/setup/main.py:364: PyGTKDeprecationWarning:
|
||||||
|
The keyword(s) "type" have been deprecated in favor of "message_type"
|
||||||
|
respectively.
|
||||||
|
See: https://wiki.gnome.org/PyGObject/InitializerDeprecations
|
||||||
|
|
||||||
|
TEST=setup
|
||||||
|
|
||||||
|
Review URL: https://codereview.appspot.com/110990044
|
||||||
|
---
|
||||||
|
setup/engineabout.py | 12 +++++++-----
|
||||||
|
setup/keyboardshortcut.py | 32 ++++++++++++++++++--------------
|
||||||
|
setup/main.py | 30 ++++++++++++++++++------------
|
||||||
|
setup/setup.ui | 2 ++
|
||||||
|
4 files changed, 45 insertions(+), 31 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/setup/engineabout.py b/setup/engineabout.py
|
||||||
|
index 50ab001..09e9b5c 100644
|
||||||
|
--- a/setup/engineabout.py
|
||||||
|
+++ b/setup/engineabout.py
|
||||||
|
@@ -29,12 +29,14 @@ from gi.repository import Pango
|
||||||
|
from i18n import _, N_
|
||||||
|
|
||||||
|
class EngineAbout(Gtk.Dialog):
|
||||||
|
- def __init__(self, enginedesc):
|
||||||
|
- self.__engine_desc = enginedesc
|
||||||
|
- super(EngineAbout, self).__init__(_("About"), None,
|
||||||
|
- Gtk.DialogFlags.MODAL,
|
||||||
|
- (_("_Close"), Gtk.ResponseType.CLOSE))
|
||||||
|
+ def __init__(self, engine, transient_for = None):
|
||||||
|
+ self.__engine_desc = engine
|
||||||
|
+ super(EngineAbout, self).__init__(
|
||||||
|
+ title = _("About"),
|
||||||
|
+ transient_for = transient_for)
|
||||||
|
|
||||||
|
+ buttons = (_("_Close"), Gtk.ResponseType.CLOSE)
|
||||||
|
+ self.add_buttons(*buttons)
|
||||||
|
self.__init_ui()
|
||||||
|
|
||||||
|
def __init_ui(self):
|
||||||
|
diff --git a/setup/keyboardshortcut.py b/setup/keyboardshortcut.py
|
||||||
|
index d82fea8..91595f7 100644
|
||||||
|
--- a/setup/keyboardshortcut.py
|
||||||
|
+++ b/setup/keyboardshortcut.py
|
||||||
|
@@ -49,7 +49,8 @@ class KeyboardShortcutSelection(Gtk.Box):
|
||||||
|
# self.pack_start(label, False, True, 4)
|
||||||
|
|
||||||
|
# shortcuts view
|
||||||
|
- self.__shortcut_view = Gtk.TreeView(Gtk.ListStore(GObject.TYPE_STRING))
|
||||||
|
+ self.__shortcut_view = Gtk.TreeView(
|
||||||
|
+ model = Gtk.ListStore(GObject.TYPE_STRING))
|
||||||
|
self.__shortcut_view.set_size_request(-1, 100)
|
||||||
|
renderer = Gtk.CellRendererText()
|
||||||
|
column = Gtk.TreeViewColumn(_("Keyboard shortcuts"), renderer, text = 0)
|
||||||
|
@@ -63,7 +64,7 @@ class KeyboardShortcutSelection(Gtk.Box):
|
||||||
|
|
||||||
|
# key code
|
||||||
|
hbox = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL)
|
||||||
|
- label = Gtk.Label(_("Key code:"))
|
||||||
|
+ label = Gtk.Label(label = _("Key code:"))
|
||||||
|
label.set_justify(Gtk.Justification.LEFT)
|
||||||
|
label.set_alignment(0.0, 0.5)
|
||||||
|
hbox.pack_start(label, False, True, 4)
|
||||||
|
@@ -71,19 +72,19 @@ class KeyboardShortcutSelection(Gtk.Box):
|
||||||
|
self.__keycode_entry = Gtk.Entry()
|
||||||
|
self.__keycode_entry.connect("notify::text", self.__keycode_entry_notify_cb)
|
||||||
|
hbox.pack_start(self.__keycode_entry, True, True, 4)
|
||||||
|
- self.__keycode_button = Gtk.Button("...")
|
||||||
|
+ self.__keycode_button = Gtk.Button(label = "...")
|
||||||
|
self.__keycode_button.connect("clicked", self.__keycode_button_clicked_cb)
|
||||||
|
hbox.pack_start(self.__keycode_button, False, True, 4)
|
||||||
|
self.pack_start(hbox, False, True, 4)
|
||||||
|
|
||||||
|
# modifiers
|
||||||
|
hbox = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL)
|
||||||
|
- label = Gtk.Label(_("Modifiers:"))
|
||||||
|
+ label = Gtk.Label(label = _("Modifiers:"))
|
||||||
|
label.set_justify(Gtk.Justification.LEFT)
|
||||||
|
label.set_alignment(0.0, 0.5)
|
||||||
|
hbox.pack_start(label, False, True, 4)
|
||||||
|
|
||||||
|
- table = Gtk.Table(4, 2)
|
||||||
|
+ table = Gtk.Table(n_rows = 4, n_columns = 2)
|
||||||
|
self.__modifier_buttons = []
|
||||||
|
self.__modifier_buttons.append(("Control",
|
||||||
|
Gtk.CheckButton.new_with_mnemonic("_Control"),
|
||||||
|
@@ -250,8 +251,10 @@ class KeyboardShortcutSelection(Gtk.Box):
|
||||||
|
|
||||||
|
def __keycode_button_clicked_cb(self, button):
|
||||||
|
out = []
|
||||||
|
- dlg = Gtk.MessageDialog(parent = self.get_toplevel(), buttons = Gtk.ButtonsType.CLOSE)
|
||||||
|
- message = _("Please press a key (or a key combination).\nThe dialog will be closed when the key is released.")
|
||||||
|
+ dlg = Gtk.MessageDialog(transient_for = self.get_toplevel(),
|
||||||
|
+ buttons = Gtk.ButtonsType.CLOSE)
|
||||||
|
+ message = _("Please press a key (or a key combination).\n" \
|
||||||
|
+ "The dialog will be closed when the key is released.")
|
||||||
|
dlg.set_markup(message)
|
||||||
|
dlg.set_title(_("Please press a key (or a key combination)"))
|
||||||
|
sw = Gtk.ScrolledWindow()
|
||||||
|
@@ -265,7 +268,7 @@ class KeyboardShortcutSelection(Gtk.Box):
|
||||||
|
model = Gtk.ListStore(GObject.TYPE_INT,
|
||||||
|
GObject.TYPE_UINT,
|
||||||
|
GObject.TYPE_UINT)
|
||||||
|
- accel_view = Gtk.TreeView(model)
|
||||||
|
+ accel_view = Gtk.TreeView(model = model)
|
||||||
|
sw.add(accel_view)
|
||||||
|
column = Gtk.TreeViewColumn()
|
||||||
|
renderer = Gtk.CellRendererAccel(accel_mode=Gtk.CellRendererAccelMode.OTHER,
|
||||||
|
@@ -315,8 +318,9 @@ class KeyboardShortcutSelection(Gtk.Box):
|
||||||
|
self.__apply_button.set_sensitive(False)
|
||||||
|
|
||||||
|
class KeyboardShortcutSelectionDialog(Gtk.Dialog):
|
||||||
|
- def __init__(self, title = None, parent = None, flags = 0, buttons = None):
|
||||||
|
- super(KeyboardShortcutSelectionDialog, self).__init__(title, parent, flags, buttons)
|
||||||
|
+ def __init__(self, title = None, transient_for = None, flags = 0):
|
||||||
|
+ super(KeyboardShortcutSelectionDialog, self).__init__(
|
||||||
|
+ title = title, transient_for = transient_for, flags = flags)
|
||||||
|
self.__selection_view = KeyboardShortcutSelection()
|
||||||
|
self.vbox.pack_start(self.__selection_view, False, True, 0)
|
||||||
|
self.vbox.show_all()
|
||||||
|
@@ -333,10 +337,10 @@ class KeyboardShortcutSelectionDialog(Gtk.Dialog):
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
- dlg = KeyboardShortcutSelectionDialog(
|
||||||
|
- title = "Select test",
|
||||||
|
- buttons = (_("_Cancel"), Gtk.ResponseType.CANCEL,
|
||||||
|
- _("_OK"), Gtk.ResponseType.OK))
|
||||||
|
+ dlg = KeyboardShortcutSelectionDialog(title = "Select test")
|
||||||
|
+ buttons = (_("_Cancel"), Gtk.ResponseType.CANCEL,
|
||||||
|
+ _("_OK"), Gtk.ResponseType.OK)
|
||||||
|
+ dlg.add_buttons(buttons)
|
||||||
|
dlg.add_shortcut("Control+Shift+space")
|
||||||
|
dlg.set_shortcuts(None)
|
||||||
|
print((dlg.run()))
|
||||||
|
diff --git a/setup/main.py b/setup/main.py
|
||||||
|
index 1d89f3d..1bc9cfb 100644
|
||||||
|
--- a/setup/main.py
|
||||||
|
+++ b/setup/main.py
|
||||||
|
@@ -70,10 +70,12 @@ class Setup(object):
|
||||||
|
def __init__(self):
|
||||||
|
super(Setup, self).__init__()
|
||||||
|
|
||||||
|
- self.__settings_general = Gio.Settings("org.freedesktop.ibus.general");
|
||||||
|
+ self.__settings_general = Gio.Settings(
|
||||||
|
+ schema = "org.freedesktop.ibus.general");
|
||||||
|
self.__settings_hotkey = Gio.Settings(
|
||||||
|
- "org.freedesktop.ibus.general.hotkey");
|
||||||
|
- self.__settings_panel = Gio.Settings("org.freedesktop.ibus.panel");
|
||||||
|
+ schema = "org.freedesktop.ibus.general.hotkey");
|
||||||
|
+ self.__settings_panel = Gio.Settings(
|
||||||
|
+ schema = "org.freedesktop.ibus.panel");
|
||||||
|
|
||||||
|
# IBus.Bus() calls ibus_bus_new().
|
||||||
|
# Gtk.Builder().add_from_file() also calls ibus_bus_new_async()
|
||||||
|
@@ -300,7 +302,7 @@ class Setup(object):
|
||||||
|
def __button_engine_about_cb(self, button):
|
||||||
|
engine = self.__treeview.get_active_engine()
|
||||||
|
if engine:
|
||||||
|
- about = EngineAbout(engine)
|
||||||
|
+ about = EngineAbout(engine = engine, transient_for = self.__window)
|
||||||
|
about.run()
|
||||||
|
about.destroy()
|
||||||
|
|
||||||
|
@@ -328,7 +330,7 @@ class Setup(object):
|
||||||
|
return
|
||||||
|
|
||||||
|
message = _("The IBus daemon is not running. Do you wish to start it?")
|
||||||
|
- dlg = Gtk.MessageDialog(type = Gtk.MessageType.QUESTION,
|
||||||
|
+ dlg = Gtk.MessageDialog(message_type = Gtk.MessageType.QUESTION,
|
||||||
|
buttons = Gtk.ButtonsType.YES_NO,
|
||||||
|
text = message)
|
||||||
|
id = dlg.run()
|
||||||
|
@@ -354,7 +356,7 @@ class Setup(object):
|
||||||
|
" export XMODIFIERS=@im=ibus\n"
|
||||||
|
" export QT_IM_MODULE=ibus"
|
||||||
|
)
|
||||||
|
- dlg = Gtk.MessageDialog(type = Gtk.MessageType.INFO,
|
||||||
|
+ dlg = Gtk.MessageDialog(message_type = Gtk.MessageType.INFO,
|
||||||
|
buttons = Gtk.ButtonsType.OK,
|
||||||
|
text = message)
|
||||||
|
id = dlg.run()
|
||||||
|
@@ -363,7 +365,7 @@ class Setup(object):
|
||||||
|
else:
|
||||||
|
# Translators: %d == 5 currently
|
||||||
|
message = _("IBus daemon could not be started in %d seconds")
|
||||||
|
- dlg = Gtk.MessageDialog(type = Gtk.MessageType.INFO,
|
||||||
|
+ dlg = Gtk.MessageDialog(message_type = Gtk.MessageType.INFO,
|
||||||
|
buttons = Gtk.ButtonsType.OK,
|
||||||
|
text = message % timeout)
|
||||||
|
id = dlg.run()
|
||||||
|
@@ -378,7 +380,9 @@ class Setup(object):
|
||||||
|
# Translators: Title of the window
|
||||||
|
title2 = _("switching input methods")
|
||||||
|
title = title1 % title2
|
||||||
|
- dialog = keyboardshortcut.KeyboardShortcutSelectionDialog(buttons = buttons, title = title)
|
||||||
|
+ dialog = keyboardshortcut.KeyboardShortcutSelectionDialog(
|
||||||
|
+ title = title, transient_for = self.__window)
|
||||||
|
+ dialog.add_buttons(*buttons)
|
||||||
|
text = entry.get_text()
|
||||||
|
if text:
|
||||||
|
shortcuts = text.split("; ")
|
||||||
|
@@ -409,9 +413,10 @@ class Setup(object):
|
||||||
|
try:
|
||||||
|
self.__bus.register_start_engine(data[DATA_LANG], data[DATA_NAME])
|
||||||
|
except Exception as e:
|
||||||
|
- dlg = Gtk.MessageDialog(type = Gtk.MessageType.ERROR,
|
||||||
|
+ dlg = Gtk.MessageDialog(message_type = Gtk.MessageType.ERROR,
|
||||||
|
+ transient_for = self.__window,
|
||||||
|
buttons = Gtk.ButtonsType.CLOSE,
|
||||||
|
- message_format = str(e))
|
||||||
|
+ text = str(e))
|
||||||
|
dlg.run()
|
||||||
|
dlg.destroy()
|
||||||
|
self.__flush_gtk_events()
|
||||||
|
@@ -420,9 +425,10 @@ class Setup(object):
|
||||||
|
try:
|
||||||
|
self.__bus.register_stop_engine(data[DATA_LANG], data[DATA_NAME])
|
||||||
|
except Exception as e:
|
||||||
|
- dlg = Gtk.MessageDialog(type = Gtk.MessageType.ERROR,
|
||||||
|
+ dlg = Gtk.MessageDialog(message_type = Gtk.MessageType.ERROR,
|
||||||
|
+ transient_for = self.__window,
|
||||||
|
buttons = Gtk.ButtonsType.CLOSE,
|
||||||
|
- message_format = str(e))
|
||||||
|
+ text = str(e))
|
||||||
|
dlg.run()
|
||||||
|
dlg.destroy()
|
||||||
|
self.__flush_gtk_events()
|
||||||
|
diff --git a/setup/setup.ui b/setup/setup.ui
|
||||||
|
index bb78433..d7801ea 100644
|
||||||
|
--- a/setup/setup.ui
|
||||||
|
+++ b/setup/setup.ui
|
||||||
|
@@ -62,6 +62,8 @@
|
||||||
|
<property name="resizable">False</property>
|
||||||
|
<property name="window_position">center-always</property>
|
||||||
|
<property name="icon_name">ibus-setup</property>
|
||||||
|
+ <!-- for GtkFontChooserDialog -->
|
||||||
|
+ <property name="modal">True</property>
|
||||||
|
<child>
|
||||||
|
<object class="GtkBox" id="vbox1">
|
||||||
|
<property name="orientation">vertical</property>
|
||||||
|
--
|
||||||
|
1.8.5.3
|
||||||
|
|
||||||
|
From b1b4e2946682e3d53aa396d8469c7fa16a2dbca8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: fujiwarat <takao.fujiwara1@gmail.com>
|
||||||
|
Date: Fri, 11 Jul 2014 11:50:04 +0900
|
||||||
|
Subject: [PATCH] Export the 'IBUS_SETUP_XID' environment variable for each
|
||||||
|
engine setup.
|
||||||
|
|
||||||
|
Follow GNOME_CONTROL_CENTER_XID.
|
||||||
|
https://wiki.gnome.org/AllanDay/IMEGuidelines
|
||||||
|
|
||||||
|
TEST=setup
|
||||||
|
|
||||||
|
Review URL: https://codereview.appspot.com/112920044
|
||||||
|
---
|
||||||
|
setup/main.py | 6 ++++++
|
||||||
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/setup/main.py b/setup/main.py
|
||||||
|
index 1bc9cfb..e4ddd45 100644
|
||||||
|
--- a/setup/main.py
|
||||||
|
+++ b/setup/main.py
|
||||||
|
@@ -28,6 +28,7 @@ import signal
|
||||||
|
import sys
|
||||||
|
import time
|
||||||
|
|
||||||
|
+from gi.repository import GdkX11
|
||||||
|
from gi.repository import Gio
|
||||||
|
from gi.repository import GLib
|
||||||
|
from gi.repository import Gtk
|
||||||
|
@@ -233,6 +234,7 @@ class Setup(object):
|
||||||
|
# add icon search path
|
||||||
|
self.__window = self.__builder.get_object("window_preferences")
|
||||||
|
self.__window.connect("delete-event", Gtk.main_quit)
|
||||||
|
+ self.__window.connect("notify::window", self.__gdk_window_set_cb)
|
||||||
|
|
||||||
|
self.__button_close = self.__builder.get_object("button_close")
|
||||||
|
self.__button_close.connect("clicked", Gtk.main_quit)
|
||||||
|
@@ -248,6 +250,10 @@ class Setup(object):
|
||||||
|
self.__init_panel()
|
||||||
|
self.__init_general()
|
||||||
|
|
||||||
|
+ def __gdk_window_set_cb(self, object, pspec):
|
||||||
|
+ str = '%u' % GdkX11.X11Window.get_xid(object.get_window())
|
||||||
|
+ GLib.setenv('IBUS_SETUP_XID', str, True)
|
||||||
|
+
|
||||||
|
def __combobox_notify_active_engine_cb(self, combobox, property):
|
||||||
|
engine = self.__combobox.get_active_engine()
|
||||||
|
button = self.__builder.get_object("button_engine_add")
|
||||||
|
--
|
||||||
|
1.8.5.3
|
||||||
|
|
||||||
|
From 9b2004efcd26e11bbd56cf51656fe326fc11be8e Mon Sep 17 00:00:00 2001
|
||||||
|
From: fujiwarat <takao.fujiwara1@gmail.com>
|
||||||
|
Date: Mon, 14 Jul 2014 11:45:25 +0900
|
||||||
|
Subject: [PATCH] Call GLib.set_prgname('ibus-setup') for ibus-setup
|
||||||
|
main.py
|
||||||
|
|
||||||
|
TEST=xlsclients
|
||||||
|
|
||||||
|
Review URL: https://codereview.appspot.com/108550043
|
||||||
|
---
|
||||||
|
setup/main.py | 6 +++++-
|
||||||
|
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/setup/main.py b/setup/main.py
|
||||||
|
index e4ddd45..9bd0af1 100644
|
||||||
|
--- a/setup/main.py
|
||||||
|
+++ b/setup/main.py
|
||||||
|
@@ -28,9 +28,13 @@ import signal
|
||||||
|
import sys
|
||||||
|
import time
|
||||||
|
|
||||||
|
+from gi.repository import GLib
|
||||||
|
+# set_prgname before importing other modules to show the name in warning
|
||||||
|
+# messages when import modules are failed.
|
||||||
|
+GLib.set_prgname('ibus-setup')
|
||||||
|
+
|
||||||
|
from gi.repository import GdkX11
|
||||||
|
from gi.repository import Gio
|
||||||
|
-from gi.repository import GLib
|
||||||
|
from gi.repository import Gtk
|
||||||
|
from gi.repository import IBus
|
||||||
|
from os import path
|
||||||
|
--
|
||||||
|
1.8.5.3
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
From 6c5b4f197afde5185c23ed725eecb36da43507e6 Mon Sep 17 00:00:00 2001
|
From 79587f187998b6e89c478ac23c7dbcba56a91637 Mon Sep 17 00:00:00 2001
|
||||||
From: fujiwarat <takao.fujiwara1@gmail.com>
|
From: fujiwarat <takao.fujiwara1@gmail.com>
|
||||||
Date: Tue, 14 Jan 2014 15:30:54 +0900
|
Date: Mon, 14 Jul 2014 16:21:19 +0900
|
||||||
Subject: [PATCH] Enable ibus-setup to show the frequently used languages
|
Subject: [PATCH] Enable ibus-setup to show the frequently used languages
|
||||||
only in IME list.
|
only in IME list.
|
||||||
|
|
||||||
@ -10,7 +10,7 @@ Subject: [PATCH] Enable ibus-setup to show the frequently used languages
|
|||||||
2 files changed, 292 insertions(+), 24 deletions(-)
|
2 files changed, 292 insertions(+), 24 deletions(-)
|
||||||
|
|
||||||
diff --git a/data/ibus.schemas.in b/data/ibus.schemas.in
|
diff --git a/data/ibus.schemas.in b/data/ibus.schemas.in
|
||||||
index 28d2219..0600133 100644
|
index 9ee0b1a..c638e7d 100644
|
||||||
--- a/data/ibus.schemas.in
|
--- a/data/ibus.schemas.in
|
||||||
+++ b/data/ibus.schemas.in
|
+++ b/data/ibus.schemas.in
|
||||||
@@ -384,6 +384,174 @@ se,si,sk,sy,sy(ku),th,tj,tr,ua,uz,vn
|
@@ -384,6 +384,174 @@ se,si,sk,sy,sy(ku),th,tj,tr,ua,uz,vn
|
||||||
@ -189,7 +189,7 @@ index 28d2219..0600133 100644
|
|||||||
<applyto>/desktop/ibus/panel/custom_font</applyto>
|
<applyto>/desktop/ibus/panel/custom_font</applyto>
|
||||||
<owner>ibus</owner>
|
<owner>ibus</owner>
|
||||||
diff --git a/setup/enginecombobox.py b/setup/enginecombobox.py
|
diff --git a/setup/enginecombobox.py b/setup/enginecombobox.py
|
||||||
index b45ad56..830f0e8 100644
|
index 2a2a677..a203b25 100644
|
||||||
--- a/setup/enginecombobox.py
|
--- a/setup/enginecombobox.py
|
||||||
+++ b/setup/enginecombobox.py
|
+++ b/setup/enginecombobox.py
|
||||||
@@ -24,6 +24,7 @@ import locale
|
@@ -24,6 +24,7 @@ import locale
|
||||||
@ -207,7 +207,7 @@ index b45ad56..830f0e8 100644
|
|||||||
+ self.__all_model = None
|
+ self.__all_model = None
|
||||||
+ self.__show_sub_lang = False
|
+ self.__show_sub_lang = False
|
||||||
+ self.__settings_xkblayoutconfig = Gio.Settings(
|
+ self.__settings_xkblayoutconfig = Gio.Settings(
|
||||||
+ "org.freedesktop.ibus.general.xkblayoutconfig");
|
+ schema = "org.freedesktop.ibus.general.xkblayoutconfig");
|
||||||
|
|
||||||
renderer = Gtk.CellRendererPixbuf()
|
renderer = Gtk.CellRendererPixbuf()
|
||||||
renderer.set_property("xalign", 0)
|
renderer.set_property("xalign", 0)
|
||||||
@ -217,17 +217,6 @@ index b45ad56..830f0e8 100644
|
|||||||
|
|
||||||
- def set_engines(self, engines):
|
- def set_engines(self, engines):
|
||||||
- self.__model = Gtk.TreeStore(object)
|
- self.__model = Gtk.TreeStore(object)
|
||||||
-
|
|
||||||
- iter1 = self.__model.append(None)
|
|
||||||
- self.__model.set(iter1, 0, 0)
|
|
||||||
- langs = {}
|
|
||||||
- for e in engines:
|
|
||||||
- l = IBus.get_language_name(e.get_language())
|
|
||||||
- if l == None:
|
|
||||||
- l = ""
|
|
||||||
- if l not in langs:
|
|
||||||
- langs[l] = []
|
|
||||||
- langs[l].append(e)
|
|
||||||
+ def __gconf_get_lang_list_from_locale(self):
|
+ def __gconf_get_lang_list_from_locale(self):
|
||||||
+ common_list = ['en', 'Other']
|
+ common_list = ['en', 'Other']
|
||||||
+ loc = None
|
+ loc = None
|
||||||
@ -256,7 +245,17 @@ index b45ad56..830f0e8 100644
|
|||||||
+ if lang_list == None:
|
+ if lang_list == None:
|
||||||
+ return [loc] + common_list
|
+ return [loc] + common_list
|
||||||
+ return lang_list + common_list
|
+ return lang_list + common_list
|
||||||
+
|
|
||||||
|
- iter1 = self.__model.append(None)
|
||||||
|
- self.__model.set(iter1, 0, 0)
|
||||||
|
- langs = {}
|
||||||
|
- for e in engines:
|
||||||
|
- l = IBus.get_language_name(e.get_language())
|
||||||
|
- if l == None:
|
||||||
|
- l = ""
|
||||||
|
- if l not in langs:
|
||||||
|
- langs[l] = []
|
||||||
|
- langs[l].append(e)
|
||||||
+ def __has_engine_in_lang_list(self, engine, lang_list):
|
+ def __has_engine_in_lang_list(self, engine, lang_list):
|
||||||
+ retval = False
|
+ retval = False
|
||||||
+ for lang in lang_list:
|
+ for lang in lang_list:
|
||||||
@ -410,5 +409,5 @@ index b45ad56..830f0e8 100644
|
|||||||
raise AttributeError('unknown property %s' % property.name)
|
raise AttributeError('unknown property %s' % property.name)
|
||||||
|
|
||||||
--
|
--
|
||||||
1.8.0
|
1.8.5.3
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@
|
|||||||
|
|
||||||
Name: ibus
|
Name: ibus
|
||||||
Version: 1.5.7
|
Version: 1.5.7
|
||||||
Release: 5%{?dist}
|
Release: 6%{?dist}
|
||||||
Summary: Intelligent Input Bus for Linux OS
|
Summary: Intelligent Input Bus for Linux OS
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
Group: System Environment/Libraries
|
Group: System Environment/Libraries
|
||||||
@ -466,6 +466,13 @@ fi
|
|||||||
%{_datadir}/gtk-doc/html/*
|
%{_datadir}/gtk-doc/html/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Jul 14 2014 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.7-6
|
||||||
|
- Updated ibus-HEAD.patch from upstream.
|
||||||
|
Fixed ibus-setup SEGV when an engine is selected.
|
||||||
|
Fixed ibus-setup deprecated warnings with the latest python3-gobject.
|
||||||
|
Integrated the 'IBUS_SETUP_XID' environment variable for each engine setup.
|
||||||
|
Set prgname 'ibus-setup' for ibus-setup.
|
||||||
|
|
||||||
* Mon Jul 07 2014 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.7-5
|
* Mon Jul 07 2014 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.7-5
|
||||||
- Updated ibus-HEAD.patch from upstream.
|
- Updated ibus-HEAD.patch from upstream.
|
||||||
Added pl(qwertz).
|
Added pl(qwertz).
|
||||||
|
Loading…
Reference in New Issue
Block a user