Coder Social home page Coder Social logo

virb3 / sylphyhornex Goto Github PK

View Code? Open in Web Editor NEW

This project forked from grabacr07/sylphyhorn

228.0 16.0 14.0 854 KB

📺 Virtual desktop tools for Windows 10, now with reordering

License: MIT License

C# 96.24% PowerShell 3.76%
windows virtual switch tools reorder rearrange desktop

sylphyhornex's Introduction

SylphyHornEx

This is a fork of SylphyHorn with new features and better optimization

SylphyHorn is a collection of virtual desktop tools for Windows 10.
It provides global hotkeys, switching notification, different background per virtual desktop, and many more features to improve your experience.


⚠️ DEPRECATION NOTICE:

This project is no longer maintained and has issues with Windows 11.
For a third-party alternative, check: SylphyHornPlusWin11


Installation

Please download from Releases.

Requirements

  • Windows 10 build 14393 (Anniversary Update) or later

Features

  • Switching notification

  • Move active window to adjacent desktop
    (default key combination: Alt + Win + or )

  • Move active window to create new desktop
    (default key combination: Ctrl + Alt + Win + D)

  • Reorder virtual desktops
    (default key combination: Shift + Ctrl + Win + or )

  • Rename desktops from settings or with hotkey
    (default key combination: Ctrl + Win + R)

  • Switch to specific desktop
    (default key combination: Ctrl + Win + 1 to 0)

  • Move active window to specific desktop
    (default key combination: Alt + Win + 1 to 0)

  • Pin window to all desktops (default key combination: Ctrl + Win + P)

  • Settings GUI (call from tasktray)

  • Change the background for each desktop

Troubleshooting

  • Problem: Cannot interact with certain windows
    Solution: Enable the "Start as Administrator" setting. Check #6 for more information

Credits

  • Manato KAMEYA @Grabacr07 (Author, Developer)
  • Yutaka TSUMORI @tmyt (Developer)

License

SylphyHorn is licensed under the MIT License.

sylphyhornex's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sylphyhornex's Issues

Cannot use F1 or WIN + F1 as shortcuts

I'm unable to use F1 or WIN + F1 as shortcuts to switch to a specific virtual desktop.

I want to use the following shortcuts to switch to the virtual desktop :

  1. WIN + F1
  2. WIN + F2
  3. WIN + F3
  4. WIN + F4

The first shortcut is the only one that cannot be set.
When trying with only the F1 key, the key gets detected (I can see it get written in the shortcut component) but is immediately removed.

The combinations CTRL + F1 or ALT + F1 do work.

Important clarification
Outside of an active application, the F1 key is bound to the "help & support" feature that would usually launch Edge and do a bing search.
The F1 key is usually registered by the system (explorer.exe ?) early on and is, usually, hard for applications to rebind it.

However, I've successfully used the combination WIN + F1 within an AuthohoKey script in the past (I was using the now defunct Windows 10 Virtual Desktop Enhancer ).
I've actually disabled the "help & support" feature through the registry with the help of this : How do I disable the F1 “Help” key on Windows 10?
The F1 key should now be usable, but I did not confirm if that registry modification effectively removes the registration done by the system.

Question
Is it possible to :

  1. Allow the usage of the WIN + F1 combination ?
  2. Override / supersede the registration done by the system (so the registry modification is not required) ?

Names set do not follow when swapping / reordering the desktops

When you swap virtual desktops (reorder them), the names set do not "follow".

So I have foo1 -> foo4. If I swap foo3 and foo4, foo3 windows will be in the fourth place, but it will still be named foo4, and the same for the other desktop in the swap.

Would be nice for the naming to follow when swapping.

Add screenshots

Would be nice to have accurate screenshots, explaining the new features as well.

shortcuts not working

I am on windows insider 21370.1 and shortcuts don't work at all, How can I debug this? app log is empty, is there a verbose mode or something?
Run as admin doesn't help, shortcuts don't work anywhere.
I tried changing them, any combination doesn't execute the specified command, keys get captured by focused app.
version: 5.5.2

Closing settings window doesn't release memory

Each time settings windows is opened (Tray -> RMB - 'Settings(S)') it consumes ~80MB of memory but when 'X' is hitted and window is closed memory is not freed.
It may end up with this:
image

Window swapping stopped working a while back with no errors

Haven't used window swapping specifically since a long while ago. Tried using it again today (got 7 virtual desktops with around 150 windows total). Doesn't work no matter what shortcut I assign. Neither when restarting.

Throughout that period, only things I can think of that changed are:

  1. Added AHK bindings with the Win/Meta key in them (but swapping doesn't work any key assignment).
  2. Installed AltDrag (again, Win key).
  3. Installed PowerToys.

Disabling each of those 3 still doesn't fix it :(

Ctrl + Alt + Delete breaks shortcut handling

I could reproduce a bug that, in a few cases, makes SylphyHornEx not react to keyboard shortcuts, for example in the case of after opening Task Manager. At these occasions as a workaround, one has to:

  1. go to the taskbar icon of the app and right-click on it
  2. click options... (I am not sure if, at this point, the 1-2-second lag to open the window has anything to do with the issue)
  3. close the window

Now the app is responsive to the shortcuts again( and if you check the task manager, the app has a few tens of MB-s more memory footprint).

My configurations(switch desktop is not working in the mentioned case):
image
image

System.ArgumentException: Empty path name is not legal

Fix silent exception that occurs every time you open the UI. Gets logged in App log:

System.ArgumentException: Empty path name is not legal.
   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy)
   at System.IO.FileStream..ctor(String path, FileMode mode)
   at SylphyHorn.UI.Controls.UnlockImageConverter.Convert(Object value, Type targetType, Object parameter, CultureInfo culture) in D:\a\SylphyHornEx\SylphyHornEx\source\SylphyHorn\UI\Controls\UnlockImageConverter.cs:line 22

Ref: #9

Keyboard Grabbing does not work after leaving VMware Worksation Virtual Machines

Keyboard grabbing does not work when the VMware Workstation window is active.
I tried multiple workarounds e.g. running as administrator, uninstalling the enhanced keyboard driver etc. but I could not get it to work.

VMware states, that the "enhanced keyboard driver" would stop keyloggers from reading the input. However, it seems even without it, SylphyHornEx has no chance of reading the keys.

I know this is very specific, but when I want to switch between workspaces after getting out of a VM (ctrl+alt) the actual Windows hotkeys will proceed instead of my overrides. E.g. Win+2 would still open the second application in my taskbar, while I want to switch to the second workspace.

Rearrange the windows

It would be nice if it were possible to rearrange the windows; for example when you press start + tab and the layout comes with all the windows, if you could move screen 1 to after screen 3 for example

Windows key gets stuck on pressed

Whenever unlocking from lockscreen, the Windows key would get permanently toggled until you manually press and release it so it untoggles. This results in SylphyHornEx actions triggering without having to press the Windows key, most notably Ctrl + X for cut will actually move you back to the previous virtual desktop.

Doesn't work on Windows 11

Win 11 Installed build: 22000.258 co_release
SylphyHornEx version: 5.5.2

Reported below two logs.
LOG1:
System.ArgumentException: Valore non compreso nell'intervallo previsto.
in WindowsDesktop.Interop.VirtualDesktopCacheImpl.GetOrCreate(Object comObject)
in WindowsDesktop.Interop.VirtualDesktopManagerInternal.GetCurrentDesktop() in D:\a\SylphyHornEx\SylphyHornEx\source\VirtualDesktop\source\VirtualDesktop\Interop(wrappers)\VirtualDesktopManagerInternal.cs:riga 22
in SylphyHorn.Services.VirtualDesktopService.GetRight() in D:\a\SylphyHornEx\SylphyHornEx\source\SylphyHorn\Services\VirtualDesktopService.cs:riga 49
in SylphyHorn.ApplicationPreparation.<>c.b__16_20(IntPtr _) in D:\a\SylphyHornEx\SylphyHornEx\source\SylphyHorn\ApplicationPreparation.cs:riga 123
in System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
in System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

LOG2:
System.UnauthorizedAccessException: Accesso al percorso 'C:\Windows\Web\Wallpaper\ThemeC\img28.jpg' negato.
in System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
in System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
in System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy)
in System.IO.FileStream..ctor(String path, FileMode mode)
in SylphyHorn.UI.Controls.UnlockImageConverter.Convert(Object value, Type targetType, Object parameter, CultureInfo culture) in D:\a\SylphyHornEx\SylphyHornEx\source\SylphyHorn\UI\Controls\UnlockImageConverter.cs:riga 22

Error on Swapping Desktops

I'm unable to swap desktops after latest windows update.

I'm on Windows 10 v20H2 build 19042.610

This is the error I get:

System.ArgumentException: Value is not within expected range.
   at WindowsDesktop.Interop.ComInterfaceWrapperBase.Invoke[T](Object[] parameters, String methodName) in D:\a\SylphyHornEx\SylphyHornEx\source\VirtualDesktop\source\VirtualDesktop\Interop\ComInterfaceWrapperBase.cs:line 60
   at WindowsDesktop.Interop.VirtualDesktopManagerInternal.MoveViewToDesktop(ApplicationView pView, VirtualDesktop desktop) in D:\a\SylphyHornEx\SylphyHornEx\source\VirtualDesktop\source\VirtualDesktop\Interop\(wrappers)\VirtualDesktopManagerInternal.cs:line 18
   at WindowsDesktop.VirtualDesktopHelper.MoveToDesktop(IntPtr hWnd, VirtualDesktop virtualDesktop) in D:\a\SylphyHornEx\SylphyHornEx\source\VirtualDesktop\source\VirtualDesktop\VirtualDesktopHelper.cs:line 52
   at SylphyHorn.Services.VirtualDesktopMoveService.SwapDesktops(VirtualDesktop source, VirtualDesktop target) in D:\a\SylphyHornEx\SylphyHornEx\source\SylphyHorn\Services\VirtualDesktopMoveService.cs:line 45
   at SylphyHorn.Services.VirtualDesktopMoveService.MoveLeft() in D:\a\SylphyHornEx\SylphyHornEx\source\SylphyHorn\Services\VirtualDesktopMoveService.cs:line 20
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

AltGr + dead keys not working when SylphyHornEx is running

My keyboard layout relies heavily on dead keys for regular typing. Whenever SylphyHornEx is running, dead keys accessed through AltGr (Right Alt) stop working altogether.

For example, in order to type á, I would normally press AltGr+1 (acute accent dead key) followed by a. However, with SylphyHornEx running in the background, this no longer works and just produces a regular a.

This happens with any keyboard layout that has dead keys on the AltGr layer (ES, PT, FR, CZ, SK, SI/HR/SR Latn, CA Mult...). However, dead keys seem to work normally if they are on the base or Shift layers. For example, in the standard Spanish layout, the ´ and ¨ dead keys (which are on the base and Shift layers, respectively) work fine, but the ~ dead key (which is on the AltGr layer) doesn't work. So it would seem that this problem has to do with how SylphyHornEx handles/intercepts AltGr key presses, or something along those lines.

The issue is reproducible. It starts occurring whenever SylphyHornEx is run and stops when it's closed.

I am unable to use SylphyHornEx until this issue is fixed, as it stops me from typing normally.

How to run on startup?

Congrats for the awesome app. I tried to add it to the startup folder but it doesn't start after I reboot.

Reorder / rearrange desktops

Where is this, how can I find it? The only thing I can find is moving individual windows to a different desktop, not swapping the contents of two desktops. If this feature doesn't exist, isn't the repository description a bit misleading?

Unable to interact with Administrator windows

Due to Windows account protection, a non-administrator process cannot interact with administrator processes. This prevents this app from moving around Administrator windows. Consider creating a toggle below "Run on startup" that will additionally elevate to Administrator.

Add to package manager(s)

I prefer installing applications from package managers like Chocolatey and WinGet, thanks to easily being able to update packages automatically

A lot of false notifications when switching desktops

Hi,
I'm using last version of SylphyHornEx (v.5.4.4) and each time I switch desktops (LetfCTRL + Win + Right/Left Arrow) I see in the Windows taskbar a lot of task notifications (blinking notifications), they are false notifications because nothing is happening on them.
This is confusing because you can't see which task has really notified something, see image enclosured.
false-notifications

Broken on Insider "Dev" channel.

Hi there. I've become very attached to SylphyHornEx since giving Windows another shot---thanks for all the work you've put into it. The only challenge I've run into is some difficulty using it with the "Dev" Insider channel (currently build 21277).

The application starts up, and I can access its settings. I run into trouble when I try to use any of its custom features. It seems as though the keyboard shortcuts aren't responding; I also don't see notifications on switching virtual desktops, and the active desktop number is not showing in the taskbar. All was well under the "Beta" build channel.

I know the "Dev" channel is considered unstable, so I'm certainly content to sit tight for a while. I'm also happy to furnish any additional debugging info that might be useful. It's been a long minute since I used a Windows machine, but if you can point me in the right direction I'll grab whatever logs or crash reports I have.

Thanks so much for any guidance you can offer.

Unbind of Left Ctrl + z

I've just downloaded SylphyHorn, and can't seem to unbind "Left Ctrl+z" shortcut. So every time I try to undo it just switches to the next left window.

Best Regards
KlumpenM

Not working properly in Windows11(Build 22000.282)

OS: Windows11(Build 22000.282)
SylphyHornEx version: 5.5.2

The software GUI can boot normally without crashing seems everything is fine, but all functions including shortcuts and notification can't work properly,
I tried starting as administrator, not working still.

The original version from Grabacr07/SylphyHorn has the same issue.

An author has reported that after 21H2 Microsoft changed the API (COM GUIDs) for accessing the functions for virtual desktops and provided a new tool for managing virtual desktops: https://github.com/MScholtes/VirtualDesktop, maybe someone can compile a new version of SylphyHorn?

Error on Swapping Desktops

Hi,

I'm unable to swap desktops. I'm using the shortcut LeftWin + LeftAlt + LeftArrow|RightArrow but I've tried other ones as well.

I'm on Windows 10 v2004 build 19041.264.

This is the error I get:

System.ArgumentException: Empty path name is not legal.
   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy)
   at System.IO.FileStream..ctor(String path, FileMode mode)
   at SylphyHorn.UI.Controls.UnlockImageConverter.Convert(Object value, Type targetType, Object parameter, CultureInfo culture) in D:\a\SylphyHornEx\SylphyHornEx\source\SylphyHorn\UI\Controls\UnlockImageConverter.cs:line 22

Please let me know if there's any other information that would be useful that I'd be able to provide.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.