Reviewed by John
authorkocienda <kocienda@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 13 Oct 2004 00:09:43 +0000 (00:09 +0000)
committerkocienda <kocienda@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 13 Oct 2004 00:09:43 +0000 (00:09 +0000)
        Fix for this bug:

        <rdar://problem/3836158> REGRESSION (Mail): command-right-arrow moves to beginning of next line

        * khtml/editing/selection.cpp:
        (khtml::endOfLastRunAt): Do not let the end of the last run on a line be a BR.
        This will make it seem like the run ends on the next line.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@7823 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog-2005-08-23
WebCore/khtml/editing/SelectionController.cpp
WebCore/khtml/editing/selection.cpp

index 7210a105a6bdd607486cd542057bc7db37f2155c..90183daacd0d571c7ab8af5574b030adee92cf59 100644 (file)
@@ -1,3 +1,15 @@
+2004-10-12  Ken Kocienda  <kocienda@apple.com>
+
+        Reviewed by John
+
+        Fix for this bug:
+        
+        <rdar://problem/3836158> REGRESSION (Mail): command-right-arrow moves to beginning of next line
+
+        * khtml/editing/selection.cpp:
+        (khtml::endOfLastRunAt): Do not let the end of the last run on a line be a BR.
+        This will make it seem like the run ends on the next line.
+
 2004-10-12  Ken Kocienda  <kocienda@apple.com>
 
         Reviewed by Hyatt
index 60690f6ec1826d4425374bc643dc7375085ad700..cc7885aa92e429ac8c19b5119c5f0e53308c9f65 100644 (file)
@@ -973,7 +973,7 @@ static Position endOfLastRunAt(RenderObject *renderNode, int y)
         if (position.isNotNull())
             return position;
         
-        if (n->isText()) {
+        if (n->isText() && !n->isBR()) {
             RenderText *textRenderer = static_cast<RenderText *>(n);
             for (InlineTextBox* box = textRenderer->lastTextBox(); box; box = box->prevTextBox()) {
                 int absx, absy;
index 60690f6ec1826d4425374bc643dc7375085ad700..cc7885aa92e429ac8c19b5119c5f0e53308c9f65 100644 (file)
@@ -973,7 +973,7 @@ static Position endOfLastRunAt(RenderObject *renderNode, int y)
         if (position.isNotNull())
             return position;
         
-        if (n->isText()) {
+        if (n->isText() && !n->isBR()) {
             RenderText *textRenderer = static_cast<RenderText *>(n);
             for (InlineTextBox* box = textRenderer->lastTextBox(); box; box = box->prevTextBox()) {
                 int absx, absy;