[packages/uim] - added gnome-panel-update (try to port gnome3 applet to new libgnome-panel library) - renamed -qt s

qboosh qboosh at pld-linux.org
Sun Oct 18 13:27:43 CEST 2020


commit bd5acb7ecc0d11bec61ac33c9b3cdee8631d0a2e
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sun Oct 18 13:27:19 2020 +0200

    - added gnome-panel-update (try to port gnome3 applet to new libgnome-panel library)
    - renamed -qt subpackage to -qt4, added -qt5 subpackage
    - enabled knotify4 plugin for kde4

 uim-gnome-panel-update.patch | 216 +++++++++++++++++++++++++++++++++++++++++++
 uim.spec                     | 143 ++++++++++++++--------------
 2 files changed, 292 insertions(+), 67 deletions(-)
---
diff --git a/uim.spec b/uim.spec
index 69514f4..e2c6e7e 100644
--- a/uim.spec
+++ b/uim.spec
@@ -1,34 +1,41 @@
 #
 # Conditional build:
-%bcond_without	gnome	# GNOME panel applet
-%bcond_without	kde	# KDE panel applet
+%bcond_without	gnome	# GNOME 3 panel applet
+%bcond_without	kde	# KDE 4 panel applet and knotify4 plugin
 %bcond_with	qt3	# Qt 3 support / immodule
 %bcond_without	qt4	# Qt 4 support / immodule
+%bcond_without	qt5	# Qt 5 support / immodule
 %bcond_without	anthy	# Anthy IM and dictionary support
 %bcond_without	canna	# Canna IM and dictionary support
 %bcond_without	eb	# EB text search support
 %bcond_without	m17n	# m17n IM support
 %bcond_without	mana	# mana IM support
-%bcond_with	scim	# scim support [broken, already removed in 1.9.0-git]
+%bcond_without	prime	# PRIME IM support
 %bcond_without	wnn	# Wnn IM support
 #
 Summary:	Multilingual input method library
 Summary(pl.UTF-8):	Biblioteka obsługująca wejście w wielu językach
 Name:		uim
 Version:	1.8.8
-Release:	3
-License:	GPL or BSD
+Release:	4
+License:	BSD
 Group:		Libraries
 #Source0Download: https://github.com/uim/uim/releases
-Source0:	https://github.com/uim/uim/releases/download/1.8.8/%{name}-%{version}.tar.bz2
+Source0:	https://github.com/uim/uim/releases/download/%{version}/%{name}-%{version}.tar.bz2
 # Source0-md5:	01c7bd5d0d4f3a9f6f5befe6f57a470b
 Source1:	%{name}.xinputd
 Source2:	%{name}-init.el
 Patch0:		%{name}-emacs-utf8.patch
+Patch1:		%{name}-gnome-panel-update.patch
 URL:		https://github.com/uim/uim/wiki
 %{?with_canna:BuildRequires:	Canna-devel}
 %{?with_wnn:BuildRequires:	FreeWnn-devel}
 %{?with_qt4:BuildRequires:	Qt3Support-devel >= 4}
+%{?with_qt4:BuildRequires:	QtCore-devel >= 4}
+%{?with_qt4:BuildRequires:	QtGui-devel >= 4}
+%{?with_qt5:BuildRequires:	Qt5Core-devel >= 5}
+%{?with_qt5:BuildRequires:	Qt5Gui-devel >= 5}
+%{?with_qt5:BuildRequires:	Qt5Widgets-devel >= 5}
 %{?with_anthy:BuildRequires:	anthy-devel >= 9100h-2}
 BuildRequires:	autoconf >= 2.60b
 BuildRequires:	automake >= 1:1.10
@@ -38,7 +45,7 @@ BuildRequires:	curl-devel >= 7.16.4
 %{?with_eb:BuildRequires:	eb-devel}
 BuildRequires:	expat-devel >= 1.95
 BuildRequires:	gettext-tools >= 0.17
-%{?with_gnome:BuildRequires:	gnome-panel-devel >= 3}
+%{?with_gnome:BuildRequires:	gnome-panel-devel >= 3.37}
 BuildRequires:	gtk+2-devel >= 2:2.4.0
 BuildRequires:	gtk+3-devel >= 3.0
 BuildRequires:	intltool >= 0.36.3
@@ -46,7 +53,6 @@ BuildRequires:	intltool >= 0.36.3
 BuildRequires:	libedit-devel
 BuildRequires:	libffi-devel >= 3.0.0
 BuildRequires:	libgcroots-devel >= 0.2.3
-%{?with_gnome:BuildRequires:	libgnome-devel >= 2.4.0}
 BuildRequires:	libnotify-devel >= 0.4
 BuildRequires:	libstdc++-devel
 BuildRequires:	libtool >= 2:1.5
@@ -55,11 +61,12 @@ BuildRequires:	ncurses-devel
 BuildRequires:	openssl-devel
 BuildRequires:	pkgconfig
 BuildRequires:	pkgconfig(libffi) >= 3.0.0
-# since 1.9.0-git for PRIME support
-#BuildRequires:	prime >= 0.8.5.2
+# for configure check, but it affects only default set of registered modules
+#%{?with_prime:BuildRequires:	prime >= 0.8.5.2}
 %{?with_qt3:BuildRequires:	qt-devel >= 3.2.0}
 %{?with_qt4:BuildRequires:	qt4-qmake >= 4}
-%{?with_scim:BuildRequires:	scim-devel >= 1.3.0}
+%{?with_qt5:BuildRequires:	qt5-qmake >= 5}
+BuildRequires:	rpmbuild(macros) >= 1.750
 BuildRequires:	sqlite3-devel >= 3.0.0
 BuildRequires:	xorg-lib-libX11-devel
 BuildRequires:	xorg-lib-libXext-devel
@@ -67,11 +74,12 @@ BuildRequires:	xorg-lib-libXft-devel
 Requires:	libgcroots >= 0.2.3
 # for libuim-curl
 Requires:	curl-libs >= 7.16.4
+Obsoletes:	uim-scim < 1.8
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %ifarch %{ix86}
-%if "%(%{__cc} -dumpversion)" >= "6.3"
-# "-O2 -march=i686 -mtune=pentium4" combination causes sigscheme to segfault when built with gcc 6.3
+%if "%{_ver_ge '%{cc_version}' '6.3'}" == "1"
+# "-O2 -march=i686 -mtune=pentium4" combination causes sigscheme to segfault when built with gcc 6.3-7.5
 %define		filterout	-mtune=pentium4
 %endif
 %endif
@@ -164,6 +172,7 @@ Summary(pl.UTF-8):	Aplet GNOME 3 dla biblioteki Uim
 Group:		X11/Applications
 Requires:	%{name} = %{version}-%{release}
 Requires:	%{name}-gtk3 = %{version}-%{release}
+Requires:	gnome-panel >= 3.37
 
 %description gnome
 Uim is a multilingual input method library. Uim aims to provide secure
@@ -183,6 +192,7 @@ Summary:	Qt 3 support for Uim
 Summary(pl.UTF-8):	Obsługa Qt 3 dla biblioteki Uim
 Group:		X11/Applications
 Requires:	%{name} = %{version}-%{release}
+Requires:	qt >= 6:3.2.0
 Provides:	%{name}-qt-common = %{version}-%{release}
 
 %description qt3
@@ -198,26 +208,45 @@ wprowadzania dla wszystkich języków.
 
 Ten pakiet zawiera moduł IM Qt 3 oraz programy pomocnicze.
 
-%package qt
+%package qt4
 Summary:	Qt 4 support for Uim
 Summary(pl.UTF-8):	Obsługa Qt 4 dla biblioteki Uim
 Group:		X11/Applications
 Requires:	%{name} = %{version}-%{release}
-Requires:	qt >= 6:3.2.0
+Obsoletes:	uim-qt < 1.8.8-4
 
-%description qt
+%description qt4
 Uim is a multilingual input method library. Uim aims to provide secure
 and useful input methods for all languages.
 
 This package provides the Qt 4 IM module and helper programs.
 
-%description qt -l pl.UTF-8
+%description qt4 -l pl.UTF-8
 Uim jest biblioteką obsługującą wejście w wielu językach. Celem
 projektu jest udostępnienie bezpiecznych i użytecznych metod
 wprowadzania dla wszystkich języków.
 
 Ten pakiet zawiera moduł IM Qt 4 oraz programy pomocnicze.
 
+%package qt5
+Summary:	Qt 5 support for Uim
+Summary(pl.UTF-8):	Obsługa Qt 5 dla biblioteki Uim
+Group:		X11/Applications
+Requires:	%{name} = %{version}-%{release}
+
+%description qt5
+Uim is a multilingual input method library. Uim aims to provide secure
+and useful input methods for all languages.
+
+This package provides the Qt 5 IM module and helper programs.
+
+%description qt5 -l pl.UTF-8
+Uim jest biblioteką obsługującą wejście w wielu językach. Celem
+projektu jest udostępnienie bezpiecznych i użytecznych metod
+wprowadzania dla wszystkich języków.
+
+Ten pakiet zawiera moduł IM Qt 5 oraz programy pomocnicze.
+
 %package kde
 Summary:	KDE 4 Applet for Uim
 Summary(pl.UTF-8):	Aplet KDE 4 dla biblioteki Uim
@@ -368,20 +397,6 @@ This package provides support for PRIME, a Japanese input method.
 Ten pakiet zawiera obsługę metody PRIME wprowadzania znaków
 japońskich.
 
-%package scim
-Summary:	SCIM support for Uim
-Summary(pl.UTF-8):	Obsługa metod SCIM w Uimie
-Group:		Libraries
-Requires(post,postun):	%{_bindir}/uim-module-manager
-Requires:	%{name} = %{version}-%{release}
-Requires:	scim >= 1.3.0
-
-%description scim
-This package provides support for SCIM-provided input methods.
-
-%description scim -l pl.UTF-8
-Ten pakiet zawiera obsługę metod udostępnianych przez SCIM.
-
 %package sj3
 Summary:	SJ3 support for Uim
 Summary(pl.UTF-8):	Obsługa metody SJ3 w Uimie
@@ -428,6 +443,7 @@ japońskich.
 %prep
 %setup -q
 %patch0 -p1
+%patch1 -p1
 
 cp -a fep/README fep/README.fep
 cp -a fep/README.ja fep/README.fep.ja
@@ -446,10 +462,10 @@ cp -a xim/README xim/README.xim
 	MANA=/usr/bin/mana \
 	--enable-default-toolkit=gtk3 \
 	--enable-dict \
-	--disable-gnome2-applet \
+	--disable-gnome-applet \
 	%{?with_gnome:--enable-gnome3-applet} \
 	%{?with_kde:--enable-kde4-applet} \
-	--enable-notify=libnotify \
+	--enable-notify=libnotify%{?with_kde:,knotify4} \
 	--enable-openssl \
 	--enable-pref \
 	%{?with_qt4:--enable-qt4-qt3support} \
@@ -466,11 +482,12 @@ cp -a xim/README xim/README.xim
 	--with-libgcroots=installed \
 	--with-lispdir=%{_datadir}/emacs/site-lisp \
 	%{!?with_m17n:--without-m17nlib} \
-	%{?with_mana:--with-mana} \
-	--with-prime \
+	%{!?with_mana:--without-mana} \
+	--without-openssl-header-check \
+	%{!?with_prime:--without-prime} \
 	%{?with_qt3:--with-qt --with-qt-immodule} \
 	%{?with_qt4:--with-qt4 --with-qt4-immodule} \
-	%{?with_scim:--with-scim} \
+	%{?with_qt5:--with-qt5 --with-qt5-immodule} \
 	--with-sj3 \
 	--with-skk \
 	--with-sqlite3 \
@@ -496,7 +513,7 @@ install -d $RPM_BUILD_ROOT%{_sysconfdir}/X11/xinit/xinput.d \
 	DESTDIR=$RPM_BUILD_ROOT \
 	UIMEL_LISP_DIR=%{_datadir}/xemacs-packages/lisp/uim-el
 
-%{__rm} $RPM_BUILD_ROOT%{_libdir}{,/gtk*/*/immodules,/uim/*%{?with_gnome:,/uim}%{?with_qt3:,/qt/plugins-mt/*}}/*.la
+%{__rm} $RPM_BUILD_ROOT%{_libdir}{,/gtk*/*/immodules,/uim/*%{?with_gnome:,/gnome-panel/modules}%{?with_qt3:,/qt/plugins-mt/*}}/*.la
 
 %{__sed} -e 's|@@LIB@@|%{_lib}|g' %{SOURCE1} >$RPM_BUILD_ROOT%{_sysconfdir}/X11/xinit/xinput.d/uim.conf
 install -p %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d/
@@ -506,9 +523,8 @@ install -p %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/xemacs-packages/lisp/
 ln -sf %{_localstatedir}/lib/uim/installed-modules.scm $RPM_BUILD_ROOT%{_datadir}/uim/
 ln -sf %{_localstatedir}/lib/uim/loader.scm $RPM_BUILD_ROOT%{_datadir}/uim/
 
-%if %{without scim}
-%{__rm} $RPM_BUILD_ROOT%{_datadir}/uim/pixmaps/scim.svg
-%endif
+# remnants of removed SCIM module
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/uim/pixmaps/scim.{png,svg}
 
 # OSX-specific
 %{__rm} $RPM_BUILD_ROOT%{_datadir}/uim/annotation-osx-dcs.scm
@@ -531,7 +547,7 @@ LIBUIM_PLUGIN_LIB_DIR=$RPM_BUILD_ROOT%{_libdir}/uim/plugin \
 UIM_DISABLE_NOTIFY=1 \
 $RPM_BUILD_ROOT%{_bindir}/uim-module-manager \
 		--path $RPM_BUILD_ROOT%{_localstatedir}/lib/uim \
-		--unregister anthy-utf8 canna m17nlib mana prime scim sj3 skk wnn
+		--unregister anthy-utf8 canna m17nlib mana prime sj3 skk wnn
 
 %find_lang %{name}
 
@@ -609,14 +625,6 @@ if [ "$1" = "0" ]; then
 	%{_bindir}/uim-module-manager --path %{_localstatedir}/lib/uim --unregister prime
 fi
 
-%post scim
-%{_bindir}/uim-module-manager --path %{_localstatedir}/lib/uim --register scim
-
-%postun scim
-if [ "$1" = "0" ]; then
-	%{_bindir}/uim-module-manager --path %{_localstatedir}/lib/uim --unregister scim
-fi
-
 %post sj3
 %{_bindir}/uim-module-manager --path %{_localstatedir}/lib/uim --register sj3
 
@@ -643,8 +651,8 @@ fi
 
 %files -f %{name}.lang
 %defattr(644,root,root,755)
-%doc AUTHORS NEWS README RELNOTE
-%doc fep/README.fep fep/README.fep.ja fep/README.fep.key xim/README.xim
+%doc AUTHORS COPYING NEWS README RELNOTE fep/README.fep{,.key} xim/README.xim
+%lang(ja) %doc fep/README.fep.ja
 %{_sysconfdir}/X11/xinit/xinput.d/uim.conf
 %attr(755,root,root) %{_bindir}/uim-fep
 %attr(755,root,root) %{_bindir}/uim-fep-tick
@@ -689,10 +697,8 @@ fi
 %exclude %{_datadir}/uim/pixmaps/m17n*png
 %exclude %{_datadir}/uim/pixmaps/mana.png
 %exclude %{_datadir}/uim/pixmaps/mana.svg
+%if %{with prime}
 %exclude %{_datadir}/uim/pixmaps/prime*.png
-%if %{with scim}
-%exclude %{_datadir}/uim/pixmaps/scim.png
-%exclude %{_datadir}/uim/pixmaps/scim.svg
 %endif
 %exclude %{_datadir}/uim/pixmaps/sj3.png
 %exclude %{_datadir}/uim/pixmaps/sj3.svg
@@ -705,9 +711,8 @@ fi
 %exclude %{_datadir}/uim/canna*.scm
 %exclude %{_datadir}/uim/m17nlib*.scm
 %exclude %{_datadir}/uim/mana*.scm
+%if %{with prime}
 %exclude %{_datadir}/uim/prime*.scm
-%if %{with scim}
-%exclude %{_datadir}/uim/scim.scm
 %endif
 %exclude %{_datadir}/uim/sj3*.scm
 %exclude %{_datadir}/uim/skk*.scm
@@ -757,8 +762,7 @@ fi
 %if %{with gnome}
 %files gnome
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/uim/libuim-toolbar-applet-gnome3.so
-%{_datadir}/gnome-panel/applets/UimApplet.panel-applet
+%attr(755,root,root) %{_libdir}/gnome-panel/modules/uim.so
 %endif
 
 %if %{with qt3}
@@ -773,7 +777,7 @@ fi
 %endif
 
 %if %{with qt4}
-%files qt
+%files qt4
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/uim-chardict-qt4
 %attr(755,root,root) %{_bindir}/uim-im-switcher-qt4
@@ -783,10 +787,22 @@ fi
 %attr(755,root,root) %{_libexecdir}/uim-candwin-qt4
 %endif
 
+%if %{with qt5}
+%files qt5
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/uim-chardict-qt5
+%attr(755,root,root) %{_bindir}/uim-im-switcher-qt5
+%attr(755,root,root) %{_bindir}/uim-pref-qt5
+%attr(755,root,root) %{_bindir}/uim-toolbar-qt5
+%attr(755,root,root) %{_libdir}/qt5/plugins/platforminputcontexts/libuimplatforminputcontextplugin.so
+%attr(755,root,root) %{_libexecdir}/uim-candwin-qt5
+%endif
+
 %if %{with kde}
 %files kde
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/kde4/plasma_applet_uim.so
+%attr(755,root,root) %{_libdir}/uim/notify/libuimnotify-knotify4.so
 %{_datadir}/kde4/services/plasma-applet-uim.desktop
 %endif
 
@@ -845,18 +861,11 @@ fi
 %{_datadir}/uim/pixmaps/mana.svg
 %endif
 
+%if %{with prime}
 %files prime
 %defattr(644,root,root,755)
 %{_datadir}/uim/prime*.scm
 %{_datadir}/uim/pixmaps/prime*.png
-
-%if %{with scim}
-%files scim
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/uim/plugin/libuim-scim.so
-%{_datadir}/uim/scim.scm
-%{_datadir}/uim/pixmaps/scim.png
-%{_datadir}/uim/pixmaps/scim.svg
 %endif
 
 %files sj3
diff --git a/uim-gnome-panel-update.patch b/uim-gnome-panel-update.patch
new file mode 100644
index 0000000..95ab7cb
--- /dev/null
+++ b/uim-gnome-panel-update.patch
@@ -0,0 +1,216 @@
+--- uim-1.8.8/configure.ac.orig	2020-10-17 09:24:42.226622532 +0200
++++ uim-1.8.8/configure.ac	2020-10-17 11:11:05.698706962 +0200
+@@ -856,7 +856,7 @@
+   [enable_gnome3_applet=yes])
+ 
+ if test "x$enable_gnome3_applet" != xno; then
+-  PKG_CHECK_MODULES(GNOME3_APPLET, libpanel-applet,
++  PKG_CHECK_MODULES(GNOME3_APPLET, libgnome-panel,
+                     enable_gnome3_applet=yes, enable_gnome3_applet=no)
+ fi
+ 
+@@ -865,7 +865,7 @@
+ if test "x$enable_gnome3_applet" = xyes; then
+   AC_ARG_WITH([libpanel-applet-dir], [], [LIBPANEL_APPLET_DIR=$withval], [LIBPANEL_APPLET_DIR=""])
+   if test "$LIBPANEL_APPLET_DIR" == ""; then
+-    LIBPANEL_APPLET_DIR=`$PKG_CONFIG --variable=libpanel_applet_dir libpanel-applet`
++    LIBPANEL_APPLET_DIR=`$PKG_CONFIG --variable=modulesdir libgnome-panel`
+   fi
+   AC_SUBST(LIBPANEL_APPLET_DIR)
+ fi
+--- uim-1.8.8/gtk3/toolbar/applet-gnome3.c.orig	2017-08-14 02:07:26.000000000 +0200
++++ uim-1.8.8/gtk3/toolbar/applet-gnome3.c	2020-10-18 09:54:01.329023695 +0200
+@@ -38,11 +38,23 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <locale.h>
+-#include <panel-applet.h>
++#include <libgnome-panel/gp-applet.h>
++#include <libgnome-panel/gp-module.h>
+ #include <uim/uim.h>
+ #include <uim/gettext.h>
+ 
+-PanelApplet *uimapplet;
++G_BEGIN_DECLS
++#define UIM_TYPE_APPLET uim_applet_get_type()
++G_DECLARE_FINAL_TYPE (UimApplet, uim_applet, UIM, APPLET, GpApplet)
++G_END_DECLS
++
++struct _UimApplet
++{
++  GpApplet parent;
++  GtkWidget *toolbar;
++};
++
++G_DEFINE_TYPE (UimApplet, uim_applet, GP_TYPE_APPLET)
+ 
+ static void exec_switcher(GSimpleAction *action, GVariant *parameter, gpointer data);
+ static void exec_pref(GSimpleAction *action, GVariant *parameter, gpointer data);
+@@ -62,7 +74,8 @@
+   { "pad", exec_pad },
+   { "hand", exec_hand },
+   { "help", exec_help },
+-  { "about", display_about_dialog }
++  { "about", display_about_dialog },
++  { NULL }
+ };
+ 
+ static void
+@@ -128,47 +141,60 @@
+   }
+ }
+ 
+-static gboolean
+-uim_applet_new(PanelApplet *applet, const gchar *iid, gpointer data)
++static void
++uim_applet_init(UimApplet *uim_applet)
+ {
+-  GtkWidget *toolbar;
+-  GSimpleActionGroup *action_group;
+   gchar *ui_path;
+-  
+-  uimapplet = applet;
+-
+-  if (strcmp(iid, "UimApplet") != 0)
+-    return FALSE;
+-
+-  uim_init();
+-
+-  toolbar = (GtkWidget*)uim_toolbar_applet_new();
+ 
+-  gtk_container_add(GTK_CONTAINER(applet), toolbar);
++  uim_applet->toolbar = (GtkWidget*)uim_toolbar_applet_new();
+ 
+-  gtk_widget_show_all(GTK_WIDGET(applet));
++  gtk_container_add(GTK_CONTAINER(uim_applet), uim_applet->toolbar);
+ 
+-  action_group = g_simple_action_group_new();
+-  g_action_map_add_action_entries(G_ACTION_MAP (action_group), uim_menu_actions,
+-      G_N_ELEMENTS(uim_menu_actions), toolbar);
++  gtk_widget_show_all(GTK_WIDGET(uim_applet->toolbar));
+ 
+   ui_path = g_build_filename (UIM_UIDATADIR, "uim-applet-menu.xml", NULL);
+-  panel_applet_setup_menu_from_file(applet, ui_path, action_group, GETTEXT_PACKAGE);
++  gp_applet_setup_menu_from_resource(GP_APPLET(uim_applet), ui_path, uim_menu_actions);
+   g_free(ui_path);
++}
+ 
+-  gtk_widget_insert_action_group (GTK_WIDGET (applet), "uim",
+-                                  G_ACTION_GROUP (action_group));
+-#if LIBPANEL_APPLET_HAVE_SET_BACKGROUND_WIDGET
+-  panel_applet_set_background_widget(applet, GTK_WIDGET(applet));
+-#endif
+-  g_object_unref(action_group);
+-
+-  return TRUE;
++static void
++uim_applet_class_init(UimAppletClass *uim_applet_class)
++{
+ }
+ 
++static GpAppletInfo *
++uim_get_applet_info (const gchar *id)
++{
++  const gchar *name;
++  const gchar *description;
++  const gchar *icon;
++  GpAppletInfo *info;
+ 
++  name = _("Input Method Indicator");
++  description = _("Indicates and controls the state of input method (for uim)");
++  icon = UIM_PIXMAPSDIR "/uim-icon.png";
++  info = gp_applet_info_new (uim_applet_get_type, name, description, icon);
++  return info;
++}
+ 
+-PANEL_APPLET_IN_PROCESS_FACTORY("UimAppletFactory",
+-                            PANEL_TYPE_APPLET,
+-                            (PanelAppletFactoryCallback)uim_applet_new,
+-                            NULL)
++static const char *
++uim_get_applet_id_from_iid (const gchar *iid)
++{
++  if (g_strcmp0 (iid, "UimApplet") == 0)
++    return "uim";
++  return NULL;
++}
++
++void gp_module_load (GpModule *module)
++{
++  uim_init();
++  bindtextdomain(PACKAGE, LOCALEDIR);
++  bind_textdomain_codeset(PACKAGE, "UTF-8");
++  gp_module_set_gettext_domain(module, GETTEXT_PACKAGE);
++  gp_module_set_abi_version (module, GP_MODULE_ABI_VERSION);
++  gp_module_set_id (module, "uim");
++  gp_module_set_version (module, PACKAGE_VERSION);
++  gp_module_set_applet_ids (module, "uim", NULL);
++  gp_module_set_get_applet_info (module, uim_get_applet_info);
++  gp_module_set_compatibility (module, uim_get_applet_id_from_iid);
++}
+--- uim-1.8.8/gtk3/toolbar/uim-applet-menu.xml.orig	2015-06-09 12:13:54.000000000 +0200
++++ uim-1.8.8/gtk3/toolbar/uim-applet-menu.xml	2020-10-18 09:55:08.851991225 +0200
+@@ -1,3 +1,5 @@
++<interface>
++<menu id="uim-menu">
+ <section>
+   <item>
+     <attribute name="label" translatable="yes">Switch input method</attribute>
+@@ -28,3 +30,5 @@
+     <attribute name="action">uim.about</attribute>
+   </item>
+ </section>
++</menu>
++</interface>
+--- uim-1.8.8/gtk3/toolbar/Makefile.am.orig	2017-08-14 02:07:26.000000000 +0200
++++ uim-1.8.8/gtk3/toolbar/Makefile.am	2020-10-18 10:12:34.632992411 +0200
+@@ -4,42 +4,27 @@
+ if GNOME3_APPLET
+ helper_defs = -DUIM_DATADIR=\""$(datadir)/@PACKAGE@"\"
+ 
+-uim_toolbar_applet_gnome3_libdir = $(pkglibdir)
+-uim_toolbar_applet_gnome3_lib_LTLIBRARIES = libuim-toolbar-applet-gnome3.la
++uim_toolbar_applet_gnome3_libdir = $(LIBPANEL_APPLET_DIR)
++uim_toolbar_applet_gnome3_lib_LTLIBRARIES = uim.la
+ 
+ xmluidir = $(pkgdatadir)/ui
+ xmlui_DATA = uim-applet-menu.xml
+ 
+-libuim_toolbar_applet_gnome3_la_LIBADD = @GTK3_LIBS@ @GNOME3_APPLET_LIBS@ \
++uim_la_LIBADD = @GTK3_LIBS@ @GNOME3_APPLET_LIBS@ \
+ 			   $(top_builddir)/uim/libuim-scm.la \
+ 			   $(top_builddir)/uim/libuim.la \
+ 			   $(top_builddir)/uim/libuim-custom.la
+-libuim_toolbar_applet_gnome3_la_CPPFLAGS = \
++uim_la_CPPFLAGS = \
+ 			   -DUIM_UIDATADIR="\"${xmluidir}\"" \
+ 			   $(helper_defs) -I$(top_srcdir) -I$(top_builddir)
+-libuim_toolbar_applet_gnome3_la_LDFLAGS = \
++uim_la_LDFLAGS = \
+ 			   -module -avoid-version
+ 
+-libuim_toolbar_applet_gnome3_la_CFLAGS = @GTK3_CFLAGS@ @GNOME3_APPLET_CFLAGS@
++uim_la_CFLAGS = @GTK3_CFLAGS@ @GNOME3_APPLET_CFLAGS@
+ 
+-libuim_toolbar_applet_gnome3_la_SOURCES = applet-gnome3.c \
++uim_la_SOURCES = applet-gnome3.c \
+ 			       ../../gtk2/toolbar/common-gtk.c
+ 
+-APPLET_LOCATION = $(pkglibdir)/libuim-toolbar-applet-gnome3.so
+-
+-appletdir = $(LIBPANEL_APPLET_DIR)
+-applet_DATA = UimApplet.panel-applet
+-applet_in_files = $(applet_DATA:=.in)
+-applet_in_in_files = $(applet_in_files:=.in)
+-
+-$(applet_in_files): $(applet_in_in_files) Makefile
+-	$(SED) s, at APPLET_LOCATION@,$(APPLET_LOCATION),g <$< >$@.tmp
+-	$(SED) s, at UIM_PIXMAPSDIR@,$(uim_pixmapsdir),g <$@.tmp >$@
+-
+-po_files = $(wildcard $(top_srcdir)/po/*.po)
+-$(applet_DATA): $(applet_in_files) $(INTLTOOL_MERGE) $(po_files)
+-	LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@ 
+-
+ DISTCLEANFILES = UimApplet.panel-applet.in UimApplet.panel-applet \
+ 		 UimApplet.panel-applet.in.tmp
+ endif
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/uim.git/commitdiff/bd5acb7ecc0d11bec61ac33c9b3cdee8631d0a2e



More information about the pld-cvs-commit mailing list