personalization manager

This interface allows a client to customized display effects.

Warning! The protocol described in this file is currently in the testing phase. Backward compatible changes may be added together with the corresponding interface version bump. Backward incompatible changes can only be done by creating a new major version of the extension.

get_window_context(id: new_id<treeland_personalization_window_context_v1>, surface: object<wl_surface>)
get personalization window context

set window background, shadow based on context

get_wallpaper_context(id: new_id<treeland_personalization_wallpaper_context_v1>)
custom wallpaper context

custom user wallpaper

get_cursor_context(id: new_id<treeland_personalization_cursor_context_v1>)
Argument
Type
Description
idnew_id<treeland_personalization_cursor_context_v1>
custom wallpaper context

custom user cursor

get_font_context(id: new_id<treeland_personalization_font_context_v1>)
Argument
Type
Description
idnew_id<treeland_personalization_font_context_v1>
custom treeland and window global font context

custom treeland and window global font context

get_appearance_context(id: new_id<treeland_personalization_appearance_context_v1>)
custom treeland window global settings context

custom user treeland window appearance global


client custom wallpaper context

This interface allows a client personalization wallpaper.

Warning! The protocol described in this file is currently in the testing phase. Backward compatible changes may be added together with the corresponding interface version bump. Backward incompatible changes can only be done by creating a new major version of the extension.

set_fd(fd: fd, metadata: string)
Argument
Type
Description
fdfd
wallpaper file fd
metadatastring
file related metadata information
set the current user's wallpaper fd
set_identifier(identifier: string)
Argument
Type
Description
identifierstring
Identifier for the application window
identifier for the application window
set_output(output: string)
Argument
Type
Description
outputstring
system output name
configure xdg desktop portal options
set_isdark(isdark: uint)
Argument
Type
Description
isdarkuint
is dark
Set whether the current wallpaper is dark
get_metadata()
get user save meta data

get the current user's wallpaper

destroy()
destroy the context object

Destroy the context object.

metadata(metadata: string)
Argument
Type
Description
metadatastring
user meta data
get metadata event

Send this signal after getting the user's wallpaper.

Argument
Value
Description
preview1
whether to show a preview of the picture
background2
configure screen background
lockscreen4
configure screen wallpaper
xdg desktop portal supported keys

client custom cursor context

This interface allows a client personalization cursor.

Warning! The protocol described in this file is currently in the testing phase. Backward compatible changes may be added together with the corresponding interface version bump. Backward incompatible changes can only be done by creating a new major version of the extension.

set_theme(name: string)
Argument
Type
Description
namestring
cursor theme name
set system cursor theme
set_size(size: uint)
Argument
Type
Description
sizeuint
cursor size
set system cursor size
commit()
commit configure

if only one commit fails validation, the commit will fail

destroy()
destroy the context object

Destroy the context object.

verfity(success: int)
Argument
Type
Description
successint
check whether the configuration is successful
verfity event

Send this signal after commit cursor configure.

theme(name: string)
Argument
Type
Description
namestring
cursor theme name
cursor theme changed event

Send this signal after system cursor theme changed.

size(size: uint)
Argument
Type
Description
sizeuint
cursor size
cursor size changed event

Send this signal after system cursor size changed.


client custom window context

This interface allows a client personalization window.

Warning! The protocol described in this file is currently in the testing phase. Backward compatible changes may be added together with the corresponding interface version bump. Backward incompatible changes can only be done by creating a new major version of the extension.

set_round_corner_radius(radius: int)
Argument
Type
Description
radiusint
set window round corner radius

This request will set window round corner radius, invoking this request means user want to manage window round corner radius by itself. If not invoked, window round corner radius will be decided by compositor.

set_shadow(radius: int, offset_x: int, offset_y: int, r: int, g: int, b: int, a: int)
Argument
Type
Description
radiusint
offset_xint
offset_yint
rint
gint
bint
aint
set window shadow

Set window shadow's radius, offset and color, invoking this request indicates that client want to manage the window shadow by itself. If not invoked, window shadow will be decided by the compositor

set_border(width: int, r: int, g: int, b: int, a: int)
Argument
Type
Description
widthint
rint
gint
bint
aint
set window border

Set window border width and color

set if system titlebar is enabled

Set if system titlebar is enabled

destroy()
destroy the context object

Destroy the context object.

blend_mode { transparent, wallpaper, blur } 
Argument
Value
Description
transparent0
Normal blend mode, just composite over background with alpha channel
wallpaper1
Composite window over wallpaper
blur2
Blur the content of the window background
window blend mode

Window blend mode defines how compositor composite window's surface over other surfaces.

enable_mode { enable, disable } 
Argument
Value
Description
enable0
force enable titlebar
disable1
force disable titlebar
window enable mode

Set window enable mode


treeland window global font settings

This interface allows set treeland window global font settings.

Warning! The protocol described in this file is currently in the testing phase. Backward compatible changes may be added together with the corresponding interface version bump. Backward incompatible changes can only be done by creating a new major version of the extension.

set_font_size(size: uint)
Argument
Type
Description
sizeuint
font size
set system font size

Set the system font size

get_font_size()
get system font size

Get the system font size

set_font(font_name: string)
Argument
Type
Description
font_namestring
font name
set system font

Set the system font

get_font()
get system font

Get the system font

set_monospace_font(font_name: string)
Argument
Type
Description
font_namestring
monospace font name
set system monospace font

Set the system monospace font

get_monospace_font()
get system monospace font

Get the system monospace font

destroy()
destroy the context object

Destroy the context object.

font(font_name: string)
Argument
Type
Description
font_namestring
font name
font event

Send this signal after setting the system font.

monospace_font(font_name: string)
Argument
Type
Description
font_namestring
monospace font name
monospace font event

Send this signal after setting the system monospace font.

font_size(font_size: uint)
Argument
Type
Description
font_sizeuint
font size
font size

Send this signal after setting the system font size.


treeland window global appearance settings

This interface allows set treeland window global appearance settings.

Warning! The protocol described in this file is currently in the testing phase. Backward compatible changes may be added together with the corresponding interface version bump. Backward incompatible changes can only be done by creating a new major version of the extension.

set_round_corner_radius(radius: int)
Argument
Type
Description
radiusint
set window round corner radius

Set window round corner radius

get_round_corner_radius()
get window round corner radius

Get window round corner radius

set_icon_theme(theme: string)
Argument
Type
Description
themestring
icon theme
set system icon theme

Set the system icon theme

get_icon_theme()
get system icon theme

Get the system icon theme

set_active_color(color: string)
Argument
Type
Description
colorstring
rgb
set system active color

Set the system active color

get_active_color()
get system active color

Get the system active color

set_window_opacity(opacity: uint)
Argument
Type
Description
opacityuint
opacity
set window window opacity

Set the window window opacity

get_window_opacity()
get window window opacity

Get the window window opacity

get_window_theme_type()
get window theme type

Get the window theme type

set_window_titlebar_height(height: uint)
Argument
Type
Description
heightuint
window titlebar height
set window titlebar height

Set the window titlebar height

get_window_titlebar_height()
get window titlebar height

Get the window titlebar height

destroy()
destroy the context object

Destroy the context object.

round_corner_radius(radius: int)
Argument
Type
Description
radiusint
round corner radius
round corner radius event

Send this signal after setting the round corner radius.

icon_theme(theme_name: string)
Argument
Type
Description
theme_namestring
icon theme name
icon theme event

Send this signal after setting the system icon theme.

active_color(active_color: string)
Argument
Type
Description
active_colorstring
active color
active color

Send this signal after setting the system active color

window_opacity(opacity: uint)
Argument
Type
Description
opacityuint
window opacity
window opacity

Send this signal after setting the system active color

Argument
Type
Description
typeuint<treeland_personalization_appearance_context_v1.theme_type>
window theme type
window theme

Send this signal after setting the system theme

window_titlebar_height(height: uint)
Argument
Type
Description
heightuint
window titlebar height
window titlebar height

Send this signal after setting the window titlebar height

theme_type { auto, light, dark } 
Argument
Value
Description
auto1
window auto theme
light2
window light theme
dark4
window dark theme
window theme type

Compositor Support

Mutter
Mutter
47.3
KWin
KWin
6.3
Sway
Sway
1.10
COSMIC
COSMIC
0.1
Hyprland
Hyprland
0.44
niri
25.01
Weston
Weston
14
Mir
Mir
2.19
GameScope
GameScope
3.15.14
Jay
1.9.0
Labwc
Labwc
0.8.2
Wayfire
0.9.0
Treeland
Treeland
0.5.17
Louvre
Louvre
2.14.1
treeland_personalization_manager_v1
x
x
x
x
x
x
x
x
x
x
x
x
1
x

SPDX-FileCopyrightText: 2024 UnionTech Software Technology Co., Ltd. SPDX-License-Identifier: MIT