~ubuntu-branches/ubuntu/lucid/kdebase/lucid

« back to all changes in this revision

Viewing changes to debian/patches/kubuntu_08_konsole_text_selection.diff

  • Committer: Bazaar Package Importer
  • Author(s): Jonathan Thomas, Michal Zajac
  • Date: 2009-03-17 19:32:18 UTC
  • Revision ID: james.westby@ubuntu.com-20090317193218-hnhynst8l0xxgxrg
Tags: 4:4.2.1-0ubuntu6
[ Michal Zajac ]
Add kubuntu_08_konsole_text_selection.diff

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Index: kdebase-4.2.1/apps/konsole/src/TerminalDisplay.cpp
 
2
===================================================================
 
3
--- kdebase-4.2.1.orig/apps/konsole/src/TerminalDisplay.cpp     2009-03-17 20:01:04.000000000 -0400
 
4
+++ kdebase-4.2.1/apps/konsole/src/TerminalDisplay.cpp  2009-03-17 20:03:23.000000000 -0400
 
5
@@ -2155,11 +2155,12 @@
 
6
   _wordSelectionMode = true;
 
7
 
 
8
   // find word boundaries...
 
9
+  QChar selClass = charClass(_image[i].character);
 
10
   {
 
11
      // find the start of the word
 
12
      int x = bgnSel.x();
 
13
      while ( ((x>0) || (bgnSel.y()>0 && (_lineProperties[bgnSel.y()-1] & LINE_WRAPPED) )) 
 
14
-                     && !isCharBoundary(_image[i-1].character) )
 
15
+                     && charClass(_image[i-1].character) == selClass )
 
16
      {  
 
17
        i--; 
 
18
        if (x>0) 
 
19
@@ -2178,7 +2179,7 @@
 
20
      i = loc( endSel.x(), endSel.y() );
 
21
      x = endSel.x();
 
22
      while( ((x<_usedColumns-1) || (endSel.y()<_usedLines-1 && (_lineProperties[endSel.y()] & LINE_WRAPPED) )) 
 
23
-                     && !isCharBoundary(_image[i+1].character) )
 
24
+                     && charClass(_image[i+1].character) == selClass )
 
25
      { 
 
26
          i++; 
 
27
          if (x<_usedColumns-1) 
 
28
@@ -2332,15 +2333,6 @@
 
29
   return QWidget::focusNextPrevChild( next );
 
30
 }
 
31
 
 
32
-// Returns true upon a word boundary
 
33
-// TODO determine if the below charClass() is actually required
 
34
-bool TerminalDisplay::isCharBoundary(QChar qch) const
 
35
-{
 
36
-    if ( _wordCharacters.contains(qch, Qt::CaseInsensitive) ) return true;
 
37
-    if ( qch.isSpace() ) return true;
 
38
-
 
39
-    return false;
 
40
-}
 
41
 
 
42
 QChar TerminalDisplay::charClass(QChar qch) const
 
43
 {
 
44
Index: kdebase-4.2.1/apps/konsole/src/TerminalDisplay.h
 
45
===================================================================
 
46
--- kdebase-4.2.1.orig/apps/konsole/src/TerminalDisplay.h       2009-03-17 20:01:30.000000000 -0400
 
47
+++ kdebase-4.2.1/apps/konsole/src/TerminalDisplay.h    2009-03-17 20:04:15.000000000 -0400
 
48
@@ -563,9 +563,6 @@
 
49
     //     - Other characters (returns the input character)
 
50
     QChar charClass(QChar ch) const;
 
51
 
 
52
-    // Returns true upon a word boundary
 
53
-    bool isCharBoundary(QChar ch) const;
 
54
-
 
55
     void clearImage();
 
56
 
 
57
     void mouseTripleClickEvent(QMouseEvent* ev);