clipping rounding for scrollables

This commit is contained in:
end-4
2025-04-20 12:32:04 +02:00
parent bc6d963800
commit 138854dcbc
4 changed files with 39 additions and 4 deletions
@@ -425,7 +425,15 @@ Item {
implicitHeight: expanded ? actionRowLayout.implicitHeight : 0 implicitHeight: expanded ? actionRowLayout.implicitHeight : 0
height: expanded ? actionRowLayout.implicitHeight : 0 height: expanded ? actionRowLayout.implicitHeight : 0
contentWidth: actionRowLayout.implicitWidth contentWidth: actionRowLayout.implicitWidth
clip: true
layer.enabled: true
layer.effect: OpacityMask {
maskSource: Rectangle {
width: actionsFlickable.width
height: actionsFlickable.height
radius: Appearance.rounding.small
}
}
opacity: expanded ? 1 : 0 opacity: expanded ? 1 : 0
visible: opacity > 0 visible: opacity > 0
@@ -4,6 +4,7 @@ import "root:/services"
import "./calendar" import "./calendar"
import "./todo" import "./todo"
import "./notifications" import "./notifications"
import Qt5Compat.GraphicalEffects
import QtQuick import QtQuick
import QtQuick.Controls import QtQuick.Controls
import QtQuick.Layouts import QtQuick.Layouts
@@ -111,10 +112,18 @@ Rectangle {
Layout.topMargin: 10 Layout.topMargin: 10
Layout.fillWidth: true Layout.fillWidth: true
Layout.fillHeight: true Layout.fillHeight: true
clip: true
currentIndex: currentTab currentIndex: currentTab
onCurrentIndexChanged: currentTab = currentIndex onCurrentIndexChanged: currentTab = currentIndex
layer.enabled: true
layer.effect: OpacityMask {
maskSource: Rectangle {
width: swipeView.width
height: swipeView.height
radius: Appearance.rounding.normal
}
}
NotificationList {} NotificationList {}
Item{} Item{}
} }
@@ -1,6 +1,7 @@
import "root:/modules/common" import "root:/modules/common"
import "root:/modules/common/widgets" import "root:/modules/common/widgets"
import "root:/services" import "root:/services"
import Qt5Compat.GraphicalEffects
import QtQuick import QtQuick
import QtQuick.Controls import QtQuick.Controls
import QtQuick.Layouts import QtQuick.Layouts
@@ -58,7 +59,15 @@ Item {
anchors.top: parent.top anchors.top: parent.top
anchors.bottom: statusRow.top anchors.bottom: statusRow.top
contentHeight: columnLayout.height contentHeight: columnLayout.height
clip: true
layer.enabled: true
layer.effect: OpacityMask {
maskSource: Rectangle {
width: flickable.width
height: flickable.height
radius: Appearance.rounding.normal
}
}
ColumnLayout { // Scrollable window content ColumnLayout { // Scrollable window content
id: columnLayout id: columnLayout
@@ -1,6 +1,7 @@
import "root:/modules/common" import "root:/modules/common"
import "root:/modules/common/widgets" import "root:/modules/common/widgets"
import "root:/services" import "root:/services"
import Qt5Compat.GraphicalEffects
import QtQuick import QtQuick
import QtQuick.Controls import QtQuick.Controls
import QtQuick.Layouts import QtQuick.Layouts
@@ -19,7 +20,15 @@ Item {
id: flickable id: flickable
anchors.fill: parent anchors.fill: parent
contentHeight: columnLayout.height contentHeight: columnLayout.height
clip: true
layer.enabled: true
layer.effect: OpacityMask {
maskSource: Rectangle {
width: flickable.width
height: flickable.height
radius: Appearance.rounding.small
}
}
ColumnLayout { ColumnLayout {
id: columnLayout id: columnLayout