// Copyright © SixtyFPS GmbH // SPDX-License-Identifier: MIT import { Palette } from "../../common.slint"; export component InnerShadowRectangle inherits Rectangle { in property inner-shadow-blur: 7px; in property inner-color: Palette.background; in property inner-shadow-color: Palette.shadow-color; in property nine-slice: true; clip: true; if nine-slice: Rectangle { clip: true; width: 100%; height: 100%; background: inner-color; animate background, border-color, drop-shadow-blur, drop-shadow-color { duration: 0; easing: ease-in-out-sine; } Image { source: @image-url("../../images/inner-shadow-box-soft.png", nine-slice(60)); colorize: inner-shadow-color; opacity: 0.6; width: 100%; height: 100%; } } if !nine-slice: Rectangle { height: root.height; width: root.width; clip: true; border-color: Palette.alternate-background; background: inner-shadow-color; Rectangle { border-radius: parent.border-radius; background: transparent; drop-shadow-blur: inner-shadow-blur + 0.01px; drop-shadow-color: inner-color; width: parent.width - (inner-shadow-blur + 0.01px) * 2; height: parent.height - (inner-shadow-blur + 0.01px) * 2; } } }