Closed Bug 520822 Opened 15 years ago Closed 15 years ago

iframe doesn't get redrawn when *reducing* main window's size

Categories

(Core :: IPC, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: fred23, Assigned: smaug)

References

Details

Attachments

(2 files)

When decreasing the main e10s window's width by dragging the right window border left, the inner iframe content doesn't get reflowed (see the attached video). However, increasing the window size does trigger effective reflow of the iframe. Only tried on Win32 atm. Might not be the case on linux.
Attached file a link to the video
Assignee: nobody → bugzillaFred
Summary: iframe doesn't get reflowed when *reducing* main window's size → iframe doesn't get redrawn when *reducing* main window's size
I've tested on linux, and this seems to be a win32-specific issue.
Attached patch patch v.1Splinter Review
This patch explicitly tells Windows to post WM_PAINT and WM_ERASEBKG messages to our child content window. It invalidates the whole window when its size is decreased. bz: Tell me if you like that "#ifdef MOZ_IPC" at such a low widget level. Since everything worked just fine in the NON-IPC case, I felt like protecting this piece of code.
Attachment #407028 - Flags: review?(bzbarsky)
Comment on attachment 407028 [details] [diff] [review] patch v.1 I'm not qualified to review this. Rob, can you take a look?
Attachment #407028 - Flags: review?(bzbarsky) → review?(tellrob)
Comment on attachment 407028 [details] [diff] [review] patch v.1 As I discussed with Boris on IRC last week, I'm probably not the best reviewer for this.
Attachment #407028 - Flags: review?(tellrob) → review?(roc)
I don't understand why this is needed, and I'm afraid that it might just be covering up some other bug. In particular, I don't understand why dispatching paint events would cause the window to resize. It might only be because we flush reflows before we paint, but forcing a paint would be the wrong thing to do if we really want to force a reflow flush. Is the child content window not receiving WM_SIZE events?
bz looked at this quickly on IRC: it turns out that because we don't have a nsIWebBrowserChrome for our nsWebBrowser, it always thinks the docshell is not visible and therefore delays and batches reflows on it... this will be fixed by bug 522533 which adds a nsIWebBrowserChrome.
Assignee: bugzillaFred → Olli.Pettay
Depends on: 522533
Attachment #407028 - Flags: review?(roc) → review-
And so it is.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: