Sync config from arch

- hypr/apps.lua
- hypr/autostart.lua
- hypr/envs.lua
- hypr/hyprland.lua
- hypr/hyprsunset.conf
- hypr/input.lua
- hypr/looknfeel.lua
- hypr/omasettings.lua
- hypr/xdph.conf
- omarchy/branding/about.txt
- omarchy/branding/screensaver.txt
- omarchy/extensions/omarchy-menu.jsonc
- omarchy/hooks/battery-low.d/play-warning-sound.sample
- omarchy/hooks/font-set.d/show-font-notification.sample
- omarchy/hooks/post-boot.d/weather.sample
- omarchy/hooks/post-update.d/install-voxtype.hook
- omarchy/hooks/post-update.d/setup-agent.hook
- omarchy/hooks/post-update.d/setup-fingerprint.hook
- omarchy/hooks/post-update.d/show-update-notification.sample
- omarchy/hooks/pre-refresh-pacman.d/add-custom-repo.sample
- omarchy/hooks/theme-set.d/show-theme-notification.sample
- omarchy/shell.json
- omarchy/shell.toml
- omarchy/theme.name
- omarchy/themes/azure-glow/README.md
- omarchy/themes/azure-glow/alacritty.toml
- omarchy/themes/azure-glow/btop.theme
- omarchy/themes/azure-glow/hyprland.conf
- omarchy/themes/azure-glow/hyprlock.conf
- omarchy/themes/azure-glow/icons.theme
- … 269 more
This commit is contained in:
asepharyana
2026-09-23 15:19:12 +07:00
commit 1cdb82a76f
300 changed files with 78143 additions and 0 deletions
@@ -0,0 +1,105 @@
import QtQuick
import qs.Commons
import qs.Ui
import "BitwardenModel.js" as Model
// One labelled, copyable field on the detail screen.
//
// The detail view drew each of these longhand -- a PanelSectionHeader, a
// BorderSurface, a Text and one or two PanelActionButtons, forty lines at a
// time. That was tolerable while only a login had fields worth showing.
// Cards and identities together add sixteen more, and sixteen more copies of
// the same forty lines is how the surfaces drift apart: one row elides and
// the next does not, one masks and the next forgets to.
//
// Empty is not a state worth drawing. `visible` is false when there is no
// value, so a caller can declare every field a type can carry and let the
// sparse ones -- most of an identity, most of the time -- take themselves off
// the screen rather than leaving labelled blanks behind.
Column {
id: root
required property string label
required property string value
required property color foreground
required property string fontFamily
// A value that should not sit in plain sight on a shared screen: a card
// number, a security code, a social security number. Masked until revealed,
// and the reveal is per-field rather than a screen-wide switch.
property bool sensitive: false
property bool revealed: false
// What the flash message calls this once it is on the clipboard.
property string copyLabel: label
// Appended to the copy button's tooltip, e.g. "(n)". Empty when the field
// has no key bound to it.
property string shortcutHint: ""
// The same, for the reveal button. Separate because only one field per item
// is reachable by `v` -- promising it on the others would be a lie, and the
// reveal on each field is independent of every other.
property string revealHint: ""
// The copy button's glyph. Defaults to a plain copy icon; callers pass a
// semantic one where the detail view already had it, so a converted row
// keeps the icon it has always drawn.
property string copyIcon: "󰈙"
signal copyRequested()
signal revealToggled()
readonly property bool masked: root.sensitive && !root.revealed
visible: root.value !== ""
width: parent ? parent.width : 0
spacing: Style.space(4)
PanelSectionHeader { text: root.label.toUpperCase() }
BorderSurface {
width: parent.width
implicitHeight: Style.space(34)
radius: Style.cornerRadius
color: Style.hoverFillFor(root.foreground, Color.accent)
borderSpec: Border.controlSpec("normal", root.foreground, Color.accent)
Row {
anchors.fill: parent
anchors.leftMargin: Style.space(10)
anchors.rightMargin: Style.space(6)
Text {
textFormat: Text.PlainText
anchors.verticalCenter: parent.verticalCenter
text: root.masked ? Model.maskString(root.value) : root.value
color: root.foreground
font.family: root.fontFamily
font.pixelSize: Style.font.body
elide: Text.ElideRight
width: parent.width - fieldActions.width - Style.space(10)
}
Row {
id: fieldActions
anchors.verticalCenter: parent.verticalCenter
spacing: Style.space(4)
PanelActionButton {
visible: root.sensitive
iconText: root.revealed ? "󰈉" : "󰈈"
tooltipText: (root.revealed ? "Hide " : "Reveal ") + root.copyLabel.toLowerCase()
+ (root.revealHint === "" ? "" : " (" + root.revealHint + ")")
fontFamily: root.fontFamily
onClicked: root.revealToggled()
}
PanelActionButton {
iconText: root.copyIcon
tooltipText: "Copy " + root.copyLabel.toLowerCase()
+ (root.shortcutHint === "" ? "" : " (" + root.shortcutHint + ")")
fontFamily: root.fontFamily
onClicked: root.copyRequested()
}
}
}
}
}