Updated ibus-HEAD.patch for rhbz#1136623.

Added ibus-po-1.5.9-20141001.tar.gz
This commit is contained in:
Takao Fujiwara 2014-10-01 17:18:46 +09:00
parent da0362df48
commit 3aca75d3de
4 changed files with 68 additions and 1 deletions

1
.gitignore vendored
View File

@ -41,3 +41,4 @@ ibus-1.3.6.tar.gz
/ibus-1.5.7.tar.gz
/ibus-1.5.8.tar.gz
/ibus-1.5.9.tar.gz
/ibus-po-1.5.9-20141001.tar.gz

View File

@ -1 +1,58 @@
From f33e19bec6ab7d1a6133894c86fdeb5a81ce11f1 Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Wed, 1 Oct 2014 16:21:02 +0900
Subject: [PATCH] Fix to lose a focus when move the focus from the delayed
focus-in/out.
Some applications likes google-chrome URL entry could have the delayed
focus-in and focus-out events and ibus fails to get the new focus.
BUG=rhbz#919863, rhbz#1136623
Review URL: https://codereview.appspot.com/7725045
---
bus/inputcontext.c | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/bus/inputcontext.c b/bus/inputcontext.c
index b7e1ff8..d9924a1 100644
--- a/bus/inputcontext.c
+++ b/bus/inputcontext.c
@@ -773,6 +773,34 @@ _ic_process_key_event (BusInputContext *context,
}
}
+ /* If I move the focus from the URL entry box of google-chrome
+ * to the text buffer of gnome-terminal,
+ * focus-in/focus-out of google-chrome is caused after
+ * focus-in of gonme-terminal and gnome-terminal loses the focus.
+ * The following focus events are received in ibusimcontext:
+ * 1) (gnome-terminal:445): IBUS-WARNING **: 15:32:36:717 focus_in
+ * 2) (google-chrome:495): IBUS-WARNING **: 15:32:36:866 focus_out
+ * 3) (google-chrome:495): IBUS-WARNING **: 15:32:36:875 focus_in
+ * 4) (google-chrome:495): IBUS-WARNING **: 15:32:36:890 focus_out
+ * In 2), Just return because focused_context is not google-chrome.
+ * In 3), focused_context is changed from gnome-terminal to google-chrome
+ * In 4), focused_context is changed from google-chrome to faked_context.
+ *
+ * It seems google-chrome has a popup window of the prediction of URL
+ * and async focus-in/focus-out.
+ */
+ if (context->has_focus && context->engine == NULL &&
+ context->fake == FALSE) {
+ BusInputContext *focused_context =
+ bus_ibus_impl_get_focused_input_context (BUS_DEFAULT_IBUS);
+
+ if (focused_context != NULL && context != focused_context &&
+ (context->capabilities & IBUS_CAP_FOCUS) != 0) {
+ context->has_focus = FALSE;
+ bus_input_context_focus_in (context);
+ }
+ }
+
/* ignore key events, if it is a fake input context */
if (context->has_focus && context->engine && context->fake == FALSE) {
bus_engine_proxy_process_key_event (context->engine,
--
1.8.5.3

View File

@ -28,7 +28,7 @@
Name: ibus
Version: 1.5.9
Release: 1%{?dist}
Release: 2%{?dist}
Summary: Intelligent Input Bus for Linux OS
License: LGPLv2+
Group: System Environment/Libraries
@ -36,8 +36,10 @@ URL: http://code.google.com/p/ibus/
Source0: https://github.com/ibus/ibus/releases/download/%{version}/%{name}-%{version}.tar.gz
Source1: %{name}-xinput
Source2: %{name}.conf.5
Source3: https://fujiwara.fedorapeople.org/ibus/po/%{name}-po-%{version}-20141001.tar.gz
# Upstreamed patches.
# Patch0: %%{name}-HEAD.patch
Patch0: %{name}-HEAD.patch
BuildRequires: gettext-devel
BuildRequires: libtool
@ -214,7 +216,9 @@ The ibus-devel-docs package contains developer documentation for IBus
%prep
%setup -q
zcat %SOURCE3 | tar xfv -
# %%patch0 -p1
%patch0 -p1
# cp client/gtk2/ibusimcontext.c client/gtk3/ibusimcontext.c ||
%build
@ -402,6 +406,10 @@ fi
%{_datadir}/gtk-doc/html/*
%changelog
* Wed Oct 01 2014 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.9-2
- Updated ibus-HEAD.patch for rhbz#1136623.
- Added ibus-po-1.5.9-20141001.tar.gz
* Tue Sep 16 2014 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.9-1
- Bumped to 1.5.9

View File

@ -1 +1,2 @@
a6e820db4fe3d82c825398f1ed19c77e ibus-1.5.9.tar.gz
4877ac2bac89e33ff00881dba1d538bc ibus-po-1.5.9-20141001.tar.gz