Closed Bug 33799 Opened 24 years ago Closed 24 years ago

sidebar doesn't repaint when I resize the window horizontally

Categories

(Core :: XUL, defect, P3)

x86
Windows NT
defect

Tracking

()

VERIFIED FIXED

People

(Reporter: sspitzer, Assigned: kmcclusk)

References

Details

(Keywords: platform-parity)

Attachments

(1 file)

start up the browser, and make sure you have the tinderbox sidebar panel open.

go to a web page.

grab right side of the window, and make the window as narrow as possible, (it
stops resizing at about 100 pixels.)

grab the right side again and make the window a normal width.

half the tinderbox sidebar panel doesn't redraw.

this is problaby a layout bug, but I want to run it by slamm first.

I'll try to get a screen shot.
the key here is not resize horizontally only.

vertical resizes causes the repaint.

I've got a screen shot (a .bmp file),  attaching in a second.
nothing special about the tinderbox sidebar channel.

I get repaint problems with horizontal resizing with other sidebar panels, and 
in messenger.

same trick, resize the window to very narrow, and then make it wide again.
I see this on Windows. Linux does not have this problem, so this isn't cross
platform layout. Who works on windows rendering of an iframe? The sidebar
content area is just an iframe.

rods, are you the correct owner?
-->rods
Assignee: slamm → rods
Component: Layout → XP Toolkit/Widgets
Keywords: pp
kevin this might be yours
Assignee: rods → kmcclusk
The problem is child windows do not receive a expose events when their parent 
window is resized on WIN32. The sidebars width and height does not change when 
the window is made larger horizontally so the box layout code does not ask it's 
contents to resize. The content window and url bar are asked to resize so they 
have expose events generated as the result of the resizing.

Status: NEW → ASSIGNED
Target Milestone: --- → M17
Fixed in 5/11/2000 4:03PM build.

The problem was in the code which was looking at the last window size to 
determine how much to invalidate when the window's position changed. Instead of 
looking at mBounds I added a mLastSize which cache's the last window size and is 
set only within the code which invalidates the area that has been exposed by 
changing the windows size. I added so if's to check to see if the size has 
really changed before doing the invalidation. This seem to noticably speed up 
window resizing.
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Target Milestone: M17 → M16
*** Bug 5545 has been marked as a duplicate of this bug. ***
Fixed in the July 14th builds.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: