Warning, /plasma/polkit-kde-agent-1/qml/RejectPasswordPathAnimation.qml is written in an unsupported language. File is not indexed.
0001 /* 0002 SPDX-FileCopyrightText: 2022 ivan (@ratijas) tkachenko <me@ratijas.tk> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 import QtQuick 2.15 0007 import QtQml 2.15 0008 0009 import org.kde.kirigami 2.20 as Kirigami 0010 0011 PathAnimation { 0012 id: root 0013 0014 /** The magnitude/distance/offset of the animation, in the usual device-independent pixels. */ 0015 property real swing: 15 0016 0017 /** 0018 * In which direction the target starts moving first. 0019 * Must be either Qt.LeftToRight or Qt.RightToLeft. 0020 * 0021 * By default it is opposite to the application's layout direction, to 0022 * make an animation feel more "disturbing". 0023 */ 0024 property int initialDirection: Qt.application.layoutDirection === Qt.RightToLeft ? Qt.LeftToRight : Qt.RightToLeft 0025 0026 alwaysRunToEnd: true 0027 0028 // This animation's speed does not depend on user preferences, except when 0029 // we honor the "reduced animations" special case. 0030 // Animators with a duration of 0 do not fire reliably, which is why duration is at least 1. 0031 // see Bug 357532 and QTBUG-39766 0032 duration: Kirigami.Units.longDuration <= 1 ? 1 : 600 0033 easing.type: Easing.OutCubic 0034 0035 path: Path { 0036 PathPolyline { 0037 path: { 0038 const directionFactor = root.initialDirection === Qt.RightToLeft ? -1 : 1; 0039 const extreme = root.swing * directionFactor; 0040 const here = Qt.point(extreme, 0); 0041 const there = Qt.point(-extreme, 0); 0042 return [ 0043 Qt.point(0, 0), 0044 here, there, 0045 here, there, 0046 here, there, 0047 Qt.point(0, 0), 0048 ]; 0049 } 0050 } 0051 } 0052 } 0053