subsurface/scripts/kirigami.diff

346 lines
16 KiB
Diff
Raw Normal View History

diff -rwu ../kirigami/src/controls/GlobalDrawer.qml ./src/controls/GlobalDrawer.qml
--- ../kirigami/src/controls/GlobalDrawer.qml 2019-10-10 17:13:41.384333413 -0700
+++ ./src/controls/GlobalDrawer.qml 2019-10-11 19:44:58.988220651 -0700
@@ -215,6 +215,20 @@
readonly property Action currentSubMenu: stackView.currentItem ? stackView.currentItem.current: null
/**
+ * scrollViewItem: ScrollView
+ *
+ * Points to the internal ScrollView so the caller can implement the Back button
+ */
+ readonly property Item scrollViewItem: scrollView
+
+ /**
+ * pop: function
+ *
+ * Point to the pop function of the stackView inside the scrollView in order to be able to implement the Back button in the caller
+ */
+ function pop() { scrollView.pop }
+
+ /**
* Notifies that the banner has been clicked
*/
signal bannerClicked()
@@ -238,6 +252,7 @@
anchors.fill: parent
implicitWidth: Math.min (Units.gridUnit * 20, root.parent.width * 0.8)
horizontalScrollBarPolicy: Qt.ScrollBarAlwaysOff
+ function pop() { stackView.pop() }
Flickable {
id: mainFlickable
@@ -331,17 +346,13 @@
ColumnLayout {
id: topContent
spacing: 0
- Layout.alignment: Qt.AlignHCenter
- Layout.leftMargin: root.leftPadding
- Layout.rightMargin: root.rightPadding
Layout.bottomMargin: Units.smallSpacing
- Layout.topMargin: root.topPadding
Layout.fillWidth: true
Layout.fillHeight: true
Layout.preferredHeight: implicitHeight * opacity
//NOTE: why this? just Layout.fillWidth: true doesn't seem sufficient
//as items are added only after this column creation
- Layout.minimumWidth: parent.width - root.leftPadding - root.rightPadding
+ Layout.minimumWidth: parent.width
visible: children.length > 0 && childrenRect.height > 0 && opacity > 0
opacity: !root.collapsed || showTopContentWhenCollapsed
Behavior on opacity {
@@ -435,7 +446,7 @@
easing.type: Easing.InOutQuad
}
}
-
+/*
BasicListItem {
id: backItem
visible: level > 0
@@ -454,7 +465,7 @@
sequence: backItem.MnemonicData.sequence
onActivated: backItem.clicked()
}
-
+*/
Repeater {
id: actionsRepeater
model: root.actions
diff -rwu ../kirigami/src/controls/private/GlobalDrawerActionItem.qml ./src/controls/private/GlobalDrawerActionItem.qml
--- ../kirigami/src/controls/private/GlobalDrawerActionItem.qml 2019-10-10 17:13:41.387666766 -0700
+++ ./src/controls/private/GlobalDrawerActionItem.qml 2019-10-11 19:44:58.988220651 -0700
@@ -94,7 +94,7 @@
Layout.preferredHeight: !root.collapsed ? Units.iconSizes.smallMedium : Units.iconSizes.small/2
selected: listItem.checked || listItem.pressed
Layout.preferredWidth: Layout.preferredHeight
- source: (LayoutMirroring.enabled ? "go-next-symbolic-rtl" : "go-next-symbolic")
+ source: (LayoutMirroring.enabled ? ":/go-next-symbolic-rtl" : ":/go-next-symbolic")
visible: (!isExpandible || root.collapsed) && !listItem.isSeparator && modelData.hasOwnProperty("children") && modelData.children!==undefined && modelData.children.length > 0
}
data: [
diff -rwu ../kirigami/src/controls/private/globaltoolbar/BreadcrumbControl.qml ./src/controls/private/globaltoolbar/BreadcrumbControl.qml
--- ../kirigami/src/controls/private/globaltoolbar/BreadcrumbControl.qml 2019-10-10 17:13:41.391000120 -0700
+++ ./src/controls/private/globaltoolbar/BreadcrumbControl.qml 2019-10-11 22:59:45.248031517 -0700
@@ -82,7 +81,7 @@
Kirigami.Heading {
Layout.leftMargin: Kirigami.Units.largeSpacing
font.pointSize: -1
- font.pixelSize: Math.max(1, mainLayout.height * 0.6)
+ font.pixelSize: Math.max(1, Kirigami.Units.defaultFontSize)
color: Kirigami.Theme.textColor
verticalAlignment: Text.AlignVCenter
wrapMode: Text.NoWrap
diff -rwu ../kirigami/src/controls/private/globaltoolbar/PageRowGlobalToolBarUI.qml ./src/controls/private/globaltoolbar/PageRowGlobalToolBarUI.qml
--- ../kirigami/src/controls/private/globaltoolbar/PageRowGlobalToolBarUI.qml 2019-10-10 17:13:41.391000120 -0700
+++ ./src/controls/private/globaltoolbar/PageRowGlobalToolBarUI.qml 2019-10-12 10:36:39.396460010 -0700
@@ -36,15 +36,23 @@
readonly property Item currentItem: layerIsMainRow ? root.currentItem : root.layers.currentItem
height: visible ? implicitHeight : 0
+
minimumHeight: globalToolBar.minimumHeight
preferredHeight: globalToolBar.preferredHeight
maximumHeight: globalToolBar.maximumHeight
separatorVisible: globalToolBar.separatorVisible
+ background: Rectangle { color: subsurfaceTheme.primaryColor }
RowLayout {
anchors.fill: parent
spacing: 0
-
+ // I can't make the layout work without this invisible rectangle to anchor things on
+ Rectangle {
+ id: correct
+ height: parent.height
+ width: 0
+ color: "transparent"
+ }
Item {
id: leftHandleAnchor
visible: (typeof applicationWindow() !== "undefined" && applicationWindow().globalDrawer && applicationWindow().globalDrawer.enabled && applicationWindow().globalDrawer.handleVisible &&
@@ -60,20 +68,21 @@
RowLayout {
id: buttonsLayout
Layout.fillHeight: true
-
Layout.leftMargin: leftHandleAnchor.visible ? Kirigami.Units.smallSpacing : 0
-
+ Layout.alignment: Qt.AlignTop | Qt.AlignVCenter
visible: (globalToolBar.showNavigationButtons != Kirigami.ApplicationHeaderStyle.NoNavigationButtons || root.layers.depth > 1) && (globalToolBar.actualStyle != Kirigami.ApplicationHeaderStyle.None)
Layout.maximumWidth: visibleChildren.length > 0 ? implicitWidth : 0
-
TemplatesPrivate.BackButton {
id: backButton
Layout.leftMargin: leftHandleAnchor.visible ? 0 : Kirigami.Units.smallSpacing
Layout.preferredWidth: height
+ Layout.topMargin: 0
+ Layout.maximumHeight: correct.height
}
TemplatesPrivate.ForwardButton {
Layout.preferredWidth: height
+ Layout.maximumHeight: correct.height
}
}
@@ -110,6 +119,6 @@
Layout.preferredWidth: height
}
}
- background.opacity: breadcrumbLoader.opacity
+ //background.opacity: breadcrumbLoader.opacity
}
diff -rwu ../kirigami/src/controls/templates/private/BackButton.qml ./src/controls/templates/private/BackButton.qml
--- ../kirigami/src/controls/templates/private/BackButton.qml 2019-10-10 17:13:41.391000120 -0700
+++ ./src/controls/templates/private/BackButton.qml 2019-10-12 10:32:00.517728443 -0700
@@ -27,6 +27,7 @@
id: button
icon.name: (LayoutMirroring.enabled ? "go-previous-symbolic-rtl" : "go-previous-symbolic")
+ icon.source: (LayoutMirroring.enabled ? "go-previous-symbolic-rtl" : "go-previous-symbolic")
enabled: applicationWindow().pageStack.layers.depth > 1 || (applicationWindow().pageStack.depth > 1 && (applicationWindow().pageStack.currentIndex > 0 || applicationWindow().pageStack.contentItem.contentX > 0))
diff -rwu ../kirigami/src/controls/templates/private/ForwardButton.qml ./src/controls/templates/private/ForwardButton.qml
--- ../kirigami/src/controls/templates/private/ForwardButton.qml 2019-10-10 17:13:41.391000120 -0700
+++ ./src/controls/templates/private/ForwardButton.qml 2019-10-11 19:44:58.988220651 -0700
@@ -27,6 +27,7 @@
id: button
icon.name: (LayoutMirroring.enabled ? "go-next-symbolic-rtl" : "go-next-symbolic")
+ icon.source: (LayoutMirroring.enabled ? "go-next-symbolic-rtl" : "go-next-symbolic")
enabled: applicationWindow().pageStack.currentIndex < applicationWindow().pageStack.depth-1
diff -rwu ../kirigami/src/controls/Units.qml ./src/controls/Units.qml
--- ../kirigami/src/controls/Units.qml 2019-10-10 17:13:41.387666766 -0700
+++ ./src/controls/Units.qml 2019-10-11 20:48:07.216139938 -0700
@@ -113,6 +113,11 @@
readonly property int wheelScrollLines: 3
/**
+ * Use this to hardcode the font size of the global toolbar that Kirigami gets wrong
+ */
+ property double defaultFontSize: fontMetrics.font.pixelSize
+
+ /**
* metrics used by the default font
*/
property variant fontMetrics: TextMetrics {
diff -rwu ../kirigami/src/kirigamiplugin.cpp ./src/kirigamiplugin.cpp
--- ../kirigami/src/kirigamiplugin.cpp 2019-10-10 17:13:41.391000120 -0700
+++ ./src/kirigamiplugin.cpp 2019-10-11 19:44:58.991554017 -0700
@@ -41,7 +41,7 @@
//Q_INIT_RESOURCE(kirigami);
#ifdef KIRIGAMI_BUILD_TYPE_STATIC
-#include <qrc_kirigami.cpp>
+//#include <qrc_kirigami.cpp>
#endif
QUrl KirigamiPlugin::componentUrl(const QString &fileName) const
diff -rwu ../kirigami/src/controls/private/ActionButton.qml ./src/controls/private/ActionButton.qml
--- ../kirigami/src/controls/private/ActionButton.qml 2019-10-11 14:00:51.783839545 -0400
+++ ./src/controls/private/ActionButton.qml 2019-10-27 17:12:04.339302719 -0400
@@ -70,12 +70,12 @@
anchors.bottom: edgeMouseArea.bottom
- implicitWidth: implicitHeight + Units.iconSizes.smallMedium*2 + Units.gridUnit
+ implicitWidth: implicitHeight + Units.iconSizes.smallMedium*4 + Units.gridUnit
implicitHeight: Units.iconSizes.medium + Units.largeSpacing * 2
onXChanged: {
- if (mouseArea.pressed || edgeMouseArea.pressed || fakeContextMenuButton.pressed) {
+ if (0 && (mouseArea.pressed || edgeMouseArea.pressed || fakeContextMenuButton.pressed)) {
if (root.hasGlobalDrawer && globalDrawer.enabled && globalDrawer.modal) {
globalDrawer.peeking = true;
globalDrawer.visible = true;
@@ -97,13 +97,13 @@
property bool internalVisibility: (!root.hasApplicationWindow || (applicationWindow().controlsVisible && applicationWindow().height > root.height*2)) && (root.action === null || root.action.visible === undefined || root.action.visible)
preventStealing: true
- drag {
- target: button
- //filterChildren: true
- axis: Drag.XAxis
- minimumX: root.hasContextDrawer && contextDrawer.enabled && contextDrawer.modal ? 0 : root.width/2 - button.width/2
- maximumX: root.hasGlobalDrawer && globalDrawer.enabled && globalDrawer.modal ? root.width : root.width/2 - button.width/2
- }
+// drag {
+// target: button
+// //filterChildren: true
+// axis: Drag.XAxis
+// minimumX: root.hasContextDrawer && contextDrawer.enabled && contextDrawer.modal ? 0 : root.width/2 - button.width/2
+// maximumX: root.hasGlobalDrawer && globalDrawer.enabled && globalDrawer.modal ? root.width : root.width/2 - button.width/2
+// }
property var downTimestamp;
property int startX
@@ -147,24 +147,24 @@
drawerShowAdjust = 0;
//project where it would be a full second in the future
- if (root.hasContextDrawer && root.hasGlobalDrawer && globalDrawer.modal && x + speed > Math.min(root.width/4*3, root.width/2 + globalDrawer.contentItem.width/2)) {
- globalDrawer.open();
- contextDrawer.close();
- } else if (root.hasContextDrawer && x + speed < Math.max(root.width/4, root.width/2 - contextDrawer.contentItem.width/2)) {
- if (root.hasContextDrawer && contextDrawer.modal) {
- contextDrawer.open();
- }
- if (root.hasGlobalDrawer && globalDrawer.modal) {
- globalDrawer.close();
- }
- } else {
- if (root.hasGlobalDrawer && globalDrawer.modal) {
- globalDrawer.close();
- }
- if (root.hasContextDrawer && contextDrawer.modal) {
- contextDrawer.close();
- }
- }
+// if (root.hasContextDrawer && root.hasGlobalDrawer && globalDrawer.modal && x + speed > Math.min(root.width/4*3, root.width/2 + globalDrawer.contentItem.width/2)) {
+// globalDrawer.open();
+// contextDrawer.close();
+// } else if (root.hasContextDrawer && x + speed < Math.max(root.width/4, root.width/2 - contextDrawer.contentItem.width/2)) {
+// if (root.hasContextDrawer && contextDrawer.modal) {
+// contextDrawer.open();
+// }
+// if (root.hasGlobalDrawer && globalDrawer.modal) {
+// globalDrawer.close();
+// }
+// } else {
+// if (root.hasGlobalDrawer && globalDrawer.modal) {
+// globalDrawer.close();
+// }
+// if (root.hasContextDrawer && contextDrawer.modal) {
+// contextDrawer.close();
+// }
+// }
//Don't rely on native onClicked, but fake it here:
//Qt.startDragDistance is not adapted to devices dpi in case
//of Android, so consider the button "clicked" when:
@@ -201,10 +201,10 @@
}
}
- onPositionChanged: {
- drawerShowAdjust = Math.min(0.3, Math.max(0, (startMouseY - mouse.y)/(Units.gridUnit*15)));
- button.xChanged();
- }
+// onPositionChanged: {
+// drawerShowAdjust = Math.min(0.3, Math.max(0, (startMouseY - mouse.y)/(Units.gridUnit*15)));
+// button.xChanged();
+// }
onPressAndHold: {
if (!actionUnderMouse) {
return;
@@ -291,7 +291,7 @@
bottomMargin: Units.smallSpacing
}
enabled: root.leftAction && root.leftAction.enabled
- radius: Units.devicePixelRatio*2
+ radius: Units.devicePixelRatio*4
height: Units.iconSizes.smallMedium + Units.smallSpacing * 2
width: height + (root.action ? Units.gridUnit*2 : 0)
visible: root.leftAction
@@ -326,6 +326,17 @@
margins: Units.smallSpacing * 2
}
}
+ Rectangle {
+ anchors.left: parent.left
+ anchors.leftMargin: Units.smallSpacing
+ anchors.verticalCenter: parent.verticalCenter
+ width: Units.iconSizes.smallMedium + Units.smallSpacing * 2
+ height: width
+ radius: width / 2
+ color: "transparent"
+ border.color: Qt.lighter(buttonGraphics.baseColor, 1.1)
+ border.width: 0.5
+ }
}
//right button
Rectangle {
@@ -372,6 +383,17 @@
margins: Units.smallSpacing * 2
}
}
+ Rectangle {
+ anchors.right: parent.right
+ anchors.rightMargin: Units.smallSpacing
+ anchors.verticalCenter: parent.verticalCenter
+ width: Units.iconSizes.smallMedium + Units.smallSpacing * 2
+ height: width
+ radius: width / 2
+ color: "transparent"
+ border.color: Qt.lighter(buttonGraphics.baseColor, 1.1)
+ border.width: 0.5
+ }
}
}