added three new modules (Crypto.qml, Battery.qml, Network.qml), improved Stats.qml, improved Tray.qml, optimized code in general, added a polkit agent, configurations change (check configs)
This commit is contained in:
@@ -6,12 +6,13 @@ import "themes"
|
||||
QtObject {
|
||||
id: root
|
||||
|
||||
readonly property var theme: Goldencity
|
||||
readonly property var theme: Tropicalnight
|
||||
|
||||
// ────────────────────────────────────────────────────────────────────────
|
||||
// Widgets
|
||||
// ────────────────────────────────────────────────────────────────────────
|
||||
property bool enableBgDate: true
|
||||
property bool enableBgDate: true
|
||||
property bool enablePolkit: true
|
||||
|
||||
// ────────────────────────────────────────────────────────────────────────
|
||||
// BAR
|
||||
@@ -20,62 +21,64 @@ QtObject {
|
||||
// ── Position & Dimensions ─────────────────────────────────────────────────
|
||||
property string barPosition: "bottom"
|
||||
property int barHeight: 35
|
||||
property int margin: 15
|
||||
property int margin: 20
|
||||
property int radius: 26
|
||||
|
||||
// ── Module Lists ──────────────────────────────────────────────────────────
|
||||
property var leftModules: ["ArchLogo", "Stats"]
|
||||
property var leftModules: ["Logo", "Stats", "Crypto"]
|
||||
property var centerModules: ["Workspace"]
|
||||
property var rightModules: ["Tray", "Notifications", "Volume", "Clock"]
|
||||
property var rightModules: ["Tray", "Notifications", "Volume", "Network", "Battery" ,"Clock"]
|
||||
|
||||
// ── Arch Logo ─────────────────────────────────────────────────────────────
|
||||
// ── Logo ─────────────────────────────────────────────────────────────
|
||||
property int logoIconSize: 23 // icon font size; container width scales with it
|
||||
property string logoIcon: "" // Nerd Font glyph for the logo
|
||||
|
||||
// ── Panel Styling ─────────────────────────────────────────────────────────
|
||||
property int panelBorderWidth: 1
|
||||
property int moduleSpacing: 2 // space between modules within a panel
|
||||
property int moduleSpacing: 5 // space between modules within a panel
|
||||
property int panelSpacing: 12 // gap between left / center / right panels
|
||||
property int moduleHeight: 32 // default chip height for bar modules
|
||||
property int moduleHeight: 23 // default chip height for bar modules
|
||||
|
||||
// ── Popup Styling ─────────────────────────────────────────────────────────
|
||||
property int popupRadius: 18
|
||||
property int popupBorderWidth: 1
|
||||
property int popupAnimDuration: 500
|
||||
|
||||
// ── Timezone (IANA name, e.g. "America/New_York", "Europe/London")g ──────────
|
||||
// Leave empty to use the system timezone.
|
||||
property string timezone: "America/New_York"
|
||||
|
||||
// ── Clock Popup ───────────────────────────────────────────────────────────
|
||||
// Date format shown in the clock popup.
|
||||
// "MDY" → month/day/year (e.g. 4/28/2026)
|
||||
// "DMY" → day/month/year (e.g. 28/4/2026)
|
||||
property string clockDateFormat: "DMY"
|
||||
|
||||
// Date format used in the clock popup and background date widget.
|
||||
// "MDY" → month/day/year (e.g. May 14, 2026)
|
||||
// "DMY" → day/month/year (e.g. 14 May 2026)
|
||||
property string dateFormat: "DMY"
|
||||
|
||||
// ── Tray Styling ─────────────────────────────────────────────────────────
|
||||
property int trayHeight: 26
|
||||
property int trayIconSize: 20
|
||||
property int trayToggleSize: 23 // size of the expand/collapse arrow button
|
||||
property int trayIconSize: 20 // size of each system tray item icon
|
||||
|
||||
// ── Stats Styling ─────────────────────────────────────────────────────────
|
||||
property int statsRingSize: 23
|
||||
property int statsRingFontSize: 10
|
||||
// If true, the % value is shown by default; hovering shows the label, clicking swaps back.
|
||||
// If false, the label is shown by default; hovering shows the %, clicking swaps back.
|
||||
property bool statsShowPercentByDefault: true
|
||||
// If true, text is hidden completely until you hover a ring.
|
||||
// • Hover → shows the "default" value (% when statsShowPercentByDefault, label otherwise)
|
||||
// • Click → swaps to the "other" value (label / %)
|
||||
property bool statsHideTextUntilHover: false
|
||||
property int statsRingSize: 22
|
||||
property int statsRingFontSize: 12
|
||||
property int statsIconSize: 10
|
||||
// Where the percentage label appears when stats are expanded.
|
||||
// "right" → label to the right of the ring; "left" → label to the left.
|
||||
property string statsLabelPosition: "right"
|
||||
// If true, percentage labels are visible on startup without clicking.
|
||||
property bool statsStartExpanded: false
|
||||
|
||||
// ── Volume Module ─────────────────────────────────────────────────────────
|
||||
property int volumeIconSize: 20
|
||||
property int volumeSliderHeight: 2
|
||||
property int volumeHandleSize: 20
|
||||
property int volumePopupWidth: 280
|
||||
property int volumeOutputMax: 100
|
||||
property int volumeOutputMax: 170
|
||||
property int volumeInputMax: 200
|
||||
|
||||
// ────────────────────────────────────────────────────────────────────────
|
||||
// FRAME
|
||||
// ────────────────────────────────────────────────────────────────────────
|
||||
property int frameBorderWidth: 2
|
||||
property int frameBorderWidth: 3
|
||||
|
||||
// ────────────────────────────────────────────────────────────────────────
|
||||
// NOTIFICATIONS
|
||||
@@ -100,4 +103,45 @@ QtObject {
|
||||
property bool launcherCloseOnClickOutside: true
|
||||
property bool launcherSelectFirst: false
|
||||
property bool launcherMipmapIcons: false
|
||||
|
||||
// ────────────────────────────────────────────────────────────────────────
|
||||
// CRYPTO
|
||||
// ────────────────────────────────────────────────────────────────────────
|
||||
|
||||
// ── Coin/currency pairs to cycle ──────────────────────────────────────────
|
||||
// Each entry is a { coin, currency } object. The bar chip rotates to the
|
||||
// next pair after each successful CoinGecko fetch.
|
||||
//
|
||||
// coin – CoinGecko coin ID (find them at https://api.coingecko.com/api/v3/coins/list)
|
||||
// currency – any quote currency CoinGecko supports: "usd", "eur", "brl", "btc", …
|
||||
//
|
||||
// Single pair → [{ coin: "bitcoin", currency: "usd" }]
|
||||
// Three pairs → [{ coin: "bitcoin", currency: "usd" },
|
||||
// { coin: "monero", currency: "usd" },
|
||||
// { coin: "solana", currency: "brl" }]
|
||||
//
|
||||
// This list is the *default*; pairs can be added/removed live in the
|
||||
// Settings popup and those changes are persisted across restarts.
|
||||
property var cryptoPairs: [{ coin: "bitcoin", currency: "usd" }, { coin: "ethereum", currency: "eur" }, { coin: "monero", currency: "usd" }, { coin: "solana", currency: "brl" }]
|
||||
|
||||
// Legacy fallbacks – used by Crypto.qml when cryptoPairs is absent.
|
||||
// You can leave these as-is; they are derived from the first pair above.
|
||||
property string cryptoCoinId: cryptoPairs[0].coin ?? "bitcoin"
|
||||
property string cryptoVsCurrency: cryptoPairs[0].currency ?? "usd"
|
||||
|
||||
// ── Compact label decimals ────────────────────────────────────────────────
|
||||
// 0 → "80k"
|
||||
// 1 → "80.0k" (default)
|
||||
// 3 → "80.000k"
|
||||
property int cryptoDecimals: 2
|
||||
|
||||
// ── Poll interval ─────────────────────────────────────────────────────────
|
||||
// Seconds between CoinGecko requests. Free tier allows ~30 req/min.
|
||||
// With multiple pairs each refresh fetches one pair then advances the index,
|
||||
// so the effective per-pair interval is: cryptoRefreshSec × cryptoPairs.length
|
||||
property int cryptoRefreshSec: 120
|
||||
|
||||
// ── Bar chip icon ─────────────────────────────────────────────────────────
|
||||
// Show the coin icon glyph ("") on the bar chip.
|
||||
property bool cryptoShowIcon: true
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user