Commit graph

1018 commits

Author SHA1 Message Date
Peter Kirmeier 7cbad2bbdc [Feature] Icon-only view like "Quick Launch" (#495)
(cherry picked from commit 9683e5c461)
2023-08-11 22:34:25 +02:00
Peter Kirmeier 26b9a755c3 [Feature] Show hint to find settings and enable by default 'Show function key Settings' #490
(cherry picked from commit 00b4c5ddcc)

Additional changes:
ResourceLoading improved for Window icons
Fix not working OK button of UpdateWindow
2023-08-11 22:29:08 +02:00
Markus Hofknecht 9d22a38c2d Update README.md
(cherry picked from commit 2add7288ea)
2023-08-11 18:45:07 +02:00
Markus Hofknecht 92b6b62f74 Update README.md
(cherry picked from commit 49acc2ae27)
2023-08-11 18:44:39 +02:00
Peter Kirmeier 0f09c4317f Child processes won't elevate (#488)
(cherry picked from commit a296df3da4)
2023-08-11 18:41:24 +02:00
Peter Kirmeier d6bf3ed42a Add color picker window 2023-06-04 16:41:48 +02:00
Peter Kirmeier 28fdd938ee Enable search text box selection. 2023-06-04 11:34:29 +02:00
Peter Kirmeier 87fedfc7d5 Set text color for items accordingly to configuration 2023-06-03 21:46:41 +02:00
Peter Kirmeier bb25cca4c2 Fix background colors for items after selection. 2023-06-03 21:40:33 +02:00
Peter Kirmeier 2b408c83bf Fix for closing pipe upon application shutdown. 2023-06-03 21:15:13 +02:00
Peter Kirmeier 0e812d207b Allow waking up another process when started a second time.
This was not possible before and was solved by sending hotkey in version 1.
In v2 it will use named pipes for IPC communication, so it don't rely on hotkeys any more.
2023-06-03 20:18:10 +02:00
Peter Kirmeier dda3d94e7b Only store hotkeys when successfully set using Settings window. 2023-06-03 16:56:17 +02:00
Peter Kirmeier 33e1d9decf Avoid weird list view selection change due to the created native context menu. 2023-06-03 01:17:05 +02:00
Peter Kirmeier f8f2338b73 Fix mouse position for shell context menu when menu/app key is used.
Mouse capture outside window mus be enabled otherwise screen 0:0 is returned.
However, we keep using native function as suggested by Mouse.GetPosition remarks.
2023-06-03 00:49:10 +02:00
Peter Kirmeier 8311d9fd5b Enable key filters for hotkeys
Fix some hotkey combinations
Refactor code for better serialization
2023-06-01 00:32:28 +02:00
Peter Kirmeier d162564e82 Enable hotkey modification via Settings window 2023-05-31 22:32:19 +02:00
Peter Kirmeier 215c263052 Refactor hotkey registration
Allow function registrations besides the actual hotkey registration.
2023-05-29 23:56:52 +02:00
Peter Kirmeier 637cc46e7e Initial reassign of hotkeys 2023-05-29 20:48:46 +02:00
Peter Kirmeier ce2d9772f6 Rework hotkey registration for sharing hotkeys between objects.
Use colors for working, failing or unset hotkeys in HotkeySelector.
2023-05-27 18:23:01 +02:00
Peter Kirmeier 8ece540881 Centralized hotkey registration
Only one window handle is required for all hotkeys.
Simplifies maintaining multiple hotkeys spreaded over multiple windows.
2023-05-27 16:37:39 +02:00
Peter Kirmeier 60329d524f Fix GetKeyName to support WPF's Key as base type. 2023-05-26 20:51:42 +02:00
Peter Kirmeier 1c22c86d3e Restructured hotkey handling 2023-05-26 00:34:31 +02:00
Peter Kirmeier 9961e53c14 Replace placeholder for HotkeyTextbox in SettingsWindow with actual Control
(Just added to visual tree, not functioning correctly yet)
2023-05-25 20:52:31 +02:00
Peter Kirmeier 451570021b Fix Windows key modifier on hot keys
Change default from Ctrl+LWin to working Ctrl+Win+LWin key combination
2023-05-25 00:31:31 +02:00
Peter Kirmeier 1b2c151e77 Remove use of obsolete FormsExtensions 2023-05-24 23:58:22 +02:00
Peter Kirmeier 91c70d4906 Simplify and fix hotkey registration
FormsExtensions class no longer required.
Use proper virtual key code for native hotkey events.
2023-05-24 23:47:49 +02:00
Peter Kirmeier f8d3457b13 Remove v1 hints 2023-05-24 23:47:41 +02:00
Peter Kirmeier f55af05bc3 Fix issue that key modifiers are parsed wrong
(registering the hotkey might have failed)
Simplified hot key pressed events
Remove obsolete class KeyPressedEventArgs
2023-05-22 23:57:54 +02:00
Peter Kirmeier f8c9913933 Make HotkeyControl buildable again.
Also try registering the hotkey on startup.
Extended error message why registering of a hotkey failed.
2023-05-21 21:13:18 +02:00
Peter Kirmeier d263eb4588 Replaced Icon dictionary (cache) with BitmapSource 2023-05-19 21:26:47 +02:00
Peter Kirmeier d74e61b999 Replaced some Icon objects with ImageSource
Merged ColumnText and Text of RowData
2023-05-19 20:43:19 +02:00
Peter Kirmeier 045fb9dd7e Improve Icon factory performance
Workers are by default part of MTA thread model and are CoInitialized.
This means COM calls can be made without spawning additional STA threads.
Additionally pass file icon factory for dictionary search instead of providing (potentially not used) new Icon beforehand.
2023-05-19 18:50:53 +02:00
Peter Kirmeier 9fd7da2e98 Remove obsolete class EventDelay
(not used since 1.3.0.4)
2023-05-19 15:36:15 +02:00
Peter Kirmeier 13e7cedaa6 Improve async icon loading
Response time for an loaded icon should be faster as update no longer depends on timer
Loading icon will now share image source prevents creation of lost of loading icon copies
2023-05-19 15:27:35 +02:00
Peter Kirmeier f7fff25ba7 ReadIcon will automatically update ColumnIcon
Freeze of ImageSource required to become accessible for UI thread as it may be created in background worker
2023-05-19 00:17:07 +02:00
Peter Kirmeier 6346b513d8 Merged ListViewMenuItem into RowData 2023-05-18 23:28:52 +02:00
Peter Kirmeier e9675685ef Separated ListViewMenuItem from Menu (former ListViewItemData) 2023-05-18 22:48:18 +02:00
Peter Kirmeier 4a11f48f10 Reduce complexity of RowData 2023-05-18 22:28:05 +02:00
Peter Kirmeier ac311d5632 Make mainMenu not null 2023-05-18 22:16:39 +02:00
Peter Kirmeier 13b2338b11 Reorganize main objects
Notify icon moved into Menus class (multiple instances would get multiple icons)
Taskbar logo moved into Menus class (multiple instances would get multiple icons)
joystickHelper moved into App class (Only one watcher for gamepad inputs even when multiple Menus exist)
Simplified event calling of these classes
2023-05-18 21:25:03 +02:00
Peter Kirmeier a1055ce31f Rework open calls and events 2023-05-18 20:42:46 +02:00
Peter Kirmeier e16d682d87 Rework to remove IsMainUsable 2023-05-16 20:53:01 +02:00
Peter Kirmeier 1e5c8c8f94 Improve window relocation by mouse dragging 2023-05-16 19:57:02 +02:00
Peter Kirmeier d75d183918 Remove state openCloseState and ClosePressed events by refactoring 2023-05-16 19:32:48 +02:00
Peter Kirmeier 0fb1a086bb Shutdown immediately when configuration path is empty 2023-05-15 23:26:03 +02:00
Peter Kirmeier 7d4c40a71e Remove deactivated flag from logic that will open/close main menu 2023-05-15 23:01:55 +02:00
Peter Kirmeier cd5ab5aa5c Simplified code
Fix potential issue of loading from wrong thread during startup
2023-05-15 22:34:17 +02:00
Peter Kirmeier ddf91131cb Minor selection improvement 2023-05-14 23:25:34 +02:00
Peter Kirmeier ec045a153b Simplified menu selection via keys
Avoid menu closing when going one level back via keys
2023-05-14 19:13:44 +02:00
Peter Kirmeier 5bd2c44930 Simplified and improved selection via keys
Reduce complexity of key handlers
Combine deselect and select events
2023-05-12 01:13:02 +02:00