tags 510851 + patch
thanks

Patch was taken from https://bugzilla.novell.com/206547 and fixes
this problem for me. I would suggest that it should be fixed in
scim-qtimm and not in kdesktop at the moment.

Best regards,
        Sven Eckelmann
---
 debian/patches/00list                            |    1 +
 debian/patches/20_reset-frontend-data.dpatch     |   46 ++++++++++++++++++++++
 2 files changed, 47 insertions(+), 0 deletions(-)
 mode change 100644 => 100755 debian/patches/10_qt-immodule_install_dir.dpatch
 create mode 100755 debian/patches/20_reset-frontend-data.dpatch

diff --git a/debian/patches/00list b/debian/patches/00list
index 1476fdc..4eec796 100644
--- a/debian/patches/00list
+++ b/debian/patches/00list
@@ -1 +1,2 @@
 10_qt-immodule_install_dir.dpatch
+20_reset-frontend-data.dpatch
diff --git a/debian/patches/10_qt-immodule_install_dir.dpatch 
b/debian/patches/10_qt-immodule_install_dir.dpatch
old mode 100644
new mode 100755
diff --git a/debian/patches/20_reset-frontend-data.dpatch 
b/debian/patches/20_reset-frontend-data.dpatch
new file mode 100755
index 0000000..aadd7a2
--- /dev/null
+++ b/debian/patches/20_reset-frontend-data.dpatch
@@ -0,0 +1,46 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 20_reset-frontend-data.dpatch by <z...@novell.com>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: 
+
+...@dpatch@
+
+diff --git a/src/qsciminputcontext.cpp b/src/qsciminputcontext.cpp
+index 0123952..6e8b554 100644
+--- a/src/qsciminputcontext.cpp
++++ b/src/qsciminputcontext.cpp
+@@ -659,6 +659,9 @@ QScimInputContext::QScimInputContext()
+     if (global.shared_input_method)
+         m_is_on = global.config->read (String 
(SCIM_CONFIG_FRONTEND_IM_OPENED_BY_DEFAULT), m_is_on);
+ 
++    // Associate this context with the instance.
++    m_instance->set_frontend_data (static_cast<void*> (this));
++
+     global.panel_client->prepare (m_id);
+     global.panel_client->register_input_context (m_id, 
m_instance->get_factory_uuid ());
+     set_ic_capabilities ();
+@@ -901,6 +904,7 @@ QScimInputContext::finalize ()
+         if (!global.panel_exited) {
+             global.panel_client->prepare (m_id);
+  
++          m_instance->set_frontend_data (static_cast<void*>(this));
+             if (global.focused_ic == this)
+                 m_instance->focus_out ();
+  
+@@ -911,6 +915,7 @@ QScimInputContext::finalize ()
+             QScimInputContext *old_focused = global.focused_ic;
+             global.focused_ic = this;
+             // XXX: Free the smart pointer, not reset the instance.
++          m_instance->set_frontend_data (0);
+             m_instance.reset ();
+             global.focused_ic = old_focused;
+  
+@@ -922,6 +927,7 @@ QScimInputContext::finalize ()
+             global.panel_client->remove_input_context (m_id);
+             global.panel_client->send ();
+         } else {
++          m_instance->set_frontend_data (0);
+             m_instance.reset ();
+         }
+     }
-- 
1.6.0.6




-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to