Firefox chooses the last focused window on a different virtual desktop when opening a new link instead of the last focused window on the current virtual desktop
Categories
(Core :: Widget: Win32, defect, P3)
Tracking
()
People
(Reporter: hayden, Assigned: gstoll)
References
Details
Attachments
(1 file)
Updated•8 years ago
|
Updated•7 years ago
|
Updated•3 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Comment 2•4 months ago
|
||
Chiming in to bump this and say this is still an issue. Regardless of which virtual desktop I am in when clicking a web link, the link always opens in whatever the most recent Firefox window is, even if it is on a different virtual desktop. The preferred behavior is that it either opens in the most recent Firefox window on the current virtual desktop, or, in the case that there are no open Firefox windows on the current desktop, that a new window opens on the current desktop.
Assignee | ||
Updated•1 month ago
|
Assignee | ||
Comment 3•28 days ago
|
||
This is tricky because Windows doesn't allow a lot of programmatic access to virtual desktop information since their philosophy is that is for the user to manage, not programs.
Because clicking on a web link launches a Firefox process which just sends a message to the running Firefox process, we're a bit hamstrung by this. I think we can get something working using IVirtualDesktopManager::IsWindowOnCurrentVirtualDesktop() but right now I'm running into a RPC_E_CANTCALLOUT_ININPUTSYNCCALL
error, which probably needs I need to dispatch or something.
Assignee | ||
Comment 4•26 days ago
|
||
Per Raymond Chen, programs should not switch between virtual desktops since
they are an end user feature.
( https://devblogs.microsoft.com/oldnewthing/20201123-00/?p=104476 )
Windows on different virtual desktops are marked as cloaked by Windows, so
when looking for an existing window skip over cloaked ones.
There may be more places that we want to pass forceOnSameWorkspace to
getTopWindow(), but this is a start.
Description
•