diff options
author | Matsuu Takuto <matsuu@gentoo.org> | 2010-02-04 16:33:11 +0000 |
---|---|---|
committer | Matsuu Takuto <matsuu@gentoo.org> | 2010-02-04 16:33:11 +0000 |
commit | 9448ebe9ecc9a54539c434295e757e4803ba820b (patch) | |
tree | 2682cab115a089937fa40b3053947452e6314165 /app-i18n/uim | |
parent | Update to RC5 for OpenOffice.org 3.2.0 (diff) | |
download | gentoo-2-9448ebe9ecc9a54539c434295e757e4803ba820b.tar.gz gentoo-2-9448ebe9ecc9a54539c434295e757e4803ba820b.tar.bz2 gentoo-2-9448ebe9ecc9a54539c434295e757e4803ba820b.zip |
Fixed kde4 issue, https://bugs.freedesktop.org/show_bug.cgi?id=24728
(Portage version: 2.1.7.16/cvs/Linux x86_64)
Diffstat (limited to 'app-i18n/uim')
-rw-r--r-- | app-i18n/uim/ChangeLog | 8 | ||||
-rw-r--r-- | app-i18n/uim/files/uim-1.5.7-kde4-applet.patch | 12 | ||||
-rw-r--r-- | app-i18n/uim/files/uim-1.5.7-kde4.patch | 198 | ||||
-rw-r--r-- | app-i18n/uim/uim-1.5.7-r1.ebuild | 204 |
4 files changed, 421 insertions, 1 deletions
diff --git a/app-i18n/uim/ChangeLog b/app-i18n/uim/ChangeLog index 490b493bfc84..37111625078c 100644 --- a/app-i18n/uim/ChangeLog +++ b/app-i18n/uim/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-i18n/uim # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-i18n/uim/ChangeLog,v 1.218 2010/01/19 03:52:20 jer Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-i18n/uim/ChangeLog,v 1.219 2010/02/04 16:33:10 matsuu Exp $ + +*uim-1.5.7-r1 (04 Feb 2010) + + 04 Feb 2010; MATSUU Takuto <matsuu@gentoo.org> +uim-1.5.7-r1.ebuild, + +files/uim-1.5.7-kde4-applet.patch, +files/uim-1.5.7-kde4.patch: + Fixed kde4 issue, https://bugs.freedesktop.org/show_bug.cgi?id=24728 19 Jan 2010; Jeroen Roovers <jer@gentoo.org> uim-1.5.7.ebuild: Stable for HPPA (bug #298221). diff --git a/app-i18n/uim/files/uim-1.5.7-kde4-applet.patch b/app-i18n/uim/files/uim-1.5.7-kde4-applet.patch new file mode 100644 index 000000000000..dde28e3c4b3f --- /dev/null +++ b/app-i18n/uim/files/uim-1.5.7-kde4-applet.patch @@ -0,0 +1,12 @@ +diff -Naur uim-1.5.7.orig/configure.ac uim-1.5.7/configure.ac +--- uim-1.5.7.orig/configure.ac 2009-11-21 21:55:15.000000000 +0900 ++++ uim-1.5.7/configure.ac 2010-02-05 01:00:37.000000000 +0900 +@@ -1259,7 +1259,7 @@ + @<:@default=yes@:>@]), + enable_kde4_applet=$enableval, + enable_kde4_applet=yes) +-case "$enable_kde_applet" in ++case "$enable_kde4_applet" in + no) + use_applet_kde4="no" + ;; diff --git a/app-i18n/uim/files/uim-1.5.7-kde4.patch b/app-i18n/uim/files/uim-1.5.7-kde4.patch new file mode 100644 index 000000000000..ed289ca1e38c --- /dev/null +++ b/app-i18n/uim/files/uim-1.5.7-kde4.patch @@ -0,0 +1,198 @@ +Index: qt4/toolbar/common-uimstateindicator.cpp +=================================================================== +--- qt4/toolbar/common-uimstateindicator.cpp (revision 6120) ++++ qt4/toolbar/common-uimstateindicator.cpp (working copy) +@@ -40,6 +40,7 @@ + #include <QtCore/QTextCodec> + #include <QtGui/QHBoxLayout> + #include <QtGui/QImage> ++#include <QtGui/QMouseEvent> + #include <QtGui/QPixmap> + + #include <cstring> +@@ -171,11 +172,17 @@ + button->setToolTip( fields[ 3 ] ); + + // create popup ++#ifdef PLASMA_APPLET_UIM ++ popupMenu = new QHelperPopupMenu( 0 ); ++#else + popupMenu = new QHelperPopupMenu( button ); ++#endif + connect( popupMenu, SIGNAL( aboutToShow() ), + this, SLOT( slotPopupMenuAboutToShow() ) ); + connect( popupMenu, SIGNAL( aboutToHide() ), + this, SLOT( slotPopupMenuAboutToHide() ) ); ++ connect( button, SIGNAL( menuRequested( QMenu* ) ), ++ this, SIGNAL( menuRequested( QMenu* ) ) ); + button->setMenu( popupMenu ); + button->setPopupMode( QToolButton::InstantPopup ); + +@@ -264,7 +271,29 @@ + } + + /**/ ++QHelperToolbarButton::QHelperToolbarButton( QWidget *parent ) ++ : QToolButton( parent ) ++{ ++ setAutoRaise( true ); ++} + ++QSize QHelperToolbarButton::sizeHint() const ++{ ++ return QSize( BUTTON_SIZE, BUTTON_SIZE ); ++} ++ ++void QHelperToolbarButton::mousePressEvent( QMouseEvent *event ) ++{ ++#ifdef PLASMA_APPLET_UIM ++ if ( event->button() == Qt::LeftButton ) ++ emit menuRequested( menu() ); ++#else ++ QToolButton::mousePressEvent( event ); ++#endif ++} ++ ++/**/ ++ + QHelperPopupMenu::QHelperPopupMenu( QWidget *parent ) + : QMenu( parent ) + { +Index: qt4/toolbar/applet-kde4.h +=================================================================== +--- qt4/toolbar/applet-kde4.h (revision 6120) ++++ qt4/toolbar/applet-kde4.h (working copy) +@@ -50,6 +50,7 @@ + + private slots: + void slotToolbarResized(); ++ void slotMenuRequested(QMenu *menu); + + private: + void initPopup(); +Index: qt4/toolbar/common-uimstateindicator.h +=================================================================== +--- qt4/toolbar/common-uimstateindicator.h (revision 6120) ++++ qt4/toolbar/common-uimstateindicator.h (working copy) +@@ -70,6 +70,7 @@ + + signals: + void indicatorResized(); ++ void menuRequested( QMenu *menu ); + + public slots: + void slotStdinActivated( int socket ); +@@ -91,14 +92,17 @@ + + class QHelperToolbarButton : public QToolButton + { ++ Q_OBJECT + public: +- explicit QHelperToolbarButton( QWidget *parent = 0 ) +- : QToolButton( parent ){ setAutoRaise( true ); } ++ explicit QHelperToolbarButton( QWidget *parent = 0 ); + +- QSize sizeHint() const +- { +- return QSize( BUTTON_SIZE, BUTTON_SIZE ); +- } ++ QSize sizeHint() const; ++ ++signals: ++ void menuRequested( QMenu *menu ); ++ ++private: ++ void mousePressEvent( QMouseEvent *event ); + }; + + class QHelperPopupMenu : public QMenu +Index: qt4/toolbar/common-quimhelpertoolbar.cpp +=================================================================== +--- qt4/toolbar/common-quimhelpertoolbar.cpp (revision 6120) ++++ qt4/toolbar/common-quimhelpertoolbar.cpp (working copy) +@@ -56,7 +56,10 @@ + m_indicator = new UimStateIndicator( this ); + m_layout->addWidget( m_indicator ); + +- connect( m_indicator, SIGNAL( indicatorResized() ), this, SLOT( slotIndicatorResized() ) ); ++ connect( m_indicator, SIGNAL( indicatorResized() ), ++ this, SLOT( slotIndicatorResized() ) ); ++ connect( m_indicator, SIGNAL( menuRequested( QMenu* ) ), ++ this, SIGNAL( menuRequested( QMenu* ) ) ); + + QPixmap swicon = QPixmap( ICONDIR + "/im_switcher.png" ); + QPixmap preficon = QPixmap( ACTION_ICONDIR + "/configure.png"); +@@ -87,7 +90,7 @@ + exiticon = QPixmap::fromImage( exitimage.scaled( ICON_SIZE, ICON_SIZE, + Qt::IgnoreAspectRatio, Qt::SmoothTransformation ) ); + +- m_contextMenu = new QMenu( this ); ++ m_contextMenu = new QMenu( isApplet ? 0 : this ); + m_contextMenu->addAction( m_swicon, _("Switch input method"), + this, SLOT(slotExecImSwitcher()) ); + m_contextMenu->addAction( m_preficon, _("Preference"), +@@ -129,8 +132,13 @@ + { + if( m_contextMenu->isHidden() ) + { ++#ifdef PLASMA_APPLET_UIM ++ Q_UNUSED( e ); ++ emit menuRequested( m_contextMenu ); ++#else + m_contextMenu->move( e->globalPos() ); + m_contextMenu->exec(); ++#endif + } + } + +Index: qt4/toolbar/common-quimhelpertoolbar.h +=================================================================== +--- qt4/toolbar/common-quimhelpertoolbar.h (revision 6120) ++++ qt4/toolbar/common-quimhelpertoolbar.h (working copy) +@@ -80,6 +80,7 @@ + signals: + void quitToolbar(); + void toolbarResized(); ++ void menuRequested( QMenu *menu ); + + protected: + UimStateIndicator *m_indicator; +Index: qt4/toolbar/applet-kde4.cpp +=================================================================== +--- qt4/toolbar/applet-kde4.cpp (revision 6120) ++++ qt4/toolbar/applet-kde4.cpp (working copy) +@@ -61,6 +61,8 @@ + m_toolbar->setAttribute(Qt::WA_NoSystemBackground); + connect(m_toolbar, SIGNAL(toolbarResized()), + this, SLOT(slotToolbarResized())); ++ connect(m_toolbar, SIGNAL(menuRequested(QMenu*)), ++ this, SLOT(slotMenuRequested(QMenu*))); + + m_proxy = new QGraphicsProxyWidget; + m_proxy->setWidget(m_toolbar); +@@ -115,6 +117,12 @@ + resize(m_toolbar->width() + lr, m_toolbar->height() + tb); + } + ++void UimApplet::slotMenuRequested(QMenu *menu) ++{ ++ menu->adjustSize(); ++ menu->exec(popupPosition(menu->size())); ++} ++ + QGraphicsWidget *UimApplet::graphicsWidget() + { + return m_widget; +Index: qt4/toolbar/CMakeLists.txt +=================================================================== +--- qt4/toolbar/CMakeLists.txt (revision 6120) ++++ qt4/toolbar/CMakeLists.txt (working copy) +@@ -3,7 +3,7 @@ + find_package(KDE4 REQUIRED) + include(KDE4Defaults) + +-add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS}) ++add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS} -DPLASMA_APPLET_UIM) + include_directories(${KDE4_INCLUDES} + ${CMAKE_SOURCE_DIR}/../.. ${CMAKE_SOURCE_DIR}/../../uim + ${CMAKE_SOURCE_DIR}/../../replace ${CMAKE_SOURCE_DIR}/..) diff --git a/app-i18n/uim/uim-1.5.7-r1.ebuild b/app-i18n/uim/uim-1.5.7-r1.ebuild new file mode 100644 index 000000000000..1b0a3cdcfbd2 --- /dev/null +++ b/app-i18n/uim/uim-1.5.7-r1.ebuild @@ -0,0 +1,204 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-i18n/uim/uim-1.5.7-r1.ebuild,v 1.1 2010/02/04 16:33:10 matsuu Exp $ + +EAPI="2" +inherit autotools eutils multilib elisp-common flag-o-matic + +DESCRIPTION="Simple, secure and flexible input method library" +HOMEPAGE="http://code.google.com/p/uim/" +SRC_URI="http://uim.googlecode.com/files/${P}.tar.bz2" + +LICENSE="BSD GPL-2 LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86" +IUSE="+anthy canna eb emacs gnome gtk kde libedit libnotify m17n-lib ncurses nls prime qt4 unicode X xft linguas_zh_CN linguas_zh_TW linguas_ja linguas_ko" + +RDEPEND="X? ( + x11-libs/libX11 + x11-libs/libXft + x11-libs/libXt + x11-libs/libICE + x11-libs/libSM + x11-libs/libXext + x11-libs/libXrender + ) + anthy? ( + unicode? ( >=app-i18n/anthy-8622 ) + !unicode? ( app-i18n/anthy ) + ) + canna? ( app-i18n/canna ) + eb? ( dev-libs/eb ) + emacs? ( virtual/emacs ) + gnome? ( >=gnome-base/gnome-panel-2.14 ) + gtk? ( >=x11-libs/gtk+-2.4 ) + kde? ( >=kde-base/kdelibs-4 ) + libedit? ( dev-libs/libedit ) + libnotify? ( >=x11-libs/libnotify-0.4 ) + m17n-lib? ( >=dev-libs/m17n-lib-1.3.1 ) + ncurses? ( sys-libs/ncurses ) + nls? ( virtual/libintl ) + prime? ( app-i18n/prime ) + qt4? ( x11-libs/qt-gui:4[qt3support] ) + !app-i18n/uim-svn + !<app-i18n/prime-0.9.4" +# mana? ( app-i18n/mana ) +# scim? ( >=app-i18n/scim-1.3.0 ) # broken +# sj3? ( >=app-i18n/sj3-2.0.1.21 ) +# wnn? ( app-i18n/wnn ) + +DEPEND="${RDEPEND} + dev-util/pkgconfig + >=sys-devel/gettext-0.15 + kde? ( dev-util/cmake ) + X? ( + x11-proto/xextproto + x11-proto/xproto + )" + +RDEPEND="${RDEPEND} + X? ( + media-fonts/font-sony-misc + linguas_zh_CN? ( + || ( media-fonts/font-isas-misc media-fonts/intlfonts ) + ) + linguas_zh_TW? ( + media-fonts/intlfonts + ) + linguas_ja? ( + || ( media-fonts/font-jis-misc media-fonts/intlfonts ) + ) + linguas_ko? ( + || ( media-fonts/font-daewoo-misc media-fonts/intlfonts ) + ) + )" + +SITEFILE=50${PN}-gentoo.el + +pkg_setup() { + # An arch specific config directory is used on multilib systems + has_multilib_profile && GTK2_CONFDIR="/etc/gtk-2.0/${CHOST}" + GTK2_CONFDIR=${GTK2_CONFDIR:=/etc/gtk-2.0/} +} + +src_prepare() { + epatch \ + "${FILESDIR}/${PN}-1.5.4-gentoo.patch" \ + "${FILESDIR}/${PN}-1.5.4-gcc43.patch" \ + "${FILESDIR}/${PN}-1.5.4-zhTW.patch" \ + "${FILESDIR}/${P}-kde4.patch" \ + "${FILESDIR}/${P}-kde4-applet.patch" + + # bug 275420 + sed -i -e "s:\$libedit_path/lib:/$(get_libdir):g" configure.ac || die + eautoconf +} + +src_configure() { + local myconf + + if use gtk && (use anthy || use canna) ; then + myconf="${myconf} --enable-dict" + else + myconf="${myconf} --disable-dict" + fi + + if use gtk || use qt4 ; then + myconf="${myconf} --enable-pref" + else + myconf="${myconf} --disable-pref" + fi + + if use anthy ; then + if use unicode ; then + myconf="${myconf} --with-anthy-utf8" + else + myconf="${myconf} --with-anthy" + fi + else + myconf="${myconf} --without-anthy" + fi + + if use libnotify ; then + myconf="${myconf} --enable-notify=libnotify" + fi + + econf $(use_with X x) \ + $(use_with canna) \ + $(use_with eb) \ + $(use_enable emacs) \ + $(use_with emacs lispdir "${SITELISP}") \ + $(use_enable gnome gnome-applet) \ + $(use_with gtk gtk2) \ + $(use_with libedit) \ + --disable-kde-applet \ + $(use_enable kde kde4-applet) \ + $(use_with m17n-lib m17nlib) \ + $(use_enable ncurses fep) \ + $(use_enable nls) \ + $(use_with prime) \ + --without-qt \ + --without-qt-immodule \ + $(use_with qt4 qt4) \ + $(use_with qt4 qt4-immodule) \ + $(use_with xft) \ + ${myconf} +} + +src_compile() { + emake || die "emake failed" + + if use emacs; then + cd emacs + elisp-compile *.el || die "elisp-compile failed" + fi +} + +src_install() { + # parallel make install b0rked, bug #222677 + emake -j1 INSTALL_ROOT="${D}" DESTDIR="${D}" install || die "make install failed" + + dodoc AUTHORS ChangeLog* NEWS README RELNOTE + if use emacs; then + elisp-install uim-el emacs/*.elc || die "elisp-install failed" + elisp-site-file-install "${FILESDIR}/${SITEFILE}" uim-el \ + || die "elisp-site-file-install failed" + fi +} + +pkg_postinst() { + elog + elog "To use uim-skk you should emerge app-i18n/skk-jisyo." + elog + elog "New input method switcher has been introduced. You need to set" + elog + elog "% GTK_IM_MODULE=uim ; export GTK_IM_MODULE" + elog "% QT_IM_MODULE=uim ; export QT_IM_MODULE" + elog "% XMODIFIERS=@im=uim ; export XMODIFIERS" + elog + elog "If you would like to use uim-anthy as default input method, put" + elog "(define default-im-name 'anthy)" + elog "to your ~/.uim." + elog + elog "All input methods can be found by running uim-im-switcher-gtk, " + elog "or uim-im-switcher-qt4." + elog + elog "If you upgrade from a version of uim older than 1.4.0," + elog "you should run revdep-rebuild." + + use gtk && gtk-query-immodules-2.0 > "${ROOT}/${GTK2_CONFDIR}/gtk.immodules" + if use emacs; then + elisp-site-regen + echo + elog "uim is autoloaded with Emacs with a minimal set of features:" + elog "There is no keybinding defined to call it directly, so please" + elog "create one yourself and choose an input method." + elog "Integration with LEIM is not done with this ebuild, please have" + elog "a look at the documentation how to achieve this." + fi +} + +pkg_postrm() { + use gtk && gtk-query-immodules-2.0 > "${ROOT}/${GTK2_CONFDIR}/gtk.immodules" + use emacs && elisp-site-regen +} |