Open Bug 985947 Opened 11 years ago Updated 2 years ago

[10.9] Popups can shrink when switching to hidpi mode

Categories

(Core :: Widget: Cocoa, defect, P3)

x86
macOS
defect

Tracking

()

People

(Reporter: mhoye, Unassigned)

References

Details

(Whiteboard: [STR in comment #29][tpi:+])

Attachments

(5 files)

See here: http://imgur.com/cezaqiv The pancake menu appears, at some point after a period of use, decide to draw itself half-sized. I'm on a HiDPI display - Retina MBP. Doesn't seem to be related to the known bug around E10s and HiDPI displays: https://bugzilla.mozilla.org/show_bug.cgi?id=978913 (Or at least, I can't duplicate it in the same way) About:support tells me this about graphics: Device ID 0x fd5 GPU Accelerated Windows 1/1 OpenGL (OMTC) Vendor ID 0x10de WebGL Renderer NVIDIA Corporation -- NVIDIA GeForce GT 650M OpenGL Engine windowLayerManagerRemote true AzureCanvasBackend quartz AzureContentBackend quartz AzureFallbackCanvasBackend none AzureSkiaAccelerated 0 browser.UICustomization.State is set to: {"placements":{"PanelUI-contents":["search-container","zoom-controls","new-window-button","save-page-button","print-button","history-panelmenu","fullscreen-button","find-button","preferences-button","add-ons-button","developer-button"],"addon-bar":["addonbar-closebutton","status-bar"],"PersonalToolbar":["personal-bookmarks"],"nav-bar":["urlbar-container","webrtc-status-button","bookmarks-menu-button","downloads-button","privatebrowsing-button","home-button","social-share-button","abp-toolbarbutton","greasemonkey-tbb"],"TabsToolbar":["tabbrowser-tabs","new-tab-button","alltabs-button","tabs-closebutton"]},"seen":["abp-toolbarbutton"],"dirtyAreaCache":["PersonalToolbar","nav-bar","TabsToolbar","PanelUI-contents","addon-bar"],"newElementCount":0}
I should add that I've seen this on both Aurora and Nightly, as of March 20th.
Oh, can you also provide a list of the add-ons you have enabled?
Flags: needinfo?(mhoye)
Putting this at a P3 pending further analysis.
Whiteboard: [Australis:P3]
Adblock, Flashblock, GreaseMonkey and Linky. Plugins are Flash and Quicktime only.
Flags: needinfo?(mhoye)
Maybe this is coming from a bug in the _scrollWidth calculations within panelUI.js?
(In reply to Jared Wein [:jaws] (please needinfo? me) from comment #5) > Maybe this is coming from a bug in the _scrollWidth calculations within > panelUI.js? That's possible, yes. I'll be in the office later today, and if mhoye is in there, I'll do some poking about with the inspector to see wtf is going on.
Do you have an external screen connected?
Flags: needinfo?(mhoye)
He does, yes. And he's frequently connecting / disconnecting both the monitor and a USB mouse / keyboard throughout the day. He's also running 10.9. I'm waiting for him to hit it again, and then I'm going to: 1) Get a brain dump from him to recall his last 5 minutes of activity to see if we can get some STR 2) Use inspector to try to determine where these dimensions are getting set, which might help narrow down how this is happening.
Assignee: nobody → mconley
Status: NEW → ASSIGNED
Flags: needinfo?(mhoye)
HAHA GOT YOU. OK, so: steps to reproduce: - Have a Retina Pro with a non-HiDPI screen attached. - Open a new Firefox window, and put it on the non-retina screen, look at the pancake menu. All is normal, close it. - Pull the monitor cable. - Find that Firefox window on the single screen, and look at the pancake menu. It's now half-sized. Gotcha, bug.
Does comment 10 help clear up what might be happening here, Markus?
Flags: needinfo?(mstange)
I'm going to be doing some investigation on this today.
Summary: Pancake menu in Aurora periodically shrinks. → Menu panel can shrink when switching to hidpi mode
(In reply to Mike Hoye [:mhoye] from comment #10) > HAHA GOT YOU. > > OK, so: steps to reproduce: > > - Have a Retina Pro with a non-HiDPI screen attached. > - Open a new Firefox window, and put it on the non-retina screen, look at > the pancake menu. All is normal, close it. > - Pull the monitor cable. > - Find that Firefox window on the single screen, and look at the pancake > menu. It's now half-sized. > > Gotcha, bug. These STR do not give me the bug on 10.8. I'll see if I can test on a different 10.8 laptop to confirm.
So, after some testing, I am only ever able to reproduce this on 10.9. It seems that there's a height and width attribute being set on the panel which is constraining its size, and I think it's from nsXULPopupManager::PopupResized(). This whole thing seems really familiar, and that's because we've been here before with something similar: https://bugzilla.mozilla.org/show_bug.cgi?id=892994#c5. Since this is Mavericks only, and involves multiple displays...I'm downgrading the priority on this one.
Whiteboard: [Australis:P3] → [Australis:P3-]
These symptoms actually sound like bug 968838, sans crash.
(In reply to :Gijs Kruitbosch from comment #15) > These symptoms actually sound like bug 968838, sans crash. True, though applying mstange's patch from that bug didn't appear to help. :/
I'm afraid that I'm unlikely to make much more progress here, since I don't have Mavericks (and will not be updating until after Australis ships). The loaner I was using to debug this had to be returned. Anyone else with Mavericks and an external display want a crack at this?
Assignee: mconley → nobody
Status: ASSIGNED → NEW
Flags: firefox-backlog+
Summary: Menu panel can shrink when switching to hidpi mode → [10.9] Menu panel can shrink when switching to hidpi mode
For what it's worth, I can demonstrate that this affects other display elements - right-click menus, other stuff - repeatedly and easily.
Right - this shouldn't even be on the Australis tracker - this is very much a platform bug.
No longer blocks: australis-cust, australis-merge
Component: Toolbars and Customization → Widget: Cocoa
Product: Firefox → Core
Whiteboard: [Australis:P3-]
Summary: [10.9] Menu panel can shrink when switching to hidpi mode → [10.9] Popups can shrink when switching to hidpi mode
I don't see this testing with today's m-c nightly on OS X 10.9.2, using the STR from comment #10.
(In reply to Steven Michaud from comment #20) > I don't see this testing with today's m-c nightly on OS X 10.9.2, using the > STR from comment #10. Hm - I wonder if we're missing a key step here - can you try using the "Spaces"-per-screen feature of OS X, and create multiples for each? Then, connect the external monitor, and put Firefox onto one of the spaces that your HiDPI display is _not_ on. _Then_ do the disconnect. You'll need to swap over on your HiDPI display device to the space where Firefox is. _Then_ try opening a panel. Can you reproduce with that additional step?
Flags: needinfo?(smichaud)
> "Spaces"-per-screen feature of OS X I don't know what this is. Please describe it in more detail.
>> "Spaces"-per-screen feature of OS X > > I don't know what this is. Please describe it in more detail. I think I've now figured it out. Your suggestion didn't "work" -- I didn't see the bug. I didn't see it even if I moved the menu bar to the external (non-HiDPI) display before disconnecting it. I'd like to see Mike Hoye retest with today's m-c nightly. Something might have changed.
Flags: needinfo?(smichaud) → needinfo?(mhoye)
Mike Conley, can *you* still reproduce this bug with today's m-c nightly?
(In reply to Steven Michaud from comment #24) > Mike Conley, can *you* still reproduce this bug with today's m-c nightly? Unfortunately, I don't have Mavericks so I cannot reproduce. :/
I can still replicate this on an up-to-date nightly using the STR given.
Flags: needinfo?(mhoye)
Here's a video of us reproducing with last night's Nightly: http://www.youtube.com/watch?v=4jjk372TITI
The STR from comment #10 are wrong! Or at least seriously ambiguous. I can see from the video that I read them differently from what you intended. I'll try again today or tomorrow.
Yes, I can now reproduce this bug. Here's better STR: 1) On a Retina Mac running OS X 10.9.2 and with a non-Retina display attached, run Firefox (with Australis) and move the browser window to the external display. 2) Click once on the "hamburger" icon on the right end of the Toolbar. Notice that it displays correctly. Then click again to close it. 3) Disconnect the external monitor, so that Firefox moves to the built-in monitor. 4) Click again on the "hamburger" icon. Notice that it displays incorrectly. The bug doesn't happen if you just drag the Firefox window back to the Retina display -- only if you disconnect the display. This, together with the fact that this bug only happens on OS X 10.9, leads me to think this is probably some kind of Apple bug. I still can't reproduce this with other kinds of popup windows (like context menus).
Whiteboard: [STR in comment #29]
How important is this? I frankly think the answer is "not very". So I'll put it on my list. But I'm not sure when I'll be able to get to it.
> I still can't reproduce this with other kinds of popup windows (like context menus). With tooltips, the first time I hover over one in step 4 it appears far to the right of its correct location -- though otherwise it's displayed correctly.
This is a recent regression. I'm looking for the regression range.
Is bug 892994 recent enough? I worked on that one a while back for shrinking panels in Cocoa...
Here's the regression range: firefox-2014-03-13-03-02-02-mozilla-central firefox-2014-03-14-03-02-02-mozilla-central http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=46041cc216fd&tochange=f073b3d6db1f > Is bug 892994 recent enough? It's *way* too old :-)
Nothing stands out. I guess I'll have to hg bisect.
Bug 968838 tops my list of suspects in that range...
> Bug 968838 tops my list of suspects in that range... You're right. That's the trigger. Which means we've got some seriously nasty behavior to fix in Gecko :-( Or at least to work around in Cocoa widgets.
Blocks: 968838
For what it's worth, this bug effects the current FF 29 beta. But it's probably too late to try to fix it there.
The specific trigger is the part 2 patch for bug 968838: Bug 968838 - Refuse reentrant calls to nsCocoaWindow::DoResize. r=smichaud author Markus Stange <mstange@themasta.com> Thu Mar 13 13:21:56 2014 +0100 (at Thu Mar 13 13:21:56 2014 +0100) changeset 173408 0daba7f5bcf7 http://hg.mozilla.org/mozilla-central/rev/0daba7f5bcf7
A stack of when it re-enters would be useful I think.
I made this using a debugging patch and the STR from comment #29.
To make sure I broke (in lldb) at exactly the right point, I did "kill -28 firefoxpid" from a Terminal prompt just before I performed the last step of the STR.
I'm curious, does the part 1 patch from bug 968838 fix this?
Flags: needinfo?(mstange)
> I'm curious, does the part 1 patch from bug 968838 fix this? I thought part 1 had already landed, but apparently it hasn't. I'll try it and see.
Flags: firefox-backlog+ → firefox-backlog-
Hey Marco - just curious to know why this has been backlog minused? I do think we'll want to address that at some point, especially as more and more folks start using 10.9 and up.
Flags: needinfo?(mmucci)
(In reply to Mike Conley (:mconley) from comment #46) > Hey Marco - just curious to know why this has been backlog minused? I do > think we'll want to address that at some point, especially as more and more > folks start using 10.9 and up. Hi Mike, sorry I forgot to add a comment. At the estimation meeting this morning the team reviewed this bug and decided it should be removed from the Backlog.
Flags: needinfo?(mmucci)
(In reply to Marco Mucci [:MarcoM] from comment #47) > (In reply to Mike Conley (:mconley) from comment #46) > > Hey Marco - just curious to know why this has been backlog minused? I do > > think we'll want to address that at some point, especially as more and more > > folks start using 10.9 and up. > > Hi Mike, sorry I forgot to add a comment. At the estimation meeting this > morning the team reviewed this bug and decided it should be removed from the > Backlog. Ok, the explains what happened - but _why_ did the team decide to remove this from the backlog? Can you or any part of the team that decided please include a comment in here about the reasoning behind its removal?
Flags: needinfo?(mmucci)
(In reply to Mike Conley (:mconley) from comment #48) > (In reply to Marco Mucci [:MarcoM] from comment #47) > > (In reply to Mike Conley (:mconley) from comment #46) > > > Hey Marco - just curious to know why this has been backlog minused? I do > > > think we'll want to address that at some point, especially as more and more > > > folks start using 10.9 and up. > > > > Hi Mike, sorry I forgot to add a comment. At the estimation meeting this > > morning the team reviewed this bug and decided it should be removed from the > > Backlog. > > Ok, the explains what happened - but _why_ did the team decide to remove > this from the backlog? Can you or any part of the team that decided please > include a comment in here about the reasoning behind its removal? I added a 'needinfo' to Gavin as I couldn't attend today's meeting.
Flags: needinfo?(mmucci) → needinfo?(gavin.sharp)
My bad for not commenting during triage. Given that this is a Widget: Cocoa bug, it didn't seem suitable for our backlog. Should it be reclassified?
Flags: needinfo?(gavin.sharp)
OK, yes, I guess that makes sense. Up until now, I've been treating firefox-backlog+ as "front-end bugs affecting Firefox users", with no regard to where the underlying problem lay. I suppose it does make more sense to add the proviso that it's also a bug that would realistically be part of the front-end team's workload. In this case, yes, the underlying problem is indeed within Widget: Cocoa (or thereabouts), and I think it's more likely that our Cocoa hackers will attack it than the front-end team. So I think we're good here. Thanks for clearing that up, gavin and MarcoM!
Added 2 further screenshots showing this Bug and the annoyance its causing.
I confirm that this bug exists on Aurora and yesterday's Nightly, but I couldn't repro on Release.
I use Release (FF 32) and I often have this pb. The STR work perfectly. Maybe Dan and me have to spot if something else differs between our configurations.
No longer blocks: dale-being-happy
I can no longer reproduce this on 10.10, for what it's worth.
I can reproduce this on release FF33.0.2 running Mac 10.9.4. Are you saying the OS upgrade fixes this Mike?
I'm saying I can no longer reproduce this in 10.10 with the STR given, and haven't seen it since upgrading.
This issue is removing me the possibility to make visible my bookmarks bar as shown in the photo. It happens in Firefox Developer Edition 40.0a2 (2015-06-04) and in Firefox 38.0.5 on Mac OS X 10.10.3. Please if you could review it and help me it would be helpful. When not in full screen the popup is reduced size just if my addons are enabled (Search Preview, No Close Buttons), so this is a very weird behaviour and seems difficult for me to find another type of solution. Here's a screenshot: http://i.imgur.com/D2dUJMM.png (if going on the top arrow it will be shown bottom arrow and top arrow looping forever...)
Still no love for this bug? OS 10.9 is still supported by Apple, and I have no intention of upgrading until support ends.
Priority: -- → P2
Whiteboard: [STR in comment #29] → [STR in comment #29][tp:+]
Whiteboard: [STR in comment #29][tp:+] → [STR in comment #29][tpi:+]
Moving to p3 because no activity for at least 1 year(s). See https://github.com/mozilla/bug-handling/blob/master/policy/triage-bugzilla.md#how-do-you-triage for more information
Priority: P2 → P3
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: