Skip to content

Releases: adil192/shatter-shell

2.4.1

Choose a tag to compare

@adil192 adil192 released this 14 Oct 11:02
Immutable release. Only release title and notes can be modified.
77fbc0b

Fixes:

  • An initially maximized window was never considered for tiling (#55). It will now be reconsidered if certain properties change: #54
  • Reduced excessive timeouts in a few places:
    • When adding a new floating exception, the window picker will show after 100ms not 500ms.
    • When a window is resized, it'll be debounced for 150ms not 500ms.
    • A newly registered window will be activated after ~20ms not 100ms.

GNOME guidelines:

  • Removed GTK imports from the main shell process: #41, #49
  • Migrate deprecated ComboBoxText widget to the new DropDown: #50
  • Reduced synchronous file reads: #51
  • Removed gschemas.compiled from the zip file: #52
  • Improved cleanups if the user disables the extension.

Full Changelog: 2.4.0...2.4.1

2.4.0

Choose a tag to compare

@adil192 adil192 released this 10 Oct 20:51
Immutable release. Only release title and notes can be modified.
d82ba06

New:

  • On first launch, you will be asked to setup keybindings for Shatter Shell (#27): #37.
    This is one step closer to eventually publishing on the GNOME Extensions website (#38).
    Welcome to Shatter Shell! For full functionality of Shatter Shell, some of your system's default keybindings need updating.

Fixed:

  • We no longer recommend the "Native Window Placement" extension since it makes the overview transition very juddery. It has been removed from configure.sh.

Packaging:

  • Existing packages for Pop/Shatter Shell maintained their own keybinding override files. Those files are now included in this repo to make packaging simpler.
  • Among those keybinding override files is one that disables the new keybinding setup dialog at first launch, since they're already overridden.
  • Existing packages for Pop/Shatter Shell contained a custom patch to remove the glib-compile-schemas step in transpile.sh. That patch is no longer needed: run make COMPILE_SCHEMAS=false compile.
  • Added an Arch PKGBUILD. This will hopefully be uploaded to the AUR if registrations ever open up again!

Full Changelog: 2.3.1...2.4.0

2.3.1

Choose a tag to compare

@adil192 adil192 released this 27 Sep 20:46
Immutable release. Only release title and notes can be modified.
cc51b1d

Fixed:

  • Fixed an error that occurs if a window is not associated with a workspace (#35): #36

New:

  • Added a floating window exception for Live Captions
  • Misc improvements to the install script: #34

Developer:

  • Removed some unused exports and code: #33

Full Changelog: 2.3.0...2.3.1

2.3.0

Choose a tag to compare

@adil192 adil192 released this 25 Sep 19:08
Immutable release. Only release title and notes can be modified.
c10e054

Migration needed: If you are coming from a previous release (or from the original Pop Shell), reset your keyboard shortcuts in GNOME Settings before running make local-install. This is only for local installs, no migration is needed if you installed from Terra.

New:

  • Added a dialog showing the default keyboard shortcuts (#24): #32
  • Added accessibility roles for stack tabs.

Fixes:

  • Fixed Adjustment Mode always moving windows to the top-left corner (#30): #31
  • Fixed a missing icon in the floating exceptions dialog.
  • make local-install now installs the gschema.
  • Merged the two panel indicator menu entries into one entry for the shortcuts dialog.

Keyboard shortcuts:

  • Removed vim-style hjkl navigation since it conflicts with many GNOME keybindings.
  • Removed non-existent (outdated) keybinding overrides.
  • Removed media key overrides (e.g. <Super>T to open terminal, <Super>E to open email) since they're out of scope for a tiling extension.
  • Reduced number of overridden GNOME keybindings which should make Shatter Shell easier to pickup for new users.
  • Fixed <Super>s opening quick settings instead of toggling stacking.
  • Restored GNOME's <Alt>F5 to unmaximize a window.
  • Restored GNOME's <Alt>F10 to toggle maximization of a window.
  • Restored GNOME's <Super>L to lock screen.
  • Restored GNOME's XF86RotationLockToggle to toggle automatic screen orientation.
  • Misc changes: see the shortcuts dialog (#32) for more info. All of these keybindings are still customizable.

Developer:

  • Removed unused debian packaging files.
  • Removed custom logic for moving workspace/monitor since it already exists in GNOME.
  • Removed lots of unused code.
  • Merged tsconfigs so only one compilation pass is needed.
  • Used distinct types for MonitorID and WorkspaceID so they won't compile if they're mixed up.

Full Changelog: 2.2.2...2.3.0

2.2.2

Choose a tag to compare

@adil192 adil192 released this 20 Sep 22:56
Immutable release. Only release title and notes can be modified.
50d174b

Fixes:

  • Fixed a GNOME crash when trying to focus a window mid-frame (pop-os#1550): #21

New:

  • We got added to Terra. Find install instructions in the README.

Developer:

  • Replaced npm run lint with make lint: 03f7250
  • Faster CI by removing global sass install: 591f6d4
  • Faster CI by using a build cache (and some hacks): d34ac4b

Full Changelog: 2.2.1...2.2.2

2.2.1

Choose a tag to compare

@adil192 adil192 released this 15 Sep 22:29
Immutable release. Only release title and notes can be modified.
0c31484
  • Fixes:
    • Fixed a stacked window getting stuck as transparent in specific conditions (#18): e7d53e2
    • The Extension Manager app did not display the version of Shatter Shell: ec8b4c0.
    • Restored stock GNOME's window attention handler: 496d140. (I can't figure out why this was disabled in pop-shell 5 years ago, but I have no issues on GNOME 51.)
  • Smaller fixes:
    • Fixed entity_eq not considering the generation of the entities: 1f82d66.
    • Fixed an incorrect range check which prevented inserting entities into a storage beyond the current store size: c7552a1.
    • Fixed a bug preventing the 0th storage from being unregistered: 55a274c.
    • Fixed a bug preventing the 0th slot being reused: f6332de.
  • Performance:
    • Only call reset_visibility after the new window has been activated (prevents starting an incorrect fade animation which gets immediately cancelled): 2657416.
  • Developer:
    • Replaced rustdoc syntax with jsdoc so that IDE features work: 7e6f647.
    • Improved readability by replacing numeric tags with readable strings (967a35d, fafe49c) or self-descriptive booleans (99e5118).
    • Merged duplicate implementations of Rust-style Result/Ok/Err types: 598b777.
    • Enabled type-checked eslints (59fcb53) and stricter array indexing (de33489). This includes minor bug fixes and can prevent similar bugs (listed above) happening in the future.

Full Changelog: 2.2.0...2.2.1

2.2.0

Choose a tag to compare

@adil192 adil192 released this 13 Sep 20:33
Immutable release. Only release title and notes can be modified.
2.2.0
e2ad1b3
  • New:
    • Ported the floating exceptions dialog and color chooser dialog to Adwaita/GTK4, and removed all imports of GTK3.
      See #13 for before and after screenshots.
  • Developer:
    • Minor cleanups: this release is 121 lines slimmer

Full Changelog: 2.1.0...2.2.0

2.1.0

Choose a tag to compare

@adil192 adil192 released this 12 Sep 14:46
Immutable release. Only release title and notes can be modified.
2.1.0
166b78c
  • New:
    • Added keyboard shortcuts for horizontal workspaces by @laikq in pop-os#1777.
      (Pop!_OS previously only supported vertical workspaces.)
    • Added smarter floating exceptions:
      • Don't tile non-resizeable windows or non-moveable windows, e.g. Steam's sign-in dialog.
      • Don't tile windows with the "skip-taskbar" flag, e.g. XWaylandVideoBridge's invisible window.
      • This nets us wider compatibility and less reliance on an explicit floating exceptions list.
    • Performance improvement in determining which windows to tile by caching compiled RegExp objects.
  • Fixed:
    • Ignore no-op stack resize grabs by @philip-sterne in pop-os#1826.
    • Fixed GNOME 48 crash if you click a tab's close button multiple times, based on @siddhpant's fix for pop-os#1794.
    • Replaced pop orange with adwaita blue in another spot that I forgot last release.
  • Developer:
    • Suppressed a warning in make enable when you don't have the original pop-shell installed.
    • Minor cleanups: this release is 52 lines slimmer

Full Changelog: 2.0.1...2.1.0

2.0.1

Choose a tag to compare

@adil192 adil192 released this 11 Sep 03:20
Immutable release. Only release title and notes can be modified.
2.0.1
d76d97b

New:

  • Improved the smoothness and symmetry of the fade transition between stacked windows.
  • Switched the default active hint color from Pop Orange to Adwaita Blue.

Fixed:

  • Stack tabs are now clickable even in the 3px gap around each button.
  • Reduced possibility of a window getting stuck as transparent.

Developer:

  • Formatted code with @stylistic/eslint-plugin.
  • Added checked attribute to stack tabs, possibly good for accessibility.
  • Improved safety of window_exec by passing the Tab directly instead of its index.

Full Changelog: 2.0.0...2.0.1

2.0.0

Choose a tag to compare

@adil192 adil192 released this 10 Sep 18:05
Immutable release. Only release title and notes can be modified.
2.0.0
778b3a8
  • Features:
    • Rebranded from Pop Shell to Shatter Shell.
    • Added GNOME 51 support.
    • Added a setting to stop Shatter Shell from resetting your windows' positions when untiling.
    • Adwaita-themed tab bar for stacked windows: the tabs are bigger and easier to click, and fit in better with GNOME.
    • Added a fade transition when switching between stacked windows.
  • Removals:
    • Removed pop-launcher (Super+/) integration in favor of GNOME's overview.
    • Removed system76-scheduler integration, since it's not common outside of Pop!_OS.
    • Removed the "Show Minimize to Tray Windows" setting in favor of stock GNOME Alt+Tab behavior.
    • Removed the "Show Window Titles" setting since it does nothing on Wayland.
  • Fixes:
    • Fixed some tiling jank with a fixed area_right function.
      This can possibly be upstreamed but needs benchmarking to see if it's actually an improvement or just placebo.
    • Fixed brief flickers in active hints when tiling/untiling/moving windows.
  • Floating window exceptions:
    • New: Steam sign-in dialog
    • New: Firefox Picture-in-Picture windows
    • New: Git Credential Manager login popups
    • New: Firefox "About" dialog
    • Fixed: Floating Window Exceptions config window
  • Technical:
    • Replaced manual .d.ts bindings with gjsify/gnome-shell.
    • Updated to Typescript 7 for faster builds and type checking.
    • Enabled eslint for code style and reducing dynamic types.
    • Removed legacy code for X11 and old GNOME versions (47 or older). This is now Wayland only, just like GNOME.
    • Added some basic CI to make sure code at least compiles.

Full Changelog: 7898b65...2.0.0