Skip to content

Labels and Borders

HyprExpo can render workspace labels, separate selection labels, and distinct borders for current, focused, and hovered tiles.

Tile Appearance

keytypedescriptiondefault
plugin:hyprexpo:tile_roundingintcorner radius in pixels0
plugin:hyprexpo:tile_rounding_powerfloatrounding curve exponent2.0
plugin:hyprexpo:tile_rounding_focusintfocused tile radius, -1 inherits-1
plugin:hyprexpo:tile_rounding_currentintcurrent tile radius, -1 inherits-1
plugin:hyprexpo:tile_rounding_hoverinthovered tile radius, -1 inherits-1
plugin:hyprexpo:border_widthintborder thickness in pixels2
plugin:hyprexpo:border_colorstringdefault border for non-highlighted tiles; solid or gradientempty
plugin:hyprexpo:border_color_currentstringcurrent tile border; solid or gradientrgb(66ccff)
plugin:hyprexpo:border_color_focusstringfocused tile border; solid or gradientrgb(ffcc66)
plugin:hyprexpo:border_color_hoverstringhovered tile border; solid or gradientrgb(aabbcc)

Deprecated fallback keys are still recognized for compatibility: border_grad_current, border_grad_focus, border_grad_hover, and border_style. New configs should use border_color_*.

Drag-Drop Window Styling

Drag-drop window movement uses a translucent proxy under the pointer, a source-workspace border, and a positional landing proxy inside the hovered target tile while the move is active. By default those visuals keep the existing proxy colors and inherit the focused tile border; set the drag_drop_* keys when you want the window-moving feedback to match your theme.

The target-tile landing proxy is a visual drop-intent preview. It shows where the grabbed window would land based on pointer position and grab offset, but the current release behavior still uses Hyprland's safe workspace move path. Floating positional release and tiled layout-aware insertion are deferred follow-up work.

keytypedescriptiondefault
plugin:hyprexpo:drag_drop_proxy_colorcolorproxy fill before the drag crosses the move threshold0x24EDB342
plugin:hyprexpo:drag_drop_proxy_active_colorcolorproxy fill while a drag/drop move is active0x3DEDB342
plugin:hyprexpo:drag_drop_proxy_border_colorstringproxy border, solid or gradient; empty inherits focus borderempty
plugin:hyprexpo:drag_drop_proxy_border_widthintproxy border width; -1 inherits, 0 disables-1
plugin:hyprexpo:drag_drop_proxy_roundingintproxy corner radius; -1 inherits automatic focused rounding-1
plugin:hyprexpo:drag_drop_source_border_colorstringsource workspace border during active drag/drop movementempty
plugin:hyprexpo:drag_drop_source_border_widthintsource workspace border width; -1 inherits, 0 disables-1

Example:

ini
plugin {
    hyprexpo {
        drag_drop_proxy_color = rgba(66ccff22)
        drag_drop_proxy_active_color = rgba(66ccff44)
        drag_drop_proxy_border_color = rgba(66ccffee) rgba(ffcc66ee) 45deg
        drag_drop_source_border_color = rgb(ffcc66)
        drag_drop_proxy_border_width = 3
        drag_drop_proxy_rounding = 10
    }
}

Workspace Labels

keytypedescriptiondefault
plugin:hyprexpo:label_enablebool intenable workspace labels1
plugin:hyprexpo:label_text_modestringtoken, index, or idtoken
plugin:hyprexpo:label_token_mapstringcomma-separated tokens by visible tile order; empty entries skipempty
plugin:hyprexpo:label_positionstringtop-left, top-right, bottom-left, bottom-right, or centercenter
plugin:hyprexpo:label_showstringalways, hover, focus, hover+focus, current+focus, or neveralways
plugin:hyprexpo:label_font_sizeintbase font size in pixels16
plugin:hyprexpo:label_font_familystringPango font familysans
plugin:hyprexpo:label_bg_enablebool intdraw a background bubble behind labels1
plugin:hyprexpo:label_bg_colorcolorlabel background colorrgba(00000088)
plugin:hyprexpo:label_bg_shapestringcircle, square, or roundedcircle

Selection Labels

Selection labels are optional overlays used by hyprexpo:kb_select. They let normal workspace labels stay stable while selection tokens use a separate map.

keytypedescriptiondefault
plugin:hyprexpo:selection_label_enablebool intenable the separate selection-token overlay0
plugin:hyprexpo:selection_label_token_mapstringcomma-separated tokens by visible tile order; empty entries skipa,s,d,f,g,q,w,e,r,t,z,x,c,v,b
plugin:hyprexpo:selection_label_positionstringlabel anchortop-right
plugin:hyprexpo:selection_label_colorcolorselection-token text colorrgb(ffcc66)

HyprExpo is a maintained Hyprland plugin fork.