Compare commits
No commits in common. "0f6e978bc9dbdf9a08a98492043df6b41a0ea3e1" and "b3e9b4e6be57ce1918b115c6e7d4fe26186e9089" have entirely different histories.
0f6e978bc9
...
b3e9b4e6be
7 changed files with 110 additions and 204 deletions
104
flake.lock
generated
104
flake.lock
generated
|
|
@ -20,11 +20,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776702787,
|
"lastModified": 1774211390,
|
||||||
"narHash": "sha256-qc5uwEWbuubzYthmZcfCapooZGXhoYZWfTQ24TozbCQ=",
|
"narHash": "sha256-sTtAgCCaX8VNNZlQFACd3i1IQ+DB0Wf3COgiFS152ds=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "aquamarine",
|
"repo": "aquamarine",
|
||||||
"rev": "9a1ca6b8cb4d86a599787a55b78f2ddf809bf945",
|
"rev": "f62a4dbfa4e5584f14ad4c62afedf6e4b433cf70",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -43,11 +43,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776911729,
|
"lastModified": 1775381444,
|
||||||
"narHash": "sha256-Kbc7+DhyrZCRIaNzTtgEzLEODzwLutbFnSgxfy8CYjM=",
|
"narHash": "sha256-06aT/yhP4aLA15e8ASbXBfe615jG6QE+sis+KhhVtSo=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "emacs-overlay",
|
"repo": "emacs-overlay",
|
||||||
"rev": "f9d21a08a5783795bae91d091d62bb6554558c61",
|
"rev": "c868f794043735f1e2cc8d93f6a6d947bfa9e0f0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -122,11 +122,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776904464,
|
"lastModified": 1775427330,
|
||||||
"narHash": "sha256-sBUCj7/4d3Hoevpu3oQp8ccJNA1EDeVmFi1F8O6VJro=",
|
"narHash": "sha256-pm1SDX9Tj4eHWwjtDEqSU+5QZO7nHHqU8GT0JtbI9rc=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "667b3c47325441e6a444faaf405bba76ec70338a",
|
"rev": "7e7269ac064bea120d7b23daed432a096617872d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -151,11 +151,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776511930,
|
"lastModified": 1772461003,
|
||||||
"narHash": "sha256-fCpwFiTW0rT7oKJqr3cqHMnkwypSwQKpbtUEtxdkgrM=",
|
"narHash": "sha256-pVICsV7FtcEeVwg5y/LFh3XFUkVJninm/P1j/JHzEbM=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprcursor",
|
"repo": "hyprcursor",
|
||||||
"rev": "39435900785d0c560c6ae8777d29f28617d031ef",
|
"rev": "b62396457b9cfe2ebf24fe05404b09d2a40f8ed7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -180,11 +180,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776426399,
|
"lastModified": 1772461523,
|
||||||
"narHash": "sha256-RUESLKNikIeEq9ymGJ6nmcDXiSFQpUW1IhJ245nL3xM=",
|
"narHash": "sha256-mI6A51do+hEUzeJKk9YSWfVHdI/SEEIBi2tp5Whq5mI=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprgraphics",
|
"repo": "hyprgraphics",
|
||||||
"rev": "68d064434787cf1ed4a2fe257c03c5f52f33cf84",
|
"rev": "7d63c04b4a2dd5e59ef943b4b143f46e713df804",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -218,11 +218,11 @@
|
||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776889279,
|
"lastModified": 1775416789,
|
||||||
"narHash": "sha256-oKSqtplor0a6xzWRq6KL2um504x5VZ0Afw1N6ZiiC48=",
|
"narHash": "sha256-0IELkB6YXCZGqZqLdmOcTw8mki6NNhDmG47y7Qynuj8=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "Hyprland",
|
"repo": "Hyprland",
|
||||||
"rev": "300cdb7c3241969ac04cd02a5e13010a28ebb830",
|
"rev": "aaa2fc342f002bf4acd965f1ad2ead3796347e35",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -264,11 +264,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776426575,
|
"lastModified": 1772467975,
|
||||||
"narHash": "sha256-KI6nIfVihn/DPaeB5Et46Xg3dkNHrrEtUd5LBBVomB0=",
|
"narHash": "sha256-kipyuDBxrZq+beYpZqWzGvFWm4QbayW9agAvi94vDXY=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-guiutils",
|
"repo": "hyprland-guiutils",
|
||||||
"rev": "a968d211048e3ed538e47b84cb3649299578f19d",
|
"rev": "5e1c6b9025aaf4d578f3eff7c0eb1f0c197a9507",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -335,11 +335,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776426736,
|
"lastModified": 1772459629,
|
||||||
"narHash": "sha256-rl7i4aY+9p8LysJp7o8uRWahCkpFznCgGHXszlTw7b0=",
|
"narHash": "sha256-/iwvNUYShmmnwmz/czEUh6+0eF5vCMv0xtDW0STPIuM=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprlang",
|
"repo": "hyprlang",
|
||||||
"rev": "7833ff33b2e82d3406337b5dcf0d1cec595d83e9",
|
"rev": "7615ee388de18239a4ab1400946f3d0e498a8186",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -410,11 +410,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776428866,
|
"lastModified": 1774911391,
|
||||||
"narHash": "sha256-XfRlBolGtjvalTHJp3XvvpYLBjkMhaZLLU0WqZ91Fcg=",
|
"narHash": "sha256-c4YVwO33Mmw+FIV8E0u3atJZagHvGTJ9Jai6RtiB8rE=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprutils",
|
"repo": "hyprutils",
|
||||||
"rev": "eedd60805cd96d4442586f2ba5fe51d549b12674",
|
"rev": "e6caa3d4d1427eedbdf556cf4ceb70f2d9c0b56d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -435,11 +435,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776430932,
|
"lastModified": 1772459835,
|
||||||
"narHash": "sha256-Yv3RPiUvl7CAsJgwIVsqcj7akn1gLyJP1F/mocof5hA=",
|
"narHash": "sha256-978jRz/y/9TKmZb/qD4lEYHCQGHpEXGqy+8X2lFZsak=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprwayland-scanner",
|
"repo": "hyprwayland-scanner",
|
||||||
"rev": "4c2fcc06dc9722c97dbb54ba649c69b18ce83d2e",
|
"rev": "0a692d4a645165eebd65f109146b8861e3a925e7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -464,11 +464,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776728575,
|
"lastModified": 1773074819,
|
||||||
"narHash": "sha256-z9eGphrArEBpl1O/GCH0wlY6z4K9vA6yWh2gAS6qytU=",
|
"narHash": "sha256-qRqYnXiKoJLRTcfaRukn7EifmST2IVBUMZOeZMAc5UA=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprwire",
|
"repo": "hyprwire",
|
||||||
"rev": "f3a80888783702a39691b684d099e16b83ed4702",
|
"rev": "f68afd0e73687598cc2774804fedad76693046f0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -499,11 +499,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776829403,
|
"lastModified": 1775365369,
|
||||||
"narHash": "sha256-oHVcvP2Ahhj1KUsEzp+2BQF55/r5VSa3QxdPdwE1p00=",
|
"narHash": "sha256-DgH5mveLoau20CuTnaU5RXZWgFQWn56onQ4Du2CqYoI=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "nix-index-database",
|
"repo": "nix-index-database",
|
||||||
"rev": "c43246d4e9e506178b69baed075d797ec2d873e2",
|
"rev": "cef5cf82671e749ac87d69aadecbb75967e6f6c3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -534,11 +534,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776548001,
|
"lastModified": 1775036866,
|
||||||
"narHash": "sha256-ZSK0NL4a1BwVbbTBoSnWgbJy9HeZFXLYQizjb2DPF24=",
|
"narHash": "sha256-ZojAnPuCdy657PbTq5V0Y+AHKhZAIwSIT2cb8UgAz/U=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "b12141ef619e0a9c1c84dc8c684040326f27cdcc",
|
"rev": "6201e203d09599479a3b3450ed24fa81537ebc4e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -555,11 +555,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776918210,
|
"lastModified": 1775435376,
|
||||||
"narHash": "sha256-gWgRMF3g+iSgOZ97H/9OKGhLS9HULzZFCRR25VJnWvA=",
|
"narHash": "sha256-j38MtwM1VFWWU+bCEBGOsZbR1oaR7ByXSlP2+VRBMy4=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NUR",
|
"repo": "NUR",
|
||||||
"rev": "8b7d3409042a6fb07fd2bfa7d43de3b1604b05d2",
|
"rev": "c8fe168c59186cbcb65d5b4022cd5cf39d99a201",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -578,11 +578,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776796298,
|
"lastModified": 1774104215,
|
||||||
"narHash": "sha256-PcRvlWayisPSjd0UcRQbhG8Oqw78AcPE6x872cPRHN8=",
|
"narHash": "sha256-EAtviqz0sEAxdHS4crqu7JGR5oI3BwaqG0mw7CmXkO8=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "3cfd774b0a530725a077e17354fbdb87ea1c4aad",
|
"rev": "f799ae951fde0627157f40aec28dec27b22076d0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -618,11 +618,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1777019459,
|
"lastModified": 1775335892,
|
||||||
"narHash": "sha256-/JPmIuzUuNjxgYEnm56KqDIMpQbPN4hzTlOsMTMahok=",
|
"narHash": "sha256-rWJ//l6k1hwe/A2fNdzuvEuHedBQkMIHLU9eNTu4N7I=",
|
||||||
"ref": "refs/heads/master",
|
"ref": "refs/heads/master",
|
||||||
"rev": "e162429b6fa4443a0b45e19a867277dcc25d506b",
|
"rev": "ad5fd9116e25bc502468f4dfa884ee027887c51c",
|
||||||
"revCount": 807,
|
"revCount": 793,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://git.outfoxxed.me/quickshell/quickshell"
|
"url": "https://git.outfoxxed.me/quickshell/quickshell"
|
||||||
},
|
},
|
||||||
|
|
@ -708,11 +708,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1776608502,
|
"lastModified": 1773601989,
|
||||||
"narHash": "sha256-UH8YoQxx4hFOm6qjMdjRQNRvSejFIR/wBZ8fW1p9sME=",
|
"narHash": "sha256-2tJf/CQoHApoIudxHeJye+0Ii7scR0Yyi7pNiWk0Hn8=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "xdg-desktop-portal-hyprland",
|
"repo": "xdg-desktop-portal-hyprland",
|
||||||
"rev": "4a293523d36dfa367e67ec304cc718ea66a8fec2",
|
"rev": "a9b862d1aa000a676d310cc62d249f7ad726233d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,6 @@
|
||||||
import QtQuick
|
import QtQuick
|
||||||
import QtQuick.Layouts
|
import QtQuick.Layouts
|
||||||
import Quickshell
|
import Quickshell
|
||||||
import Quickshell.Widgets
|
|
||||||
import Quickshell.Wayland
|
|
||||||
import Quickshell.Io
|
import Quickshell.Io
|
||||||
import Quickshell.Services.Pipewire
|
import Quickshell.Services.Pipewire
|
||||||
import qs.bar
|
import qs.bar
|
||||||
|
|
@ -44,41 +42,6 @@ BarWidgetInner {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Variants {
|
|
||||||
model: {
|
|
||||||
if (!Pipewire.defaultAudioSource.audio?.muted) return [];
|
|
||||||
return [...new Set(ToplevelManager.toplevels.values.filter(t => t.fullscreen).map(t => t.screens[0]))];
|
|
||||||
}
|
|
||||||
|
|
||||||
PanelWindow {
|
|
||||||
required property ShellScreen modelData;
|
|
||||||
screen: modelData
|
|
||||||
|
|
||||||
anchors.left: true
|
|
||||||
anchors.bottom: true
|
|
||||||
margins.left: 100
|
|
||||||
margins.bottom: 100
|
|
||||||
exclusionMode: ExclusionMode.Ignore
|
|
||||||
WlrLayershell.layer: WlrLayer.Overlay
|
|
||||||
mask: Region {}
|
|
||||||
color: "transparent"
|
|
||||||
implicitWidth: 64
|
|
||||||
implicitHeight: 64
|
|
||||||
|
|
||||||
Rectangle {
|
|
||||||
anchors.fill: parent
|
|
||||||
color: "#40000000"
|
|
||||||
radius: 15
|
|
||||||
|
|
||||||
IconImage {
|
|
||||||
source: Quickshell.iconPath("microphone-sensitivity-muted-symbolic")
|
|
||||||
anchors.fill: parent
|
|
||||||
opacity: 0.3
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
IpcHandler {
|
IpcHandler {
|
||||||
target: "audio"
|
target: "audio"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -82,6 +82,13 @@ ClickableIcon {
|
||||||
|
|
||||||
Item { Layout.fillWidth: true }
|
Item { Layout.fillWidth: true }
|
||||||
|
|
||||||
|
ClickableIcon {
|
||||||
|
image: root.adapter.enabled ? "root:/icons/bluetooth-slash.svg" : "root:/icons/bluetooth.svg"
|
||||||
|
implicitHeight: 24
|
||||||
|
implicitWidth: height
|
||||||
|
onClicked: root.adapter.enabled = !root.adapter.enabled
|
||||||
|
}
|
||||||
|
|
||||||
ActivityButton {
|
ActivityButton {
|
||||||
image: "root:/icons/binoculars.svg"
|
image: "root:/icons/binoculars.svg"
|
||||||
implicitHeight: 24
|
implicitHeight: 24
|
||||||
|
|
|
||||||
|
|
@ -11,29 +11,9 @@ import qs.bar
|
||||||
ClickableIcon {
|
ClickableIcon {
|
||||||
id: root
|
id: root
|
||||||
required property var bar;
|
required property var bar;
|
||||||
readonly property WifiDevice adapter: Networking.devices.values.find(d => d.type === DeviceType.Wifi)
|
readonly property WifiDevice adapter: Networking.devices.values[0] ?? null
|
||||||
readonly property WiredDevice eth: Networking.devices.values.find(d => d.type === DeviceType.Wired)
|
|
||||||
readonly property bool connected: adapter.connected
|
readonly property bool connected: adapter.connected
|
||||||
readonly property WifiNetwork activeNetwork: adapter.networks.values.find(network => network.connected)
|
readonly property WifiNetwork activeNetwork: adapter.networks.values.find(network => network.connected)
|
||||||
readonly property string wifiIcon: {
|
|
||||||
if (root.adapter) {
|
|
||||||
if (!Networking.wifiEnabled) return "root:/icons/wifi-slash.svg";
|
|
||||||
if (!root.adapter.connected) return "root:/icons/wifi-x.svg";
|
|
||||||
return `root:/icons/wifi-${Math.round(root.activeNetwork.signalStrength * 3)}.svg`
|
|
||||||
}
|
|
||||||
|
|
||||||
return "root:/icons/wifi-x.svg";
|
|
||||||
}
|
|
||||||
|
|
||||||
readonly property string ethIcon: {
|
|
||||||
if (root.eth) {
|
|
||||||
if (!root.eth.network) return "root:/icons/ethernet-x.svg";
|
|
||||||
else if (!root.eth.network.connected) return "root:/icons/ethernet-slash.svg";
|
|
||||||
else return "root:/icons/ethernet.svg";
|
|
||||||
}
|
|
||||||
|
|
||||||
return "root:/icons/ethernet-x.svg";
|
|
||||||
}
|
|
||||||
|
|
||||||
property bool showMenu: false
|
property bool showMenu: false
|
||||||
|
|
||||||
|
|
@ -55,17 +35,9 @@ ClickableIcon {
|
||||||
implicitHeight: width
|
implicitHeight: width
|
||||||
fillWindowWidth: true
|
fillWindowWidth: true
|
||||||
acceptedButtons: Qt.LeftButton | Qt.RightButton
|
acceptedButtons: Qt.LeftButton | Qt.RightButton
|
||||||
image: {
|
image: Networking.wifiEnabled
|
||||||
if (root.eth?.network && root.eth.network.connected) {
|
? (connected ? `root:/icons/wifi-${Math.round(root.activeNetwork.signalStrength * 3)}.svg` : "root:/icons/wifi-x.svg")
|
||||||
return "root:/icons/ethernet.svg";
|
: "root:/icons/wifi-slash.svg"
|
||||||
} else if (Networking.wifiEnabled) {
|
|
||||||
return root.wifiIcon;
|
|
||||||
} else if (root.eth?.network) {
|
|
||||||
return "root:/icons/ethernet-slash.svg";
|
|
||||||
} else {
|
|
||||||
return "root:/icons/ethernet-x.svg";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
property var tooltip: TooltipItem {
|
property var tooltip: TooltipItem {
|
||||||
tooltip: bar.tooltip
|
tooltip: bar.tooltip
|
||||||
|
|
@ -95,97 +67,64 @@ ClickableIcon {
|
||||||
SmoothedAnimation { property: "y"; velocity: 350 }
|
SmoothedAnimation { property: "y"; velocity: 350 }
|
||||||
}
|
}
|
||||||
|
|
||||||
Loader {
|
RowLayout {
|
||||||
width: parent.width
|
width: parent.width
|
||||||
active: root.eth != null
|
|
||||||
visible: active
|
|
||||||
sourceComponent: ColumnLayout {
|
|
||||||
RowLayout {
|
|
||||||
Layout.fillWidth: true
|
|
||||||
|
|
||||||
ClickableIcon {
|
ClickableIcon {
|
||||||
image: root.ethIcon
|
image: root.image
|
||||||
implicitHeight: 40
|
implicitHeight: 40
|
||||||
implicitWidth: height
|
implicitWidth: height
|
||||||
onClicked: {
|
onClicked: root.adapter.enabled = !root.adapter.enabled
|
||||||
const n = root.eth.network;
|
}
|
||||||
if (n.connected) n.disconnect();
|
|
||||||
else n.connect();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
text: `Ethernet (${root.eth?.name ?? ""})`
|
text: `Wifi (${root.adapter.name})`
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
Rectangle {
|
Item { Layout.fillWidth: true }
|
||||||
Layout.fillWidth: true
|
|
||||||
implicitHeight: 1
|
ClickableIcon {
|
||||||
color: ShellGlobals.colors.separator
|
image: Networking.wifiEnabled ? "root:/icons/wifi-slash.svg" : "root:/icons/wifi-x.svg"
|
||||||
visible: root.adapter != null
|
implicitHeight: 24
|
||||||
}
|
implicitWidth: height
|
||||||
|
onClicked: Networking.wifiEnabled = !Networking.wifiEnabled
|
||||||
|
}
|
||||||
|
|
||||||
|
ActivityButton {
|
||||||
|
image: "root:/icons/binoculars.svg"
|
||||||
|
implicitHeight: 24
|
||||||
|
implicitWidth: height
|
||||||
|
onClicked: root.adapter.scannerEnabled = !root.adapter.scannerEnabled
|
||||||
|
showAction: root.adapter.scannerEnabled
|
||||||
|
Layout.rightMargin: 4
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Loader {
|
Rectangle {
|
||||||
width: parent.width
|
width: parent.width
|
||||||
active: root.adapter != null
|
implicitHeight: 1
|
||||||
visible: active
|
visible: root.adapter.networks.values.length > 0
|
||||||
sourceComponent: ColumnLayout {
|
|
||||||
RowLayout {
|
|
||||||
Layout.fillWidth: true
|
|
||||||
ClickableIcon {
|
|
||||||
image: root.wifiIcon
|
|
||||||
implicitHeight: 40
|
|
||||||
implicitWidth: height
|
|
||||||
onClicked: Networking.wifiEnabled = !Networking.wifiEnabled
|
|
||||||
}
|
|
||||||
|
|
||||||
Label {
|
color: ShellGlobals.colors.separator
|
||||||
text: `Wifi (${root.adapter.name})`
|
}
|
||||||
}
|
|
||||||
|
|
||||||
Item { Layout.fillWidth: true }
|
Repeater {
|
||||||
|
model: ScriptModel {
|
||||||
|
values: [...root.adapter.networks.values].sort((a, b) => {
|
||||||
|
if (a.connected && !b.connected) return -1;
|
||||||
|
if (b.connected && !a.connected) return 1;
|
||||||
|
if (a.bonded && !b.bonded) return -1;
|
||||||
|
if (b.bonded && !a.bonded) return 1;
|
||||||
|
return b.name - a.name;
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
ActivityButton {
|
delegate: NetworkDelegate {
|
||||||
image: "root:/icons/binoculars.svg"
|
required property var modelData
|
||||||
implicitHeight: 24
|
device: root.adapter
|
||||||
implicitWidth: height
|
network: modelData
|
||||||
onClicked: root.adapter.scannerEnabled = !root.adapter.scannerEnabled
|
width: parent.width
|
||||||
showAction: root.adapter.scannerEnabled
|
onConnectionAttempted: root.adapter.scannerEnabled = false
|
||||||
Layout.rightMargin: 4
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Rectangle {
|
|
||||||
Layout.fillWidth: parent
|
|
||||||
implicitHeight: 1
|
|
||||||
visible: root.adapter.networks.values.length > 0
|
|
||||||
|
|
||||||
color: ShellGlobals.colors.separator
|
|
||||||
}
|
|
||||||
|
|
||||||
Repeater {
|
|
||||||
model: ScriptModel {
|
|
||||||
values: [...root.adapter.networks.values].sort((a, b) => {
|
|
||||||
if (a.connected && !b.connected) return -1;
|
|
||||||
if (b.connected && !a.connected) return 1;
|
|
||||||
if (a.bonded && !b.bonded) return -1;
|
|
||||||
if (b.bonded && !a.bonded) return 1;
|
|
||||||
return b.name - a.name;
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
delegate: NetworkDelegate {
|
|
||||||
required property var modelData
|
|
||||||
Layout.fillWidth: parent
|
|
||||||
device: root.adapter
|
|
||||||
network: modelData
|
|
||||||
width: parent.width
|
|
||||||
onConnectionAttempted: root.adapter.scannerEnabled = false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="#f0f0f0" viewBox="0 0 256 256"><path d="M96,54V40a16,16,0,0,1,16-16h32a16,16,0,0,1,16,16V72a16,16,0,0,1-16,16H127.61a8,8,0,0,1,0-16H144V40H112V54a8,8,0,0,1-16,0ZM213.92,210.62a8,8,0,1,1-11.84,10.76L117.19,128H72v32h8a16,16,0,0,1,16,16v32a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V176a16,16,0,0,1,16-16h8V128H24a8,8,0,0,1,0-16h78.64L42.08,45.38A8,8,0,1,1,53.92,34.62ZM80,176H48v32H80Zm152-64H164a8,8,0,0,0,0,16h20v22.83a8,8,0,1,0,16,0V128h32a8,8,0,0,0,0-16Z"></path></svg>
|
|
||||||
|
Before Width: | Height: | Size: 538 B |
|
|
@ -1 +0,0 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="#f0f0f0" viewBox="0 0 256 256"><path d="M232,112H136V88h8a16,16,0,0,0,16-16V40a16,16,0,0,0-16-16H112A16,16,0,0,0,96,40V72a16,16,0,0,0,16,16h8v24H24a8,8,0,0,0,0,16H56v32H48a16,16,0,0,0-16,16v32a16,16,0,0,0,16,16H80a16,16,0,0,0,16-16V176a16,16,0,0,0-16-16H72V128H184v16a8,8,0,0,0,16,0V128h32a8,8,0,0,0,0-16ZM112,40h32V72H112ZM80,208H48V176H80Zm141.65-34.34L203.31,192l18.35,18.34a8,8,0,0,1-11.32,11.32L192,203.31l-18.34,18.35a8,8,0,0,1-11.32-11.32L180.69,192l-18.35-18.34a8,8,0,0,1,11.32-11.32L192,180.69l18.34-18.35a8,8,0,0,1,11.32,11.32Z"></path></svg>
|
|
||||||
|
Before Width: | Height: | Size: 622 B |
|
|
@ -1 +0,0 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="#f0f0f0" viewBox="0 0 256 256"><path d="M232,112H136V88h8a16,16,0,0,0,16-16V40a16,16,0,0,0-16-16H112A16,16,0,0,0,96,40V72a16,16,0,0,0,16,16h8v24H24a8,8,0,0,0,0,16H56v32H48a16,16,0,0,0-16,16v32a16,16,0,0,0,16,16H80a16,16,0,0,0,16-16V176a16,16,0,0,0-16-16H72V128H184v32h-8a16,16,0,0,0-16,16v32a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V176a16,16,0,0,0-16-16h-8V128h32a8,8,0,0,0,0-16ZM112,40h32V72H112ZM80,208H48V176H80Zm128,0H176V176h32Z"></path></svg>
|
|
||||||
|
Before Width: | Height: | Size: 517 B |
Loading…
Add table
Add a link
Reference in a new issue