mirror of
https://github.com/zephrynis/nix-flake.git
synced 2026-02-18 20:21:53 +00:00
- Add complete colorshell v2.0.3 configuration to home/ags-config/ - Disable runner plugin and NightLight tile (incompatible with NixOS) - Customize SCSS with full opacity (no transparency) - Add dark pale blue color scheme in home/pywal-colors/ - Configure Papirus-Dark icon theme via home-manager - Make ~/.config/ags/ immutable and managed by Nix store - Auto-deploy pywal colors to ~/.cache/wal/colors.json All AGS configuration is now reproducible and version controlled.
39 lines
1.2 KiB
TypeScript
39 lines
1.2 KiB
TypeScript
import { Accessor } from "ags";
|
|
import { tr } from "../i18n/intl";
|
|
import { CustomDialog } from "./CustomDialog";
|
|
import { Astal } from "ags/gtk4";
|
|
|
|
|
|
export type AskPopupProps = {
|
|
title?: string | Accessor<string>;
|
|
text: string | Accessor<string>;
|
|
cancelText?: string;
|
|
acceptText?: string;
|
|
onAccept?: () => void;
|
|
onCancel?: () => void;
|
|
};
|
|
|
|
/**
|
|
* A Popup Widget that asks yes or no to a defined promt.
|
|
* Runs onAccept() when user accepts, or else onDecline() when
|
|
* user doesn't accept / closes window.
|
|
* This window isn't usually registered in this shell windowing
|
|
* system.
|
|
*/
|
|
export function AskPopup(props: AskPopupProps): Astal.Window {
|
|
let accepted: boolean = false;
|
|
|
|
return <CustomDialog namespace={"ask-popup"} widthRequest={400} heightRequest={250}
|
|
title={props.title ?? tr("ask_popup.title")} text={props.text}
|
|
onFinish={() => !accepted && props.onCancel?.()} options={[
|
|
{ text: props.cancelText ?? tr("cancel") },
|
|
{
|
|
text: props.acceptText ?? tr("accept"),
|
|
onClick: () => {
|
|
accepted = true;
|
|
props.onAccept?.();
|
|
}
|
|
}
|
|
]} /> as Astal.Window;
|
|
}
|