GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - Construct-Linux/tilingshell: CONSTRUCT's fork of Tiling Shell, for GNOME Shell 51

BranchesTags
Open more actions menu
 
 

Latest commit

 

History

131 Commits
131 Commits

Folders and files

NameName
Last commit message
Last commit date
doc
doc
 
 
gresources
gresources
 
 
resources
resources
 
 
src
src
 
 
translations
translations
 
 
.gitignore
.gitignore
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
esbuild.mjs
esbuild.mjs
 
 
package-lock.json
package-lock.json
 
 
package.json
package.json
 
 
tsconfig.json
tsconfig.json
 
 

Repository files navigation

Tiling Shell for CONSTRUCT

Tiling Shell by Domenico Ferraro: a GNOME Shell extension ([email protected]) with layouts, snap assistant, edge tiling, keyboard tiling, a layout editor and multi-monitor support. Its user documentation is upstream's README.

This fork is what CONSTRUCT ships. It runs on GNOME Shell 51 only: the build for shells 42-44 and every branch for shells older than 51 are removed, and metadata.json declares "51" alone. Branch gnome-51.

Changes from upstream

Based on upstream's v18.0 branch at 832aac5a (18.0 release candidate, which added GNOME 51).

Fixes, each worth sending upstream:

  • tilingManager: take the seat from the stage's backend: Clutter.get_default_backend() is gone in mutter 51; a tablet pen over the stage threw on every motion event.
  • fix: destroy the tiling managers in disable(): they outlived every screen lock since #560 (upstream #559).
  • fix: give a restored window back its tile: a window unmaximized back into its tile is tiled again (upstream #372).
  • signals: keep every connection instead of one per signal name: each window drag leaked two global.stage handlers, one of them warping the pointer on tablet motion.
  • alttab: stop adding the tile preview to its parent twice: a Clutter critical per tiled window on every Alt+Tab.
  • extension: guard focus keybindings against a missing focus window.
  • extension: drop the version migrations ...: the 17.3 migration ran on every enable and overwrote cycle-layouts-backward.
  • windowborder: draw the border with St CSS instead of Cairo, and its first-frame and accent-color handler leaks.
  • styles: use transition-duration, the only transition St reads.

Build and cleanup:

  • package-lock.json is tracked, so npm ci installs exactly what was tested.
  • GNOME Shell 51 only: no legacy build (Babel import rewriting, polyfills, dist_legacy/), no Config.PACKAGE_VERSION comparisons, no probes for APIs that 51 always or never has, no Gdk subprocess for monitor names.
  • No extensions.gnome.org packaging, Vagrant VMs, upstream GitHub templates or README media.

Build

npm ci --no-audit --no-fund
node esbuild.mjs
glib-compile-resources --sourcedir=./gresources \
  --target=./dist/resources.gresource ./gresources/resources.gresource.xml

Needs Node.js 22, npm, glib (glib-compile-resources). esbuild.mjs compiles src/ (TypeScript, SCSS) into dist/ and copies resources/ (metadata, schema, icons, compiled translations). dist/ is the extension directory: CONSTRUCT installs it under /usr/share/gnome-shell/extensions/[email protected] and the schema under /usr/share/glib-2.0/schemas, compiled with the image.

npm run build also compiles the schema into dist/schemas, for a per-user install with npm run install:extension. Translations live in translations/ (npm run update-translations regenerates the catalogs and resources/locale).

License

GPL-3.0-or-later, as the source headers say (LICENSE is the GPLv3 text). Tiling Shell is © Domenico Ferraro and its contributors; the translations are by their translators.

About

CONSTRUCT's fork of Tiling Shell, for GNOME Shell 51

github.com/domferr/tilingshell

Resources

Readme
GPL-3.0 license
Activity
Custom properties

Stars

1 star

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.