Hello community,

here is the log from the commit of package ibus-pinyin for openSUSE:Factory 
checked in at 2013-11-24 12:03:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ibus-pinyin (Old)
 and      /work/SRC/openSUSE:Factory/.ibus-pinyin.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ibus-pinyin"

Changes:
--------
--- /work/SRC/openSUSE:Factory/ibus-pinyin/ibus-pinyin.changes  2013-10-31 
16:03:34.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.ibus-pinyin.new/ibus-pinyin.changes     
2013-11-24 12:03:36.000000000 +0100
@@ -1,0 +2,7 @@
+Thu Nov 21 08:32:02 CET 2013 - ti...@suse.de
+
+- ibus-pinyin-support-set-content-type-method.patch:
+  Fix visible password entry in GNOME lock screen (CVE-2013-4509,
+  bnc#847718); taken from Fedora package
+
+-------------------------------------------------------------------

New:
----
  ibus-pinyin-support-set-content-type-method.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ibus-pinyin.spec ++++++
--- /var/tmp/diff_new_pack.SlXFub/_old  2013-11-24 12:03:37.000000000 +0100
+++ /var/tmp/diff_new_pack.SlXFub/_new  2013-11-24 12:03:37.000000000 +0100
@@ -25,6 +25,8 @@
 Provides:       locale(ibus:zh)
 Url:            http://code.google.com/p/ibus/
 Source0:        http://ibus.googlecode.com/files/%{name}-%{version}.tar.gz
+# PATCH-FIX-FEDORA ibus-pinyin-support-set-content-type-method.patch bnc#847718
+Patch1:         ibus-pinyin-support-set-content-type-method.patch
 BuildRequires:  boost-devel
 BuildRequires:  gcc-c++
 BuildRequires:  gettext-devel
@@ -39,9 +41,9 @@
 BuildRequires:  update-desktop-files
 Requires:       ibus >= 1.4.99
 Requires:       opencc
+Requires:       python-xdg
 Requires:       pyzy-db-android
 Requires:       pyzy-db-open-phrase
-Requires:       python-xdg
 
 %description
 PinYin engine for IBus platform. It provides a Chinese PinYin input method.
@@ -52,6 +54,7 @@
 
 %prep
 %setup -q
+%patch1 -p1
 
 %build
 %configure --disable-static \

++++++ ibus-pinyin-support-set-content-type-method.patch ++++++
>From f1accaa9a18bd4a1c7234b40e16ad9889c25a461 Mon Sep 17 00:00:00 2001
From: Peng Wu <alexep...@gmail.com>
Date: Wed, 6 Nov 2013 13:16:14 +0800
Subject: [PATCH] support setContentType method

---
 src/PYBopomofoEngine.cc | 22 ++++++++++++++++++++++
 src/PYBopomofoEngine.h  |  7 +++++++
 src/PYEngine.cc         | 21 +++++++++++++++++++++
 src/PYEngine.h          |  3 +++
 src/PYPinyinEngine.cc   | 22 ++++++++++++++++++++++
 src/PYPinyinEngine.h    |  7 +++++++
 6 files changed, 82 insertions(+)

diff --git a/src/PYBopomofoEngine.cc b/src/PYBopomofoEngine.cc
index 581c4cf..4dfbc2c 100644
--- a/src/PYBopomofoEngine.cc
+++ b/src/PYBopomofoEngine.cc
@@ -42,6 +42,10 @@ BopomofoEngine::BopomofoEngine (IBusEngine *engine)
 {
     gint i;
 
+#if IBUS_CHECK_VERSION (1, 5, 4)
+    m_input_purpose = IBUS_INPUT_PURPOSE_FREE_FORM;
+#endif
+
     /* create editors */
     m_editors[MODE_INIT].reset (new BopomofoEditor (m_props, 
BopomofoConfig::instance ()));
     m_editors[MODE_PUNCT].reset (new PunctEditor (m_props, 
BopomofoConfig::instance ()));
@@ -72,6 +76,11 @@ BopomofoEngine::processKeyEvent (guint keyval, guint 
keycode, guint modifiers)
 {
     gboolean retval = FALSE;
 
+#if IBUS_CHECK_VERSION (1, 5, 4)
+    if (IBUS_INPUT_PURPOSE_PASSWORD == m_input_purpose)
+        return retval;
+#endif
+
     /* check Shift + Release hotkey,
      * and then ignore other Release key event */
     if (modifiers & IBUS_RELEASE_MASK) {
@@ -139,9 +148,22 @@ BopomofoEngine::focusIn (void)
 void
 BopomofoEngine::focusOut (void)
 {
+
+#if IBUS_CHECK_VERSION (1, 5, 4)
+    m_input_purpose = IBUS_INPUT_PURPOSE_FREE_FORM;
+#endif
+
     reset ();
 }
 
+#if IBUS_CHECK_VERSION(1, 5, 4)
+void
+BopomofoEngine::setContentType (guint purpose, guint hints)
+{
+    m_input_purpose = (IBusInputPurpose) purpose;
+}
+#endif
+
 void
 BopomofoEngine::reset (void)
 {
diff --git a/src/PYBopomofoEngine.h b/src/PYBopomofoEngine.h
index ce41ce8..14b6780 100644
--- a/src/PYBopomofoEngine.h
+++ b/src/PYBopomofoEngine.h
@@ -36,6 +36,9 @@ public:
     gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers);
     void focusIn (void);
     void focusOut (void);
+#if IBUS_CHECK_VERSION (1, 5, 4)
+    void setContentType (guint purpose, guint hints);
+#endif
     void reset (void);
     void enable (void);
     void disable (void);
@@ -59,6 +62,10 @@ private:
 private:
     PinyinProperties m_props;
 
+#if IBUS_CHECK_VERSION (1, 5, 4)
+    IBusInputPurpose m_input_purpose;
+#endif
+
     guint    m_prev_pressed_key;
 
     enum {
diff --git a/src/PYEngine.cc b/src/PYEngine.cc
index d9fa04a..da047b2 100644
--- a/src/PYEngine.cc
+++ b/src/PYEngine.cc
@@ -67,6 +67,12 @@ static gboolean ibus_pinyin_engine_process_key_event
                                                  guint                   
modifiers);
 static void     ibus_pinyin_engine_focus_in     (IBusEngine             
*engine);
 static void     ibus_pinyin_engine_focus_out    (IBusEngine             
*engine);
+#if IBUS_CHECK_VERSION (1, 5, 4)
+static void     ibus_pinyin_engine_set_content_type
+                                                (IBusEngine     *engine,
+                                                 guint           purpose,
+                                                 guint           hints);
+#endif
 static void     ibus_pinyin_engine_reset        (IBusEngine             
*engine);
 static void     ibus_pinyin_engine_enable       (IBusEngine             
*engine);
 static void     ibus_pinyin_engine_disable      (IBusEngine             
*engine);
@@ -123,6 +129,10 @@ ibus_pinyin_engine_class_init (IBusPinyinEngineClass 
*klass)
     engine_class->focus_in = ibus_pinyin_engine_focus_in;
     engine_class->focus_out = ibus_pinyin_engine_focus_out;
 
+#if IBUS_CHECK_VERSION (1, 5, 4)
+    engine_class->set_content_type = ibus_pinyin_engine_set_content_type;
+#endif
+
     engine_class->page_up = ibus_pinyin_engine_page_up;
     engine_class->page_down = ibus_pinyin_engine_page_down;
 
@@ -182,6 +192,17 @@ ibus_pinyin_engine_process_key_event (IBusEngine     
*engine,
     return pinyin->engine->processKeyEvent (keyval, keycode, modifiers);
 }
 
+#if IBUS_CHECK_VERSION (1, 5, 4)
+static void
+ibus_pinyin_engine_set_content_type (IBusEngine     *engine,
+                                     guint purpose,
+                                     guint hints)
+{
+    IBusPinyinEngine *pinyin = (IBusPinyinEngine *) engine;
+    return pinyin->engine->setContentType (purpose, hints);
+}
+#endif
+
 static void
 ibus_pinyin_engine_property_activate (IBusEngine    *engine,
                                       const gchar   *prop_name,
diff --git a/src/PYEngine.h b/src/PYEngine.h
index b74e6e8..22e1b79 100644
--- a/src/PYEngine.h
+++ b/src/PYEngine.h
@@ -44,6 +44,9 @@ public:
     virtual gboolean processKeyEvent (guint keyval, guint keycode, guint 
modifiers) = 0;
     virtual void focusIn (void) = 0;
     virtual void focusOut (void) = 0;
+#if IBUS_CHECK_VERSION (1, 5, 4)
+    virtual void setContentType (guint purpose, guint hints) = 0;
+#endif
     virtual void reset (void) = 0;
     virtual void enable (void) = 0;
     virtual void disable (void) = 0;
diff --git a/src/PYPinyinEngine.cc b/src/PYPinyinEngine.cc
index 7aea261..570187b 100644
--- a/src/PYPinyinEngine.cc
+++ b/src/PYPinyinEngine.cc
@@ -45,6 +45,10 @@ PinyinEngine::PinyinEngine (IBusEngine *engine)
 {
     gint i;
 
+#if IBUS_CHECK_VERSION (1, 5, 4)
+    m_input_purpose = IBUS_INPUT_PURPOSE_FREE_FORM;
+#endif
+
     if (PinyinConfig::instance ().doublePinyin ())
         m_editors[MODE_INIT].reset (new DoublePinyinEditor (m_props, 
PinyinConfig::instance ()));
     else
@@ -82,6 +86,11 @@ PinyinEngine::processKeyEvent (guint keyval, guint keycode, 
guint modifiers)
 {
     gboolean retval = FALSE;
 
+#if IBUS_CHECK_VERSION (1, 5, 4)
+    if (IBUS_INPUT_PURPOSE_PASSWORD == m_input_purpose)
+        return retval;
+#endif
+
     /* check Shift + Release hotkey,
      * and then ignore other Release key event */
     if (modifiers & IBUS_RELEASE_MASK) {
@@ -195,9 +204,22 @@ PinyinEngine::focusIn (void)
 void
 PinyinEngine::focusOut (void)
 {
+
+#if IBUS_CHECK_VERSION (1, 5, 4)
+    m_input_purpose = IBUS_INPUT_PURPOSE_FREE_FORM;
+#endif
+
     reset ();
 }
 
+#if IBUS_CHECK_VERSION(1, 5, 4)
+void
+PinyinEngine::setContentType (guint purpose, guint hints)
+{
+    m_input_purpose = (IBusInputPurpose) purpose;
+}
+#endif
+
 void
 PinyinEngine::reset (void)
 {
diff --git a/src/PYPinyinEngine.h b/src/PYPinyinEngine.h
index fcce73e..de50269 100644
--- a/src/PYPinyinEngine.h
+++ b/src/PYPinyinEngine.h
@@ -35,6 +35,9 @@ public:
     gboolean processKeyEvent (guint keyval, guint keycode, guint modifiers);
     void focusIn (void);
     void focusOut (void);
+#if IBUS_CHECK_VERSION (1, 5, 4)
+    void setContentType (guint purpose, guint hints);
+#endif
     void reset (void);
     void enable (void);
     void disable (void);
@@ -58,6 +61,10 @@ private:
 private:
     PinyinProperties m_props;
 
+#if IBUS_CHECK_VERSION (1, 5, 4)
+    IBusInputPurpose m_input_purpose;
+#endif
+
     guint    m_prev_pressed_key;
 
     enum {
-- 
1.8.3.1

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to