Commit graph

220 commits

Author SHA1 Message Date
Peter Kirmeier
5707c2f051 Improve updates on file system watcher events
Menu positions and sizes will be adjusted now
Invalidated sub menus will be closed
2023-08-31 22:34:47 +02:00
Peter Kirmeier
4a645290f7 Fix intermediate layout and size changes when a sub menu gets filled with data 2023-08-31 19:23:22 +02:00
Markus Hofknecht
8a382eaacd [BUG] Fix fast renames causes duplicated item (#497), version 1.3.2.7 2023-08-25 11:55:55 +02:00
Peter Kirmeier
0f1f1748a4 Let the framework calculate text width of list entries
This will improve performance as less objects will be rendered for calculation.
Will also fix "flickering" of sub menu at wrong (not yet calculate) window position.
2023-08-21 20:05:31 +02:00
Peter Kirmeier
61c2cd0dea Work around a potential race condition of FadeIn events
Issue could happen when sub menu switches from loading to full sub menu and previous FadeIn event overwrites opacity after Opacity was already set to final value.
2023-08-20 20:29:53 +02:00
Peter Kirmeier
4ac3d1eb3a Fix wrong appearance in menu size and position when switching from loading menu to final sub menu 2023-08-20 14:03:58 +02:00
Peter Kirmeier
e6d41beffc Applied some fixes..
Fix wrong loading status shown (e.g. "0 elements" instead of "loading")
Fix missing loading icon (animated blue circle)
Adjusted alignment of the scroll bar (aligns with the separator right above)
2023-08-18 18:20:21 +02:00
Markus Hofknecht
6def5eb44b adjust comment related GenerateDriveShortcuts 2023-08-17 10:59:13 +02:00
Peter Kirmeier
23ac75ea1c Search input box focus when main menu opens 2023-08-16 19:28:48 +02:00
Peter Kirmeier
8c62122c7e Fix iteration over filtered items 2023-08-13 22:17:16 +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
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
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
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
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
Peter Kirmeier
d8a146e8ed Simplified RowSelectionChanged
Fix issue of overwriting selection during key row selection process
2023-05-11 00:53:02 +02:00
Peter Kirmeier
f73a674400 Change SelectionMode to Single for ListView 2023-05-11 00:14:05 +02:00
Peter Kirmeier
fe2ab9b4ff Improve key selections by reduced usage of Nullables types 2023-05-10 00:55:18 +02:00
Peter Kirmeier
bb198a32db Rework ListViewItemData and RowData members
Improve UI updates due to unnecessary color and selection changes of menus' lists
Fix selection when going back to previous menu via key
2023-05-09 00:19:29 +02:00
Peter Kirmeier
14d0896419 Replaced internal "menus" array with chained instances. 2023-05-08 00:14:23 +02:00
Peter Kirmeier
56476e095d Improve mouse and search item selection 2023-05-05 22:19:00 +02:00
Peter Kirmeier
97185b1989 Adjusted naming and variables for menu selection with keys
Remove obsolete mouse events (non active code)
2023-05-05 20:01:49 +02:00
Peter Kirmeier
189e45099c Fix row selection loss when using keys
Remove some old drag and drop code (feature might be added later again)
Refactored some events to work with Menu s instead of ListView s
2023-05-05 18:52:05 +02:00
Peter Kirmeier
c7066e67f7 Refactored list selection via keys
Reducing code complexity and improve naming and use of nullables
2023-05-05 00:08:39 +02:00
Peter Kirmeier
a7af9f610f Fix and improve menu activation 2023-05-02 22:04:32 +02:00
Peter Kirmeier
c7f4f44250 Replace SharpDX.DirectInput v4.2.0 with HIDDevices v3.0.1
This supports newer .Net version.
Also supports more gamepads like PS5 controller.
2023-05-01 16:24:33 +02:00
Peter Kirmeier
ea8ed05c85 Replaced System.Drawing.Color with System.Windows.Media.SolidColorBrush 2023-04-30 22:42:25 +02:00
Peter Kirmeier
6ffddc7e02 Fix menu activation when opened from notify icon 2023-04-30 00:06:00 +02:00
Peter Kirmeier
55fccd17d5 Initial use of colors for list items and buttons 2023-04-29 22:42:28 +02:00
Peter Kirmeier
aa87100095 Reduce code complexity and refined member variables
Improve null pointer assumptions by relying on nullable value types
2023-04-29 18:57:39 +02:00
Peter Kirmeier
ab9b0ea0b0 Housekeeping, refine IconReader and fix ShellContextMenu 2023-04-28 18:48:39 +02:00
Peter Kirmeier
175c93e511 Simplified use of MainMenu and updating menus' item lists 2023-04-27 23:24:25 +02:00
Peter Kirmeier
b735ad4b46 Simplified MenuData and speedup sub menu closing 2023-04-27 22:19:02 +02:00
Peter Kirmeier
2e1cc20593 Remove RowData dependency from FolderOptions 2023-04-27 21:11:20 +02:00
Peter Kirmeier
46bd18eb7e Removed DgvMouseRow helper class 2023-04-27 20:27:16 +02:00
Peter Kirmeier
3f09f40188 Simplified working with ListViewItems by passing instance instead of index 2023-04-25 00:24:48 +02:00
Peter Kirmeier
6ebfed5f78 Simplified some mouse and open events 2023-04-24 22:38:36 +02:00
Peter Kirmeier
40871c7e96 Fix and improve fading and transparency 2023-04-23 23:53:20 +02:00
Peter Kirmeier
55c01e44b8 Refactor size and position logic
Fix issue that custom location was always detected being out of bounds
2023-04-22 21:04:34 +02:00
Peter Kirmeier
3464e3e4b9 Reduce event dependencies during startup (preloading)
Remove obsolete code
2023-04-20 00:50:29 +02:00