Last Comment Bug 832591 - Using an external monitor disables HIDPI support
: Using an external monitor disables HIDPI support
Status: RESOLVED WONTFIX
:
Product: Firefox
Classification: Client Software
Component: Untriaged (show other bugs)
: 18 Branch
: x86 Mac OS X
: -- normal (vote)
: ---
Assigned To: Nobody; OK to take it and work on it
:
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-01-19 00:00 PST by Sendu Bala
Modified: 2013-01-23 15:21 PST (History)
4 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments

Description Sendu Bala 2013-01-19 00:00:26 PST
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:18.0) Gecko/20100101 Firefox/18.0
Build ID: 20130116073211

Steps to reproduce:

Started Firefox 18.0.1 on a rMBP (OS X 10.8.2) while an external monitor was plugged in. The browser window is entirely within the laptop screen.


Actual results:

HIDPI mode was disabled (ie. text was low resolution). Quiting Firefox, unplugging the external monitor, then starting Firefox restores HIDPI mode. Plugging the external monitor back in at this point retains HIDPI mode. Leaving the external monitor plugged in, quiting Firefox and restarting it loses HIDPI mode. At this point unplugging and reconnecting the external monitor makes no difference - HIDPI mode remains off.


Expected results:

HIDPI mode should have been enabled at all times when the browser window was on the laptop's screen.
Comment 1 Sendu Bala 2013-01-19 00:06:52 PST
I'll also note that bug 814434 isn't really fixed (and I'm guessing is the cause of this bug). If Firefox is started with no external monitor (so that HIDPI mode works), and then the external monitor is attached, and then the browser window is moved to the external screen, menus etc. appear on the laptop screen just as they used to in 18.0.0.
Comment 2 Jonathan Kew (:jfkthame) 2013-01-19 01:05:50 PST
Disabling HiDPI support when an external monitor is present was the expected behavior for FF 18.0.1 (and 19 beta); e.g. see 814434 comment 39. This was done to avoid the problems with popup/menu display, etc, as described in that bug.

If you want to re-enable HiDPI in that situation - understanding that the bug with popup display WILL reappear! - you can set gfx.hidpi.enabled to 2 in about:config. But because of the problems with that setup, we decided not to ship the product with that setting by default.

Alternatively, you could try running the Aurora build (Firefox 20 pre-release). This should work much better when an external display is present.
Comment 3 Sendu Bala 2013-01-19 01:12:48 PST
Ah. You might want to correct http://www.mozilla.org/en-US/firefox/18.0.1/releasenotes/ so that it is less confusing. Eg. change it to "18.0.1: Disabled HIDPI support when external monitors are used to avoid rendering glitches".
Comment 4 Derek Gates 2013-01-22 09:28:04 PST
I can't believe this is set to WONTFIX.

Now Firefox won't render in HiDPI if I have an external monitor plugged in, regardless if Firefox is even on that monitor.  

I have to massage Firefox into going into retina mode by plugging in the monitor later?  This is a good experience for users?


How can you consider this a fix?  Hopefully 'disabling retina' is not a 'feature' in 20.
Comment 5 Jonathan Kew (:jfkthame) 2013-01-22 10:05:30 PST
(In reply to Derek Gates from comment #4)
> I can't believe this is set to WONTFIX.
> 
> Now Firefox won't render in HiDPI if I have an external monitor plugged in,
> regardless if Firefox is even on that monitor.  

Correct. How can Firefox know whether you might suddenly decide to drag its window over to the other screen? Given that it can't handle that properly, the safer option is to disable HiDPI mode in this case.

> 
> I have to massage Firefox into going into retina mode by plugging in the
> monitor later?  This is a good experience for users?

Or you can set gfx.hidpi.enabled to 2 (in about:config), and then it'll always use retina mode on the internal display, even with the external monitor present. But if you do either of these things, and then move windows around between monitors, you'll run into more glaring problems - see bug 814434. Therefore, this has been switched off by default, so that naive users don't run into those issues.

> 
> 
> How can you consider this a fix?  Hopefully 'disabling retina' is not a
> 'feature' in 20.

As already stated, Firefox 20 includes better retina + multi-monitor support. If you're anxious to have this feature, I'd recommend running Aurora at this point.

See http://www.mozilla.org/en-US/firefox/aurora/
Comment 6 Derek Gates 2013-01-22 10:08:08 PST
Jonathan, I agree and apologize for my post. It was shocking to see Firefox revert back to pre-retina builds after all the work you have done to support HiDPI.


I have enabled the gfx.hidpi.enabled:2 toggle and will be satisfied until the next BETA is released.
Comment 7 Jonathan Kew (:jfkthame) 2013-01-22 10:26:25 PST
I wasn't happy either, but given bug 814434, this was our best option for the current release. Firefox 20 is on its way... it'll be on Beta in a month, if running Aurora seems too risky an option at the moment.
Comment 8 Philip Durbin 2013-01-23 05:34:58 PST
Not to pile on, but I agree that it's a bad/confusing experience for people with a retina screen and an external display. I was sitting here looking at fuzzy fonts on my retina screen and discovered I could use 2 for gfx.hidpi.enabled from https://support.mozilla.org/en-US/questions/947663#answer-399646 (which lead me to this bug). I restarted Firefox and like magic the fonts are beautiful on the retina screen. And when I drag the window to the external display it looks fine. It sounds like Jonathan did a bunch of work on retina support so thanks, Jonathan!
Comment 9 Jonathan Kew (:jfkthame) 2013-01-23 06:03:29 PST
(In reply to Philip Durbin from comment #8)
> Not to pile on, but I agree that it's a bad/confusing experience for people
> with a retina screen and an external display. I was sitting here looking at
> fuzzy fonts on my retina screen and discovered I could use 2 for
> gfx.hidpi.enabled from
> https://support.mozilla.org/en-US/questions/947663#answer-399646 (which lead
> me to this bug). I restarted Firefox and like magic the fonts are beautiful
> on the retina screen. And when I drag the window to the external display it
> looks fine.

Yes, but...if your external screen is configured to the right of the built-in display, and you try to use popup menus or the URL bar with the window on that screen, you'll probably see issues.

If you're willing to live with those problems (e.g., by simply avoiding the particular scenarios involved), then by all means use gfx.hidpi.enabled=2 and enjoy it.
Comment 10 Philip Durbin 2013-01-23 07:54:33 PST
Hmm, I just did a quick test (usually I have my monitor above my laptop screen) and it still seems fine. Thanks again! :)
Comment 11 Andrew Curtin 2013-01-23 15:21:35 PST
You would rather have the browser look like complete **** and have pop ins pop up in the right spot, as opposed to pop ins in the wrong spot and the browser looking good? One of these things affects usability 100% of the time. One does not.

As it currently is, without modification, I would not use firefox, because it looks so bad. It seems like a no brainer which of the two issues should have priority. My opinion is that the fix for bug 814434 should be reverted until a proper fix is implemented.

Note You need to log in before you can comment on or make changes to this bug.