On startup the main window is incorrectly sized according to the workspace of the primary monitor
Categories
(Core :: Widget, defect)
Tracking
()
People
(Reporter: bruce.clark, Unassigned)
References
Details
(Keywords: multi-monitors)
Attachments
(1 obsolete file)
Comment 1•21 years ago
|
||
| Reporter | ||
Comment 2•21 years ago
|
||
Comment 3•21 years ago
|
||
Comment 4•21 years ago
|
||
Comment 5•21 years ago
|
||
Comment 6•21 years ago
|
||
| Reporter | ||
Comment 7•21 years ago
|
||
| Reporter | ||
Comment 8•20 years ago
|
||
Updated•19 years ago
|
Comment 10•18 years ago
|
||
Updated•18 years ago
|
Updated•18 years ago
|
Comment 11•18 years ago
|
||
Comment 12•18 years ago
|
||
Updated•18 years ago
|
Comment 13•18 years ago
|
||
Updated•18 years ago
|
Updated•18 years ago
|
Updated•16 years ago
|
Comment 15•15 years ago
|
||
Comment 16•15 years ago
|
||
Comment 17•15 years ago
|
||
Comment 18•15 years ago
|
||
Comment 19•14 years ago
|
||
Updated•5 years ago
|
Updated•3 years ago
|
Comment 20•14 days ago
|
||
I can reproduce what appears to be the same underlying issue in Thunderbird 156.0 on Windows 11 with two identical 1920×1080 monitors at 100% scaling.
The Thunderbird main window is intentionally configured to span both monitors. The desired geometry is approximately:
screenX = -9
screenY = 0
width = 3846
height = 1032
sizemode = normal
Thunderbird correctly persists this geometry in:
xulstore.json
chrome://messenger/content/messenger.xhtml
messengerWindow
However, after restarting Thunderbird, the window is restored to one monitor only:
X = 0
Y = 0
Width = 1920
Height = 1032
I performed several tests to distinguish persistence problems from window-restoration problems.
Environment:
Windows 11
Thunderbird 156.0
2 × 1920×1080 displays
100% scaling on both displays
Same GPU/display setup
The issue is reproducible in Thunderbird Troubleshoot Mode with extensions disabled.
Windows "WindowArrangementActive" was disabled for testing, with no change.
PowerToys/FancyZones was completely terminated, with no change.
No third-party multi-monitor/window-management software is installed.
The important observation is that the persisted geometry itself is correct.
Before Thunderbird startup, xulstore.json contains:
screenX = -9
screenY = 0
width = 3846
height = 1032
sizemode = normal
During startup I sampled xulstore.json repeatedly at approximately 50 ms intervals. It remains unchanged at width=3846 while Thunderbird starts.
Nevertheless, once the Thunderbird top-level window exists, Win32 GetWindowPlacement() reports:
rcNormalPosition:
X = 0
Y = 0
Width = 1920
Height = 1032
Therefore Thunderbird/Gecko appears to clamp the restored window geometry to one monitor during window creation/restoration even though xulstore.json still contains the correct 3846-pixel width.
I also verified that Windows itself accepts the intended geometry.
After Thunderbird has started, using Win32 MoveWindow() on the Thunderbird top-level HWND with:
X = -9
Y = 0
Width = 3846
Height = 1032
works correctly.
Immediately afterwards GetWindowRect() reports:
X = -9
Y = 0
Width = 3846
Height = 1032
and the Thunderbird window correctly spans both monitors.
After closing Thunderbird normally in this state, xulstore.json correctly persists:
screenX = -9
screenY = 0
width = 3846
height = 1032
sizemode = normal
On the next startup, however, GetWindowPlacement() again reports:
X = 0
Y = 0
Width = 1920
Height = 1032
Therefore this does not appear to be a persistence failure. The correct geometry is saved, but the persisted 3846-pixel width is apparently constrained to the primary monitor's approximately 1920-pixel workspace during startup.
This seems particularly consistent with the mechanism described in comment 11 of this bug: the new XUL window is initially associated with the primary monitor, the persisted size is restored and constrained to that monitor, and only afterwards is the persisted position considered.
I also tested these preferences with no change:
browser.startup.preXulSkeletonUI = false
browser.startup.blankWindow = false
A very old Thunderbird-specific report also appears to describe the same user-visible symptom:
Bug 267106 — Thunderbird window doesn't properly remember position when spanning multiple displays.
The behavior therefore appears to still be reproducible in Thunderbird 156.0 / Windows 11.
Please let me know if additional diagnostics, a reduced profile, Win32 geometry logs, or testing with Thunderbird Beta/Daily would be useful.
Description
•