Closed Bug 6251 Opened 25 years ago Closed 25 years ago

nsWebShell::Repaint does not work

Categories

(Core :: Web Painting, defect, P3)

defect

Tracking

()

VERIFIED FIXED

People

(Reporter: kmcclusk, Assigned: beard)

References

()

Details

nsWebShell::Repaint needs to be changed so that it calls the view manager to force the repaint of all views in the webshell. The current implementation does not work. All it does is invalidate the webshell's window which does not cause anything to repaint since Invalidate affects only the top-level window and not any child windows which are associated with other views in the document.
Assignee: beard → kmcclusk
This sounds Windows-specific, given its mention of "child windows".
Assignee: kmcclusk → beard
This is actually a XP view manager issue. the nsWebSehll::Repaints needs to call a method on the nsViewManager which will cause all of the views to be repainted. One of the existing nsViewManager methods such as Update may be sufficient. Patrick, I'm reassigning back to you. We need to determine what is the appropriate method to call on the nsViewManager, or create a new method.
Status: NEW → ASSIGNED
Target Milestone: M7
Target Milestone: M7 → M10
Target Milestone: M10 → M11
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
Fixed by adding nsIViewManager::UpdateAllViews(PRUint32 aUpdateFlags). Seems to work. Please provide a test case or verify.
Load test9. On WIN32, When I minimize the window, then restore the window by clicking on it in the task bar the frames are not redrawn. The nsWebShell::Repaint should be called for each frame.
QA Contact: beppe → paulmac
reassigning to Paul
Status: RESOLVED → VERIFIED
verified fixed in m10 builds using kevin's test case
Component: Layout: View Rendering → Layout: Web Painting
You need to log in before you can comment on or make changes to this bug.