public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Yixun Lan" <dlan@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: app-i18n/ibus/, app-i18n/ibus/files/
Date: Wed, 24 Nov 2021 09:35:36 +0000 (UTC)	[thread overview]
Message-ID: <1637746416.003bcb4ae9e303c8c491dac0e60ca8be2188e1c3.dlan@gentoo> (raw)

commit:     003bcb4ae9e303c8c491dac0e60ca8be2188e1c3
Author:     Yixun Lan <dlan <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 24 09:31:55 2021 +0000
Commit:     Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Wed Nov 24 09:33:36 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=003bcb4a

app-i18n/ibus: fix wrong candidate window position issue

Closes: https://bugs.gentoo.org/824494
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>

 .../ibus/files/ibus-1.5.25-ibusimcontext.patch     |  35 ++++
 app-i18n/ibus/ibus-1.5.25-r1.ebuild                | 194 +++++++++++++++++++++
 2 files changed, 229 insertions(+)

diff --git a/app-i18n/ibus/files/ibus-1.5.25-ibusimcontext.patch b/app-i18n/ibus/files/ibus-1.5.25-ibusimcontext.patch
new file mode 100644
index 000000000000..6187ff77fbac
--- /dev/null
+++ b/app-i18n/ibus/files/ibus-1.5.25-ibusimcontext.patch
@@ -0,0 +1,35 @@
+https://github.com/ibus/ibus/issues/2337
+https://bugs.gentoo.org/824494
+---
+diff --git a/client/gtk2/ibusimcontext.c b/client/gtk2/ibusimcontext.c
+index da9a402..b1ccede 100644
+--- a/client/gtk2/ibusimcontext.c
++++ b/client/gtk2/ibusimcontext.c
+@@ -1497,7 +1497,10 @@ _set_cursor_location_internal (IBusIMContext *ibusimcontext)
+ 
+ #if GTK_CHECK_VERSION (3, 98, 4)
+ #elif GTK_CHECK_VERSION (2, 91, 0)
+-    area.y += gdk_window_get_height (ibusimcontext->client_window);
++    if (area.x == -1 && area.y == -1 && area.width == 0 && area.height == 0) {
++        area.x = 0;
++        area.y += gdk_window_get_height (ibusimcontext->client_window);
++    }
+ #else
+     if (area.x == -1 && area.y == -1 && area.width == 0 && area.height == 0) {
+         gint w, h;
+diff --git a/client/gtk3/ibusimcontext.c b/client/gtk3/ibusimcontext.c
+index da9a402..b1ccede 100644
+--- a/client/gtk3/ibusimcontext.c
++++ b/client/gtk3/ibusimcontext.c
+@@ -1497,7 +1497,10 @@ _set_cursor_location_internal (IBusIMContext *ibusimcontext)
+ 
+ #if GTK_CHECK_VERSION (3, 98, 4)
+ #elif GTK_CHECK_VERSION (2, 91, 0)
+-    area.y += gdk_window_get_height (ibusimcontext->client_window);
++    if (area.x == -1 && area.y == -1 && area.width == 0 && area.height == 0) {
++        area.x = 0;
++        area.y += gdk_window_get_height (ibusimcontext->client_window);
++    }
+ #else
+     if (area.x == -1 && area.y == -1 && area.width == 0 && area.height == 0) {
+         gint w, h;

diff --git a/app-i18n/ibus/ibus-1.5.25-r1.ebuild b/app-i18n/ibus/ibus-1.5.25-r1.ebuild
new file mode 100644
index 000000000000..e4d24fa2a59a
--- /dev/null
+++ b/app-i18n/ibus/ibus-1.5.25-r1.ebuild
@@ -0,0 +1,194 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..10} )
+VALA_MIN_API_VERSION="0.34"
+VALA_MAX_API_VERSION="0.50"
+VALA_USE_DEPEND="vapigen"
+
+inherit autotools bash-completion-r1 gnome2-utils python-r1 vala virtualx xdg-utils
+
+GENTOO_VER=
+DESCRIPTION="Intelligent Input Bus for Linux / Unix OS"
+HOMEPAGE="https://github.com/ibus/ibus/wiki"
+
+[[ -n ${GENTOO_VER} ]] && \
+	GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-gentoo-patches-${GENTOO_VER}.tar.xz"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.gz
+	${GENTOO_PATCHSET_URI}"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="+X +emoji +gtk +gtk2 +introspection kde nls +python test +unicode vala wayland"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="emoji? ( gtk )
+	gtk2? ( gtk )
+	kde? ( gtk )
+	python? (
+		${PYTHON_REQUIRED_USE}
+		introspection
+	)
+	test? ( gtk )
+	vala? ( introspection )"
+
+CDEPEND="app-text/iso-codes
+	dev-libs/glib:2
+	gnome-base/dconf
+	gnome-base/librsvg:2
+	sys-apps/dbus[X?]
+	X? (
+		x11-libs/libX11
+		>=x11-libs/libXfixes-6.0.0
+		!gtk? ( x11-libs/gtk+:2 )
+	)
+	gtk? (
+		x11-libs/gtk+:3
+		x11-libs/libX11
+		x11-libs/libXi
+		gtk2? ( x11-libs/gtk+:2 )
+	)
+	introspection? ( dev-libs/gobject-introspection )
+	kde? ( dev-qt/qtgui:5 )
+	nls? ( virtual/libintl )
+	python? (
+		${PYTHON_DEPS}
+		dev-python/pygobject:3[${PYTHON_USEDEP}]
+	)
+	wayland? (
+		dev-libs/wayland
+		x11-libs/libxkbcommon
+	)"
+RDEPEND="${CDEPEND}
+	python? (
+		gtk? (
+			x11-libs/gtk+:3[introspection]
+		)
+	)"
+DEPEND="${CDEPEND}
+	$(vala_depend)
+	dev-util/glib-utils
+	virtual/pkgconfig
+	x11-misc/xkeyboard-config
+	emoji? (
+		app-i18n/unicode-cldr
+		app-i18n/unicode-emoji
+	)
+	nls? ( sys-devel/gettext )
+	unicode? ( app-i18n/unicode-data )"
+
+PATCHES=( "${FILESDIR}"/${P}-ibusimcontext.patch )
+
+src_prepare() {
+	vala_src_prepare --ignore-use
+	sed -i "/UCD_DIR=/s/\$with_emoji_annotation_dir/\$with_ucd_dir/" configure.ac
+	if ! has_version 'x11-libs/gtk+:3[wayland]'; then
+		touch ui/gtk3/panelbinding.vala
+	fi
+	if ! use emoji; then
+		touch \
+			tools/main.vala \
+			ui/gtk3/panel.vala
+	fi
+	if ! use kde; then
+		touch ui/gtk3/panel.vala
+	fi
+	if [[ -n ${GENTOO_VER} ]]; then
+		einfo "Try to apply Gentoo specific patch set"
+		eapply "${WORKDIR}"/patches-gentoo/*.patch
+	fi
+
+	# for multiple Python implementations
+	sed -i "s/^\(PYGOBJECT_DIR =\).*/\1/" bindings/Makefile.am
+	# fix for parallel install
+	sed -i "/^if ENABLE_PYTHON2/,/^endif/d" bindings/pygobject/Makefile.am
+	# require user interaction
+	sed -i "/^TESTS += ibus-\(compose\|keypress\)/d" src/tests/Makefile.am
+
+	sed -i "/^bash_completion/d" tools/Makefile.am
+
+	default
+	eautoreconf
+	xdg_environment_reset
+}
+
+src_configure() {
+	local unicodedir="${EPREFIX}"/usr/share/unicode
+	local python_conf=()
+	if use python; then
+		python_setup
+		python_conf+=(
+			$(use_enable gtk setup)
+			--with-python=${EPYTHON}
+		)
+	else
+		python_conf+=( --disable-setup )
+	fi
+
+	econf \
+		$(use_enable X xim) \
+		$(use_enable emoji emoji-dict) \
+		$(use_with emoji unicode-emoji-dir "${unicodedir}"/emoji) \
+		$(use_with emoji emoji-annotation-dir "${unicodedir}"/cldr/common/annotations) \
+		$(use_enable gtk gtk3) \
+		$(use_enable gtk ui) \
+		$(use_enable gtk2) \
+		$(use_enable introspection) \
+		$(use_enable kde appindicator) \
+		$(use_enable nls) \
+		$(use_enable test tests) \
+		$(use_enable unicode unicode-dict) \
+		$(use_with unicode ucd-dir "${EPREFIX}/usr/share/unicode-data") \
+		$(use_enable vala) \
+		$(use_enable wayland) \
+		"${python_conf[@]}"
+}
+
+src_test() {
+	unset DBUS_SESSION_BUS_ADDRESS
+	virtx emake -j1 check
+}
+
+src_install() {
+	default
+	find "${ED}" -name '*.la' -delete || die
+
+	if use python; then
+		python_install() {
+			emake -C bindings/pygobject \
+				pyoverridesdir="$(${EPYTHON} -c 'import gi; print(gi._overridesdir)')" \
+				DESTDIR="${D}" \
+				install
+
+			python_optimize
+		}
+		python_foreach_impl python_install
+	fi
+
+	keepdir /usr/share/ibus/engine
+
+	newbashcomp tools/${PN}.bash ${PN}
+
+	insinto /etc/X11/xinit/xinput.d
+	newins xinput-${PN} ${PN}.conf
+
+	# Undo compression of man page
+	find "${ED}"/usr/share/man -type f -name '*.gz' -exec gzip -d {} \; || die
+}
+
+pkg_postinst() {
+	use gtk && gnome2_query_immodules_gtk3
+	use gtk2 && gnome2_query_immodules_gtk2
+	xdg_icon_cache_update
+	gnome2_schemas_update
+	dconf update
+}
+
+pkg_postrm() {
+	use gtk && gnome2_query_immodules_gtk3
+	use gtk2 && gnome2_query_immodules_gtk2
+	xdg_icon_cache_update
+	gnome2_schemas_update
+}


             reply	other threads:[~2021-11-24  9:35 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-24  9:35 Yixun Lan [this message]
  -- strict thread matches above, loose matches on Subject: below --
2023-11-19  1:04 [gentoo-commits] repo/gentoo:master commit in: app-i18n/ibus/, app-i18n/ibus/files/ Matt Turner
2022-05-12 17:50 Matt Turner
2020-03-16 15:14 Yixun Lan
2018-10-05  9:57 Naohiro Aota
2018-08-28 12:57 Akinori Hattori

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1637746416.003bcb4ae9e303c8c491dac0e60ca8be2188e1c3.dlan@gentoo \
    --to=dlan@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox