mirror of
https://github.com/end-4/dots-hyprland.git
synced 2026-06-05 14:59:27 -05:00
Merge branch 'main' into hefty-hype
This commit is contained in:
@@ -39,8 +39,8 @@ _exec() {
|
||||
_check_distro_id() {
|
||||
OS_RELEASE_FILE=/etc/os-release
|
||||
if [[ -f "$OS_RELEASE_FILE" ]]; then
|
||||
OS_DISTRO_ID=$(awk -F'=' '/^ID=/ { gsub("\"","",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
|
||||
OS_DISTRO_ID_LIKE=$(awk -F'=' '/^ID_LIKE=/ { gsub("\"","",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
|
||||
OS_DISTRO_ID=$(awk -F'=' '/^ID=/ { gsub(/["\x27]/,"",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
|
||||
OS_DISTRO_ID_LIKE=$(awk -F'=' '/^ID_LIKE=/ { gsub(/["\x27]/,"",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
|
||||
echo "distro ID: $OS_DISTRO_ID"
|
||||
echo "distro ID_LIKE: $OS_DISTRO_ID_LIKE"
|
||||
else
|
||||
|
||||
@@ -173,54 +173,68 @@ splitbutton menubutton {
|
||||
border-radius: 999px;
|
||||
}
|
||||
|
||||
#NautilusPathBar #NautilusPathButton * {
|
||||
color: @accent_color;
|
||||
font-weight: 400;
|
||||
#NautilusPathBar #NautilusPathButton *,
|
||||
.nautilus-pathbar .nautilus-path-button * {
|
||||
color: @sidebar_row_active_fg_color;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
#NautilusPathBar #NautilusPathButton {
|
||||
background: @accent_active_color;
|
||||
border-radius: 4px;
|
||||
margin: 0;
|
||||
margin-right: 2px;
|
||||
#NautilusPathBar #NautilusPathButton,
|
||||
.nautilus-pathbar .nautilus-path-button {
|
||||
background: @accent_active_color;
|
||||
border-radius: 4px;
|
||||
margin: 0;
|
||||
margin-right: 2px;
|
||||
}
|
||||
|
||||
#NautilusPathBar {
|
||||
background: transparent;
|
||||
#NautilusPathBar #NautilusPathButton:hover,
|
||||
.nautilus-pathbar .nautilus-path-button:hover {
|
||||
background: @accent_vibrant_hover_color;
|
||||
}
|
||||
|
||||
#NautilusPathBar box box:first-child #NautilusPathButton {
|
||||
border-radius: 24px 4px 4px 24px;
|
||||
#NautilusPathBar #NautilusPathButton:active,
|
||||
.nautilus-pathbar .nautilus-path-button:active {
|
||||
background: @accent_vibrant_active_color;
|
||||
}
|
||||
|
||||
#NautilusPathBar box box:last-child #NautilusPathButton {
|
||||
border-radius: 4px 24px 24px 4px;
|
||||
#NautilusPathButton,
|
||||
.nautilus-pathbar {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
#NautilusPathBar #NautilusPathButton.current-dir.current-dir {
|
||||
border-radius: 999px;
|
||||
#NautilusPathBar box box:first-child #NautilusPathButton,
|
||||
.nautilus-pathbar box box:first-child .nautilus-path-button {
|
||||
border-radius: 24px 4px 4px 24px;
|
||||
}
|
||||
|
||||
#NautilusPathBar #NautilusPathButton * {
|
||||
color: @sidebar_row_active_fg_color;
|
||||
#NautilusPathBar box box:last-child #NautilusPathButton,
|
||||
.nautilus-pathbar box box:last-child .nautilus-path-button {
|
||||
border-radius: 4px 24px 24px 4px;
|
||||
}
|
||||
|
||||
#NautilusPathBar .dim-label {
|
||||
font-size: 0;
|
||||
#NautilusPathBar #NautilusPathButton.current-dir.current-dir,
|
||||
.nautilus-pathbar .nautilus-path-button.current-dir.current-dir {
|
||||
border-radius: 999px;
|
||||
}
|
||||
|
||||
#NautilusPathBar button .dim-label {
|
||||
font-size: 14px;
|
||||
opacity: 100%;
|
||||
#NautilusPathBar .dim-label,
|
||||
.nautilus-pathbar .dim-label {
|
||||
font-size: 0;
|
||||
}
|
||||
|
||||
#NautilusPathBar button {
|
||||
border-radius: 8px;
|
||||
#NautilusPathBar button .dim-label,
|
||||
.nautilus-pathbar button .dim-label {
|
||||
font-size: 14px;
|
||||
opacity: 100%;
|
||||
}
|
||||
|
||||
|
||||
#NautilusPathBar button:checked {
|
||||
background: @accent_vibrant_hover_color;
|
||||
#NautilusPathBar button,
|
||||
.nautilus-pathbar button {
|
||||
border-radius: 8px;
|
||||
}
|
||||
#NautilusPathBar button:checked,
|
||||
.nautilus-pathbar button:checked {
|
||||
background: @accent_vibrant_hover_color;
|
||||
}
|
||||
|
||||
headerbar button {
|
||||
|
||||
@@ -88,8 +88,6 @@ Rectangle {
|
||||
|
||||
width: root.imageWidth * root.scale
|
||||
height: root.imageHeight * root.scale
|
||||
sourceSize.width: width
|
||||
sourceSize.height: height
|
||||
}
|
||||
|
||||
Loader {
|
||||
|
||||
@@ -7,7 +7,7 @@ import qs.modules.common.functions
|
||||
// From https://github.com/caelestia-dots/shell with modifications.
|
||||
// License: GPLv3
|
||||
|
||||
Image {
|
||||
StyledImage {
|
||||
id: root
|
||||
required property var fileModelData
|
||||
asynchronous: true
|
||||
|
||||
@@ -30,7 +30,7 @@ MaterialShape { // App icon
|
||||
color: isUrgent ? Appearance.colors.colPrimaryContainer : Appearance.colors.colSecondaryContainer
|
||||
Loader {
|
||||
id: materialSymbolLoader
|
||||
active: root.appIcon == ""
|
||||
active: root.appIcon == "" && root.image == ""
|
||||
anchors.fill: parent
|
||||
sourceComponent: MaterialSymbol {
|
||||
text: {
|
||||
@@ -63,7 +63,7 @@ MaterialShape { // App icon
|
||||
anchors.fill: parent
|
||||
sourceComponent: Item {
|
||||
anchors.fill: parent
|
||||
Image {
|
||||
StyledImage {
|
||||
id: notifImage
|
||||
anchors.fill: parent
|
||||
readonly property int size: parent.width
|
||||
@@ -74,11 +74,6 @@ MaterialShape { // App icon
|
||||
antialiasing: true
|
||||
asynchronous: true
|
||||
|
||||
width: size
|
||||
height: size
|
||||
sourceSize.width: size
|
||||
sourceSize.height: size
|
||||
|
||||
layer.enabled: true
|
||||
layer.effect: OpacityMask {
|
||||
maskSource: Rectangle {
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import QtQuick
|
||||
import Quickshell
|
||||
import qs.services
|
||||
import qs.modules.common
|
||||
import qs.modules.common.widgets
|
||||
@@ -22,4 +23,9 @@ Image {
|
||||
currentFallbackIndex += 1;
|
||||
}
|
||||
}
|
||||
|
||||
sourceSize: {
|
||||
const dpr = (QsWindow.window as QsWindow)?.devicePixelRatio ?? 1;
|
||||
return Qt.size(width * dpr, height * dpr);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -194,10 +194,6 @@ Variants {
|
||||
easing.type: Easing.OutCubic
|
||||
}
|
||||
}
|
||||
sourceSize {
|
||||
width: bgRoot.scaledWallpaperWidth
|
||||
height: bgRoot.scaledWallpaperHeight
|
||||
}
|
||||
width: bgRoot.scaledWallpaperWidth
|
||||
height: bgRoot.scaledWallpaperHeight
|
||||
}
|
||||
|
||||
@@ -113,12 +113,10 @@ Item { // Player instance
|
||||
}
|
||||
}
|
||||
|
||||
Image {
|
||||
StyledImage {
|
||||
id: blurredArt
|
||||
anchors.fill: parent
|
||||
source: root.displayedArtFilePath
|
||||
sourceSize.width: background.width
|
||||
sourceSize.height: background.height
|
||||
fillMode: Image.PreserveAspectCrop
|
||||
cache: false
|
||||
antialiasing: true
|
||||
@@ -179,8 +177,6 @@ Item { // Player instance
|
||||
|
||||
width: size
|
||||
height: size
|
||||
sourceSize.width: size
|
||||
sourceSize.height: size
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
pragma ComponentBehavior: Bound
|
||||
import QtQuick
|
||||
import Quickshell
|
||||
import Qt5Compat.GraphicalEffects
|
||||
import qs.modules.common
|
||||
import qs.modules.common.functions
|
||||
@@ -71,8 +72,10 @@ StyledOverlayWidget {
|
||||
anchors.centerIn: parent
|
||||
width: root.imageWidth * root.scaleFactor
|
||||
height: root.imageHeight * root.scaleFactor
|
||||
sourceSize.width: width
|
||||
sourceSize.height: height
|
||||
sourceSize: {
|
||||
const dpr = (QsWindow.window as QsWindow)?.devicePixelRatio ?? 1;
|
||||
return Qt.size(width * dpr, height * dpr);
|
||||
}
|
||||
|
||||
playing: visible
|
||||
asynchronous: true
|
||||
|
||||
@@ -3,6 +3,7 @@ import qs
|
||||
import qs.services
|
||||
import qs.modules.common
|
||||
import qs.modules.common.functions
|
||||
import qs.modules.common.widgets
|
||||
import Qt5Compat.GraphicalEffects
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
@@ -109,7 +110,7 @@ Item { // Window
|
||||
border.width : 1
|
||||
}
|
||||
|
||||
Image {
|
||||
StyledImage {
|
||||
id: windowIcon
|
||||
property real baseSize: Math.min(root.targetWindowWidth, root.targetWindowHeight)
|
||||
anchors {
|
||||
@@ -126,12 +127,11 @@ Item { // Window
|
||||
// console.log("Final:", Math.min(targetWindowWidth, targetWindowHeight) * (root.compactMode ? root.iconToWindowRatioCompact : root.iconToWindowRatio) / root.monitorData.scale)
|
||||
return baseSize * (root.compactMode ? root.iconToWindowRatioCompact : root.iconToWindowRatio);
|
||||
}
|
||||
// mipmap: true
|
||||
mipmap: true
|
||||
Layout.alignment: Qt.AlignHCenter
|
||||
source: root.iconPath
|
||||
width: iconSize
|
||||
height: iconSize
|
||||
sourceSize: Qt.size(iconSize, iconSize)
|
||||
|
||||
Behavior on width {
|
||||
animation: Appearance.animation.elementMoveEnter.numberAnimation.createObject(this)
|
||||
|
||||
@@ -186,7 +186,6 @@ Item {
|
||||
asynchronous: false
|
||||
width: root.windowWidth
|
||||
height: root.windowHeight
|
||||
sourceSize: Qt.size(root.windowWidth, root.windowHeight)
|
||||
source: Qt.resolvedUrl(root.screenshotPath)
|
||||
visible: false
|
||||
}
|
||||
|
||||
@@ -67,8 +67,6 @@ Button {
|
||||
height: root.rowHeight
|
||||
fillMode: Image.PreserveAspectFit
|
||||
source: modelData.preview_url
|
||||
sourceSize.width: root.rowHeight * modelData.aspect_ratio
|
||||
sourceSize.height: root.rowHeight
|
||||
|
||||
layer.enabled: true
|
||||
layer.effect: OpacityMask {
|
||||
|
||||
@@ -36,12 +36,10 @@ Item {
|
||||
text: root.node?.audio.muted ? Translation.tr("Click to unmute") : Translation.tr("Click to mute")
|
||||
}
|
||||
|
||||
Image {
|
||||
StyledImage {
|
||||
id: iconImg
|
||||
anchors.fill: parent
|
||||
visible: false
|
||||
sourceSize.width: parent.size
|
||||
sourceSize.height: parent.size
|
||||
source: {
|
||||
let icon;
|
||||
icon = AppSearch.guessIcon(root.node?.properties["application.icon-name"] ?? "");
|
||||
|
||||
@@ -66,8 +66,6 @@ MouseArea {
|
||||
cache: false
|
||||
fillMode: Image.PreserveAspectCrop
|
||||
clip: true
|
||||
sourceSize.width: wallpaperItemColumnLayout.width
|
||||
sourceSize.height: wallpaperItemColumnLayout.height - wallpaperItemColumnLayout.spacing - wallpaperItemName.height
|
||||
|
||||
Connections {
|
||||
target: Wallpapers
|
||||
@@ -102,8 +100,6 @@ MouseArea {
|
||||
anchors.fill: parent
|
||||
sourceComponent: DirectoryIcon {
|
||||
fileModelData: root.fileModelData
|
||||
sourceSize.width: wallpaperItemColumnLayout.width
|
||||
sourceSize.height: wallpaperItemColumnLayout.height - wallpaperItemColumnLayout.spacing - wallpaperItemName.height
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,8 +71,6 @@ ContentPage {
|
||||
StyledImage {
|
||||
id: wallpaperPreview
|
||||
anchors.fill: parent
|
||||
sourceSize.width: parent.implicitWidth
|
||||
sourceSize.height: parent.implicitHeight
|
||||
fillMode: Image.PreserveAspectCrop
|
||||
source: Config.options.background.wallpaperPath
|
||||
cache: false
|
||||
|
||||
@@ -33,7 +33,7 @@ LockScreen {
|
||||
interactables.switchToFocusedView();
|
||||
}
|
||||
|
||||
Image {
|
||||
StyledImage {
|
||||
id: bg
|
||||
z: 0
|
||||
width: parent.width
|
||||
@@ -46,7 +46,6 @@ LockScreen {
|
||||
openAnim.restart();
|
||||
}
|
||||
}
|
||||
sourceSize: Qt.size(lockSurfaceItem.width, lockSurfaceItem.height)
|
||||
source: Config.options.background.wallpaperPath
|
||||
fillMode: Image.PreserveAspectCrop
|
||||
|
||||
|
||||
@@ -102,8 +102,6 @@ MouseArea {
|
||||
readonly property int size: 48
|
||||
width: size
|
||||
height: size
|
||||
sourceSize.width: size
|
||||
sourceSize.height: size
|
||||
source: root.notification.image
|
||||
fillMode: Image.PreserveAspectFit
|
||||
}
|
||||
|
||||
@@ -85,7 +85,6 @@ WMouseAreaButton {
|
||||
active: !root.newWorkspace
|
||||
sourceComponent: StyledImage {
|
||||
cache: true
|
||||
sourceSize: Qt.size(root.screenAspectRatio * root.wallpaperHeight, root.wallpaperHeight)
|
||||
source: Config.options.background.wallpaperPath
|
||||
fillMode: Image.PreserveAspectCrop
|
||||
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
# Original-Spec: https://copr-dist-git.fedorainfracloud.org/packages/solopasha/hyprland/hyprland-qt-support.git/plain/hyprland-qt-support.spec?h=master
|
||||
|
||||
Name: hyprland-qt-support
|
||||
Version: 0.1.0
|
||||
Release: %autorelease -b9
|
||||
Summary: A Qt6 Qml style provider for hypr* apps
|
||||
License: BSD-3-Clause
|
||||
URL: https://github.com/hyprwm/hyprland-qt-support
|
||||
Source: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
|
||||
|
||||
# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval
|
||||
ExcludeArch: %{ix86}
|
||||
|
||||
BuildRequires: cmake
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: qt6-rpm-macros
|
||||
|
||||
BuildRequires: cmake(Qt6Quick)
|
||||
BuildRequires: cmake(Qt6QuickControls2)
|
||||
BuildRequires: cmake(Qt6Qml)
|
||||
|
||||
BuildRequires: pkgconfig(hyprlang)
|
||||
|
||||
%description
|
||||
%{summary}.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
%cmake -DINSTALL_QMLDIR=%{_qt6_qmldir}
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%cmake_install
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%doc README.md
|
||||
%{_prefix}/lib/libhyprland-quick-style-impl.so
|
||||
%{_prefix}/lib/libhyprland-quick-style.so
|
||||
%{_qt6_qmldir}/org/hyprland/
|
||||
|
||||
%changelog
|
||||
%autochangelog
|
||||
@@ -1,11 +1,10 @@
|
||||
%global commit e65259d68edc034905da477b6c1a349e89e2aa8d
|
||||
%global commit 4112d352914742ba69f6380fd07984adba02d376
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
%global commits 719
|
||||
%global snapdate 20260213
|
||||
%global tag 4.0.0
|
||||
%global snapdate 20260322
|
||||
%global tag 4.1.0
|
||||
|
||||
Name: matugen
|
||||
Version: %{tag}^%{commits}.%{shortcommit}
|
||||
Version: %{tag}.%{shortcommit}
|
||||
Release: 0%{?dist}
|
||||
Summary: A cross-platform material you and base16 color generation tool
|
||||
|
||||
|
||||
@@ -84,6 +84,7 @@ packages = [
|
||||
packages = [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprland-qt-support",
|
||||
"hyprsunset",
|
||||
"wl-clipboard"
|
||||
]
|
||||
@@ -205,4 +206,3 @@ packages = [
|
||||
"unzip"
|
||||
]
|
||||
install_opts = ["--setopt=install_weak_deps=False"]
|
||||
|
||||
|
||||
@@ -37,7 +37,6 @@ function install_RPMS() {
|
||||
packages=(
|
||||
"cpptrace"
|
||||
"quickshell-git"
|
||||
"hyprland-qt-support"
|
||||
"matugen"
|
||||
)
|
||||
for package in "${packages[@]}"; do
|
||||
|
||||
@@ -78,8 +78,8 @@ elif test -f /etc/os-release; then
|
||||
else
|
||||
printf "${STY_RED}/etc/os-release does not exist, aborting...${STY_RST}\n" ; exit 1
|
||||
fi
|
||||
export OS_DISTRO_ID=$(awk -F'=' '/^ID=/ { gsub("\"","",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
|
||||
export OS_DISTRO_ID_LIKE=$(awk -F'=' '/^ID_LIKE=/ { gsub("\"","",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
|
||||
export OS_DISTRO_ID=$(awk -F'=' '/^ID=/ { gsub(/["\x27]/,"",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
|
||||
export OS_DISTRO_ID_LIKE=$(awk -F'=' '/^ID_LIKE=/ { gsub(/["\x27]/,"",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
|
||||
|
||||
|
||||
####################
|
||||
|
||||
Reference in New Issue
Block a user