mirror of
https://invent.kde.org/marcoa/shift-shell.git
synced 2026-04-29 15:03:09 +00:00
homescreens/folio: Allow app grid overshoot, and fix app drawer opening state
This commit is contained in:
parent
03adeffb8d
commit
a049f07095
4 changed files with 11 additions and 11 deletions
|
|
@ -18,16 +18,16 @@ As such, all of the positioning and placement of delegates on the screen are top
|
|||
- If an app gets uninstalled, the homescreen UI needs to ensure that delegates are updated
|
||||
- BUG: landscape favourites bar duplication when dragging icon from it sometimes
|
||||
- BUG: can't insert delegates in-between very well in landscape favourites bar
|
||||
- can make the touch area only the icon?
|
||||
- BUG: drag and drop animation when rejected on a different page
|
||||
- IMPROVEMENT: can make the touch area only the icon?
|
||||
|
||||
- FEATURE: add widget import/export
|
||||
- FEATURE: keyboard navigation
|
||||
- FEATURE: touchpad navigation
|
||||
- FEATURE: option to darken wallpaper
|
||||
- FEATURE: option to turn off row/column swap
|
||||
- BUG: drag and drop animation when rejected on a different page
|
||||
|
||||
- FEATURE: animate homescreen config opening
|
||||
|
||||
- RESTORE app drawer overshoot
|
||||
- RESTORE: app drawer overshoot
|
||||
|
||||
- PERFORMANCE: ensure that the widget config overlays are in loaders
|
||||
|
|
|
|||
|
|
@ -1050,7 +1050,7 @@ void HomeScreenState::determineSwipeTypeAfterThreshold(qreal totalDeltaX, qreal
|
|||
break;
|
||||
case ViewState::AppDrawerView:
|
||||
setSwipeState(SwipeState::SwipingAppDrawerGrid);
|
||||
cancelAppDrawerAnimations();
|
||||
// don't call cancelAppDrawerAnimations(), so we don't have it half open
|
||||
case ViewState::FolderView:
|
||||
case ViewState::SettingsView:
|
||||
// no vertical behaviour in folder or settings view
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ MobileShell.GridView {
|
|||
cellWidth: effectiveContentWidth / Math.min(Math.floor(effectiveContentWidth / (Folio.FolioSettings.delegateIconSize + Kirigami.Units.largeSpacing * 3.5)), 8)
|
||||
cellHeight: cellWidth + reservedSpaceForLabel
|
||||
|
||||
boundsBehavior: Flickable.StopAtBounds
|
||||
boundsBehavior: Flickable.DragAndOvershootBounds
|
||||
|
||||
readonly property int columns: Math.floor(effectiveContentWidth / cellWidth)
|
||||
readonly property int rows: Math.ceil(root.count / columns)
|
||||
|
|
@ -90,8 +90,8 @@ MobileShell.GridView {
|
|||
Folio.HomeScreenState.startDelegateAppDrawerDrag(
|
||||
centerX - Folio.HomeScreenState.pageCellWidth / 2,
|
||||
centerY - Folio.HomeScreenState.pageCellHeight / 2,
|
||||
delegate.pressPosition.x,
|
||||
delegate.pressPosition.y,
|
||||
delegate.pressPosition.x * (Folio.HomeScreenState.pageCellWidth / root.cellWidth),
|
||||
delegate.pressPosition.y * (Folio.HomeScreenState.pageCellHeight / root.cellHeight),
|
||||
model.delegate.application.storageId
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -101,11 +101,11 @@ Item {
|
|||
|
||||
interactive: root.interactive &&
|
||||
settings.homeScreenInteractive &&
|
||||
!appDrawer.flickable.moving &&
|
||||
(appDrawer.flickable.atYBeginning || // disable the swipe area when we are swiping in the app drawer, and not in drag-and-drop
|
||||
(appDrawer.flickable.contentY <= 10 || // disable the swipe area when we are swiping in the app drawer, and not in drag-and-drop
|
||||
Folio.HomeScreenState.swipeState === Folio.HomeScreenState.AwaitingDraggingDelegate ||
|
||||
Folio.HomeScreenState.swipeState === Folio.HomeScreenState.DraggingDelegate ||
|
||||
Folio.HomeScreenState.swipeState === Folio.HomeScreenState.SwipingAppDrawerGrid)
|
||||
Folio.HomeScreenState.swipeState === Folio.HomeScreenState.SwipingAppDrawerGrid ||
|
||||
Folio.HomeScreenState.viewState !== Folio.HomeScreenState.AppDrawerView)
|
||||
|
||||
onSwipeStarted: {
|
||||
homeScreenState.swipeStarted();
|
||||
|
|
|
|||
Loading…
Reference in a new issue