Skip to content

Releases: dawsers/scroll

1.12.16

Choose a tag to compare

@dawsers dawsers released this 08 Jul 15:12

These are the main changes from 1.12.15 to 1.12.16:

Many thanks to @jbms for all his contributions to this release!

  • Lua: avoid crashes by using node ID instead or lightuserdata @jbms.
  • jump rework: new transactions can happen in background (#309).
  • animations: improve offset curve animations by pre-scaling the curve and mapping it to the point displacement (some animations may need updating the scale).
  • Added floating window snapping options (#301).
  • Add window close animations (through delayed transaction destruction when there is an animation).
  • border: disable border radius when using CSD (#345, #348).
  • align: improve align_reset_auto so it only resets the alignment when focusing out of the viewport (#335).
  • Added mouse_resize_tiling_limit option to limit tiled container resizing to a fraction of 1.0.
  • Add config/runtims commands center_horizontal_if_fits and center_vertical_if_fits.
  • Add run-time command scratchpad_minimize_view to enable window rules to disable the feature for certain applications (#303).
  • Add space delete argument and new IPC GET_SPACES data (#307).
  • Difficulty clicking on scrollbars near the edge of windows (#292).
  • Keep sticky windows static while animating workspace switch (#297)..
  • Delay client side transactions so animations animate cleanly when a client commits (#295).
  • Fix workspace_switch animation when switching full screen workspaces.
  • Fix workspace_switch animation order when using dynamically named workspace (#306).
  • Fix workspace_switch animation when focusing a different output (#312).
  • Raise pinned container node to top (@jbms).
  • workspaces overview: fix workspace deletion loop at exit (#314).
  • Lua: expand script paths and support relative paths (@jbms).
  • Lua: add exec_process(command) API function.
  • Lua, add view_get_env(view, env_variable) API function.
  • Lua: add node_get_type() API function (@jbms)
  • Lua: add container_get_geometry() and .container_get_animated_geometry() API functions (@jbms).
  • Lua: add view_get_class(view) API function.
  • IPC: expose surface_content_rect in get_tree (@jbms).
  • sticky: allow configuration of border colors (#316).
  • full screen: restore saved positions for tiled containers (#319).
  • split workspaces: call split reset when detaching a workspace from an output.
  • Compute inactive child on demand (@jbms).
  • Fix decoration dimming when there is no border (#342).
  • Allow border width of zero (#343).
  • layer_shell animations: fixes (#344).
  • Xwayland: fix full screen bug when client sends unneeded request,
  • Updates to the latest versions of sway and wlroots.

1.12.15

Choose a tag to compare

@dawsers dawsers released this 26 May 08:19

This is a small bug fix release that matches all the changes included in the official release of sway 1.12 that happened yesterday, and the following scroll change from 1.12.14:

  • surface resize was missing border radius settings (#288). After some optimizations introduced in 1.12.12, overview mode could show artifacts in buffers with rounded corners.

1.12.14

Choose a tag to compare

@dawsers dawsers released this 25 May 16:31

This is a small bug fix release with the following change from 1.12.13:

  • Rework layer surface animations to be more robust and work well when resizes happen after mapping (#286).

1.12.13

Choose a tag to compare

@dawsers dawsers released this 24 May 13:08

This is a bug fix release, with the following changes from 1.12.12:

  • scale_content: change surface preferred buffer scale when changing content scale (#284). Fixes scaled content rendering quality issues.
  • linux_dmabuf_v1: feedback: remove temporary fix and apply final one.
  • wlroots: Fixes to Xwayland and virtual_keyboard_v1.

1.12.12

Choose a tag to compare

@dawsers dawsers released this 22 May 09:16

These are the main changes from 1.12.11 to 1.12.12:

  • animations: add layer_shell animations (#265).
  • jump: add jump_labels_swallow option to update the labels while pressing the jump key combination (#268).
  • gestures: scroll both container and workspace when movement is diagonal (#279).
  • space: add restore_hide argument and fixes when storing/restoring floating windows.
  • config: add layout_default_mode commands: global, per output and per workspace (#258).
  • jump: fix modes that use floating windows when in overview workspaces and with multiple monitors.
  • linux_dmabuf_v1: feedback: only send format table when changed (#274)
  • apply variable replacement in deferred commands (by @kimjune01) (#118)
  • scratchpad jump: fix crash when there was no focused container (#269)
  • seatop floating/tiling/scroll: disable animations until move/resize is finalized (optimization).
  • animation optimizations: separate surface resize from surface reconfigure to avoid discarding valid buffers during animation.
  • container_begin_destroy(): dereference container from all workspaces layout structure. It could cause crashes.
  • selection: focus on active child after move (#281).
  • focus: modify focus parent/child to simply change to the corresponding mode, so it doesn't break assumptions in other places (#271).
  • output config: after the output layout changes, recompute visibility, or temporarily overlapping outputs leave unstable state (#272).
  • The usual bug fixes. optimizations, and new features from sway and wlroots (wlr_pointer_warp_v1).

1.12.11

Choose a tag to compare

@dawsers dawsers released this 24 Apr 10:21

This is a bug fix release with the following bugs fixed since 1.12.10:

  • Lua: scroll_command() was setting focus on the container argument. After moving the Lua callback to before view_map sets focus, this was preventing full focus from happening after the callback. Now it is more consistent with how view_execute_criteria() works.
  • filter command fixes.
  • workspace switch animations are now aware of filters and include tiled and floating windows.

1.12.10

Choose a tag to compare

@dawsers dawsers released this 21 Apr 23:00

This is a bug fix release with the following bugs fixed since 1.12.9:

  • Root filters rework (#255). Before this, there could be a crash when several filters were overwriting each other.
  • Support hide_edge_borders and smart_borders.

1.12.9

Choose a tag to compare

@dawsers dawsers released this 20 Apr 16:05

Celebrating scroll's one year anniversary, this release includes several new features and many bug fixes. These are the main changes from 1.12.8 to 1.12.9:

  • scale_workspaces command: fully interactive overview including all the workspaces on each monitor.
  • jump command rework with many improvements. This is a breaking change: make sure to update your config. See man 5 scroll and config.in or /etc/scroll/config for details and bindings. jump can now work from any situation, and make use of the workspaces overview to show more than the current workspace labels. There is also a jump criteria command, that lets you jump to arbitrarily filtered applications or windows. Note: if you were using jump with no arguments, its replacement command is jump tiling.
  • filter command: lets you filter which windows will be rendered.
  • Rework overview for floating windows, and fixes for split workspaces.
  • animations: Improve quality on high refresh rate monitors (by @ItsLemmy) (#239).
  • animations: animate workspace scaling (#216), add animation cache.
  • Fixes to cursor shake magnify: improve performance and add cursor_shake_magnify_sensitivity option
  • Lua: add jump_end and command_end callbacks (#251)
  • Floating windows: store the current size when going to tiled, in case the container returns to floating again.
  • Fix black bar in full screen (#230).
  • Fix hovering over title bar could focus on a view below the current one
  • Fix full screen request when creating view.
  • Fix jump workspaces for portrait mode monitors.
  • Improve workspace_switch animation, and bug fixes.
  • Fix "some windows appear at 0,0 for a split second when switching to floating mode" (#225)
  • Fixes to scratchpad_minimize.
  • scrollbar changes: add symbolic indicators by @twofinger (#240, #252).
  • Updates to latest wlroots and sway, including color management, support for ext-workspace-v1, and bug fixes including to ext-image-capture-source-v1.

1.12.8

Choose a tag to compare

@dawsers dawsers released this 21 Mar 15:20

This is a bug fix release with the following bugs fixed since 1.12.7:

  • windows resized by themselves in floating mode don't update their border (#231)
  • black bar in fullscreen (#230)

1.12.7

Choose a tag to compare

@dawsers dawsers released this 19 Mar 12:40

These are the main changes from 1.12.5 to 1.12.7:

  • Add jump all (shows every window from every workspace), and change default jump key bindings to be more intuitive (#95).
  • Add minimize to scratchpad through scratchpad_minimize option, defaults to false (#228).
  • Add maximize capability, so CSD show a maximize button that triggers toggle_size.
  • Add support for floating window toggle_size
  • default_border now supports csd parameter.
  • options: add gesture_scroll_sensitivity_mouse to decouple mouse sensitivity from other swiping devices that use gesture_scroll_sensitivity, allowing natural vs reverse scrolling (#217).
  • fullscreen_movefocus: Fix default inconsistency to always use nofollow if not specified or using only true.
  • Don't stop/reset animations on transaction requested from client, and use window_move_floating as animation for floating command (#224).
  • transaction: arrange_workspace_floating() needs to initialize new floating window's node positions in case in-flight frames render before the animation starts (#225).
  • Disable workspace full screen when toggling floating windows on/off.
  • view_map: Move view_execute_criteria() to right before view_map Lua callback (#227)
  • Lua: add container_get_scratchpad(container), scratchpad_show(container) and scratchpad_hide(container) API functions.
  • Updates to latest sway, including workspace assignment priority fixes, cursor-shape-v1 allows new shapes, layer-shell-v1 adds support for set_exclusive_edge, fix bug where GTK4 layer shell tooltips would show below the bottom edge of the screen.
  • Updates to latest wlroots, including color profile and hdr fixes, relax minimum Vulkan API version to 1.0