Hey there
Firstly, let me say I'm a long time user and lover of DisplayFusion. I'm not sure I can exist without it!
But I do have a challenge as I have features I want from both DF and Windows but it seems they're incompatible.
Took me forever yesterday to investigate what was going on... Initially I thought Microsoft had a really bad bug with their virtual desktop feature but I discovered it's actually a problem with the way that DF taskbars works.
Essentially, DF taskbars stops Windows from recognising apps. Using just the built-in multi-taskbars from Windows works fine, but things stop working when I turn on DF taskbars. I much prefer DF taskbars as it provides the jump lists and other context menu items, plus it replicates the system tray across multiple taskbars (which Windows fails to do).
First let me run you through the correct behaviour, then show you what stops working, and lastly I'll provide some thoughts as to what might be happening.
-------------------
Windows Virtual Desktops with Windows' Built-in Multi Taskbar
-------------------
Here is my desktop. As you can see I have multiple monitors. The middle monitor is the primary monitor and the side monitors are secondary.
In the primary monitor, towards the start button, you'll see that I have three virtual desktops set up (the background image for each is screwed up - don't know why):
For the purposes of this run through I will only use desktops 1 & 2.
Here is Desktop # 1 showing a simple app on each monitor:
When I switch to Desktop #2, you can see that all the existing apps have stayed where they belong on Desktop #1. This is the correct behaviour.
Back to Desktop #1 and with the Task View button clicked you'll see that Windows recognises all open apps, including those on the secondary monitors:
This allows me to set a specific app or window to be shown on all desktops. I've set the app on Desktop #1 to do this:
And you can see when I switch to Desktop #2, the app that was configured to show on all desktops is appearing as expected:
Now I've moved that app to the left hand monitor and switched back to Desktop #1. You'll see it on the left on Desktop #1 as expected:
All the above are the correct behaviours for Windows Virtual Desktops. Please note that ONLY when an app (or window) is configured to be shown on all displays should it be shown no matter which desktop it's on.
-------------------
Windows Virtual Desktops with DisplayFusion's Multi Taskbar
-------------------
So now I'm enabling DisplayFusion's multi-monitor taskbar feature which then indicates I can only have 1 multi-taskbar and gets me choose. Here I'm choosing to disable the built-in Windows multi-taskbar feature:
(I've also actually tried to cancel out of the 'which do you want to disable' dialogue and checked that both taskbars run simultaneously - the result is the same as described below.)
You'll note that the DF taskbar mode is: "All taskbars show relevant windows".
NB: This is important.
So now we're back to Desktop #1 with simple apps on each monitor (NB: I have reset the desktop - the Notepad++ app is back on the primary monitor and I have turned off it's configuration to be shown on all desktops):
Now if I switch to Desktop #2, Windows Virtual Desktop has successfully moved to Desktop #2 and has correctly recognised that the app that was on the primary monitor, attached to the Windows taskbar, has correctly stayed on Desktop #1:
However, you'll notice that the apps that are on the secondary monitors, those attached to the DF taskbar, are still showing. They should have stayed on Desktop #1. This is not the correct behaviour.
Also, if I switch back to Desktop #1 and click on the Task View button, you'll now also see that the apps that are on the secondary monitors, those attached to the DF taskbar, are no longer showing like they did previously:
This is not the correct behaviour.
-------------------
Conclusion
-------------------
I'm guessing that Windows Virtual Desktops uses Windows taskbar to understand which apps are running where. That enables it to (a) know which monitor each app is on when clicking on the Task View button, and (b) it probably just reuses the same function to show / hide apps when switching desktops.
I suspect that as soon as we enable the DF multi-monitor taskbars feature, Windows looses it's ablity to track which monitor each app is on as it's been coded to look at its own functioning taskbars.
I could be wrong, it's just a guess, but if I'm correct then I also suspect it'll be pretty tricky for Binary Fortress to fix this issue.
CAVEAT: A justly and fairly acknowledge that this issue only occurs when the taskbar mode is set to "All taskbars show relevant windows". I have tested it and other taskbar modes where all windows are displayed on the main taskabr do not have this issue (which strengthens my hypothesis as to cause BTW). However, I cannot stand missing out on the contextual information of only seeing apps on their own taskbar as I tend to have a lot of apps running at once. Having all apps always shown on the main taskbar requires extra mental load to process and as a software developer my entire workflow is engineered to minimise overhead and maximise productivity. Choosing a different DF taskbar mode really isn't an option for me for the way I work and I'd simply prefer to forgo using the DF taskbar at that point.
The main reason I use DF's multi-taskbar feature is for the replication of the system tray across all monitors. I like that I get access to jumplists etc, but that's a secondary (excuse the pun) concern for me.
Good luck finding a resolution! I hope you do.
Cheers,
Paul