Skip to content

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 21 Jul 17:46

Recommended install: brew install itsdezen/tap/tili
Homebrew downloads via curl, which doesn't set macOS's
quarantine flag, so Gatekeeper never enters the picture.

The tarballs below are codesigned with tili's self-signed
certificate (hardened runtime) — see
CONTRIBUTING.md.
That's for a stable signing identity across releases (so
your Accessibility grant survives an upgrade), not for
passing Gatekeeper — a self-signed cert isn't notarized. If
you download tili.app directly from this page instead of
using Homebrew, Gatekeeper will still prompt on first launch:
right-click → Open, or xattr -d com.apple.quarantine tili.app.

Added

  • Animated window movement (opt-in). New animate setting (#false,
    #true, "medium", or "high" — default #false; #true is
    shorthand for "medium") eases tiled relayout and floating-window
    placement — including a newly-centered floating window's placement —
    into their new frame over a short duration (90ms) instead of jumping
    straight there, fixing the visible "flick" on relayout, post-drag
    mouse-resize snap, and floating centering. "medium"/"high" pick the
    animation's tick rate (~60fps/~120fps) — tili-daemon reconstructs its
    dedicated animation timer to match on every config change, and that
    timer only runs at all while something is actually animating.
    Performance tradeoff: each animation step is a real AX write, not a free
    interpolation, so "medium" costs roughly 6x the AX round-trips of a
    plain instant move per relayout, and "high" roughly 11x (double
    "medium") — negligible on responsive native apps, more noticeable as
    extra per-relayout latency on a slow-to-respond one. Implemented as
    TweenedFrameSetter, a second WindowFrameSetter alongside the
    existing InstantFrameSetter. Doesn't affect a user's own native
    drag/resize of a floating window (tili never writes during that);
    parking a window off-screen and the size-discovery step of centering a
    floating window stay instant on purpose, and so does revealing a
    workspace's windows on switch (they're showing at wherever they were
    parked, which was never meant to be seen, so there's no start point to
    meaningfully ease from).

Full changelog: CHANGELOG.md