fix(frame): add widget end inset for edge widgets when Frame is enabled#2600
fix(frame): add widget end inset for edge widgets when Frame is enabled#2600ultherego wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
Thanks for putting this together.
Couple things here, I think starting at 0 should be nearly edge to edge as some people will want the overlap. Then you can set a default wherever it lines up to the frame corners as it is now.
It breaks entirely when adding a 2nd or 3rd bar and becomes unresponsive. Removing the bars doesn't reload it and it stays unresponsive until dms restart. These are some of the items I was telling you were tricky that takes a bit more implementation to get correct.
Also the click targets are pretty far off on each end. Some may prefer it, but the defaults should work on the launcher button for example.
I am also in a refactor of the entire frame currently, but this would be a good addition once everything is worked out.
|
Thanks for taking a look. In that case, it makes sense to wait for the Frame refactor — this commit can serve as a reference for the future implementation, as you mentioned. I'll close this PR for now and revisit once the refactor is done. |
|
Closing this out as I implemented in another direction via: ad32af6 - Though to note, sometimes framemode can still set incorrectly on the live switch from Standalone to Framemode, I could not fully nail it down. But now we have dedicated setting options in every mode to mitigate. Thanks for the assist! |
Description
When Frame is enabled, edge widgets on both ends of the bar had no inset from the frame corners — _frameLeftInset/_frameRightInset (horizontal bar) and _frameTopInset/_frameBottomInset (vertical bar) fell back to 0 when no adjacent bar was present, causing widgets to sit flush against the frame.
Fixed by introducing _frameEndInset = frameThickness + frameBarEndInset as the fallback value. Also added a Widget End Inset slider in Settings → Frame → Border (default 0, range 0–20px) so users can add extra padding on top of frameThickness.
Type of change
Related issues
Fixes #2597
Screenshots / video
Checklist
I18n.tr()with translator context, reusing existing terms where possiblemake fmt, added/updated tests,make testpasses, andgo mod tidyis cleanmake lint-qmlwith no new warnings