and return subpixel values (except for scroll*, scroll functions still return integral values as the corresponding classes haven't transitioned to subpixel values yet.)
Created attachment 231432 [details] Patch
Created attachment 231450 [details] Patch
Not sure why the patch does not apply. trying with smaller -expected.txt.
Created attachment 231454 [details] Patch
oh, it fails on the widows file format fix.
Created attachment 231458 [details] Patch
windows line ending fixes are in a separate (already pushed) patch.
Comment on attachment 231458 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=231458&action=review > Source/WebCore/ChangeLog:14 > + subpixelCSSOMElementMetricsEnabled setting is added to be able to turn this feature on/off > + from Safari's debug menu. It toggles the return value from subpixel to floored integral. Not just from mainFrameView.contentsToRootView, by via WK2 prefs too, > Source/WebCore/dom/Element.cpp:649 > float zoomFactor = localZoomForRenderer(renderer); Use a double to avoid float -> double promotion at all the / zoomFactor sites? > Source/WebCore/dom/Element.cpp:749 > + return convertToNonSubpixelValueIfNeeded(adjustLayoutUnitForAbsoluteZoom(renderer->clientTop(), *renderer).toDouble(), renderer->document()); > +#else > + return adjustForAbsoluteZoom(renderer->clientTop(), *renderer); Do we need both kinds of adjust*forAbsoluteZoom? > Source/WebCore/page/Settings.in:197 > +subpixelCSSOMElementMetricsEnabled initial=true I wonder if we should expose this through WebKit1 pref too?
Created attachment 231465 [details] Patch
Comment on attachment 231465 [details] Patch EWSing
(In reply to comment #8) > (From update of attachment 231458 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=231458&action=review > > > Source/WebCore/ChangeLog:14 > > + subpixelCSSOMElementMetricsEnabled setting is added to be able to turn this feature on/off > > + from Safari's debug menu. It toggles the return value from subpixel to floored integral. > > Not just from mainFrameView.contentsToRootView, by via WK2 prefs too, Done. > > > Source/WebCore/dom/Element.cpp:649 > > float zoomFactor = localZoomForRenderer(renderer); > > Use a double to avoid float -> double promotion at all the / zoomFactor sites? Done. > > > Source/WebCore/dom/Element.cpp:749 > > + return convertToNonSubpixelValueIfNeeded(adjustLayoutUnitForAbsoluteZoom(renderer->clientTop(), *renderer).toDouble(), renderer->document()); > > +#else > > + return adjustForAbsoluteZoom(renderer->clientTop(), *renderer); > > Do we need both kinds of adjust*forAbsoluteZoom? Part of the cleanup work I'll be doing once the subpixel buildtime flag is removed. > > > Source/WebCore/page/Settings.in:197 > > +subpixelCSSOMElementMetricsEnabled initial=true > > I wonder if we should expose this through WebKit1 pref too? Not sure, I'll do that if needed.
Comment on attachment 231465 [details] Patch Clearing flags on attachment: 231465 Committed r168868: <http://trac.webkit.org/changeset/168868>
All reviewed patches have been landed. Closing bug.
One datapoint about compat impact for MouseEvents: https://www.w3.org/Bugs/Public/show_bug.cgi?id=24159#c2
<rdar://problem/17435776> umbrella for the type/value issue.
Going back to integral return values: bug 134651