1
0
mirror of https://github.com/KDE/latte-dock.git synced 2025-03-21 10:50:30 +03:00

fix #470,crash the tasksmodel of maximized logic

--fixes in various typos introduced from the new
designs
This commit is contained in:
Michail Vourlakos 2017-05-18 20:43:46 +03:00
parent 49d20f4617
commit 77f542a9f3
5 changed files with 35 additions and 33 deletions

View File

@ -50,12 +50,12 @@ Item{
if (dock.visibility.isHidden && root.isVertical) {
if (Latte.WindowSystem.compositingActive) {
return slidingOutToPos;
return visibilityManager.slidingOutToPos;
} else {
if ((plasmoid.location===PlasmaCore.Types.LeftEdge)||(plasmoid.location===PlasmaCore.Types.TopEdge)) {
return slidingOutToPos + 1;
return visibilityManager.slidingOutToPos + 1;
} else {
return slidingOutToPos - 1;
return visibilityManager.slidingOutToPos - 1;
}
}
} else {
@ -75,12 +75,12 @@ Item{
if (dock.visibility.isHidden && root.isHorizontal) {
if (Latte.WindowSystem.compositingActive) {
return slidingOutToPos;
return visibilityManager.slidingOutToPos;
} else {
if ((plasmoid.location===PlasmaCore.Types.LeftEdge)||(plasmoid.location===PlasmaCore.Types.TopEdge)) {
return slidingOutToPos + 1;
return visibilityManager.slidingOutToPos + 1;
} else {
return slidingOutToPos - 1;
return visibilityManager.slidingOutToPos - 1;
}
}
} else {

View File

@ -29,10 +29,9 @@ import org.kde.taskmanager 0.1 as TaskManager
Item{
id: winModel
property bool maximizedWindowOnScreen: maximizedWindowModel.count > 0
property bool maximizedWindowOnScreen: false
//--- active-window-control start
Component.onCompleted: maximizedWindowModel.doCheck()
TaskManager.VirtualDesktopInfo { id: virtualDesktopInfo }
TaskManager.ActivityInfo { id: activityInfo }
TaskManager.TasksModel {
@ -49,34 +48,35 @@ Item{
filterByScreen: true
filterByActivity: true
onActiveTaskChanged: {
maximizedWindowModel.sourceModel = tasksModel
}
onDataChanged: { maximizedWindowModel.doCheck(); }
onCountChanged: { maximizedWindowModel.doCheck(); }
onDataChanged: winModel.reconsiderMaximized();
onCountChanged: winModel.reconsiderMaximized();
Component.onCompleted: winModel.reconsiderMaximized();
}
PlasmaCore.SortFilterModel {
id: maximizedWindowModel
filterRole: 'IsMaximized'
filterRegExp: 'true'
sourceModel: tasksModel
Repeater{
id: windowsRepeater
model:tasksModel
onDataChanged: { maximizedWindowModel.doCheck(); }
onCountChanged: { maximizedWindowModel.doCheck(); }
function doCheck() {
var screenHasMaximized = false
for (var i = 0; i < maximizedWindowModel.count; i++) {
var task = maximizedWindowModel.get(i)
if (task.IsMaximized && !task.IsMinimized) {
screenHasMaximized = true
break
}
}
if (winModel.maximizedWindowOnScreen != screenHasMaximized) {
winModel.maximizedWindowOnScreen = screenHasMaximized
delegate: Item{
readonly property bool isMaximized: IsMaximized === true ? true : false
readonly property bool isMinimized: IsMinimized === true ? true : false
}
Component.onCompleted: winModel.reconsiderMaximized();
}
function reconsiderMaximized() {
var hasMaximized = false;
for(var i=0; i<windowsRepeater.count; ++i){
var kid = windowsRepeater.itemAt(i);
if (kid && kid.isMaximized && !kid.isMinimized){
hasMaximized = true;
break;
}
}
maximizedWindowOnScreen = hasMaximized;
}
//--- active-window-control end
}

View File

@ -28,7 +28,7 @@ SequentialAnimation{
property bool pressed: mainItemContainer.pressed
property int speed: root.durationTime*units.longDuration
property real maxMScale: Math.max(1,Math.root.zoomFactor - (root.zoomFactor - 1) / 2)
property real maxMScale: Math.max(1,root.zoomFactor - (root.zoomFactor - 1) / 2)
ParallelAnimation{
PropertyAnimation {

View File

@ -22,6 +22,7 @@ import QtQuick 2.0
import org.kde.plasma.plasmoid 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
////////////////// new window and needs attention animation
SequentialAnimation{

View File

@ -22,6 +22,7 @@ import QtQuick 2.0
import QtGraphicalEffects 1.0
import org.kde.plasma.plasmoid 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.latte 0.1 as Latte