
Windows 10 Virtual Desktop Enhancer - edgartaor
https://github.com/sdias/win-10-virtual-desktop-enhancer
======
Ciantic
I happen to have written the DLL this app uses, and boy collecting that
information can be time consuming. It's mind-boggling how Microsoft still
can't come up simple APIs for their new features.

Most annoying part for me with Windows 10's virtual desktops is simple thing:
flashing task bar buttons appear on all desktops! It drove me nuts, every time
I was focusing on some other desktop, some annoying program flashed it's
button and it appeared on the desktop I was using.

I happen to have written a in-memory patch for explorer.exe to disable
flashing task bar buttons all together. AHK script also:
[https://github.com/Ciantic/DisableFlashingTaskbarButtons](https://github.com/Ciantic/DisableFlashingTaskbarButtons)

~~~
UnoriginalGuy
I'd take the obnoxious flashing over applications stealing focus.

If there was a single design change I'd make to Windows, it would be to make
it impossible for one application to steal focus from another (without user
intervention).

TweakUI used to do this via the "Prevent Applications from Stealing Focus"
checkbox on the General -> Focus tab. But TweakUI ended with XP/2003 Server
unfortunately.

To give an example, I was typing away in Word, really on a roll, and suddenly
Apple's iTunes auto updater had focused ate an entire sentence and my
concentration was destroyed. Thanks Windows.

~~~
jackhack
This is the one "killer feature" that keeps me on a Mac.

Stealing focus is more than annoying -- it's dangerous. When a Windows dialog
pops up with focus set to "OK", all it takes is a press of the space bar and
poof! you've just "clicked" OK on God knows what. Even worse, now that it's
dismissed, you can't go back and see what you just OKed.

The next 30 seconds are sure to be spent wondering "what's about to happen?
Will the system reboot? Did I just install an upgrade? Or open the firewall?
or ???"

~~~
taneq
Agreed, this is probably my #1 pet hate on any modern OS, along with the "web
page loads a new element somewhere above the cursor just as I click, sending
my click to a new and unwanted place."

~~~
nurettin
I saw that happen consistently on a web page I forgot. It was a scheme! There
was an event trigger on a text element and it popped open a div to scroll a
picture right below your mouse cursor.

------
ChuckMcM
One of the interesting things that Apple seems to do in MacOS is to remember
specific screens. Plugging into them recalls a previous display arrangement
setup. I noticed this when I had two external screens at work, and one at
home, and when I moved my Macbook between work and home the arrangement would
stay correct, even though they were on either side at work and above at home.

Sadly this is something Windows 10 does not do well. When I plug my Surface
Pro into an external monitor my app moves from the laptop screen to the
external screen and stays 'full screen'.

Here is a simple example of what I would appreciate if it existed:

I am at work, I am connected to two large screens. I put Outlook on my right
screen at about 1/4 the size of the screen. I disconnect, all my windows jump
to the laptop screen (great) and I have outlook in full screen mode. Now I
reconnect my dual monitors. I'd love Outlook to jump back to where it was, and
the size it was, on that right screen when I unplugged. Now I get home and
plug into a 2K screen (rather than the 4K screen at work) and I want Outlook
to be a bit larger on that screen. When I unplug I want it back on my laptop
full screen, when I plug in at work, back to the right monitor quarter size,
when I get home back to the monitor about half size.

Remember which screens I plug into, remember what the app settings were when I
last plugged into that screen. Restore them when I re-attach.

~~~
nxc18
I think part of the challenge might be related to adapter use.

On my MBP, I connect either through HDMI or a displayport->VGA adapter. My MBP
exhibits the behavior you mention if the displays are on difference adapters,
but it doesn't recognize different displays plugged into the same port/adapter
(e.g. all HDMI displays are the same to it, all VGA displays are the same to
it).

My Surface _only_ has a minidisplayport port, and I suspect the adapter I'm
using isn't fancy enough to tell the Surface that the attached displays are in
fact different.

Definitely a bummer though. and 4k support in general on Windows 10 (and
macOS, but less so) is a little iffy. Issues really start to show when
remoting into a session on a device hooked up to a 4k monitor.

~~~
ChuckMcM
The question is fingerprinting the monitor. In the HDMI world you can get the
serial number from the EDID record usually. If you're in an adapter which is
interposing as a 'virtual' monitor between you and the real monitor all bets
are off. We had an old Matrox unit that would take 3 DVI monitors and make
them appear as one monitor for example.

On the surface dock the dual monitors connect to the dock's DP connectors.

------
joezydeco
Got excited for a minute when I saw "Virual Desktop" on Win10 and then saw it
changes nothing about the desktops themselves.

Unless I'm totally missing something, is there a way to make Win10 believe the
desktop size is larger than the video screen size? With or without device
resolution indepdence, I don't care. Let it scroll or something.

It's just really sucky when I'm trying to debug an application that expects a
large monitor (ala 1280x960 or something) and my laptop only has 1366x768. Qt
_literally_ says "screw it, I'm clipping your window" in these cases.

~~~
cbartlett
Depends on your video adaptor/card, but nvidia supports Dynamic Super
Resolution (DSR), and AMD supports Virtual Super Resolution, both of which
essentially allow you to bump your res beyond the max.

In the nvidia control panel, have a look in '3D settings' > 'Manage 3D
settings' > 'DSR - Factors' and you can change the resolution multiplier. (Not
sure why it's in 3D settings, as it applies to the desktop along with anything
else).

~~~
joezydeco
It's a piece of crap Dell with an Intel video deck, so no good.

------
wluu
One thing Windows I'd really like is to make any full screen window into a
"virtual desktop" so I can switch between full screen items using the Windows
10 shortcut keys (eg: win+ctrl+left/right).

Eg: * Multiple concurrent Remote Desktops running in full screen? Make them
all separate virtual desktops so you can switch between and manage them like
you can with virtual desktops.

------
xjwm
These looks like some nice additions to the Windows 10 virtual desktop. I
remember playing with Compiz
([https://en.wikipedia.org/wiki/Compiz](https://en.wikipedia.org/wiki/Compiz))
on SUSE Linux back when Windows Vista was still in beta, and thinking how
futuristic the multi-desktop functionality was.

------
hs86
Independent virtual desktops per monitor would be my most missing feature in
Windows 10's implementation. Just something similar to the "Displays have
separate Spaces" feature from macOS.

~~~
nizmow
This was the #1 thing I was hoping this would provide when I clicked on the
link. Basically stops me from even bothering to use virtual desktops on
Windows, I got so used to having my laptop screen as a "persistent" desktop
with stuff I always wanted to see on it.

------
vijucat
I've never grokked Virtual Desktops (I used to use DexPot years ago on XP).
You anyway carry the list of windows open in your head in that horrible
background energy-sucking way that multi-tasking does to you (not to mention
the fancy wallpaper background that you set to remind yourself the purpose of
each desktop, all multiplied by number of virtual desktops!). Instead, I write
down all the TODOs that I need to attend to after the most important thing (or
use JIRA), and just focus on that one thing. The number of windows open = what
I need right now to get work done.

One thing at a time + work after good rest + be good at it + love what you do
= productivity. It's a narrow path. Skip any of these and you're fooling
yourself, IMHO.

~~~
mixedCase
In my case I keep using the same desktops for the same things. I keep the main
browser instance on 1, my main work is on 3, music is on 9 and so on. With an
indicator on my top bar that tells me which virtual desktop has windows open
and some weeks of use, it became second nature and now cannot live without
such a system without losing productivity big time. Anything else feels
extremely inefficient!

~~~
vijucat
Interesting, thanks! :-)

------
ZenoArrow
Looks like it could be useful.

For anyone who wants to play with Windows 10 virtual desktops, just FYI, can
use the keyboard shortcut Win + Ctrl + Left Arrow/Right Arrow to move between
virtual desktops (might have to create a second virtual desktop before this
works, I can't remember).

~~~
Moogs
And to quickly create a 2nd virtual desktop: Win+Tab and there's a "New
Desktop" button in bottom right

~~~
iamlukesky
Or ctrl+win+D

------
matthewking
Coming from macOS my main issues with win10 virtual desktops were 1) the
inability to save and persist my desktop configuration through reboots, 2) the
inability to assign specific apps to always open on a particular desktop and
3) being able to define shortcuts, I use ctrl+1-5 on my Mac and it's become
muscle memory to jump directly between desktops.

Having quickly scanned the link it looks like it may provide the key shortcuts
so that's one step forward. The other two issues are probably closely related
so I'm hopeful these will be possible in one form or another eventually.

~~~
mariusmg
Try a "real" virtual desktop app, not the Windows 10 toy.
[http://virtuawin.sourceforge.net/](http://virtuawin.sourceforge.net/)

------
RaleyField
Why is it suddenly acceptable to post(run?) random binaries from a random anon
dude? No, thanks fsb.

------
itaysk
I'm a heavy user of virtual desktops in win 10, I see how this makes my life a
little better.

A feature that Win 10 has and I was missing in mac (maybe they have it by now)
was that desktops doesn't share taskbar and open windows states. So if you
Alt+Tab you see only windows in current desktop. Same as using taskbar.

A feature I'm still missing is to save the state of all opened windows, and to
have different icons on taskbar and desktop per virtual desktop (like separate
computers).

Also there's a bug where chrome windows from all desktops just to the first
desktop after waking from sleep.

------
Eun
Reminds me on
[https://github.com/Eun/MoveToDesktop](https://github.com/Eun/MoveToDesktop)

------
withinrafael
Plugging a Frida hook I developed to let you seamlessly CTRL-ALT-LEFT/RIGHT to
have rdp-sessions-as-virtual-desktops and be able to switch back and forth.

Niche but changed the way I use VMs forever.

[https://github.com/riverar/remotedesktop-
keyfilter](https://github.com/riverar/remotedesktop-keyfilter)

------
m0ngr31
I wrote something similar a while back:
[https://github.com/m0ngr31/VirtualDesktopManager](https://github.com/m0ngr31/VirtualDesktopManager)

I switched to Linux soon after though, so I'm sure this project is much better
now.

------
nickjj
Have you looked into using DexPot for Windows? It's the best virtual desktop
tool I've used on any platform.

[http://www.dexpot.de/?lang=en](http://www.dexpot.de/?lang=en)

