Changeset 76144 in webkit


Ignore:
Timestamp:
Jan 19, 2011 11:27:10 AM (13 years ago)
Author:
leviw@chromium.org
Message:

2011-01-19 Levi Weintraub <leviw@chromium.org>

Reviewed by Darin Adler.

Changing RenderText::localCaretRect to clip to its containing block's logicalLeft and
logicalRightLayoutOverflow instead of simply using logicalLeft and logicalRight, as this
resulted in the caret being placed incorrectly in overflowing editable IFrame content.

Long lines in non-white-space-pre editable documents show cursor in wrong place
https://bugs.webkit.org/show_bug.cgi?id=48132

  • editing/selection/caret-painting-in-overflowing-autowrap-content.html: Added.
  • editing/selection/resources/iframe-positioning-caret-at-end.html: Added.
  • platform/mac/editing/selection/caret-painting-in-overflowing-autowrap-content-expected.checksum: Added.
  • platform/mac/editing/selection/caret-painting-in-overflowing-autowrap-content-expected.png: Added.
  • platform/mac/editing/selection/caret-painting-in-overflowing-autowrap-content-expected.txt: Added.

2011-01-19 Levi Weintraub <leviw@chromium.org>

Reviewed by Darin Adler.

Changing RenderText::localCaretRect to clip to its containing block's logicalLeft and
logicalRightLayoutOverflow instead of simply using logicalLeft and logicalRight, as this
resulted in the caret being placed incorrectly in overflowing editable IFrame content.

Long lines in non-white-space-pre editable documents show cursor in wrong place
https://bugs.webkit.org/show_bug.cgi?id=48132

Test: editing/selection/caret-painting-in-overflowing-autowrap-content.html

  • rendering/RenderText.cpp: (WebCore::RenderText::localCaretRect):
Location:
trunk
Files:
5 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r76138 r76144  
     12011-01-19  Levi Weintraub  <leviw@chromium.org>
     2
     3        Reviewed by Darin Adler.
     4
     5        Changing RenderText::localCaretRect to clip to its containing block's logicalLeft and
     6        logicalRightLayoutOverflow instead of simply using logicalLeft and logicalRight, as this
     7        resulted in the caret being placed incorrectly in overflowing editable IFrame content.
     8
     9        Long lines in non-white-space-pre editable documents show cursor in wrong place
     10        https://bugs.webkit.org/show_bug.cgi?id=48132
     11
     12        * editing/selection/caret-painting-in-overflowing-autowrap-content.html: Added.
     13        * editing/selection/resources/iframe-positioning-caret-at-end.html: Added.
     14        * platform/mac/editing/selection/caret-painting-in-overflowing-autowrap-content-expected.checksum: Added.
     15        * platform/mac/editing/selection/caret-painting-in-overflowing-autowrap-content-expected.png: Added.
     16        * platform/mac/editing/selection/caret-painting-in-overflowing-autowrap-content-expected.txt: Added.
     17
    1182011-01-19  Brian Weinstein  <bweinstein@apple.com>
    219
  • trunk/Source/WebCore/ChangeLog

    r76142 r76144  
     12011-01-19  Levi Weintraub  <leviw@chromium.org>
     2
     3        Reviewed by Darin Adler.
     4
     5        Changing RenderText::localCaretRect to clip to its containing block's logicalLeft and
     6        logicalRightLayoutOverflow instead of simply using logicalLeft and logicalRight, as this
     7        resulted in the caret being placed incorrectly in overflowing editable IFrame content.
     8
     9        Long lines in non-white-space-pre editable documents show cursor in wrong place
     10        https://bugs.webkit.org/show_bug.cgi?id=48132
     11
     12        Test: editing/selection/caret-painting-in-overflowing-autowrap-content.html
     13
     14        * rendering/RenderText.cpp:
     15        (WebCore::RenderText::localCaretRect):
     16
    1172011-01-19  Chris Marrin  <cmarrin@apple.com>
    218
  • trunk/Source/WebCore/rendering/RenderText.cpp

    r72861 r76144  
    510510    int rightEdge;
    511511    if (style()->autoWrap()) {
    512         leftEdge = cb->logicalLeft();
    513         rightEdge = cb->logicalRight();
     512        leftEdge = cb->logicalLeftLayoutOverflow();
     513        rightEdge = cb->logicalRightLayoutOverflow();
    514514    } else {
    515         leftEdge = min(cb->logicalLeft(), rootLeft);
    516         rightEdge = max(cb->logicalRight(), rootRight);
     515        leftEdge = min(cb->logicalLeftLayoutOverflow(), rootLeft);
     516        rightEdge = max(cb->logicalRightLayoutOverflow(), rootRight);
    517517    }
    518518
Note: See TracChangeset for help on using the changeset viewer.