Closed
Bug 27123
Opened 26 years ago
Closed 26 years ago
excessive calls to nsViewManager::MoveViewTo
Categories
(Core :: Web Painting, defect, P3)
Tracking
()
M15
People
(Reporter: warrensomebody, Assigned: kmcclusk)
Details
(Keywords: perf)
At 10:40 PM -0800 2/8/2000, Warren Harris wrote:
>I just did a Quantify run as follows: Brought up the browser, erased
>the Quantify data for the browser startup, visited 3 pages off the
>mozilla.org main page, visited yahoo.com, paused quantify to stop
>collecting data and quit.
>
>One thing I noticed during all this was that the Windows
>SetWindowPos call was called 2500 times for 3% of the total run
>time. This is called from nsWindow::Move, which is called from
>nsView::SetPosition, which is called from nsViewManager::MoveViewTo,
>which is called from nsContainerFrame::PositionFrameView ->
>nsContainerFrame::PositionChildViews -> nsBoxFrame::PlaceChildren ->
>nsBoxFrame::Reflow.
>
>I was wondering if somewhere along this chain of command someone
>could check if the window/view/frame is being asked to move to a
>different location from where it currently is positioned, thereby
>avoiding the expensive SetWindowPos call. I'm not sure at what level
>this should happen, but I think it could save some time by not
>continually repositioning to the same location.
Waterson and Pavlov both reported the same problem, attempted to fix
it, and then had to back out the fix. There's something problematic
with optimizing out the call. Maybe they'd care to comment further.
Clearly it would be a big win, we just need to understand why certain
things break. Could we please open up a bug to dump this analysis
into?
- Patrick
Comment 1•26 years ago
|
||
making this XP
OS: Windows NT → All
Summary: excessive calls to SetWindowPos → excessive calls to nsViewManager::MoveViewTo
Updated•26 years ago
|
Status: NEW → ASSIGNED
Target Milestone: M15
Comment 2•26 years ago
|
||
IIRC, the only problem that I noticed had to do with the editor widget and the
mail compose window. Specifically, with the optimization in place, the
"addressing fields" would appear at the correct x-coordinate, but positioned in
the menu bar (I assume that means the y-coordinate was interpreted to be "zero"
relative to the enclosing system window). It could have something to do with
the text field being placed in a tree widget. buster? hyatt?
Comment 3•26 years ago
|
||
Reassigning all view bugs to kevin.
Assignee: beard → kmcclusk
Status: ASSIGNED → NEW
| Assignee | ||
Comment 4•26 years ago
|
||
*** This bug has been marked as a duplicate of 29311 ***
Status: NEW → RESOLVED
Closed: 26 years ago
Resolution: --- → DUPLICATE
Updated•7 years ago
|
Component: Layout: View Rendering → Layout: Web Painting
You need to log in
before you can comment on or make changes to this bug.
Description
•