Open Bug 1214585 Opened 9 years ago Updated 2 years ago

getZOrderDOMWindowEnumerator and getMostRecentWindow are broken on Mac

Categories

(Core :: Widget, defect)

x86_64
macOS
defect

Tracking

()

Tracking Status
firefox44 --- affected

People

(Reporter: ecfbugzilla, Unassigned)

References

Details

(Keywords: regression, Whiteboard: tpi:-)

Testing in Firefox 44.0a1 (2015-10-13 nightly) on OS X 10.10, nsIWindowMediator.getZOrderDOMWindowEnumerator() and nsIWindowMediator.getMostRecentWindow() are broken. The behavior in Firefox 41.0.1 on the other hand is correct, so this is a regression. How I've been testing: 1. Open two browser windows with a different number of tabs. 2. Open Scratchpad, change Environment to Browser. 3. Run the following code: > alert(Services.wm.getZOrderDOMWindowEnumerator("navigator:browser", true).getNext().gBrowser.tabs.length) 4. Make sure that another browser window is on top and repeat step 3. Expected results: The alerts should show a different number of tabs in the different invocations. Actual results: The same number of tabs is shown both times, getZOrderDOMWindowEnumerator always returns the same window first regardless of which one of them is on top. It's the same when using getMostRecentWindow, and Scratchpad window being present doesn't matter (I originally hit this issue in a setup without it).
I did run mozregression but I wasn't able to identify a single nightly build where this would work, I am no longer sure that this is a regression. I have no idea why it is working in the release build. Note that Scratchpad itself is also affected by this issue - it runs the code (shows alert message) always in the same window rather than the top-most one. And I'm mostly certain that it was working correctly in older Firefox release builds. Is there any difference between release and nightly builds here?
Whiteboard: tpi:-
Depends on: 1489833
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.