Package: kde4libs / 4:4.4.5-2+squeeze4

636615-ibus.diff Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
From: Pascal Létourneau <pascal.letourneau@gmail.com>
Bug: https://bugs.kde.org/show_bug.cgi?id=248558
Bug-Debian: http://bugs.debian.org/636615
Origin: backport, http://websvn.kde.org/branches/KDE/4.5/kdelibs/kate/view/kateviewinternal.cpp?r1=1199457&r2=1199456&pathrev=1199457&view=patch
Applied-Upstream: 4.5.5
Acked-By: Ansgar Burchardt <ansgar@debian.org>
Acked-By: Adam D. Barratt <adam@adam-barratt.org.uk>
Acked-By: Modestas Vainius <modax@debian.org>

Remove selection only when receiving input

--- kde4libs-4.4.5.orig/kate/view/kateviewinternal.cpp
+++ kde4libs-4.4.5/kate/view/kateviewinternal.cpp
@@ -3781,9 +3781,6 @@
 
   //kDebug( 13030 ) << "Event: cursor" << m_cursor << "commit" << e->commitString() << "preedit" << e->preeditString() << "replacement start" << e->replacementStart() << "length" << e->replacementLength();
 
-  if ( m_view->selection() )
-    m_view->removeSelectedText();
-
   bool createdPreedit = false;
   if (!m_imPreeditRange) {
     createdPreedit = true;
@@ -3797,6 +3794,8 @@
   }
 
   if (!e->commitString().isEmpty() || e->replacementLength()) {
+    m_view->removeSelectedText();
+
     KTextEditor::Range preeditRange = *m_imPreeditRange;
 
     KTextEditor::Cursor start(m_imPreeditRange->start().line(), m_imPreeditRange->start().column() + e->replacementStart());