I am just preparing to release my next major version build of my custom Form class for Winforms.
You can read all about the custom form control here: ModernChromeWindow .NET
Apart from the whole lot of heavily customizable features I already support in my Window class, I have also added the feature of automatic / built-in support for many of Windows + Hotkey(s) global hook.
Hotkeys automatically supported
In this build, I have implemented built-in support for many of the “Windows” hotkeys (global) viz.,
- Windows + <Up> [Maximize]
- Windows + <Down> [Minimize]
- Desktop docking:
- Windows + <Left>
- Windows + <Right>
- Windows + Home (Minimize all process windows excluding current window)
- Windows + <P>: Screen / Projection setup service invocation from the Operating system
Automatic “attaching” and “detaching” of Global hot keys
The implementations automatically detects the window’s active/non-active status accordingly attaches and detaches to the internal global hook with the Operating system, so that when the window is not active, the hooks are not currently in force and hence the user can use it normally with other processes or the window OS itself.
Advanced docking features with Windows Desktop
When performing the Window docking in the desktop, the control will perform advanced calculations to support automatic cycling and docking scenarios, viz.,
- If the window is already docked to the left, a Window + <Left> will move it the right half of the screen
- If it is already docked to the right side of the desktop, a Window + <Left> will make the window restored to its original size
- If the window is already docked to the right side of the desktop, a Window + <Right> will move it to the left half of the desktop screen
- If the window is already docked to the left side of the desktop, a Window + <Right> will resize the window its original size (restore size)
As part of this feature release build, i have also custom implemented keyboard based multi-monitor window movements & sizing for handling the following keys:
- Windows + Shift + Left
- Windows + Shift + Right
The control will automatically detect available attached monitors, and move the window between them.
Automatic Cycling while keys are kept pressed
If you keep the keys pressed, the control will automatically cycle the window movements for all of the supported Windows + * hot keys
“Desktop peek” feature supported
In addition to the above hot keys, this build also has support for automatically performing Aero “Desktop peek” (Windows + <Spacebar> in Win 7, or Windows + <comma> in Windows 8.0 / 8.1) when the control is used in OS versions Windows 7 and upwards.
Ease of enabling the Windows Global Hooks feature
The way you enable the window to have the new Windows hot key features is via a simple bool property ShouldEnableWindowsKeyHooks.
Depending on this property value setting, the control will automatically do all the heavy-lifting to deliver the features.
Features built into both Winforms and WPF controls
I have built these features into both of .NET controls viz., ModernChromeWindow .NET for WinForms, and Ribbon .NET control for the WPF.
In addition, there are many more newer features / properties I have introduced in this build, to be able to further customize the user-interface artefacts.
I am hoping to make the new build available on 6th October (Monday morning UK time).
Enjoy the .NET controls, and have fun!