Firefox opens profile manager on wrong monitor/screen on Windows

RESOLVED FIXED in Firefox 55

Status

()

defect
RESOLVED FIXED
2 years ago
2 years ago

People

(Reporter: jorgk, Assigned: emk)

Tracking

({regression})

54 Branch
mozilla55
All
Windows
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox52 unaffected, firefox-esr52 unaffected, firefox53 unaffected, firefox54 unaffected, firefox55 fixed)

Details

Attachments

(3 attachments)

I have a dual monitor setup on Windows, one monitor is the primary monitor, the other one is the secondary monitor, which I have mostly switched off.

As of Nightly 2017-03-28 the profile manager opens on the (switched-off) secondary monitor. This is a regression.

Last good - 2017-03-27:
http://ftp.mozilla.org/pub/firefox/nightly/2017/03/2017-03-27-03-02-03-mozilla-central/

First bad - 2017-03-28:
http://ftp.mozilla.org/pub/firefox/nightly/2017/03/2017-03-28-09-54-15-mozilla-central/

I'm a Thunderbird and occasionally Mozilla core contributor who has to juggle many profiles. The profile manager opening on the wrong screen is rather annoying.
If I'm not mistaken:
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=cc53710589fb&tochange=5182b2c4b963

Alice, can you see where this is coming from?
Flags: needinfo?(alice0775)
Looks like bug 1194751.
Blocks: 1194751
Flags: needinfo?(kchen)
Flags: needinfo?(jmathies)
Flags: needinfo?(alice0775)
It's not only the profile manager that goes to the wrong screen, also the "checking add-ons for updates" panel goes there. The main window comes to the right screen.
Bug 1351329 fixed a bug on Windows. Could you retest with a Nightly with bug 1351329 fix contained?
I have a local TB build with that patch included, and the profile manager still opens on the wrong monitor, sorry ;-(
What Windows version are you using? The coordinate system is completely different between Win7 and Win8.1+.
Flags: needinfo?(jorgk)
Also please tell me about resolutions, DPIs, and arrangement of the monitors.
OK, here goes: Windows 7 x64, two monitors 1280x1024, main (1) left, secondary (2) right, "Extend these displays". I didn't know how to get the DPIs, but https://www.infobyip.com/detectmonitordpi.php tells me 96x96.
Flags: needinfo?(jorgk)
Hmm, I could not reproduce the issue. Is the secondary monitor selected only when the secondary monitor is turned off?
Flags: needinfo?(jorgk)
Maybe I could reproduce it with the following set up:
1. Select monitor 2 in the Display control panel applet.
2. Check "Make this my main display".
3. Move monitor 1 (now secondary) to the right side of monitor 2.
(In reply to Masatoshi Kimura [:emk] from comment #9)
> Is the secondary monitor selected only when the secondary monitor is turned off?
I'm not sure I understand the question. The profile manager panel is always displayed on the 2nd right-side monitor which is not the main monitor and most of the time is switched off. When I switch it on, I see the profile manager, so now I always have to switch is on to be able to work.

(In reply to Masatoshi Kimura [:emk] from comment #10)
> Maybe I could reproduce it with the following set up:
> 1. Select monitor 2 in the Display control panel applet.
> 2. Check "Make this my main display".
> 3. Move monitor 1 (now secondary) to the right side of monitor 2.
For me, the profile manager panel always shows on the secondary display, regardless of whether that's to the left of the right.
The main display always has number 1 if the desktop is extended to the other monitor.
Flags: needinfo?(jorgk)
There is something fishy going on here. As you can see in the picture, Windows thinks that 
[ 1 ][ 2 ]
one is main and left and two is secondary and right.

If I now run the AMD Catalyst Control Center, it shows me
[ 2 ][ 1 ]
and tells me that two is main and left and one is secondary and right.

So both Windows and the AMD Catalyst Control Center agree in main=left and secondary=right but they number them differently.

To which screen does FF send the profile manager?
Posted file enummon.zip
Could execute this program from Command Prompt and paste the result?
Flags: needinfo?(jorgk)
Attachment #8852909 - Attachment is patch: false
Attachment #8852909 - Attachment mime type: text/plain → application/zip
Sure:

DPI unaware
System DPI = 96
Virtual screen: 0,0 / 2560x1024
000000000010080D:(1280,0)-(2560,1024) 0
0000000000810857:(0,0)-(1280,1024) 1
System DPI aware
System DPI = 96
Virtual screen: 0,0 / 2560x1024
000000000010080D:(1280,0)-(2560,1024) 0
0000000000810857:(0,0)-(1280,1024) 1
Per monitor DPI aware
not supported
Flags: needinfo?(jorgk)
Thank you. Apparently the EnumDisplayMonitors function agrees with AMD Catalyst.

Could you test this try build to see if it fixes the issue?
https://archive.mozilla.org/pub/firefox/try-builds/VYV03354@nifty.ne.jp-7be16e1caa5b81782693d778036ae9db3080d9c3/try-win64/
Flags: needinfo?(jorgk)
(In reply to Masatoshi Kimura [:emk] from comment #15)
> Could you test this try build to see if it fixes the issue?
Yes I can, and yes, it does fix the issue.

https://hg.mozilla.org/try/rev/b913fe2239382f884d7469b1169bd8a277eab5e9
fixes the issue in TB, too.

So: *Thank you!!*
Flags: needinfo?(kchen)
Flags: needinfo?(jorgk)
Flags: needinfo?(jmathies)
Component: General → Widget: Win32
Product: Firefox → Core
Version: Trunk → 54 Branch
Comment on attachment 8853124 [details]
Bug 1351832 - Always put the primary monitor at the top of the screen list.

Works for me ... and I'm the reporter ;-)
Attachment #8853124 - Flags: feedback+
Comment on attachment 8853124 [details]
Bug 1351832 - Always put the primary monitor at the top of the screen list.

https://reviewboard.mozilla.org/r/125192/#review127772
Attachment #8853124 - Flags: review?(kchen) → review+
Pushed by VYV03354@nifty.ne.jp:
https://hg.mozilla.org/integration/autoland/rev/4f579b19145a
Always put the primary monitor at the top of the screen list. r=kanru
https://hg.mozilla.org/mozilla-central/rev/4f579b19145a
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
Assignee: nobody → VYV03354
You need to log in before you can comment on or make changes to this bug.