Closed Bug 897260 Opened 6 years ago Closed 6 years ago

Optimize nsWindow::ClientMarginHitTestPoint

Categories

(Core :: Widget: Win32, defect)

All
Windows 7
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla25

People

(Reporter: MattN, Assigned: mstange)

References

Details

(Keywords: perf, Whiteboard: [Australis:M8])

Attachments

(1 file)

+++ This bug was initially created as a clone of Bug #894099 +++

Markus had a patch to improve the performance of nsWindow::ClientMarginHitTestPoint on Windows.

(Quoting Markus Stange [:mstange] from bug 894099 comment #4)
> I've fixed my patch to actually send the hittest event with correct
> coordinates (the last patch was missing a conversion from screen coordinates
> to window coordinates), and the try results are somewhere between the two
> pushes in comment 3:
> https://tbpl.mozilla.org/?tree=Try&rev=084e069997f8
Markus, do you think you will have time to guide your patch into UX/m-c in the near future? For Australis, we'd really like to have it landed sooner rather than later, and would be happy to help do that if you don't have cycles to do it yourself, but don't want to steal without asking. ;-)
Flags: needinfo?(mstange)
Attached patch patchSplinter Review
This simply calls DispatchWindowEvent directly instead of going through DispatchMouseEvent which also calls UserActivity and starts and stops timers through gMouseTrailer, both of which are unnecessary for hittest. I've seen those things take a up about 1% in a tpaint profile, so it's not going to make much of a difference, but it's probably still worth taking.
Attachment #780822 - Flags: review?(jmathies)
Flags: needinfo?(mstange)
Comment on attachment 780822 [details] [diff] [review]
patch

http://mxr.mozilla.org/mozilla-central/source/widget/xpwidgets/nsIdleService.cpp#511

Yuck, I wonder if we could better filter when we call this in DispatchMouseEvent, or better filter when we process it in the idle service. :/
Attachment #780822 - Flags: review?(jmathies) → review+
https://hg.mozilla.org/mozilla-central/rev/ddd0098739f7
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla25
You need to log in before you can comment on or make changes to this bug.