Closed Bug 851952 Opened 12 years ago Closed 12 years ago

High DPI causes Fx components to appear incorrectly on my 2nd monitor

Categories

(Core :: Widget: Win32, defect)

22 Branch
x86_64
Windows 8
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla22
Tracking Status
firefox22 + fixed

People

(Reporter: streetwolf52, Assigned: jfkthame)

References

(Blocks 1 open bug)

Details

Attachments

(3 files)

Attached image win-hidpi.png
User Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; rv:22.0) Gecko/20130317 Firefox/22.0 Build ID: 20130317104435 Steps to reproduce: 1. Make sure you have dual monitors that are extended in Windows via the 'Screen Resolution' menu. 2. Set Windows DPI to Medium - 125% under 'Display' in Windows. Log off then log on to set it. 3. Make sure you are using the latest Fx Nightly. Insure pref 'layout.css.devPixelsPerPx' is set to -1.0 4. Make sure you have dual monitors that are extended in Windows 'Screen Resolution' menu. 5. Run Fx and on any web page right click to bring up the context menu and choose 'View Page Info' 6. Move this new window to your second monitor and position it on the left edge of the screen. Close this window. 7. Do another 'View Page Info' Actual results: The second Page Info window no longer is on the left edge of the second monitor. It starts about 1/4 from the left side. Expected results: Page Info window should remain where it was first placed.
Blocks: win-hidpi
Component: DOM → Widget: Win32
There are many components in Fx that behave like I described. Also, F11 mode extends to the first 1/4 of my second monitor. This action IMO is related to this bug. It seems Fx thinks the monitor size is 1/4 larger probably due to my 125% DPI setting.
This screenshot shows Full screen mode. About 1/4 of the right side of the Fx window is on my second monitor.
Comment on attachment 725918 [details] win-hidpi.png Notice the blurry icons and buttons too. I think you already are aware of this.
The main issue sounds related to Bug 844857. The second issue is Bug 824386.
From our read, bug 820679 hasn't been resolved yet. No need to track until there's actually a functional regression in 22.
Blocks: 844604
I can confirm the original issue here, where the Page Info window (for example) re-opens in the wrong position on the secondary display. Most likely we're failing to use the proper device-to-logical pixel scaling when we're checking that the window is within the bounds of its screen. (The fullscreen issue in comment 2 was bug 824386, so it should now be fixed.)
Status: UNCONFIRMED → NEW
Ever confirmed: true
As suspected... we're mixing logical (resolution-scale-dependent) and physical device pixel coordinates - in two places: first, when determining which screen a given rectangle primarily belongs to, and second, when constraining a potential window position to fit within the bounds of its current screen. With this patch, the Get Info window re-opens in the correct place (exactly where it was last displayed, unless it crosses a screen edge, in which case it is properly "pulled in" to fit entirely on the screen). This also fixes the popup menu problems described in bug 854135, which are really just another symptom of incorrect window-position constraints. Try build in progress: https://tbpl.mozilla.org/?tree=Try&rev=b5f8f6dedecf
Assignee: nobody → jfkthame
Attachment #731513 - Flags: review?(jmathies)
Attachment #731513 - Flags: review?(jmathies) → review+
Status: NEW → RESOLVED
Closed: 12 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: