Commit graph

10 commits

Author SHA1 Message Date
Devin Lin
3550caa580 folio: Use smart pointers to manage delegate lifetimes
Currently delegates do not get deleted when removed from models. Due to
the complexity of drag state and other objects, we can't simply delete
the delegate when removed from the model because they might still be
involved in animations or other state at the time of removal. Use smart
pointers to have the delegate objects deleted instead.

QML unfortunately doesn't support QSharedPointer, so we need to expose raw pointers to it.
2025-02-21 18:06:24 +00:00
Micah Stanley
f52bf0bd71 homescreens/folio: Homescreen folder page snapping position bugfix
This fixes an issue where if the device is rotated in a folder, the page would not snap immediately back to the right position, but would instead animate icon position changes.

To achieve this, the following changes were made.
- changes were made to how the folder gird size is calculated to prevent an issue with the grid size changing for a brief period of time during screen rotation, causing problems with snapping to the correct page.
- icons position animations are now done by a animated index value to prevent it from animating when the device rotates
- when the device screen size changes (ex: device rotation), it now snaps to the current folder page, as before it would just stay in between the two pages.
2024-11-09 19:04:24 +00:00
Devin Lin
aa3e42f65a homescreens/folio: Fix favourites bar ghost position when drag out
Fix the scenario where the favourites bar ghost position is not removed
when the user drags the delegate out of the bar area.
2024-11-09 17:12:04 +00:00
Micah Stanley
f5728e1a21 homescreens/folio: Homescreen page snapping position Bugfix
This fixes an issue where if the device is rotated on the 2nd or further page, the page would not snap immediately back to the right position, but would instead animate.
2024-11-07 05:12:47 +00:00
Devin Lin
21ed42ee30 homescreens/folio: Port away from singletons to support multi-display
https://invent.kde.org/plasma/plasma-mobile/-/issues/316
2024-06-22 19:11:04 -04:00
F_Chao Fengchao
60fa46e2dc Fix potential memory issues. 2024-06-11 03:12:49 +00:00
Devin Lin
95d3be0531 homescreens/folio: Prevent items from being added to favourites area if it's full
Fixes https://invent.kde.org/plasma/plasma-mobile/-/issues/323
2024-03-06 20:35:31 +00:00
Devin Lin
a4d0894933 homescreens/folio: Delete empty page at end if last delegate is deleted 2024-03-04 22:24:44 -05:00
Devin Lin
4f48f127a4 homescreens/folio: Add widgets support 2023-11-04 22:18:52 -07:00
Devin Lin
580afdfc9c folio: Rewrite
fix landscape favourites bar drag and drop, and cleanup folder

fix drawer scrolling

add settings
2023-10-22 04:08:28 +00:00