diff --git a/modules/menus/dashboard/controls/index.js b/modules/menus/dashboard/controls/index.js index 8a22a45..943d8b3 100644 --- a/modules/menus/dashboard/controls/index.js +++ b/modules/menus/dashboard/controls/index.js @@ -11,6 +11,7 @@ const Controls = () => { expand: true, children: [ Widget.Button({ + tooltip_text: "Toggle Wifi", expand: true, setup: (self) => { self.hook(network, () => { @@ -27,6 +28,7 @@ const Controls = () => { }), }), Widget.Button({ + tooltip_text: "Toggle Bluetooth", expand: true, class_name: bluetooth .bind("enabled") @@ -39,6 +41,7 @@ const Controls = () => { }), }), Widget.Button({ + tooltip_text: "Toggle Notifications", expand: true, class_name: notifications .bind("dnd") @@ -51,6 +54,7 @@ const Controls = () => { }), }), Widget.Button({ + tooltip_text: "Toggle Mute (Playback)", expand: true, on_primary_click: () => (audio.speaker.is_muted = !audio.speaker.is_muted), @@ -68,6 +72,7 @@ const Controls = () => { }), }), Widget.Button({ + tooltip_text: "Toggle Mute (Microphone)", expand: true, on_primary_click: () => (audio.microphone.is_muted = !audio.microphone.is_muted), diff --git a/modules/menus/dashboard/shortcuts/index.js b/modules/menus/dashboard/shortcuts/index.js index 29f5a84..98027a7 100644 --- a/modules/menus/dashboard/shortcuts/index.js +++ b/modules/menus/dashboard/shortcuts/index.js @@ -80,6 +80,7 @@ const Shortcuts = () => { hexpand: true, children: [ Widget.Button({ + tooltip_text: "Microsoft Edge", class_name: "dashboard-button edge top-button", on_primary_click: () => handleClick("microsoft-edge-stable"), child: Widget.Label({ @@ -88,6 +89,7 @@ const Shortcuts = () => { }), }), Widget.Button({ + tooltip_text: "Spotify", class_name: "dashboard-button spotify", on_primary_click: () => handleClick("spotify-launcher"), child: Widget.Label({ @@ -102,6 +104,7 @@ const Shortcuts = () => { hexpand: true, children: [ Widget.Button({ + tooltip_text: "Discord", class_name: "dashboard-button discord top-button", on_primary_click: () => handleClick("discord"), child: Widget.Label({ @@ -110,6 +113,7 @@ const Shortcuts = () => { }), }), Widget.Button({ + tooltip_text: "Search Apps", class_name: "dashboard-button search", on_primary_click: () => handleClick("rofi -show drun"), child: Widget.Label({ @@ -131,6 +135,7 @@ const Shortcuts = () => { hexpand: true, children: [ Widget.Button({ + tooltip_text: "Color Picker", class_name: "dashboard-button colorpicker top-button", on_primary_click: () => handleClick("hyprpicker -a"), child: Widget.Label({ @@ -139,6 +144,7 @@ const Shortcuts = () => { }), }), Widget.Button({ + tooltip_text: "Hyprland Settings", class_name: "dashboard-button settings", on_primary_click: () => handleClick( @@ -156,6 +162,7 @@ const Shortcuts = () => { hexpand: true, children: [ Widget.Button({ + tooltip_text: "Screenshot", class_name: "dashboard-button snapshot top-button", on_primary_click: () => { App.closeWindow("dashboardmenu"); @@ -169,6 +176,7 @@ const Shortcuts = () => { }), }), Widget.Button({ + tooltip_text: "Record Screen", class_name: isRecording .bind("value") .as((v) => `dashboard-button record ${v ? "active" : ""}`), diff --git a/modules/menus/media/components/albumcover.js b/modules/menus/media/components/albumcover.js deleted file mode 100644 index fc4a556..0000000 --- a/modules/menus/media/components/albumcover.js +++ /dev/null @@ -1,16 +0,0 @@ -const AlbumCover = (curPlayer) => { - if ( - typeof curPlayer.track_cover_url === "string" && - curPlayer.track_cover_url.length > 0 - ) { - return Widget.Box({ - vexpand: false, - vpack: "center", - class_name: "media-indicator-current-album-cover", - css: `background-image: url("${curPlayer.track_cover_url}")`, - }); - } - return Widget.Box(); -}; - -export { AlbumCover }; diff --git a/modules/menus/media/components/bar.js b/modules/menus/media/components/bar.js index 9b0e06b..8c8288f 100644 --- a/modules/menus/media/components/bar.js +++ b/modules/menus/media/components/bar.js @@ -1,4 +1,26 @@ -const Bar = (curPlayer) => { +const media = await Service.import("mpris"); + +const Bar = (getPlayerInfo) => { + media.connect("changed", () => { + const statusOrder = { + Playing: 1, + Paused: 2, + Stopped: 3, + }; + + const isPlaying = media.players.find( + (p) => p["play-back-status"] === "Playing", + ); + + if (isPlaying) { + curPlayer.value = media.players.sort( + (a, b) => + statusOrder[a["play-back-status"]] - + statusOrder[b["play-back-status"]], + )[0]; + } + }); + return Widget.Box({ class_name: "media-indicator-current-progress-bar", hexpand: true, @@ -11,34 +33,34 @@ const Bar = (curPlayer) => { class_name: "menu-slider media progress", draw_value: false, on_change: ({ value }) => { - return (curPlayer.position = value * curPlayer.length); + const foundPlayer = getPlayerInfo(media); + return (foundPlayer.position = value * foundPlayer.length); }, setup: (self) => { const update = () => { - if ( - typeof curPlayer.position === "number" && - curPlayer.position > 0 && - typeof curPlayer.length === "number" && - curPlayer.length > 0 - ) { - const value = curPlayer.position / curPlayer.length; + const foundPlayer = getPlayerInfo(media); + if (foundPlayer !== undefined) { + const value = foundPlayer.position / foundPlayer.length; self.value = value > 0 ? value : 0; } else { self.value = 0; } }; - self.hook(curPlayer, update); - self.hook(curPlayer, update, "position"); + self.hook(media, update); self.poll(1000, update); function updateTooltip() { - const curHour = Math.floor(curPlayer.position / 3600); - const curMin = Math.floor((curPlayer.position % 3600) / 60); - const curSec = Math.floor(curPlayer.position % 60); + const foundPlayer = getPlayerInfo(media); + if (foundPlayer === undefined) { + return self.tooltip_text = '0:0' + } + const curHour = Math.floor(foundPlayer.position / 3600); + const curMin = Math.floor((foundPlayer.position % 3600) / 60); + const curSec = Math.floor(foundPlayer.position % 60); if ( - typeof curPlayer.position === "number" && - curPlayer.position >= 0 + typeof foundPlayer.position === "number" && + foundPlayer.position >= 0 ) { // WARN: These nested ternaries are absolutely disgusting lol self.tooltip_text = `${ @@ -51,7 +73,7 @@ const Bar = (curPlayer) => { } } self.poll(1000, updateTooltip); - self.hook(curPlayer, updateTooltip); + self.hook(media, updateTooltip); }, }), }), diff --git a/modules/menus/media/components/controls.js b/modules/menus/media/components/controls.js index e4cce65..3ecfe88 100644 --- a/modules/menus/media/components/controls.js +++ b/modules/menus/media/components/controls.js @@ -1,6 +1,31 @@ import icons from "../../../icons/index.js"; +const media = await Service.import("mpris"); -const Controls = (curPlayer) => { +const Controls = () => { + const curPlayer = Variable(media.players[0]); + + media.connect("changed", () => { + const statusOrder = { + Playing: 1, + Paused: 2, + Stopped: 3, + }; + + const isPlaying = media.players.find( + (p) => p["play-back-status"] === "Playing", + ); + + if (isPlaying) { + curPlayer.value = media.players.sort( + (a, b) => + statusOrder[a["play-back-status"]] - + statusOrder[b["play-back-status"]], + )[0]; + } + }); + if (curPlayer.value === undefined) { + return Widget.Box(); + } const isLoopActive = (player) => { return player["loop-status"] !== null && ["track", "playlist"].includes(player["loop-status"].toLowerCase()) @@ -28,25 +53,25 @@ const Controls = (curPlayer) => { Widget.Button({ hpack: "center", tooltip_text: - curPlayer.shuffle_status !== null - ? curPlayer.shuffle_status + curPlayer.value.shuffle_status !== null + ? curPlayer.value.shuffle_status ? "Shuffling" : "Not Shuffling" : null, hasTooltip: true, - on_primary_click: () => curPlayer.shuffle(), - class_name: `media-indicator-control-button shuffle ${isShuffleActive(curPlayer)} ${curPlayer.shuffle_status !== null ? "enabled" : "disabled"}`, + on_primary_click: () => curPlayer.value.shuffle(), + class_name: `media-indicator-control-button shuffle ${isShuffleActive(curPlayer.value)} ${curPlayer.value.shuffle_status !== null ? "enabled" : "disabled"}`, child: Widget.Icon(icons.mpris.shuffle["enabled"]), }), ], }), Widget.Box({ - class_name: `media-indicator-control prev ${curPlayer.can_go_prev}`, + class_name: `media-indicator-control prev ${curPlayer.value.can_go_prev}`, children: [ Widget.Button({ hpack: "center", - on_primary_click: () => curPlayer.previous(), - class_name: `media-indicator-control-button prev ${curPlayer.can_go_prev ? "enabled" : "disabled"}`, + on_primary_click: () => curPlayer.value.previous(), + class_name: `media-indicator-control-button prev ${curPlayer.value.can_go_prev ? "enabled" : "disabled"}`, child: Widget.Icon(icons.mpris.prev), }), ], @@ -56,10 +81,10 @@ const Controls = (curPlayer) => { children: [ Widget.Button({ hpack: "center", - on_primary_click: () => curPlayer.playPause(), - class_name: `media-indicator-control-button play ${curPlayer.can_play ? "enabled" : "disabled"}`, + on_primary_click: () => curPlayer.value.playPause(), + class_name: `media-indicator-control-button play ${curPlayer.value.can_play ? "enabled" : "disabled"}`, child: Widget.Icon( - icons.mpris[curPlayer.play_back_status.toLowerCase()], + icons.mpris[curPlayer.value.play_back_status.toLowerCase()], ), }), ], @@ -69,8 +94,8 @@ const Controls = (curPlayer) => { children: [ Widget.Button({ hpack: "center", - on_primary_click: () => curPlayer.next(), - class_name: `media-indicator-control-button next ${curPlayer.can_go_next ? "enabled" : "disabled"}`, + on_primary_click: () => curPlayer.value.next(), + class_name: `media-indicator-control-button next ${curPlayer.value.can_go_next ? "enabled" : "disabled"}`, child: Widget.Icon(icons.mpris.next), }), ], @@ -81,16 +106,16 @@ const Controls = (curPlayer) => { Widget.Button({ hpack: "center", tooltip_text: - curPlayer.loop_status !== null - ? `Looping: ${curPlayer.loop_status}` + curPlayer.value.loop_status !== null + ? `Looping: ${curPlayer.value.loop_status}` : null, hasTooltip: true, - on_primary_click: () => curPlayer.loop(), - class_name: `media-indicator-control-button loop ${isLoopActive(curPlayer)} ${curPlayer.loop_status !== null ? "enabled" : "disabled"}`, + on_primary_click: () => curPlayer.value.loop(), + class_name: `media-indicator-control-button loop ${isLoopActive(curPlayer.value)} ${curPlayer.value.loop_status !== null ? "enabled" : "disabled"}`, child: Widget.Icon( - curPlayer.loop_status === null + curPlayer.value.loop_status === null ? icons.mpris.loop["none"] - : icons.mpris.loop[curPlayer.loop_status?.toLowerCase()], + : icons.mpris.loop[curPlayer.value.loop_status?.toLowerCase()], ), }), ], diff --git a/modules/menus/media/components/mediainfo.js b/modules/menus/media/components/mediainfo.js index f588da6..8a6c15d 100644 --- a/modules/menus/media/components/mediainfo.js +++ b/modules/menus/media/components/mediainfo.js @@ -1,4 +1,28 @@ -const MediaInfo = (curPlayer) => { +const media = await Service.import("mpris"); + +const MediaInfo = () => { + const curPlayer = Variable(media.players[0]); + + media.connect("changed", () => { + const statusOrder = { + Playing: 1, + Paused: 2, + Stopped: 3, + }; + + const isPlaying = media.players.find( + (p) => p["play-back-status"] === "Playing", + ); + + if (isPlaying) { + curPlayer.value = media.players.sort( + (a, b) => + statusOrder[a["play-back-status"]] - + statusOrder[b["play-back-status"]], + )[0]; + } + console.log('changed'); + }); return Widget.Box({ class_name: "media-indicator-current-media-info", hpack: "center", @@ -11,10 +35,15 @@ const MediaInfo = (curPlayer) => { children: [ Widget.Label({ truncate: "end", - max_width_chars: 21, + max_width_chars: 35, wrap: true, class_name: "media-indicator-current-song-name-label", - label: curPlayer["track-title"], + setup: (self) => { + self.hook(curPlayer, () => { + console.log('did change') + return (self.label = curPlayer.value["track-title"]); + }); + }, }), ], }), @@ -25,9 +54,14 @@ const MediaInfo = (curPlayer) => { Widget.Label({ truncate: "end", wrap: true, - max_width_chars: 25, + max_width_chars: 35, class_name: "media-indicator-current-song-author-label", - label: curPlayer["track-artists"].join(", "), + setup: (self) => { + self.hook(curPlayer, () => { + console.log(JSON.stringify(curPlayer, null, 2)); + return (self.label = curPlayer.value["track-title"]); + }); + }, }), ], }), @@ -38,9 +72,13 @@ const MediaInfo = (curPlayer) => { Widget.Label({ truncate: "end", wrap: true, - max_width_chars: 25, + max_width_chars: 40, class_name: "media-indicator-current-song-album-label", - label: curPlayer["track-album"], + setup: (self) => { + self.hook(curPlayer, () => { + return (self.label = curPlayer.value["track-album"]); + }); + }, }), ], }), diff --git a/modules/menus/media/index.bkup.js b/modules/menus/media/index.bkup.js deleted file mode 100644 index 69ce6d6..0000000 --- a/modules/menus/media/index.bkup.js +++ /dev/null @@ -1,343 +0,0 @@ -const media = await Service.import("mpris"); -import DropdownMenu from "../DropdownMenu.js"; -import icons from "../../icons/index.js"; - -media.cacheCoverArt = false; - -export default () => { - const activePlayer = Variable(media.players[0]); - - media.connect("changed", (value) => { - const statusOrder = { - Playing: 1, - Paused: 2, - Stopped: 3, - }; - - if (value.players.length === 0) { - activePlayer.value = media.players[0]; - return; - } - - const isPlaying = value.players.find( - (p) => p["play-back-status"] === "Playing", - ); - - if (isPlaying) { - activePlayer.value = value.players.sort( - (a, b) => - statusOrder[a["play-back-status"]] - - statusOrder[b["play-back-status"]], - )[0]; - } - }); - - const isLoopActive = (player) => { - return player["loop-status"] !== null && - ["track", "playlist"].includes(player["loop-status"].toLowerCase()) - ? "active" - : ""; - }; - - const isShuffleActive = (player) => { - return player["shuffle-status"] !== null && player["shuffle-status"] - ? "active" - : ""; - }; - - return DropdownMenu({ - name: "mediamenu", - transition: "crossfade", - fixed: true, - minWidth: 550, - child: Widget.Box({ - class_name: "media-indicator-container", - vertical: true, - hexpand: true, - vexpand: true, - child: Widget.Box({ - class_name: "media-indicator-items", - vexpand: true, - hexpand: true, - vertical: true, - children: [ - Widget.Box({ - class_name: "media-indicator-current-player-info", - vpack: "center", - hexpand: true, - setup: (self) => { - self.hook(activePlayer, () => { - self.hook(media, () => { - const curPlayer = activePlayer.value; - - const albumCover = (player) => { - if ( - typeof player.track_cover_url === "string" && - player.track_cover_url.length > 0 - ) { - return [ - Widget.Box({ - vexpand: false, - vpack: "center", - class_name: "media-indicator-current-album-cover", - css: `background-image: url("${curPlayer.track_cover_url}")`, - }), - ]; - } - return []; - }; - if (curPlayer && curPlayer.play_back_status !== "Stopped") { - return (self.children = [ - ...albumCover(curPlayer), - Widget.Box({ - class_name: "media-indicator-right-section", - hpack: "center", - hexpand: true, - vertical: true, - children: [ - Widget.Box({ - class_name: "media-indicator-current-media-info", - hpack: "center", - hexpand: true, - vertical: true, - children: [ - Widget.Box({ - class_name: "media-indicator-current-song-name", - hpack: "center", - children: [ - Widget.Label({ - truncate: "end", - max_width_chars: 21, - wrap: true, - class_name: - "media-indicator-current-song-name-label", - label: curPlayer["track-title"], - }), - ], - }), - Widget.Box({ - class_name: - "media-indicator-current-song-author", - hpack: "center", - children: [ - Widget.Label({ - truncate: "end", - wrap: true, - max_width_chars: 25, - class_name: - "media-indicator-current-song-author-label", - label: - curPlayer["track-artists"].join(", "), - }), - ], - }), - Widget.Box({ - class_name: - "media-indicator-current-song-album", - hpack: "center", - children: [ - Widget.Label({ - truncate: "end", - wrap: true, - max_width_chars: 25, - class_name: - "media-indicator-current-song-album-label", - label: curPlayer["track-album"], - }), - ], - }), - ], - }), - Widget.Box({ - class_name: - "media-indicator-current-player-controls", - vertical: true, - children: [ - Widget.Box({ - class_name: "media-indicator-current-controls", - hpack: "center", - children: [ - Widget.Box({ - class_name: - "media-indicator-control shuffle", - children: [ - Widget.Button({ - hpack: "center", - tooltip_text: - curPlayer.shuffle_status !== null - ? curPlayer.shuffle_status - ? "Shuffling" - : "Not Shuffling" - : null, - hasTooltip: true, - on_primary_click: () => - curPlayer.shuffle(), - class_name: `media-indicator-control-button shuffle ${isShuffleActive(curPlayer)} ${curPlayer.shuffle_status !== null ? "enabled" : "disabled"}`, - child: Widget.Icon( - icons.mpris.shuffle["enabled"], - ), - }), - ], - }), - Widget.Box({ - class_name: `media-indicator-control prev ${curPlayer.can_go_prev}`, - children: [ - Widget.Button({ - hpack: "center", - on_primary_click: () => - curPlayer.previous(), - class_name: `media-indicator-control-button prev ${curPlayer.can_go_prev ? "enabled" : "disabled"}`, - child: Widget.Icon(icons.mpris.prev), - }), - ], - }), - Widget.Box({ - class_name: "media-indicator-control play", - children: [ - Widget.Button({ - hpack: "center", - on_primary_click: () => - curPlayer.playPause(), - class_name: `media-indicator-control-button play ${curPlayer.can_play ? "enabled" : "disabled"}`, - child: Widget.Icon( - icons.mpris[ - curPlayer.play_back_status.toLowerCase() - ], - ), - }), - ], - }), - Widget.Box({ - class_name: `media-indicator-control next`, - children: [ - Widget.Button({ - hpack: "center", - on_primary_click: () => - curPlayer.next(), - class_name: `media-indicator-control-button next ${curPlayer.can_go_next ? "enabled" : "disabled"}`, - child: Widget.Icon(icons.mpris.next), - }), - ], - }), - Widget.Box({ - class_name: "media-indicator-control loop", - children: [ - Widget.Button({ - hpack: "center", - tooltip_text: - curPlayer.loop_status !== null - ? `Looping: ${curPlayer.loop_status}` - : null, - hasTooltip: true, - on_primary_click: () => - curPlayer.loop(), - class_name: `media-indicator-control-button loop ${isLoopActive(curPlayer)} ${curPlayer.loop_status !== null ? "enabled" : "disabled"}`, - child: Widget.Icon( - curPlayer.loop_status === null - ? icons.mpris.loop["none"] - : icons.mpris.loop[ - curPlayer.loop_status?.toLowerCase() - ], - ), - }), - ], - }), - ], - }), - ], - }), - Widget.Box({ - class_name: "media-indicator-current-progress-bar", - hexpand: true, - children: [ - Widget.Box({ - hexpand: true, - child: Widget.Slider({ - hexpand: true, - tooltip_text: "yoyo", - class_name: "menu-slider media progress", - draw_value: false, - on_change: ({ value }) => - (curPlayer.position = - value * curPlayer.length), - visible: curPlayer - .bind("length") - .as((l) => l > 0), - setup: (self) => { - const update = () => { - if ( - typeof curPlayer.position === - "number" && - curPlayer.position > 0 - ) { - const value = - curPlayer.position / curPlayer.length; - self.value = value > 0 ? value : 0; - } - return 0; - }; - self.hook(curPlayer, update); - self.hook(curPlayer, update, "position"); - self.poll(1000, update); - - function updateTooltip() { - const curHour = Math.floor( - curPlayer.position / 3600, - ); - const curMin = Math.floor( - (curPlayer.position % 3600) / 60, - ); - const curSec = Math.floor( - curPlayer.position % 60, - ); - - if ( - typeof curPlayer.position === - "number" && - curPlayer.position >= 0 - ) { - // WARN: These nested ternaries are absolutely disgusting lol - self.tooltip_text = `${ - curHour > 0 - ? (curHour < 10 - ? "0" + curHour - : curHour) + ":" - : "" - }${curMin < 10 ? "0" + curMin : curMin}:${curSec < 10 ? "0" + curSec : curSec}`; - } else { - self.tooltip_text = `00:00`; - } - } - self.poll(1000, updateTooltip); - self.hook(curPlayer, updateTooltip); - }, - }), - }), - ], - }), - ], - }), - ]); - } - - return (self.children = [ - Widget.Box({ - class_name: "media-indicator-none", - hpack: "center", - vpack: "center", - expand: true, - child: Widget.Label({ - class_name: "media-indicator-none-label dim", - label: "No Media Is Currently Playing", - }), - }), - ]); - }); - }); - }, - }), - ], - }), - }), - }); -}; diff --git a/modules/menus/media/media.js b/modules/menus/media/media.js index 34622ab..c14b05a 100644 --- a/modules/menus/media/media.js +++ b/modules/menus/media/media.js @@ -1,10 +1,35 @@ const media = await Service.import("mpris"); -import { AlbumCover } from "./components/albumcover.js"; import { MediaInfo } from "./components/mediainfo.js"; import { Controls } from "./components/controls.js"; import { Bar } from "./components/bar.js"; const Media = () => { + const curPlayer = Variable(""); + + media.connect("changed", () => { + const statusOrder = { + Playing: 1, + Paused: 2, + Stopped: 3, + }; + + const isPlaying = media.players.find( + (p) => p["play-back-status"] === "Playing", + ); + + if (isPlaying) { + curPlayer.value = media.players.sort( + (a, b) => + statusOrder[a["play-back-status"]] - + statusOrder[b["play-back-status"]], + )[0].name; + } + }); + + const getPlayerInfo = (plyr) => { + return plyr.players.find(p => p.name === curPlayer.value) + } + return Widget.Box({ class_name: "menu-section-container", children: [ @@ -13,60 +38,38 @@ const Media = () => { vertical: false, child: Widget.Box({ class_name: "menu-content", + children: [ + Widget.Box({ + class_name: "media-content", + child: Widget.Box({ + class_name: "media-indicator-right-section", + hpack: "fill", + hexpand: true, + vertical: true, + children: [MediaInfo(), Controls(), Bar(getPlayerInfo)], + }), + }), + ], setup: (self) => { - let curPlayer = media.players[0]; self.hook(media, () => { - const statusOrder = { - Playing: 1, - Paused: 2, - Stopped: 3, - }; + self.css = `background-image: linear-gradient( + rgba(30, 30, 46, 0.85), + rgba(30, 30, 46, 0.9), + #1e1e2e 40em), url("${getPlayerInfo(media).track_cover_url}"); + `; - const isPlaying = media.players.find( - (p) => p["play-back-status"] === "Playing", - ); - - if (isPlaying) { - curPlayer = media.players.sort( - (a, b) => - statusOrder[a["play-back-status"]] - - statusOrder[b["play-back-status"]], - )[0]; - } - - if ( - media.players.length && - curPlayer && - curPlayer.play_back_status !== "Stopped" - ) { - return (self.children = [ - AlbumCover(curPlayer), - Widget.Box({ - class_name: "media-indicator-right-section", - hpack: "fill", - hexpand: true, - vertical: true, - children: [ - MediaInfo(curPlayer), - Controls(curPlayer), - Bar(curPlayer), - ], - }), - ]); - } - - return (self.children = [ - Widget.Box({ - class_name: "media-indicator-none", - hpack: "center", - hexpand: true, - vpack: "center", - child: Widget.Label({ - class_name: "media-indicator-none-label dim", - label: "No Media Is Currently Playing", - }), - }), - ]); + // return (self.children = [ + // Widget.Box({ + // class_name: "media-indicator-none", + // hpack: "center", + // hexpand: true, + // vpack: "center", + // child: Widget.Label({ + // class_name: "media-indicator-none-label dim", + // label: "No Media Is Currently Playing", + // }), + // }), + // ]); }); }, }), diff --git a/modules/menus/power/verification.js b/modules/menus/power/verification.js index eeab044..6cdfc8e 100644 --- a/modules/menus/power/verification.js +++ b/modules/menus/power/verification.js @@ -7,40 +7,46 @@ export default () => transition: "crossfade", child: Widget.Box({ class_name: "verification", - vertical: true, - children: [ - Widget.Box({ - class_name: "text-box", - vertical: true, - children: [ - Widget.Label({ - class_name: "title", - label: powermenu.bind("title").as(t => t.toUpperCase()), - }), - Widget.Label({ - class_name: "desc", - label: powermenu.bind("title").as(p => `Are you sure you want to ${p.toLowerCase()}?`), - }), - ], - }), - Widget.Box({ - class_name: "buttons horizontal", - vexpand: true, - vpack: "end", - homogeneous: true, - children: [ - Widget.Button({ - class_name: "verification-button bar-verification_yes", - child: Widget.Label("Yes"), - on_clicked: powermenu.exec, - }), - Widget.Button({ - class_name: "verification-button bar-verification_no", - child: Widget.Label("No"), - on_clicked: () => App.toggleWindow("verification"), - }), - ], - }), - ], + child: Widget.Box({ + class_name: "verification-content", + expand: true, + vertical: true, + children: [ + Widget.Box({ + class_name: "text-box", + vertical: true, + children: [ + Widget.Label({ + class_name: "title", + label: powermenu.bind("title").as((t) => t.toUpperCase()), + }), + Widget.Label({ + class_name: "desc", + label: powermenu + .bind("title") + .as((p) => `Are you sure you want to ${p.toLowerCase()}?`), + }), + ], + }), + Widget.Box({ + class_name: "buttons horizontal", + vexpand: true, + vpack: "end", + homogeneous: true, + children: [ + Widget.Button({ + class_name: "verification-button bar-verification_yes", + child: Widget.Label("Yes"), + on_clicked: powermenu.exec, + }), + Widget.Button({ + class_name: "verification-button bar-verification_no", + child: Widget.Label("No"), + on_clicked: () => App.toggleWindow("verification"), + }), + ], + }), + ], + }), }), }); diff --git a/scss/menus/dashboard.scss b/scss/menus/dashboard.scss index 0b79a6f..1397577 100644 --- a/scss/menus/dashboard.scss +++ b/scss/menus/dashboard.scss @@ -131,7 +131,7 @@ &:not(:last-child) { margin-right: 1em; } - + &.wifi { background: $mauve; } @@ -147,25 +147,40 @@ &.input { background: $pink; } + &.wifi:hover { + background: transparentize($mauve, 0.7); + } + &.bluetooth:hover { + background: transparentize($sky, 0.7); + } + &.notifications:hover { + background: transparentize($yellow, 0.7); + } + &.playback:hover { + background: transparentize($maroon, 0.7); + } + &.input:hover { + background: transparentize($pink, 0.7); + } &:hover { - background: $surface2; + background: $surface1; } &.disabled { background: $surface2; &.wifi:hover { - background: $mauve; + background: transparentize($mauve, 0.7); } &.bluetooth:hover { - background: $sky; + background: transparentize($sky, 0.7); } &.notifications:hover { - background: $yellow; + background: transparentize($yellow, 0.7); } &.playback:hover { - background: $maroon; + background: transparentize($maroon, 0.7); } &.input:hover { - background: $pink; + background: transparentize($pink, 0.7); } } } diff --git a/scss/menus/media.scss b/scss/menus/media.scss index 3da7e15..b7cf6bd 100644 --- a/scss/menus/media.scss +++ b/scss/menus/media.scss @@ -8,22 +8,19 @@ margin: 1.3em 0em; } - .media-indicator-items { - margin: 1rem; - margin-bottom: 1.3rem; + .menu-items-section { + border-radius: 0.4em; + padding: 0em; } - .media-indicator-current-album-cover { - border-radius: 0.25em; - min-width: 9.5em; - min-height: 9.5em; - background-size: contain; - background-repeat: no-repeat; + .menu-content { + border-radius: 0.4em; + background-size: cover; background-position: center; } - .media-indicator-right-section { - margin-left: 2em; + .media-content { + margin: 1em; } .media-indicator-current-song-name { @@ -66,7 +63,7 @@ border-radius: 0.2rem; &.disabled { - background: $surface0; + background: $surface2; } &.enabled { @@ -91,7 +88,7 @@ margin-top: 1rem; trough { - background: $surface0; + background: $surface2; border-radius: 0.3rem; highlight, diff --git a/scss/menus/power.scss b/scss/menus/power.scss index fd50b83..bc5322c 100644 --- a/scss/menus/power.scss +++ b/scss/menus/power.scss @@ -10,11 +10,18 @@ $popover-padding: 0.6rem * 1.6; window#verification .verification { @include floating-widget; + background: $crust; padding: 0.35em * 1.6 * 1.5; min-width: 20em; min-height: 6em; font-size: 1.3em; + .verification-content { + background: $base; + border-radius: 0.4em; + padding: 1em; + } + .text-box { margin-bottom: 0.3em; @@ -33,45 +40,50 @@ window#verification .verification { } .verification-button { - background: $crust; + background: $base; padding: 0.7em 0em; margin: 0.4em 1.7em; - border: 0.15em solid; - border-color: $crust; border-radius: 0.3em; opacity: 1; transition: border-color 0.2s ease-in-out; transition: opacity .3s ease-in-out; + &.bar-verification_yes { + background-color: $green; + } + &.bar-verification_no { + background-color: $red; + } + &:hover { - &.bar-verification_yes{ - border-color: $green; - transition: border-color 0.2s ease-in-out; + &.bar-verification_yes { + background: $lavender; + transition: background-color 0.2s ease-in-out; } &.bar-verification_no { - border-color: $red; - transition: border-color 0.2s ease-in-out; + background: $lavender; + transition: background-color 0.2s ease-in-out; } } &:focus { &.bar-verification_yes{ - border-color: $green; - transition: border-color 0.2s ease-in-out; + background: $lavender; + transition: background 0.2s ease-in-out; } &.bar-verification_no { - border-color: $red; - transition: border-color 0.2s ease-in-out; + background: $lavender; + transition: background 0.2s ease-in-out; } } &:active { &.bar-verification_yes { - border-color: rgba($green, 0.4); - transition: border-color 0.2s ease-in-out; + background: rgb($lavender, 0.4); + transition: background 0.2s ease-in-out; } &.bar-verification_no { - border-color: rgba($red, 0.4); - transition: border-color 0.2s ease-in-out; + background: rgb($lavender, 0.4); + transition: background 0.2s ease-in-out; } image { @@ -85,10 +97,10 @@ window#verification .verification { } } .bar-verification_no label { - color: $red; + color: $mantle; } .bar-verification_yes label { - color: $green; + color: $mantle; } } diff --git a/style.css b/style.css index 98fa48f..4356f9f 100644 --- a/style.css +++ b/style.css @@ -678,11 +678,17 @@ window#verification .verification { color: #9278b6; border-radius: 0.5rem; padding: 1.5rem; + background: #11111b; padding: 0.84em; min-width: 20em; min-height: 6em; font-size: 1.3em; } +window#verification .verification .verification-content { + background: #1e1e2e; + border-radius: 0.4em; + padding: 1em; +} window#verification .verification .text-box { margin-bottom: 0.3em; } @@ -698,39 +704,43 @@ window#verification .verification .text-box .desc { padding: 1em 3em; } window#verification .verification .verification-button { - background: #11111b; + background: #1e1e2e; padding: 0.7em 0em; margin: 0.4em 1.7em; - border: 0.15em solid; - border-color: #11111b; border-radius: 0.3em; opacity: 1; transition: border-color 0.2s ease-in-out; transition: opacity 0.3s ease-in-out; } +window#verification .verification .verification-button.bar-verification_yes { + background-color: #a6e3a1; +} +window#verification .verification .verification-button.bar-verification_no { + background-color: #f38ba8; +} window#verification .verification .verification-button:hover.bar-verification_yes { - border-color: #a6e3a1; - transition: border-color 0.2s ease-in-out; + background: #b4befe; + transition: background-color 0.2s ease-in-out; } window#verification .verification .verification-button:hover.bar-verification_no { - border-color: #f38ba8; - transition: border-color 0.2s ease-in-out; + background: #b4befe; + transition: background-color 0.2s ease-in-out; } window#verification .verification .verification-button:focus.bar-verification_yes { - border-color: #a6e3a1; - transition: border-color 0.2s ease-in-out; + background: #b4befe; + transition: background 0.2s ease-in-out; } window#verification .verification .verification-button:focus.bar-verification_no { - border-color: #f38ba8; - transition: border-color 0.2s ease-in-out; + background: #b4befe; + transition: background 0.2s ease-in-out; } window#verification .verification .verification-button:active.bar-verification_yes { - border-color: rgba(166, 227, 161, 0.4); - transition: border-color 0.2s ease-in-out; + background: rgba(180, 190, 254, 0.4); + transition: background 0.2s ease-in-out; } window#verification .verification .verification-button:active.bar-verification_no { - border-color: rgba(243, 139, 168, 0.4); - transition: border-color 0.2s ease-in-out; + background: rgba(180, 190, 254, 0.4); + transition: background 0.2s ease-in-out; } window#verification .verification .verification-button:active image { opacity: 0.3; @@ -741,10 +751,10 @@ window#verification .verification .verification-button:active label { transition: opacity 0.3s ease-in-out; } window#verification .verification .bar-verification_no label { - color: #f38ba8; + color: #181825; } window#verification .verification .bar-verification_yes label { - color: #a6e3a1; + color: #181825; } window#powermenu .powermenu { @@ -992,20 +1002,17 @@ window#powermenu .powermenu.box { .menu-items-container.media .menu-section-container { margin: 1.3em 0em; } -.menu-items-container.media .media-indicator-items { - margin: 1rem; - margin-bottom: 1.3rem; +.menu-items-container.media .menu-items-section { + border-radius: 0.4em; + padding: 0em; } -.menu-items-container.media .media-indicator-current-album-cover { - border-radius: 0.25em; - min-width: 9.5em; - min-height: 9.5em; - background-size: contain; - background-repeat: no-repeat; +.menu-items-container.media .menu-content { + border-radius: 0.4em; + background-size: cover; background-position: center; } -.menu-items-container.media .media-indicator-right-section { - margin-left: 2em; +.menu-items-container.media .media-content { + margin: 1em; } .menu-items-container.media .media-indicator-current-song-name { margin-bottom: 0.75rem; @@ -1040,7 +1047,7 @@ window#powermenu .powermenu.box { border-radius: 0.2rem; } .menu-items-container.media .media-indicator-control-button.disabled { - background: #313244; + background: #585b70; } .menu-items-container.media .media-indicator-control-button.enabled { background: #b4befe; @@ -1058,7 +1065,7 @@ window#powermenu .powermenu.box { margin-top: 1rem; } .menu-items-container.media .menu-slider.media.progress trough { - background: #313244; + background: #585b70; border-radius: 0.3rem; } .menu-items-container.media .menu-slider.media.progress trough highlight, @@ -1434,26 +1441,41 @@ window#powermenu .powermenu.box { .dashboard-content-items .controls-container button.input { background: #f5c2e7; } +.dashboard-content-items .controls-container button.wifi:hover { + background: rgba(203, 166, 247, 0.3); +} +.dashboard-content-items .controls-container button.bluetooth:hover { + background: rgba(137, 220, 235, 0.3); +} +.dashboard-content-items .controls-container button.notifications:hover { + background: rgba(249, 226, 175, 0.3); +} +.dashboard-content-items .controls-container button.playback:hover { + background: rgba(235, 160, 172, 0.3); +} +.dashboard-content-items .controls-container button.input:hover { + background: rgba(245, 194, 231, 0.3); +} .dashboard-content-items .controls-container button:hover { - background: #585b70; + background: #45475a; } .dashboard-content-items .controls-container button.disabled { background: #585b70; } .dashboard-content-items .controls-container button.disabled.wifi:hover { - background: #cba6f7; + background: rgba(203, 166, 247, 0.3); } .dashboard-content-items .controls-container button.disabled.bluetooth:hover { - background: #89dceb; + background: rgba(137, 220, 235, 0.3); } .dashboard-content-items .controls-container button.disabled.notifications:hover { - background: #f9e2af; + background: rgba(249, 226, 175, 0.3); } .dashboard-content-items .controls-container button.disabled.playback:hover { - background: #eba0ac; + background: rgba(235, 160, 172, 0.3); } .dashboard-content-items .controls-container button.disabled.input:hover { - background: #f5c2e7; + background: rgba(245, 194, 231, 0.3); } .dashboard-content-items .stats-container { margin-top: 0em; diff --git a/style.css.map b/style.css.map index cf3e17f..e1d93d6 100644 --- a/style.css.map +++ b/style.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":["scss/main.scss","scss/common/common.scss","scss/colors.scss","scss/common/widget-button.scss","scss/bar/menu.scss","scss/bar/audio.scss","scss/bar/media.scss","scss/bar/network.scss","scss/bar/bluetooth.scss","scss/bar/clock.scss","scss/bar/workspace.scss","scss/bar/window_title.scss","scss/bar/systray.scss","scss/bar/notifications.scss","scss/bar/power.scss","scss/bar/bar.scss","scss/bar/battery.scss","scss/menus/menu.scss","scss/menus/power.scss","scss/common/floating-widget.scss","scss/menus/audiomenu.scss","scss/menus/network.scss","scss/menus/bluetooth.scss","scss/menus/media.scss","scss/menus/notifications.scss","scss/menus/calendar.scss","scss/menus/energy.scss","scss/menus/dashboard.scss","scss/notifications/popups.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;;;ACFF;EACE;EACA;EACA,kBCJgB;EDKhB;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI,kBClBW;;ADoBf;EACE,OCrBa;;ADuBf;EACE;EACA;EACA;EACA;;AAGJ;EACE;EACA;EACA,kBCjCe;;;ADqCnB;EACE;EACA;EACA;EACA,OCzCiB;;;AD4CnB;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA,kBChEiB;EDiEjB;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;AAAA;EAEE;EACA,kBChFgB;;;ADmFlB;AAAA;EAEE;EACA,kBCtFgB;;;ADyFlB;AAAA;AAAA;EAGE,OC5FgB;ED6FhB,kBC9CW;;;ADiDb;AAAA;AAAA;EAGE;EACA,kBCrDW;;;ADwDb;AAAA;AAAA;EAGE;EACA,kBC5DW;;;AD+Db;EACE;EACA;EACA;EACA;EACA,kBClHiB;EDmHjB;EACA;EACA;;;AAGF;EACE,kBC3EW;;;AD8Eb;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA,kBCzIc;ED0Id;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA,kBClKiB;;;ADqKnB;EACE;EACA,kBCzHW;;;AD4Hb;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA,OC3IW;ED4IX,kBC3LgB;ED4LhB;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE,kBCnKM;EDoKN,OChLK;EDiLL;;;AAGF;EACE;EACA;EACA,kBCnNiB;;;ADsNnB;EACE;IACE;;;AAIJ;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AEjOF;EACE,YDoCM;ECnCN;EACA;EACA;EACA;EACA;EACA;EACA;EACA,cD4BM;EC3BN;EACA;;AAEA;EACE;EACA,cDSO;ECRP;;AAGF;EAEE;EACA,cDEO;;ACCT;EA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","file":"style.css"} \ No newline at end of file +{"version":3,"sourceRoot":"","sources":["scss/main.scss","scss/common/common.scss","scss/colors.scss","scss/common/widget-button.scss","scss/bar/menu.scss","scss/bar/audio.scss","scss/bar/media.scss","scss/bar/network.scss","scss/bar/bluetooth.scss","scss/bar/clock.scss","scss/bar/workspace.scss","scss/bar/window_title.scss","scss/bar/systray.scss","scss/bar/notifications.scss","scss/bar/power.scss","scss/bar/bar.scss","scss/bar/battery.scss","scss/menus/menu.scss","scss/menus/power.scss","scss/common/floating-widget.scss","scss/menus/audiomenu.scss","scss/menus/network.scss","scss/menus/bluetooth.scss","scss/menus/media.scss","scss/menus/notifications.scss","scss/menus/calendar.scss","scss/menus/energy.scss","scss/menus/dashboard.scss","scss/notifications/popups.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;;;ACFF;EACE;EACA;EACA,kBCJgB;EDKhB;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI,kBClBW;;ADoBf;EACE,OCrBa;;ADuBf;EACE;EACA;EACA;EACA;;AAGJ;EACE;EACA;EACA,kBCjCe;;;ADqCnB;EACE;EACA;EACA;EACA,OCzCiB;;;AD4CnB;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA,kBChEiB;EDiEjB;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;AAAA;EAEE;EACA,kBChFgB;;;ADmFlB;AAAA;EAEE;EACA,kBCtFgB;;;ADyFlB;AAAA;AAAA;EAGE,OC5FgB;ED6FhB,kBC9CW;;;ADiDb;AAAA;AAAA;EAGE;EACA,kBCrDW;;;ADwDb;AAAA;AAAA;EAGE;EACA,kBC5DW;;;AD+Db;EACE;EACA;EACA;EACA;EACA,kBClHiB;EDmHjB;EACA;EACA;;;AAGF;EACE,kBC3EW;;;AD8Eb;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA,kBCzIc;ED0Id;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA,kBClKiB;;;ADqKnB;EACE;EACA,kBCzHW;;;AD4Hb;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA,OC3IW;ED4IX,kBC3LgB;ED4LhB;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE,kBCnKM;EDoKN,OChLK;EDiLL;;;AAGF;EACE;EACA;EACA,kBCnNiB;;;ADsNnB;EACE;IACE;;;AAIJ;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AEjOF;EACE,YDoCM;ECnCN;EACA;EACA;EACA;EACA;EACA;EACA;EACA,cD4BM;EC3BN;EACA;;AAEA;EACE;EACA,cDSO;ECRP;;AAGF;EAEE;EACA,cDEO;;ACCT;EA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","file":"style.css"} \ No newline at end of file