Bug 135023

Summary: [REGRESSION WK2]The menu bar does not show up when tapping on the caret
Product: WebKit Reporter: Enrica Casucci <enrica>
Component: WebKit2Assignee: Enrica Casucci <enrica>
Status: NEW ---    
Severity: Normal Keywords: InRadar
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: iPhone / iPad   
OS: Unspecified   
Attachments:
Description Flags
Patch benjamin: review+

Description Enrica Casucci 2014-07-17 13:58:02 PDT
Tapping on an input field that has focus, should toggle the menu bar.

<rdar://problem/17617282>
Comment 1 Enrica Casucci 2014-07-17 14:44:54 PDT
Created attachment 235093 [details]
Patch
Comment 2 Benjamin Poulain 2014-07-17 15:02:14 PDT
Comment on attachment 235093 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=235093&action=review

> Source/WebKit2/WebProcess/WebPage/WebPage.cpp:739
> +                VisiblePosition first(createLegacyEditingPosition(root, 0));
> +                VisiblePosition last(createLegacyEditingPosition(root, root->childNodeCount()));
> +                result.hasContent = first != last;

This isn't exactly cheap. ContainerNode::childNodeCount() alone can dirty a ton of memory. I would prefer something that fails on the first node instead of going through all of them.