[webkit-reviews] review denied: [Bug 72281] [Chromium] fix searching for text on web pages that prevent text selection : [Attachment 115627] Patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Nov 17 11:40:48 PST 2011
Ryosuke Niwa <rniwa at webkit.org> has denied Martin Kosiba
<mkosiba at chromium.org>'s request for review:
Bug 72281: [Chromium] fix searching for text on web pages that prevent text
selection
https://bugs.webkit.org/show_bug.cgi?id=72281
Attachment 115627: Patch
https://bugs.webkit.org/attachment.cgi?id=115627&action=review
------- Additional Comments from Ryosuke Niwa <rniwa at webkit.org>
View in context: https://bugs.webkit.org/attachment.cgi?id=115627&action=review
The overall approach looks good but needs more polishing.
> Source/WebCore/ChangeLog:6
> + Adding findStringUsingMarkers to Editor. This new method uses
markers
> + to indicate the active find result.
These descriptions should appear below "Reviewed by"
> Source/WebCore/ChangeLog:8
> + https://bugs.webkit.org/show_bug.cgi?id=72281
This line should appear immediately below the bug title.
> Source/WebKit/chromium/ChangeLog:14
> + [Chromium] fix searching for text on web pages that prevent text
selection
> +
> + This will make it possible to search for text that has
> + selection disabled (via the webkit-user-select attribute).
> +
> + WebFrameImpl::find will use findStringUsingMarkers, which is similar
> + to findString except that it manipulates markers directly rather
> + than passing the find result in the active selection.
> +
> + https://bugs.webkit.org/show_bug.cgi?id=72281
> +
> + Reviewed by NOBODY (OOPS!).
Ditto about the format.
> Source/WebCore/editing/Editor.cpp:2776
> + if (!nextMatch
> + || (nextMatch->collapsed(ec)
> + && !nextMatch->startContainer()->isInShadowTree()))
It seems like this fits in one line.
> Source/WebCore/editing/Editor.cpp:2783
> + scrollRectToVisible(nextMatch->boundingBox(),
We don't wrap lines after -> line this.
> Source/WebCore/editing/Editor.cpp:2785
> + ScrollAlignment::alignCenterIfNeeded,
> + ScrollAlignment::alignCenterIfNeeded);
Wrong indentation these lines should be indented by exactly 8 spaces (4 spaces
from where nextMatch is).
> Source/WebKit/chromium/src/WebFrameImpl.cpp:1471
> + (options.matchCase ? 0 : CaseInsensitive) |
> + (wrapWithinFrame ? WrapAround : 0) |
> + (!options.findNext ? StartInSelection : 0);
Wrong indentation.
> Source/WebKit/chromium/src/WebFrameImpl.cpp:1474
> + m_activeMatch = frame()->editor()->findStringUsingMarkers(searchText,
> +
m_activeMatch.get(),
> + findOptions);
Ditto.
> Tools/DumpRenderTree/chromium/LayoutTestController.cpp:1818
> + const bool findResult = frame->find(0,
> + cppVariantToWebString(arguments[0]),
> + findOptions,
> + wrapAround,
> + 0);
Wrong indentation.
> LayoutTests/ChangeLog:9
> + [Chromium] fix searching for text on web pages that prevent text
selection
> +
> + Adding a layout test to verify that find works correctly on pages
> + that prevent text selection.
> +
> + https://bugs.webkit.org/show_bug.cgi?id=72281
> +
Wrong format. See above.
>
LayoutTests/editing/text-iterator/findString-selection-disabled-expected.txt:1
> +Searching for âoâ in âLorem ipsum dolor sit ametâ and with selection
enabled:
Please use normal sentence instead of some latin.
>
LayoutTests/editing/text-iterator/findString-selection-disabled-expected.txt:8
> +Searching for âipsumâ in âLorem ipsum dolor sit ametâ and with
selection enabled:
> +PASS: Got true as expected.
> +
> +Searching for âxâ in âLorem ipsum dolor sit ametâ and with selection
enabled:
> +PASS: Got false as expected.
It's hard to tell what's been tested by just looking at this result.
> LayoutTests/editing/text-iterator/findString-selection-disabled.html:12
> + function log(message)
> + {
> +
document.getElementById("console").appendChild(document.createTextNode(message
+ "\n"));
> + }
We don't normally indent scripts inside script element. Please outdent them.
> LayoutTests/editing/text-iterator/findString-selection-disabled.html:18
> + log("Searching for \u2018" + target + "\u2019 in \u2018" + text
> + + "\u2019 and with " + selectionStatus);
These Unicode characters don't show up properly in the patch so you should
avoid using them.
> LayoutTests/editing/text-iterator/findString-selection-disabled.html:30
> + if (!window.internals || !window.layoutTestController) {
> + var found = expectedResult;
> + } else {
> + var found = layoutTestController.findString(target, []);
> + }
I don't see any point in checking window.internals since we're not accessing
internals in this test.
Also, instead of declaring found here, you can just do:
assertTrue("layoutTestController.findString('" + target + "', [])",
expectedResult)
This makes the test output much more descriptive.
> LayoutTests/editing/text-iterator/findString-selection-disabled.html:35
> + if (found != expectedResult)
> + log("FAIL: Got " + found + " but expected " + expectedResult +
".");
> + else
> + log("PASS: Got " + found + " as expected.");
It seems like this test should be a script test.
More information about the webkit-reviews
mailing list