* Key binds for release events.
* The Setting 'smart_frame_surroundings' has been changed to accept the
following new values: 'off', 'hide_all', and 'hide_gaps'. Setting it to
'hide_gaps' will only hide frame gaps when applicable, 'hide_all' and 'off'
mirror the old behaviour with regards to 'true' and 'false'.
* New format '%{ }' for easier attribute access in the sprintf command
* New setting 'show_frame_decorations' that controls when frame decorations
are shown. This should be used instead of the old 'always_show_frame'
* New frame attribute 'content_geometry'
* New tag attribute 'at_end'
* New monitor attribute 'content_geometry'
* Fix bug in ipc protocol for big-endian systems
OBS-URL: https://build.opensuse.org/package/show/X11:windowmanagers/herbstluftwm?expand=0&rev=33
* Tabbed window titles in the 'max' layout algorithm (controllable
via the 'tabbed_max' setting)
* Directionally moving through a max layout is possible via focus / shift by
adding '--level=tabbed' (only for 'tabbed_max') or '--level=any'
(any 'max' layout).
* New decoration setting 'title_when' to control, when window
titles and tabs are shown.
* New decoration settings 'title_depth' and 'title_align'.
* New decoration settings for configuring unselected tabs:
'tab_color', 'tab_outer_width', 'tab_outer_color', 'tab_title_color'
* New autostart object with attributes 'path', 'running',
'pid', 'last_status'
* New client attribute 'floating_effectively' and associated
X11 properties 'HLWM_FLOATING_WINDOW' and 'HLWM_TILING_WINDOW'
* New 'foreach' command line flags: '--filter-name=',
'--recursive', '--unique'
* The 'spawn' command now prints an error message on exec failure
* New read-only client attribute 'decoration_geometry'.
* New rule condition 'fixedsize'
* New attribute 'decorated' to disable window decorations
* The cursor shape now indicates resize options.
* New setting 'ellipsis'
* Floating clients can now be dragged between monitors via the mouse
* Frames can be simultaneously resized in x and y direction with the mouse.
Bug fixes:
* Update floating geometry if a client’s size hints change
* Correct alpha value handling: if compositor is detected,
premultiply rgb values with the alpha value
OBS-URL: https://build.opensuse.org/package/show/X11:windowmanagers/herbstluftwm?expand=0&rev=31
* herbstclient prints error messages always on stderr and normal
output always on stdout (before, both were printed to the same channel).
* True transparency support for frame and client decorations
(requires a compositor like picom, compton, or xcompmgr)
* Colors contain alpha-values (format #RRGGBBAA)
* Do not draw frame background behind clients (so for semi-transparent
client decorations, one does not see the frame decoration behind but the wallpaper instead)
* New command line option '--replace' for replacing an existing window manager.
* New command 'list_clients'.
* The frame attributes ('selection', 'algorithm', 'fraction',
'split_type') are now writable.
* New objects for panels (under 'panels', exposing attributes
'instance', 'class', 'geometry', 'winid')
* The setting 'monitors_locked' is now explicitly an unsigned integer.
* The setting 'default_frame_layout' now holds an algorithm name.
* New client attributes:
- 'floating_geometry' holding the client’s floating size (writable).
- 'content_geometry' holding the geometry of the application’s content.
* The 'shift' command now moves the window to a neighboured monitor if the
window cannot be moved within a tag in the desired direction.
* New command 'lower' to lower a window in the stack.
* The 'cycle_value' command now expects an attribute (and only works for
settings for compatibility).
* New object 'types' containing documentation on (attribute-) types.
* New command 'attr_type' printing the type of a given attribute.
* New client alias 'last-minimized' and 'longest-minimized' for
focusing and unminimizing minimized clients.
* Relative values for integer attributes ('+=N' and '-=N')
* The 'cycle' command now also cycles through floating windows.
OBS-URL: https://build.opensuse.org/package/show/X11:windowmanagers/herbstluftwm?expand=0&rev=29
* Client window titles (controlled by the theme attributes
'title_height', 'title_color', 'title_font')
* New command 'help' for live documentation on the object tree
* New 'watch' command that emits hooks when attribute values change.
* The 'lock_tag' attribute is now writable.
* New 'geometry' attribute for monitors.
* New dependencies: xft, freetype
Bug fixes:
* Correctly interpret _NET_WM_STRUT. This fixes panels that leave
a bit of space between the panel and the monitor edge and also
panels between two monitors.
* Correctly handling minimized clients when removing a tag.
* Preserve stacking order when changing the floating state of a tag
* Update frame objects correctly in the commands 'mirror' and 'rotate'
OBS-URL: https://build.opensuse.org/package/show/X11:windowmanagers/herbstluftwm?expand=0&rev=27
* Client minimization (controlled by the attribute 'minimized' of
every client)
* The 'index' attribute of tags is now writable. This allows adjusting
the order of existing tags.
* New child object 'focused_client' for each tag object.
* New child object 'focused_frame' for the tiling object of each tag
object.
* New child object 'parent_frame' for each client providing the frame
the client sits in
* New command 'mirror'
* New command 'apply_tmp_rule'
* The 'apply_rules' command now reports parse errors
* Reserve space for panels that do not set _NET_WM_STRUT e.g. conky
windows of type 'dock'.
* Only build json object doc if WITH_DOCUMENTATION is activated
* Bug fixes:
- When hiding windows, correctly set their WM_STATE to IconicState
(we set it to Withdrawn state before, which means "unmanaged" and
thus is wrong). This may require restarting pagers when upgrading
hlwm live.
- Fix crash in 'split explode'
- 'split explode' preserves the window focus (as in v0.7.2 and before)
OBS-URL: https://build.opensuse.org/package/show/X11:windowmanagers/herbstluftwm?expand=0&rev=25
* When an application fails to focus itself (because
focus_stealing_prevention is active), then the window is marked
as urgent.
* New optional argument for the 'split' command for splitting
non-leaf frames
* Frame objects: the frame layout can be introspected via the
'tiling' object present in each tag, e.g.: 'tags.focus.tiling'.
* New command 'foreach' for iterating over objects
* New attribute 'urgent_count' for tags, counting the number of
urgent clients on a tag
* New rule consequence 'floatplacement' that updates the placement
of floating clients ('floatplacement=smart' for little overlap,
'floatplacement=center' for centering) or leaves the floating
position as is ('floatplacement=none')
* New rule condition 'pgid'
* New format specifier '%c' in the 'sprintf' command (useful
in combination with 'foreach')
* The 'new_attr' command now also accepts an initial value
* React to a change of the 'floating_focused' attribute of the
tag object
* New frame index character 'p' for accessing the parent frame
* Object tree documentation as a json file
Bug fixes:
* Fix wrong behaviour in 'cycle_layout' in the case where the
current layout is not contained in the layout list passed
to 'cycle_layout'.
* Fix handling of delta -1 in 'focus_monitor' and 'cycle_monitor'
* Fixed precision decimals in the layout tree (more reliable
in- and output of fractions in frame splits)
OBS-URL: https://build.opensuse.org/package/show/X11:windowmanagers/herbstluftwm?expand=0&rev=23
* Selection of empty frames by the mouse (by click or by hover if
focus_follows_mouse is enabled)
* The commands 'close_and_remove' / 'close_or_remove' act like
'close' for floating clients
* The decoration window allows focusing, moving, and resizing
the client via the mouse (as known from standard floating
window managers)
* Improved herbstclient tab completion for the fish shell
* Fix a crash in the error handler when a invalid monitor
name is passed. (Affects list_padding move_monitor
rename_monitor lock_tag unlock_tag)
* Fix the type of WM_STATE
* The client attributes sizehints_tiling and sizehints_floating
are now writable
* Fix EWMH urgency change for clients without WM hints set
* Fix the exit code of the 'focus' command
OBS-URL: https://build.opensuse.org/package/show/X11:windowmanagers/herbstluftwm?expand=0&rev=19
* the frame index 'e' refers to the first empty frame
(e.g. 'rule index=e' places new windows in empty frames, if possible)
* new setting 'hide_covered_windows' to improve the appearance
when used with a compositor.
* resize floating windows with the same command ('resize') as in
tiling mode and thus the same keybindings as in tiling mode.
Therefore, the 'fractiondelta' parameter to the 'resize' command
is now optional.
* keybind now checks that the bound command exists.
* cycle_all (Alt-Tab) now also traverses floating clients
* new setting 'auto_detect_panels' controlling the panel
detection algorithm.
* improved herbstclient tab completion for the fish shell
Bug fixes:
* Handle the regular expression "" correctly, since the grammar
of extended regular expressions does not allow "".
* Error handling for the lack of xrandr
* Fixes to make it compile on other systems and architecture
OBS-URL: https://build.opensuse.org/package/show/X11:windowmanagers/herbstluftwm?expand=0&rev=17
- Update to 0.8.0:
* single window floating (every client has an attribute 'floating' which can
be set at run time and via the rule consequence 'floating=on')
* monitor detection via xrandr
* detection of external panels
* new command: apply_rules
* new command: export (convenience wrapper around setenv)
* new client attribute: keys_inactive (negation of keymask)
* new command: drag (initiates moving/resizing a window by mouse)
* if tags have been configured through EWMH before herbstluftwm starts (from
a previous running window manager), then herbstluftwm re-uses these tags
(start with --no-tag-import to disable this)
* The build system is now cmake. See the INSTALL file if you need to
compile herbstluftwm yourself.
* the 'remove' command now tries to preserve the focus and the client
arrangement. Intuitively speaking, 'remove' is undoing a frame split.
* Many boolean style settings were formerly of type int. Now, these are
boolean settings.
* The 'toggle' command only works for boolean settings. For the former
behavior for int-typed settings, use 'cycle_value'.
* Writing '%%' in the 'sprintf' format string now gives a literate '%', just
as printf. Formerly it stayed '%%'.
* The 'keybind' command now accepts all valid key symbols, even if they are
not present on the current keyboard layout at the time of setup.
* the rules are also applied to those clients that change their WM_CLASS
after being shown already.
* 'detect_monitors' has an additional '--list-all' parameter
* do not change the focus (for focus_follows_mouse=1) when an unmanaged
dialog (e.g. a rofi menu or a notification) closes.
* list_rules now prints regex-based rule conditions with '~' instead of '='
OBS-URL: https://build.opensuse.org/request/show/793442
OBS-URL: https://build.opensuse.org/package/show/X11:windowmanagers/herbstluftwm?expand=0&rev=15
- Update to 0.7.2:
* When herbstluftwm is not running and herbstclient is called,
the absent herbstluftwm is detected instead of hanging forever.
* Close window on _NET_CLOSE_WINDOW. This makes closing windows
via ewmh panels work.
* Fix return code of remove_attr
* Fix error when unmanaging clients
* Some typo fixes in the documentation
- Remove and replace with sed:
* herbstluftwm-shebangs.patch
* herbstluftwm-shebangs-2.patch
* herbstluftwm-shebangs-3.patch
OBS-URL: https://build.opensuse.org/request/show/706218
OBS-URL: https://build.opensuse.org/package/show/X11:windowmanagers/herbstluftwm?expand=0&rev=13