Finished notification popup implementation.

This commit is contained in:
Jas Singh
2024-06-17 22:43:04 -07:00
parent 296fbde42a
commit 77811a75a2
9 changed files with 135 additions and 105 deletions

View File

@@ -28,15 +28,6 @@ const workspaceMonitorMap = {
2: [1,2,3,8,9,10], 2: [1,2,3,8,9,10],
} }
export default {
style: `${App.configDir}/style.css`,
closeWindowDelay: {
sideright: 350,
launcher: 350,
bar0: 350,
},
};
App.config({ App.config({
windows: [ windows: [
...MenuWindows, ...MenuWindows,
@@ -45,4 +36,10 @@ App.config({
BarAlt(1, workspaceMonitorMap), BarAlt(1, workspaceMonitorMap),
Bar(2, workspaceMonitorMap), Bar(2, workspaceMonitorMap),
], ],
style: `${App.configDir}/style.css`,
closeWindowDelay: {
sideright: 350,
launcher: 350,
bar0: 350,
},
}); });

View File

@@ -17,7 +17,7 @@ const BatteryLabel = () => {
class_name: "battery", class_name: "battery",
visible: battery.bind("available"), visible: battery.bind("available"),
children: [ children: [
Widget.Icon({ icon }), // Widget.Icon({ icon }),
Widget.LevelBar({ Widget.LevelBar({
widthRequest: 20, widthRequest: 20,
vpack: "center", vpack: "center",

View File

@@ -9,7 +9,7 @@ export const Padding = (name) =>
setup: (w) => w.on("button-press-event", () => App.toggleWindow(name)), setup: (w) => w.on("button-press-event", () => App.toggleWindow(name)),
}); });
const moveBoxToCursor = (self, minWidth, minHeight, child) => { const moveBoxToCursor = (self, minWidth, minHeight) => {
globalMousePos.connect("changed", ({ value }) => { globalMousePos.connect("changed", ({ value }) => {
let monWidth = hyprland.monitors[hyprland.active.monitor.id].width; let monWidth = hyprland.monitors[hyprland.active.monitor.id].width;
let monHeight = hyprland.monitors[hyprland.active.monitor.id].height; let monHeight = hyprland.monitors[hyprland.active.monitor.id].height;
@@ -56,7 +56,7 @@ export default ({
keymode: "on-demand", keymode: "on-demand",
exclusivity, exclusivity,
layer: "top", layer: "top",
anchor: ["top", "bottom", "right", "left"], anchor: ["top"],
child: Widget.EventBox({ child: Widget.EventBox({
on_primary_click: () => App.closeWindow(name), on_primary_click: () => App.closeWindow(name),
on_secondary_click: () => App.closeWindow(name), on_secondary_click: () => App.closeWindow(name),
@@ -68,8 +68,18 @@ export default ({
return true; return true;
}, },
setup: (self) => { setup: (self) => {
moveBoxToCursor(self, minWidth, minHeight, child); moveBoxToCursor(self, minWidth, minHeight);
}, },
child: Widget.Box({
css: "padding: 1px;",
child: Widget.Revealer({
revealChild: false,
setup: (self) =>
self.hook(App, (_, wname, visible) => {
if (wname === name) self.reveal_child = visible;
}),
transition: "crossfade",
transitionDuration: 500,
child: Widget.Box({ child: Widget.Box({
class_name: "dropdown-menu-container", class_name: "dropdown-menu-container",
can_focus: true, can_focus: true,
@@ -77,5 +87,7 @@ export default ({
}), }),
}), }),
}), }),
}),
}),
...props, ...props,
}); });

View File

@@ -288,7 +288,6 @@ export default () => {
child: Widget.Button({ child: Widget.Button({
class_name: "menu-icon-button", class_name: "menu-icon-button",
on_primary_click: () => { on_primary_click: () => {
Utils.notify("Yoyo");
Utils.execAsync([ Utils.execAsync([
"bash", "bash",
"-c", "-c",

View File

@@ -8,6 +8,8 @@ export default () => {
class_name: "notifications-window", class_name: "notifications-window",
layer: "top", layer: "top",
anchor: ["top", "right"], anchor: ["top", "right"],
monitor: 2,
exclusivity: "ignore",
child: Widget.Box({ child: Widget.Box({
vertical: true, vertical: true,
class_name: "notification-card-container", class_name: "notification-card-container",
@@ -17,18 +19,38 @@ export default () => {
return; return;
} }
return (self.children = notifs.popups.map((notif) => { const imageContainer = (notif) => {
return Widget.Box({ if (notif.image !== undefined) {
class_name: "notification-card", return [
children: [
Widget.Box({ Widget.Box({
class_name: "notification-card-image-container", class_name: "notification-card-image-container",
hpack: "start", hpack: "center",
vexpand: true,
child: Widget.Box({ child: Widget.Box({
hpack: "center",
vexpand: true,
class_name: "notification-card-image", class_name: "notification-card-image",
css: `background-image: url("${notif.image}")`, css: `background-image: url("${notif.image}")`,
}), }),
}), }),
];
}
return [];
};
return (self.children = notifs.popups.map((notif, index) => {
return Widget.Button({
on_primary_click: () => {
notifs.CloseNotification(notif.id);
},
on_secondary_click: () => {
notifs.CloseNotification(notif.id);
},
child: Widget.Box({
class_name: "notification-card",
children: [
...imageContainer(notif),
Widget.Box({ Widget.Box({
vertical: true, vertical: true,
hpack: "end", hpack: "end",
@@ -52,7 +74,7 @@ export default () => {
Widget.Label({ Widget.Label({
class_name: "notification-card-body-label", class_name: "notification-card-body-label",
useMarkup: true, useMarkup: true,
lines: 3, lines: 2,
wrap: true, wrap: true,
truncate: "end", truncate: "end",
label: notif["body"], label: notif["body"],
@@ -73,6 +95,7 @@ export default () => {
], ],
}), }),
], ],
}),
}); });
})); }));
}); });

View File

@@ -42,14 +42,6 @@
margin-left: 2.1rem; margin-left: 2.1rem;
} }
.search-devices-container {
min-height: 8rem;
}
.empty-bt-devices-container {
margin-top: 2rem;
}
.bluetooth-isconnecting { .bluetooth-isconnecting {
color: $sky; color: $sky;
} }

View File

@@ -1,14 +1,23 @@
@import "../colors"; @import "../colors";
.notifications-window {
margin-top: 3.5rem;
}
.notification-card { .notification-card {
color: $text; color: $text;
background: $mantle; background: $mantle;
margin-top: 0.5rem;
margin-right: 0.5rem; margin-right: 0.5rem;
border: 0.15rem solid $lavender; border: 0.15rem solid $lavender;
min-width: 32rem; min-width: 25rem;
min-height: 7rem; min-height: 6rem;
border-radius: 0.8rem; border-radius: 0.8rem;
&:first-child {
margin-top: 3.5rem;
}
&:not(:first-child) {
margin-top: 1.5rem;
}
} }
.notification-card-container { .notification-card-container {
@@ -17,18 +26,17 @@
.notification-card-image-container { .notification-card-image-container {
margin: 1.5rem 0.75rem; margin: 0.5rem 0.75rem;
min-width: 4rem; min-width: 4rem;
min-height: 4rem; min-height: 4rem;
// border: 0.15rem solid $surface2;
border-radius: 0.7rem; border-radius: 0.7rem;
} }
.notification-card-image { .notification-card-image {
min-width: 4rem; border-radius: 0.5rem;
min-height: 4rem; min-width: 3rem;
// padding: 1rem 1rem; min-height: 3rem;
padding: 1rem 1rem;
margin: 0.5rem 0rem; margin: 0.5rem 0rem;
margin-left: 0.5rem;
background-size: contain; background-size: contain;
background-repeat: no-repeat; background-repeat: no-repeat;
} }
@@ -37,19 +45,19 @@
min-width: 3.5rem; min-width: 3.5rem;
min-height: 3.5rem; min-height: 3.5rem;
padding: 0.6rem 0.6rem; padding: 0.6rem 0.6rem;
margin: 0.2rem 0rem; // margin: 0.2rem 0rem;
margin-right: 1rem; margin-right: 1rem;
} }
.notification-card-appname-label { .notification-card-appname-label {
margin-top: 0.4rem; // margin-top: 0.4rem;
font-size: 0.9rem; font-size: 0.9rem;
color: $pink; color: $pink;
} }
.notification-card-header-label { .notification-card-header-label {
font-size: 1.15rem; font-size: 1.15rem;
margin-bottom: 0.25rem; // margin-bottom: 0.25rem;
color: $lavender; color: $lavender;
} }

View File

@@ -826,45 +826,47 @@ window#powermenu .powermenu.box {
margin-left: 2.1rem; margin-left: 2.1rem;
} }
.search-devices-container {
min-height: 8rem;
}
.empty-bt-devices-container {
margin-top: 2rem;
}
.bluetooth-isconnecting { .bluetooth-isconnecting {
color: #89dceb; color: #89dceb;
} }
.notifications-window {
margin-top: 3.5rem;
}
.notification-card { .notification-card {
color: #cdd6f4; color: #cdd6f4;
background: #181825; background: #181825;
margin-top: 0.5rem;
margin-right: 0.5rem; margin-right: 0.5rem;
border: 0.15rem solid #b4befe; border: 0.15rem solid #b4befe;
min-width: 32rem; min-width: 25rem;
min-height: 7rem; min-height: 6rem;
border-radius: 0.8rem; border-radius: 0.8rem;
} }
.notification-card:first-child {
margin-top: 3.5rem;
}
.notification-card:not(:first-child) {
margin-top: 1.5rem;
}
.notification-card-container { .notification-card-container {
padding: 1px; padding: 1px;
} }
.notification-card-image-container { .notification-card-image-container {
margin: 1.5rem 0.75rem; margin: 0.5rem 0.75rem;
min-width: 4rem; min-width: 4rem;
min-height: 4rem; min-height: 4rem;
border-radius: 0.7rem; border-radius: 0.7rem;
} }
.notification-card-image { .notification-card-image {
min-width: 4rem; border-radius: 0.5rem;
min-height: 4rem; min-width: 3rem;
min-height: 3rem;
padding: 1rem 1rem;
margin: 0.5rem 0rem; margin: 0.5rem 0rem;
margin-left: 0.5rem;
background-size: contain; background-size: contain;
background-repeat: no-repeat; background-repeat: no-repeat;
} }
@@ -873,19 +875,16 @@ window#powermenu .powermenu.box {
min-width: 3.5rem; min-width: 3.5rem;
min-height: 3.5rem; min-height: 3.5rem;
padding: 0.6rem 0.6rem; padding: 0.6rem 0.6rem;
margin: 0.2rem 0rem;
margin-right: 1rem; margin-right: 1rem;
} }
.notification-card-appname-label { .notification-card-appname-label {
margin-top: 0.4rem;
font-size: 0.9rem; font-size: 0.9rem;
color: #f5c2e7; color: #f5c2e7;
} }
.notification-card-header-label { .notification-card-header-label {
font-size: 1.15rem; font-size: 1.15rem;
margin-bottom: 0.25rem;
color: #b4befe; color: #b4befe;
} }

View File

@@ -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/power.scss","scss/bar/bar.scss","scss/menus/menu.scss","scss/menus/power.scss","scss/common/floating-widget.scss","scss/menus/audiomenu.scss","scss/menus/bluetooth.scss","scss/notifications/popups.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;;;ACJF;EACE;EACA;EACA,kBCFgB;EDGhB;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI,kBChBW;;ADkBf;EACE,OCnBa;;ADqBf;EACE;EACA;EACA;EACA;;AAGJ;EACE;EACA;EACA,kBC/Be;;;ADmCnB;EACE;EACA;EACA;EACA,OCvCiB;;;AD0CnB;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA,kBC9DiB;ED+DjB;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;AAAA;EAEE;EACA,kBC9EgB;;;ADiFlB;AAAA;EAEE;EACA,kBCpFgB;;;ADuFlB;AAAA;AAAA;EAGE,OC1FgB;ED2FhB,kBC7CW;;;ADgDb;AAAA;AAAA;EAGE;EACA,kBCpDW;;;ADuDb;AAAA;AAAA;EAGE;EACA,kBC3DW;;;AD8Db;EACE;EACA;EACA;EACA;EACA,kBChHiB;EDiHjB;EACA;EACA;;;AAGF;EACE,kBC1EW;;;AD6Eb;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA,kBCvIc;EDwId;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA,kBChKiB;;;ADmKnB;EACE;EACA,kBCxHW;;;AD2Hb;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA,OC1IW;ED2IX,kBCzLgB;ED0LhB;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE,kBC1MgB;ED2MhB,OC5Mc;ED6Md;;;AAGF;EACE;EACA;EACA,kBCjNiB;;;ADoNnB;EACE;IACE;;;AAIJ;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AE/NF;EACE,YDmCM;EClCN;EACA;EACA;EACA;EACA;EACA;EACA;EACA,cD2BM;EC1BN;EACA;;AAEA;EACE;EACA,cDSO;ECRP;;AAGF;EAEE;EACA,cDEO;;ACCT;EACE;EACA;EACA;EACA;;AAGF;EACE,YApCM;;AAwCN;EACE;EACA;;AAEF;EACE;EACA;;;AC9CN;EACE,OFsBK;EErBL;EACA;;;ACFA;EACE;;;AAIJ;EACE;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;;AAIJ;EACE;EACA,OHRM;;;AGWR;EACE,OHZM;;;AIpBR;EACE;EACA,OJoBM;;;AIjBR;EACE;EACA,OJeM;;;AKtBR;EACE,OLgBM;;;AMjBR;EACE;EACA,ONsBI;;;AMnBN;EACE,ONkBI;;;AMfN;EACE;EACA;EACA,ONsBS;EMrBT;;;AAGF;EACE,ONOI;;;AOxBN;EACE,OPeK;;;AQfL;EACE;EACA;EACA;EACA;EACA;EACA;EACA,kBRmBO;;AQjBP;EACE,kBRQG;EQPH;EACA;;AAGF;EACE,kBROA;EQNA;EACA;;;AAMN;EACE;;;AC1BF;EACE,OTeK;;;AUhBP;EACE;;;AAGF;EACE,YViCO;;;AU/BT;EACE;EACA,OVkBS;;;AUfX;EACE,kBVsBS;;;AUnBX;EACE,kBVmBS;EUlBT;;;AAGF;EACE,kBVKS;;;AW3BX;EACE,OXiBI;EWhBJ;;;ACFF;EACE,YZqCO;EYpCP;EACA;;;AAGF;EACE,YZ6BS;EY5BT;EACA;EACA;;AAEA;EACE,YZsBO;;;AYlBX;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AC5BE;EACI,YbmCD;;AajCC;AAAA;EAEI,YbcJ;EabI;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;;AAIA;EACI,YbcD;;AaXH;EACI,YbOD;EaNC;;AAkBZ;EACI,kBbVO;;AaYP;EACI,YbzBF;;Aa6BE;AAAA;EAEI,kBbnCJ;EaoCI;;AAIR;EACI;EACA,kBb7BG;Ea8BH;EACA;EACA;EACA;EACA;;AAIA;EACI,YbpCD;;AauCH;EACI,Yb3CD;Ea4CC;;AAIR;EACI,kBb1DF;;Aa8EN;EACI;EACA;EACA,YbtEO;;;AayEX;EACI,YbvEK;EawEL;EACA;EACA;EACA,ObrFG;;;AawFP;EACI;;;AAGJ;EACI;EACA;EACA,Ob/FG;;;AakGP;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI,ObvGO;EawGP;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;;;AAEJ;EACI;;;AAGJ;EACI,ObrIG;EasIH;EACA;;;AAGJ;EACI,ObtIO;EauIP;EACA;EACA;;;AAGJ;EACI,Ob7IO;;;AagJP;EACI,ObhJG;;;AaoJX;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA,ObvKO;EawKP;;;AAGJ;EACI;;;AC7MJ;AAAA;EAGI;;;AAQJ;ECTI;EACA;EACA,kBfiCG;EehCH,OfwCS;EevCT;EACA;EDMA;EACA;EACA;EACA;;AAEA;EACI,eAXE;;AAaF;EACI;EACA,OdJH;EcKG;;AAGJ;EACI,OdDD;EcEC;EACA;EACA;;AAIR;EACI,YdGA;EcFA;EACA;EACA;EACA,cdDA;EcEA,eAhCC;EAiCD;EACA;EACA;;AAGI;EACI,cd1BR;Ec2BQ;;AAEJ;EACI,cdlCV;EcmCU;;AAIJ;EACI,cdpCR;EcqCQ;;AAEJ;EACI,cd5CV;Ec6CU;;AAKJ;EACI;EACA;;AAEJ;EACI;EACA;;AAGJ;EACI;EACA;;AAEJ;EACI;EACA;;AAIZ;EACI,OdtEF;;AcwEF;EACI,OdrEA;;;AcyER;EC7FI;EACA;EACA,kBfiCG;EehCH,OfwCS;EevCT;EACA;;AD0FA;EACI;;AAGJ;EACI;;;AAIR;EACI,cdpEI;EcqEJ;EACA;EACA;;AAGI;EACI,cdhGN;;AckGE;EACI,cd/FJ;;AciGA;EACI,cdhGN;;AckGE;EACI,cdvGJ;;Ac2GA;EACI,cd9GN;;AcgHE;EACI,cd7GJ;;Ac+GA;EACI,cd9GN;;AcgHE;EACI,cdrHJ;;AcwHA;EACI;;AAEJ;EACI;;AAEJ;EACI;;AAEJ;EACI;;;AAKR;EACI,Od1IF;;Ac4IF;EACI,OdzIA;;Ac2IJ;EACI,Od9IA;;AcgJJ;EACI,Od7IF;;;AckJF;EACI,OdzJF;;Ac2JF;EACI,OdxJA;;Ac0JJ;EACI,Od7JA;;Ac+JJ;EACI,Od5JF;;;AgBxBN;EACI,OhBmBI;;;AgBhBR;EACI,OhBeI;;;AgBZR;EACI,OhBWI;;;AgBNA;AAAA;EAEI,YhBIJ;;;AgBEH;EACG,OhBHA;;;AgBOR;EACI;;;AC5BJ;EACI,OjBuBE;;;AiBpBN;EACI,OjBmBE;;;AiBhBN;EACI,OjBeE;;;AiBXD;EACG,OjBUF;;;AiBNN;EACI;;;AAGJ;EACI;EACA;;AACA;EACI,OjBFF;;;AiBMN;EACI;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI,OjB3BE;;;AkBxBN;EACE,OlB2BK;EkB1BL,YlBoCO;EkBnCP;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAIF;EACE;EACA;EACA;EAEA;;;AAEF;EACE;EACA;EAEA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA,OlB5BK;;;AkB+BP;EACE;EACA;EACA,OlBvBS;;;AkB0BX;EACE","file":"style.css"} {"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/power.scss","scss/bar/bar.scss","scss/menus/menu.scss","scss/menus/power.scss","scss/common/floating-widget.scss","scss/menus/audiomenu.scss","scss/menus/bluetooth.scss","scss/notifications/popups.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;;;ACJF;EACE;EACA;EACA,kBCFgB;EDGhB;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI,kBChBW;;ADkBf;EACE,OCnBa;;ADqBf;EACE;EACA;EACA;EACA;;AAGJ;EACE;EACA;EACA,kBC/Be;;;ADmCnB;EACE;EACA;EACA;EACA,OCvCiB;;;AD0CnB;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA,kBC9DiB;ED+DjB;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;AAAA;EAEE;EACA,kBC9EgB;;;ADiFlB;AAAA;EAEE;EACA,kBCpFgB;;;ADuFlB;AAAA;AAAA;EAGE,OC1FgB;ED2FhB,kBC7CW;;;ADgDb;AAAA;AAAA;EAGE;EACA,kBCpDW;;;ADuDb;AAAA;AAAA;EAGE;EACA,kBC3DW;;;AD8Db;EACE;EACA;EACA;EACA;EACA,kBChHiB;EDiHjB;EACA;EACA;;;AAGF;EACE,kBC1EW;;;AD6Eb;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA,kBCvIc;EDwId;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA,kBChKiB;;;ADmKnB;EACE;EACA,kBCxHW;;;AD2Hb;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA,OC1IW;ED2IX,kBCzLgB;ED0LhB;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE,kBC1MgB;ED2MhB,OC5Mc;ED6Md;;;AAGF;EACE;EACA;EACA,kBCjNiB;;;ADoNnB;EACE;IACE;;;AAIJ;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AE/NF;EACE,YDmCM;EClCN;EACA;EACA;EACA;EACA;EACA;EACA;EACA,cD2BM;EC1BN;EACA;;AAEA;EACE;EACA,cDSO;ECRP;;AAGF;EAEE;EACA,cDEO;;ACCT;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","file":"style.css"}