Skip to content

Releases: everyx/gnome-shell-extension-window-nativizer

v0.11.1

Choose a tag to compare

@github-actions github-actions released this 21 Oct 13:41

0.11.1 (2026-10-21)

Bug Fixes

  • decoration: derive and reconcile the clip's offscreen box (96e3ed5)
  • decoration: drop the settle's reference points with the decoration episode (bcea3ad)
  • decoration: hand the window whose second surface paints its box to the forced clip (509450d)
  • decoration: judge the visual floor on the window's initial stable size (b844936)
  • decoration: read a bare X11 shadow's owner from the buffer's alpha channel (a166c5c)
  • decoration: read the FBO's scale candidates from the actor's buffer rect (fa08989)
  • decoration: size and cut a window by the monitor scale the engine used (ddb575f)
  • e2e: move and read one pinned window, and poll for the placement (3beda8b)
  • effects: report a body disagreement only while the settle is undecided (c597566)
  • hooks: keep a failed check's log instead of deleting it (d38d13a)
  • manager: guard only what can fail, so a firing guard is visible (53487ed)
  • rules: an absent wire field keeps the value the field table declares (6542964)
  • shadow: do not report a settle that could not read the window at all (6886201)

Documentation

  • decoration: target unpatched mutter, not the !5179 patchset (97f9b6f)
  • model: record the flat-window inset boundary (5665b59)
  • model: record why the desktop keeps the offscreen clip (f99d9df)
  • readme: add the Arch Linux AUR install path (9f71b87)
  • readme: describe the decisions users see, not the code behind them (2a3f04e)
  • readme: merge the overview-corner and crisp-text notes into one section (664a563)

v0.11.0

Choose a tag to compare

@github-actions github-actions released this 17 Oct 00:08

0.11.0 (2026-10-16)

⚠ BREAKING CHANGES

  • inspector: PickWindow now requires a boolean debug argument. D-Bus has no default arguments, so existing callers must pass false for the quiet interactive pick; a call with no argument is refused with InvalidArgs. There is no non-interactive diagnostics path any more.

Features

  • inspector: keep diagnostics behind the interactive PickWindow gesture (b3855d1)
  • overview: keep preview cards sharp while rounding and shadowing them (86d2ba7)
  • pick: show the applied subpixel phase beside the mirrored one (095ede7)
  • prefs: add rules import and export via clipboard (#5) (f5e833e)
  • prefs: force corners on every window in the overview (f3d2705)

Bug Fixes

  • classifier: learn a window's pid when it arrives after tracking (d85e6f5)
  • classifier: remember a window's pid instead of re-reading it at teardown (64d1d2b)
  • classifier: retry a failed /proc read on a bounded backoff (55ea58b)
  • classifier: treat a failed maps read as unknown, not a verdict (b1f83e1)
  • clip: compare the settle's pair as the one buffer box they are (671e490)
  • clip: derive the flat cover from device pixels (57cee81), closes #129
  • clip: re-pin from the effect's actor, not the target field (a7389d7)
  • clip: refuse a surface container whose box cannot be verified (706d9dc)
  • clip: resolve a persistent body disagreement instead of holding forever (40cae5c)
  • clip: resolve the cut's body on the paint clock, not the pass clock (85dc87f)
  • clip: take the ring from the buffer that made it, not from a held value (2936d03)
  • compat: ask for a cursor by shape, only where the line has one (7ac4c0d)
  • compat: give 46 a way to a Cogl context (5f9472d)
  • decoration: do not persist a substituted scale as the last good one (e554cee)
  • decoration: guard the ring hold's reads (3f28f3e)
  • decoration: keep the corner state current on passes that draw nothing (cd5b7d3)
  • display: give an unreadable monitor scale its own unknown state (621f85c)
  • effects: align shadow shader cutout with GTK4 analytical box shadow (baa0699)
  • effects: cast the shadow by the body the clip draws (4eb43ac)
  • effects: compensate Mutter Wayland subpixel grid translation to eliminate edge gaps (4cc166d)
  • effects: crop a narrow window's shadow instead of scaling it (9602c32)
  • effects: cut the clip and the shadow on one subpixel phase (6d17475), closes #117
  • effects: cut the clip on the surface container, outside the FBO (9373af9), closes #117
  • effects: decouple straight edge clipping from corner AA to prevent dragging blur (0021992)
  • effects: derive the phase strategy and the shadow's phase from the clip target (a0ffc1c), closes #117 #119
  • effects: eliminate overview edge aliasing and preserve mipmap LOD derivatives (b1d28d3)
  • effects: excise flat window client borders with safe insets to prevent corner seams (c826e35)
  • effects: extend corner slice to cover Gaussian optical decay (428676d)
  • effects: extract Gaussian constant SQRT1_2 from upstream common.glsl (9cddd7c)
  • effects: isolate CSD stroke normal sampling push to prevent ringless edge flicker (126f636)
  • effects: land the shadow cutout on the scaled window's visual box (20ba273)
  • effects: probe the mask by capability and never re-probe a masked window (13009cc)
  • effects: push texture sampling inward along boundary normal to eliminate fractional scaling dark seams (83b880a)
  • effects: report a repeated shadow-bake failure once per episode (e2f5a50)
  • effects: snap buffer body margins symmetrically across device grid and align body edge (dc2d19c)
  • effects: stop rewriting the shadow's translation when it did not move (bd58700)
  • effects: suspend the clip on a degenerate target instead of painting nothing (989c200)
  • effects: take the window actor as the body authority (f26bc73), closes #121
  • hooks: run the performance check on push, and fix the band guard it exposed (8acb3e5)
  • lib: choose the clip target by one verified rule ([bb23925](bb23925...
Read more

v0.10.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 01:43

0.10.0 (2026-10-03)

Features

  • effects: retain rounded corners in overview with hardware mipmapping (#80) (1416bc4)

Bug Fixes

  • effects: erase outer corner fringe on windows without shadow insets (401ca43)
  • lib: do not treat libxul as an adwaita provider (a27a4bb)
  • prefs: do not auto-collapse rule row when toggling axis switch (f977cd5)

Documentation

  • compat: record the invariant the cached static snippet relies on (38ea4f2)
  • decoration-model: say what Mutter's X11 shadow costs on a focus change (345aea6)
  • development: say where the API-compatibility claim stops being mechanical (387c983)
  • readme: say what a correction cannot fix (abcbeaf)

v0.9.0

Choose a tag to compare

@github-actions github-actions released this 29 Sep 08:31

0.9.0 (2026-09-29)

Features

  • style: derive which states animate from the SCSS (246b826)
  • style: draw the tiled ring as a shadow layer that carries a colour (e6a627d)
  • style: stop blending when the user has turned animations off (85589e6)

Bug Fixes

  • compat: tell GNOME 45 apart from 49–51 by what the backend can do (8e2c7f6)
  • detector: clear a client's ring only when the tiled style draws one (ea3287e)
  • manager: decide the tiled decoration actor from the axes, not from the shadow (7581a76)
  • manager: reconcile a focus change immediately, not after the debounce (5e24d83)
  • prefs: generate the picker highlight from the Shell's own pickers (4af7402)

Performance

  • shadow: advance the blend from the paint pass, not a 60Hz timer (1170675)

Documentation

  • correct the API surface against the audited declarations (2050ab2)
  • decoration-model: record why the two libadwaita variants are left alone (5ed8222), closes #69
  • derive the API table from the audit record instead of typing it (a18e036)
  • development: say what a stub may stand for, and what only pixels settle (7ba9068)
  • readme: fold the related-projects list into the adw-gtk3 entry (ec0b825)
  • readme: keep the license section to the license (e1698b0)
  • readme: make the Chinese README correspond to the English one (a5b51a5)
  • readme: show the tiled ring and the states the decoration follows (c9d9889)
  • say the project is LLM-assisted, and what an EGO review rejects (052d8cd)

v0.8.1

Choose a tag to compare

@github-actions github-actions released this 28 Sep 07:37

0.8.1 (2026-09-28)

Bug Fixes

  • prefs: escape the ampersand in the group title (445a1cf)
  • prefs: name a correction row after its axis (2470d86)
  • prefs: rewrite the interface copy to follow the GNOME HIG (3e7d346)

Documentation

  • fix what the Chinese README broke of the style guide (97ed7ab)
  • point at the projects that cover the app itself (c87c578)
  • prefs: tell translators the entity placeholders can be swapped (0d4067e)
  • update preview image (e291b4b)
  • write both READMEs in plain language (5aef810)

v0.8.0

Choose a tag to compare

@github-actions github-actions released this 28 Sep 03:29

0.8.0 (2026-09-28)

Features

  • effects: align shadow slices with device pixel grid and cache per scale (da3fcec)
  • effects: snap window clip with grow rule and normalize shader AA to physical scale (8d8398b)
  • lib: implement GTK4 physical device pixel grid snapping primitives (bc22a98)

Bug Fixes

  • compat: never cache an unresolved shader uniform location (bbca576)
  • core: keep the /proc probe out of the native-like-corner queries (8759cea)
  • core: tolerate half-torn-down windows while reading properties (ed2ed5b)
  • e2e: remove the pick-reply file in cleanup (fd5e1e9)
  • effects: clamp the clip corner radius to the body it rounds (a0b83a8)
  • effects: keep shadow slices ordered at degenerate window sizes (923f08f)
  • effects: restart the shadow cross-fade on a mid-fade style change (72461d5)
  • inspector: answer the pick even when the target window tears down (7cb6502)
  • inspector: drop the D-Bus handlers GJS never disconnects (a8237f0)
  • inspector: leave no picker on the stage when it cannot start (32ff95a)
  • manager: finish teardown when a window's actor is already gone (39dca0b)
  • manager: wire the window actor's signals once it exists (57ebade)
  • monitor: bound monitor queries before Mutter logs a CRITICAL (5cfe508)
  • pick: treat a whitespace-only WM_CLASS as absent (9c652c5)
  • prefs: bound the pick call and report a busy pick (aa3fdbc)
  • prefs: cancel the pick call when the preferences window closes (332d9d0)
  • prefs: refresh the rule list on external changes and unescape group headings (c1562b2)
  • rules: canonicalise a rule title's key like its state (3c32619)
  • tools: fail the generators instead of silently emitting wrong output (984fcf9)
  • tools: reap a dev session that never became ready (fe51bc6)
  • tools: replace the deployed extension instead of merging into it (8723203)
  • window: do not remember a peer-borrowed identity (3dce71a)

Performance

  • manager: reconcile the focus pair, reuse the read insets, cache high contrast (5153756)
  • resize-band: compute the bands in place on the allocate path (bd7ebad)

Documentation

  • architecture: document GTK4 grid snap alignment and actor-local coordinate model (03e33a4)
  • architecture: point shadow geometry and uniform caching at their modules (e0e9b21)
  • clipTarget: record why the X11 fallback keeps a foreign first child (f6991db)
  • fix three claims the code contradicts, and fill four omissions (482dfa4)
  • manager: record what a throwing pid read costs (82c6802)

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 25 Sep 22:41

0.7.0 (2026-09-25)

Features

  • compat: add GNOME 51 support with zero-side-effect ponyfills (dc44223)

Bug Fixes

  • inspector: align pick highlight border and adapt square window corners (ff72000)

Documentation

  • establish anti-drift documentation hierarchy and align inspector architecture (45baedd)

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 21 Sep 14:04

0.6.0 (2026-09-21)

⚠ BREAKING CHANGES

  • rules: rules stored in the previous form are dropped, not migrated. A rule is now a per-axis reversal written as 'corners,shadow', the resize band is one of its axes, the old resize-band setting is gone, and the rule key gained has_ssd - re-add a rule from Preferences if one of yours disappears.

Features

  • prefs: label the pick button, and stop showing internals (cfde3e3)
  • prefs: show the window a rule was picked from (dfdb668)
  • resize: band bare windows by default, opt out per kind (4d261ed)
  • rules: correct every axis on a pick, and name the rows corrections (990ff0f)
  • rules: distinguish windows with and without declared margin rings via has_ring (592e00e)
  • rules: override each decoration axis by reversing the automatic decision (7ca1e37)

v0.5.1

Choose a tag to compare

@github-actions github-actions released this 19 Sep 11:43

0.5.1 (2026-09-19)

Bug Fixes

  • dev: isolate test sandbox xdg config and enforce extension enablement (5169d58)
  • manager: ignore non-decoratable window types and guard focus reconcile (ec67441), closes #13
  • manager: resolve clip target to surface container when foreign widgets injected (69ed0ee), closes #16
  • manager: verify compat coordinate space and react to late child injection (462bdc1)
  • nativeLikeCorners: read /proc/<pid>/maps asynchronously (8611225)
  • probe: resolve probe timing inversion, enforce symmetrical lifecycle, and optimize band insets (61a9b57)
  • resize-band: keep the band on tiled and tile-matched windows (1b3f59c)
  • resize-band: read the client and the ring it reserved, not the declared margin (062adf1)
  • shadow: modulate pipeline opacity with paint opacity to fade on window close (c918f27)
  • suspend clip effect during overview to prevent blurry downscaled previews (0fd03d5)

Documentation

  • decoration-model: record how a tiled window's edges are decided (284fd7d)
  • decoration-model: record who gets a resize band, and why (55c47fc)
  • decouple implementation details and define architectural invariants (84ea8b3)
  • formalize CQS purity rules, decoupled metrics, and overview suspension rationale (590cc5b)
  • lib: document libxul Gecko rounded corners implementation and Bug 1850827 (02573de)
  • readme: decouple metrics, elevate drag ergonomics, and polish hero layout (c08dc8a)
  • readme: disclose LLM-assisted (vibe coding) development and real-world testing (ca16724)
  • readme: document installation via release zip archive (fd200bb)
  • readme: streamline copy, improve readability, and offload deep specs to docs (5fb9b00)

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 16 Sep 02:22

0.5.0 (2026-09-16)

Features

  • rules: support size specifier for fixed-size window keys to resolve collision (ee74833)

Bug Fixes

  • prefs: correct pick suggestion to break status quo and clarify feedback (79a7c17)

Documentation

  • schema: name the size specifier in the fingerprint grammar (1263cfe)