Repository navigation
Adaptive Widget Width and UI Polish - #1183
divyanshudhruv wants to merge 12 commits into
Conversation
…dder and persisted priority order setting
…plorer-scoped WinEventHook
…ext visible when controls hide
… shows the default icon
… accent-tinted seekbar
… for all new strings
…t-driven resize and drag-reorder priority list
UI Polish and Settings Improvements
|
I have read and agree to the FluentFlyout CLA You can retrigger this bot by commenting recheck in this Pull Request. Posted by the CLA Assistant Lite bot. |
|
Hi @unchihugo, I've added quite a few features and UI updates in this PR. I hope you like the changes and find them useful for FluentFlyout. I'm a regular FluentFlyout user, so I'm planning to contribute more substantially over time. I've also read through the CLA. I understand there isn't currently a contributor support or revenue-sharing arrangement, but if I continue making substantial contributions and features that actually make sense for the project, attract more users, increase usage, etc., would you be open to discussing some form of support? For example, GitHub Sponsors for ongoing contributions or potentially a revenue-sharing arrangement for larger features used in the paid Store version. I'm planning to keep contributing regardless, but I wanted to bring this up now since I expect to be working on FluentFlyout more going forward, with more better and faster improvements to come. |
…ect gap scaling and update README(s)
unchihugo
left a comment
There was a problem hiding this comment.
Hi @divyanshudhruv, thanks for looking to contribute.
This current PR touches upon a lot of features, and would be hard to get in due to the merge conflicts and difficulty reviewing the amount of changed code. Just to be clear, I manually review all changes, and a 2,600 LOC diff isn't easy to review.
Could you please open separate PRs per issue/feature, starting with the shrinking function? This is easier for me to review and follows open-source contributing guidelines. Furthermore, please leave translations untranslated unless you're a fluent speaker: we crowdsource the translations on Weblate!
PS: it looks like some changes you made like the album art color for the scrollbar breaks our current fix for the scrollbar via unchihugo/wpf-ui, and the gap between the widget and visualizer isn't necessary as it doesn't follow native Windows implementation.
Haha, sure! Would it be okay if I open stacked PRs, or would you prefer that I start with just the shrinking function for now? |
Warning
This PR includes translation updates that add approximately 700 lines across ~29 localization dictionaries. The increased LOC is primarily localization and does not represent additional application logic.
Important
I've also included a compact file-by-file review below covering the changed files, new logic, and supporting changes so the full scope can be reviewed together without splitting the work into multiple smaller PRs.
Summary
DEMO.mp4
Adds adaptive widget width support to the taskbar widget. The widget now adjusts its width based on available space, with smooth resizing, event coalescing, hysteresis, and priority-based layout handling.
Also includes UI, settings, localization, and seekbar improvements that are part of the final implementation.
Motivation
The taskbar widget previously had limited width handling when available space changed. I've been running into this issue for quite a while, and it was honestly pretty irritating to deal with. This improves how the widget responds to different screen and content sizes while keeping resizing smooth and stable.
Closes #1175, #447
Type of Change
What Changed
File-by-file review (click to open 👆)
Adaptive width
Classes/Utils/WidgetLayoutSolver.csNEWControls/TaskbarWidgetControl.xaml.csViewModels/UserSettings.csClasses/NativeMethods.csMeasurement and animation
Windows/TaskbarWindow.xaml.csPages/TaskbarWidgetPage.xamlPages/TaskbarWidgetPage.xaml.csUI improvements
Pages/SystemPage.xamlMainWindow.xamlSupporting changes
gong-wpf-dragdropfor priority ordering.Adaptive Widget Width
UI and Settings
gong-wpf-dragdropdependency.Taskbar and Explorer handling
Additional Information
Preview
Adaptive widget resizing at different available widths
Before

After

Smooth width animation
Verification
Checklist