mirror of
https://invent.kde.org/marcoa/shift-shell.git
synced 2026-04-29 15:03:09 +00:00
new close anim
This commit is contained in:
parent
a1b7ef5d36
commit
8f39bd3828
2 changed files with 40 additions and 7 deletions
|
|
@ -132,8 +132,8 @@ Item {
|
|||
}
|
||||
onPressed: delegate.z = 10;
|
||||
onClicked: {
|
||||
window.hide();
|
||||
window.setSingleActiveWindow(model.index);
|
||||
//window.hide();
|
||||
window.setSingleActiveWindow(model.index, delegate);
|
||||
}
|
||||
onReleased: {
|
||||
delegate.z = 0;
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ NanoShell.FullScreenOverlay {
|
|||
scrollAnim.restart();
|
||||
}
|
||||
|
||||
function setSingleActiveWindow(id) {
|
||||
function setSingleActiveWindow(id, delegate) {
|
||||
if (id < 0) {
|
||||
return;
|
||||
}
|
||||
|
|
@ -90,6 +90,8 @@ NanoShell.FullScreenOverlay {
|
|||
tasksModel.requestToggleMinimized(idx);
|
||||
}
|
||||
}
|
||||
activateAnim.delegate = delegate;
|
||||
activateAnim.restart();
|
||||
}
|
||||
|
||||
onOffsetChanged: tasksView.contentY = offset + grid.y
|
||||
|
|
@ -116,10 +118,41 @@ NanoShell.FullScreenOverlay {
|
|||
}
|
||||
ScriptAction {
|
||||
script: {
|
||||
if (tasksView.contentY <= 0 || tasksView.contentY >= tasksView.contentHeight - window.height) {
|
||||
window.visible = false;
|
||||
setSingleActiveWindow(currentTaskIndex);
|
||||
}
|
||||
window.visible = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
SequentialAnimation {
|
||||
id: activateAnim
|
||||
property Item delegate
|
||||
ScriptAction {
|
||||
script: {
|
||||
activateAnim.delegate.z = 2;
|
||||
}
|
||||
}
|
||||
ParallelAnimation {
|
||||
OpacityAnimator {
|
||||
target: window.contentItem
|
||||
from: 1
|
||||
to: 0
|
||||
duration: units.longDuration
|
||||
easing.type: Easing.InOutQuad
|
||||
}
|
||||
ScaleAnimator {
|
||||
target: activateAnim.delegate
|
||||
from: 1
|
||||
to: 2
|
||||
duration: units.longDuration
|
||||
easing.type: Easing.InOutQuad
|
||||
}
|
||||
}
|
||||
ScriptAction {
|
||||
script: {
|
||||
window.visible = false;
|
||||
activateAnim.delegate.z = 0;
|
||||
activateAnim.delegate.scale = 1;
|
||||
window.contentItem.opacity = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue