Phosphor
Qt6 / Wayland library suite for window-management tools
 
Loading...
Searching...
No Matches
org.plasmazones.Settings

Configuration: load/save/reset, get/set by key, and Zone Selector-specific settings.

Well-known name org.plasmazones.Settings
Source XML org.plasmazones.Settings.xml
Methods 26
Signals 4
Properties 0

Methods

<tt>reloadSettings()</tt>

Reload settings from disk.

No arguments.

<tt>saveSettings()</tt>

Save current settings to disk.

No arguments.

<tt>resetToDefaults()</tt>

Reset all settings to their defaults.

No arguments.

<tt>getAllSettings()</tt>

Return all settings as a JSON object.

Arg Direction Type Description
settingsJson out s *(string)* All settings as JSON.

<tt>getSetting()</tt>

Get a single setting value by key (variant type).

Arg Direction Type Description
key in s *(string)* Setting key name.
value out v *(variant)* Setting value (variant).

<tt>getSettings()</tt>

Batch-get multiple settings in one call. Unknown keys are omitted from the result map.

Arg Direction Type Description
keys in as *(array<string>)* List of setting key names to fetch.
values out a{sv} *(dict<string,variant>)* Map of key → value for every key that was found.

<tt>setSetting()</tt>

Set a single setting by key. Returns true if the setting now holds the supplied value — a same-value write is a no-op but still returns true (the value-equality guard suppresses the redundant write without reporting failure).

Arg Direction Type Description
key in s *(string)* Setting key name.
value in v *(variant)* New value (variant).
success out b *(bool)* True if the setting now holds the supplied value (including same-value no-op writes).

<tt>setSettings()</tt>

Batch-set multiple settings in one call. Applies every key via the setter registry and saves once. Unknown keys are logged but do not abort the batch.

Arg Direction Type Description
settings in a{sv} *(dict<string,variant>)* Map of setting key to value.
success out b *(bool)* True if every key was found and its setter succeeded.

<tt>getSettingKeys()</tt>

Return the list of all setting key names.

Arg Direction Type Description
keys out as *(array<string>)* All setting key names.

<tt>getSettingSchema()</tt>

Get metadata for a single setting key. Returns JSON with key and type fields.

Arg Direction Type Description
key in s *(string)* Setting key name.
schemaJson out s *(string)* JSON: {key, type}. Type is bool, int, double, string, color, stringlist, or map.

<tt>getAllSettingSchemas()</tt>

Get metadata for all settings. Returns JSON object mapping keys to type info (type is one of bool, int, double, string, color, stringlist, map).

Arg Direction Type Description
schemasJson out s *(string)* JSON object: {key: {type}, ...}.

<tt>availableShaders()</tt>

Get list of available shader effects with metadata.

Arg Direction Type Description
shaders out av *(array<variant>)* List of shader metadata maps.

<tt>shaderInfo()</tt>

Get detailed information about a specific shader.

Arg Direction Type Description
shaderId in s *(string)* Shader UUID.
info out a{sv} *(dict<string,variant>)* Shader metadata map (empty if not found).

<tt>defaultShaderParams()</tt>

Get default parameter values for a shader.

Arg Direction Type Description
shaderId in s *(string)* Shader UUID.
params out a{sv} *(dict<string,variant>)* Map of parameter IDs to default values.

<tt>translateShaderParams()</tt>

Translate shader params from param IDs to uniform names for ZoneShaderItem.

Arg Direction Type Description
shaderId in s *(string)* Shader UUID.
params in a{sv} *(dict<string,variant>)* Map of param IDs to values (e.g. intensity: 0.5).
uniforms out a{sv} *(dict<string,variant>)* Map of uniform names to values (e.g. customParams1_x: 0.5).

<tt>shadersEnabled()</tt>

Check if shader effects are enabled (compiled with shader support).

Arg Direction Type Description
enabled out b *(bool)* True if shaders are available.

<tt>userShadersEnabled()</tt>

Check if user-installed shaders are supported.

Arg Direction Type Description
enabled out b *(bool)* True if user shaders can be loaded.

<tt>userShaderDirectory()</tt>

Get path to the user shader installation directory.

Arg Direction Type Description
path out s *(string)* Path to ~/.local/share/plasmazones/shaders.

<tt>openUserShaderDirectory()</tt>

Open the user shader directory in the file manager.

No arguments.

<tt>refreshShaders()</tt>

Reload all shaders from disk.

No arguments.

<tt>getPerScreenSettings()</tt>

Get all per-screen settings for a screen and category.

Arg Direction Type Description
screenId in s *(string)* Virtual or physical screen identifier.

| category | in | s *(string)* | 'autotile' | 'snapping' | 'zoneSelector'. | | values | out | a{sv} *(dict<string,variant>)* | Map of per-screen setting key to value. |

<tt>setPerScreenSetting()</tt>

Set a single per-screen setting and schedule a debounced save.

Arg Direction Type Description
screenId in s *(string)* Virtual or physical screen identifier.

| category | in | s *(string)* | 'autotile' | 'snapping' | 'zoneSelector'. | | key | in | s *(string)* | Per-screen setting key name. | | value | in | v *(variant)* | New value (variant). |

<tt>clearPerScreenSettings()</tt>

Clear all per-screen overrides for a screen and category, reverting to global defaults.

Arg Direction Type Description
screenId in s *(string)* Virtual or physical screen identifier.

| category | in | s *(string)* | 'autotile' | 'snapping' | 'zoneSelector'. |

<tt>setPerScreenSettings()</tt>

Batch-set multiple per-screen keys in one D-Bus call. Applies every entry to the named category and schedules a single debounced save.

Arg Direction Type Description
screenId in s *(string)* Virtual or physical screen identifier.

| category | in | s *(string)* | 'autotile' | 'snapping' | 'zoneSelector'. | | values | in | a{sv} *(dict<string,variant>)* | Map of per-screen setting key -> value. | | success | out | b *(bool)* | True if the category was recognized and the batch ran against a concrete Settings backend; false if the category was unknown or no concrete backend was available. Individual per-key failures are logged by the underlying Settings implementation but cannot be surfaced here since the setter methods return void. |

<tt>requestRunningWindows()</tt>

Asynchronously request the running-windows list. The daemon emits runningWindowsRequested to the KWin effect; the reply is delivered via the runningWindowsAvailable signal.

No arguments.

<tt>provideRunningWindows()</tt>

KWin effect to daemon callback: deliver the enumerated running-windows list in response to requestRunningWindows. The daemon re-broadcasts it via runningWindowsAvailable.

Arg Direction Type Description
json in s *(string)* JSON array: [{windowClass, appName, caption}, ...].

Signals

<tt>settingsChanged</tt>

Emitted when any setting is modified.

No payload.

<tt>motionProfileTreeChanged</tt>

Daemon to KWin effect: the per-event motion-profile tree changed (a profiles/<path>.json override was edited and rescanned). Kept separate from settingsChanged so the Settings app's value-change detection is not reset by its own profile-file writes; the KWin effect re-fetches motionProfileTree on this signal.

No payload.

<tt>runningWindowsRequested</tt>

Daemon to KWin effect: please enumerate running windows. Emitted by requestRunningWindows; the effect answers via provideRunningWindows.

No payload.

<tt>runningWindowsAvailable</tt>

Emitted when a fresh running-windows list has arrived from the KWin effect.

Arg Direction Type Description
json out s *(string)* JSON array: [{windowClass, appName, caption}, ...].