Phosphor
Qt6 / Wayland library suite for window-management tools
 
Loading...
Searching...
No Matches
DecorationDefaults.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2026 fuddlesworth
2// SPDX-License-Identifier: LGPL-2.1-or-later
3
4#pragma once
5
6#include <QLatin1StringView>
7#include <QtGlobal>
8
9namespace PhosphorCompositor {
10
23namespace DecorationDefaults {
24
25inline constexpr bool HideTitleBars = false;
26inline constexpr bool ShowBorder = false;
27
28inline constexpr int BorderWidth = 2;
29inline constexpr int BorderWidthMin = 0;
30inline constexpr int BorderWidthMax = 10;
31
32inline constexpr int BorderRadius = 8;
33inline constexpr int BorderRadiusMin = 0;
34inline constexpr int BorderRadiusMax = 20;
35
36// How long uSurfaceFocused ramps between 0 and 1 when a window gains or
37// loses focus (ms) — the cross-fade every decoration pack that mixes by
38// focus (focus-fade wash, border dims, glow, shadow) renders with. A
39// standalone decoration setting, deliberately independent of the window
40// animation system: 0 means switch instantly.
41inline constexpr int FocusFadeMs = 160;
42inline constexpr int FocusFadeMsMin = 0;
43inline constexpr int FocusFadeMsMax = 1000;
44
45// Multiplier on the bufferScale a surface pack's metadata declares for its
46// buffer passes (the blur pyramid density). The effect folds it into every
47// consumer of a pack's metadata scale and clamps the PRODUCT into the
48// allocator band, so these bounds describe the persisted setting, not the
49// final texture size. Shared here so the effect's pre-settings-load seed and
50// its D-Bus boundary clamp cannot drift from the daemon's schema clamp.
51inline constexpr qreal BlurScaleMultiplier = 1.0;
52inline constexpr qreal BlurScaleMultiplierMin = 0.25;
53inline constexpr qreal BlurScaleMultiplierMax = 2.0;
54
55// A retuned default outside its own declared slider range would clamp
56// differently on every consumer — make that a compile error instead.
58 "BorderWidth default must lie within its declared bounds");
60 "BorderRadius default must lie within its declared bounds");
62 "FocusFadeMs default must lie within its declared bounds");
64 "BlurScaleMultiplier default must lie within its declared bounds");
65
66// Cold-start colour fallbacks for the effect's decoration path: what a
67// border/glow/shadow renders with before the daemon's first colour replies
68// land (Breeze accent blue and the Breeze inactive grey, both opaque).
69// Single-sourced here so the effect's call sites cannot drift apart.
70inline constexpr QLatin1StringView FallbackAccentHex{"#ff3daee9"};
71inline constexpr QLatin1StringView FallbackInactiveHex{"#ff5c6370"};
72
73} // namespace DecorationDefaults
74
87namespace WindowAppearanceScope {
88
89inline constexpr QLatin1StringView Tiled{"tiled"};
90inline constexpr QLatin1StringView Normal{"normal"};
91inline constexpr QLatin1StringView All{"all"};
92
93} // namespace WindowAppearanceScope
94} // namespace PhosphorCompositor
constexpr int BorderRadius
Definition DecorationDefaults.h:32
constexpr int FocusFadeMs
Definition DecorationDefaults.h:41
constexpr qreal BlurScaleMultiplierMax
Definition DecorationDefaults.h:53
constexpr int BorderRadiusMax
Definition DecorationDefaults.h:34
constexpr int BorderRadiusMin
Definition DecorationDefaults.h:33
constexpr int BorderWidth
Definition DecorationDefaults.h:28
constexpr qreal BlurScaleMultiplier
Definition DecorationDefaults.h:51
constexpr int BorderWidthMax
Definition DecorationDefaults.h:30
constexpr int FocusFadeMsMax
Definition DecorationDefaults.h:43
constexpr bool ShowBorder
Definition DecorationDefaults.h:26
constexpr int BorderWidthMin
Definition DecorationDefaults.h:29
constexpr qreal BlurScaleMultiplierMin
Definition DecorationDefaults.h:52
constexpr bool HideTitleBars
Definition DecorationDefaults.h:25
constexpr QLatin1StringView FallbackAccentHex
Definition DecorationDefaults.h:70
constexpr int FocusFadeMsMin
Definition DecorationDefaults.h:42
constexpr QLatin1StringView FallbackInactiveHex
Definition DecorationDefaults.h:71
constexpr QLatin1StringView Tiled
Definition DecorationDefaults.h:89
constexpr QLatin1StringView Normal
Definition DecorationDefaults.h:90
constexpr QLatin1StringView All
Definition DecorationDefaults.h:91
Definition DaemonClient.h:22