Compare commits

..
Author SHA1 Message Date
Lucas Oskorep 02e7191e1e chore: update package.json
Build and Test / build (push) Successful in 24s
Build and Test / release (push) Successful in 3s
2026-03-02 23:32:52 -05:00
Lucas Oskorep 7794bb14ff feat: update version in package.json 2026-03-02 23:32:52 -05:00
Lucas Oskorep f70a4b4490 feat: initial README.md 2026-03-02 23:32:52 -05:00
Lucas Oskorep 8b3ba56751 feat: adding support for multi-monitor window moving 2026-03-02 23:32:52 -05:00
Lucas Oskorep b54c9302eb feat: adding active window selection and refactoring keybindings 2026-03-02 23:32:52 -05:00
Lucas Oskorep 5dd43a681e fix: when new items enter the tabbed view they should be the active window 2026-03-02 23:32:52 -05:00
Lucas Oskorep 6690eaf007 feat: equal-sized tabs and constantly updated tab titles 2026-03-02 23:32:52 -05:00
Lucas Oskorep a2aaaf8fc3 fix: tab bars showing when apps are fullscreen on same monitor 2026-03-02 23:32:52 -05:00
Lucas Oskorep e5c539e164 feat: add tabbed container layout mode with tab bar UI
fix: tab bars no longer shown in overview.  Tab bars show name of app with pipe and then title of the app
2026-03-02 23:32:52 -05:00
Lucas Oskorep 8e4a3e35f2 fix: new bug from combining resize and move commands - if window has min-size set and resize goes smaller window would not move or resize causing vesktop and steam to frequently break when in arrays on a smaller monitors 2026-03-02 23:32:52 -05:00
Lucas Oskorep 805762625c feat: adding support for changing the size of windows during window resize events to aerospike. Also cleaning up imports and simplifying some of the settings logic. 2026-03-02 23:32:52 -05:00
Renovate BotandLucas Oskorep 7aecfe2514 chore(deps): update dependency eslint to v10 2026-03-02 23:32:52 -05:00
Lucas Oskorep b75733170e Update .gitea/workflows/build.yaml 2026-03-02 23:32:52 -05:00
Lucas Oskorep 43fb4685de fix: renovate updating past v3 for upload when v4+ is unsupported in gitea 2026-03-02 23:32:52 -05:00
Lucas Oskorep 9ce72590ab feat: update code to work with new libs 2026-03-02 23:32:52 -05:00
Renovate BotandLucas Oskorep d4783ed997 chore(deps): update all-dependencies 2026-03-02 23:32:52 -05:00
Lucas Oskorep 8694507ded Update .gitea/workflows/build.yaml 2026-03-02 23:32:52 -05:00
Renovate BotandLucas Oskorep 89777ff859 chore(deps): update all-dependencies 2026-03-02 23:32:52 -05:00
Renovate BotandLucas Oskorep 85afbc12ed Add renovate.json 2026-03-02 23:32:52 -05:00
Lucas Oskorep db701fe8d6 revert df9bc3e1eb
revert Merge pull request 'chore: Configure Renovate' (#1) from renovate/configure into main

Reviewed-on: #1
2026-03-02 23:32:52 -05:00
Renovate BotandLucas Oskorep 9ca98741fd Add renovate.json 2026-03-02 23:32:52 -05:00
Lucas Oskorep ebfef91708 feat: gitea pipeline fix for upload 2026-03-02 23:32:52 -05:00
Lucas Oskorep b28746ac41 feat: gitea pipeline fix for upload 2026-03-02 23:32:52 -05:00
Lucas Oskorep 4515e64062 feat: gitea pipeline 2026-03-02 23:32:52 -05:00
Lucas Oskorep 689c0428ae feat: gitea pipeline 2026-03-02 23:32:52 -05:00
Lucas Oskorep c915fe2680 feat: adding basic unit tests and framework for them 2026-03-02 23:32:52 -05:00
Lucas Oskorep 7afa09bd6a bugfixes 2026-03-02 23:32:52 -05:00
Lucas Oskorep f1b1541c22 feat: cleanup 2026-03-02 23:32:52 -05:00
Lucas Oskorep bddf052ed5 Finish adding debugging command and ability to swap the orientation of a container 2026-03-02 23:32:52 -05:00
Lucas Oskorep 8cd047ec32 adding debug command 2026-03-02 23:32:52 -05:00
Lucas Oskorep 1a22e1e0b2 feat: removing prettyborders zip 2026-03-02 23:32:52 -05:00
Lucas Oskorep 1735868f28 feat: update devkit command 2026-03-02 23:32:52 -05:00
Lucas Oskorep d6b519c2f5 upgrade to gnome 49 2026-03-02 23:32:52 -05:00
Lucas Oskorep ce0a8e5991 feat: remove crap code 2026-03-02 23:32:52 -05:00
Lucas Oskorep ab14b02e51 fix: allow windows to be moved in the overview 2026-03-02 23:32:52 -05:00
Lucas Oskorep 4c3e2aaada fix: bug with window manager resizing a window during grab ops for 1 frame when the background had to be tiled 2026-03-02 23:32:52 -05:00
Lucas Oskorep 8fcfdb84e7 feat: enable the window manager to be able to drag across monitors and support keybindings propperly in the extension settings 2026-03-02 23:32:52 -05:00
Lucas Oskorep ec75a27b33 feat: upgrade packages and set parent for windows on add 2026-03-02 23:32:52 -05:00
Lucas Oskorep b8c8159a56 feat: add ability to change ordering of monitors 2026-03-02 23:32:52 -05:00
Lucas Oskorep 05be57be80 feat: refactored to monitor -> workspace -> container -> window workflow 2026-03-02 23:32:52 -05:00
Lucas Oskorep 0112611687 feat: adding support for workspaces 2026-03-02 23:32:52 -05:00
Lucas Oskorep 154db74d02 feat: refactoring 2026-03-02 23:32:52 -05:00
Lucas Oskorep f7bff9a788 feat: fixed display signal handling on disable 2026-03-02 23:32:52 -05:00
Lucas Oskorep 9699fae6de feat: adding fix for minimized windows still taking up space 2026-03-02 23:32:52 -05:00
Lucas Oskorep fbd723c978 feat: attempting to fix windows lost on logout 2026-03-02 23:32:52 -05:00
Lucas Oskorep 9075ebf694 feat: set nvm version 2026-03-02 23:32:52 -05:00
Lucas Oskorep 158d65bd29 feat: initial commit with multi-monitor support 2026-03-02 23:32:52 -05:00
Lucas Oskorep a08798290a fix 2026-03-02 23:32:52 -05:00
Lucas Oskorep b8f16afb4e feat: first draft of everything working single monitor with just mouse commands 2026-03-02 23:32:52 -05:00
Lucas Oskorep baa056590a feat: adding in demo settings page for gnome extensions 2026-03-02 23:32:52 -05:00
Lucas Oskorep f5074bacd3 feat: remove prefs 2026-03-02 23:32:52 -05:00
Lucas Oskorep 74cccb2591 feat: update gschema 2026-03-02 23:32:52 -05:00
Lucas Oskorep 4a7a5a7757 feat: adding initial source code 2026-03-02 23:32:52 -05:00
Lucas Oskorep dc30e680d8 feat: readme 2026-03-02 23:32:52 -05:00
12 changed files with 1425 additions and 1546 deletions
+1 -1
View File
@@ -31,7 +31,7 @@ jobs:
apt-get install -y libglib2.0-dev glib-networking zip
- name: Install project dependencies
run: pnpm install --ignore-scripts
run: pnpm install
- name: Run unit tests
run: just test
-1
View File
@@ -1 +0,0 @@
25
-1
View File
@@ -1 +0,0 @@
pnpm-exec-install=false
+1
View File
@@ -0,0 +1 @@
24
+1 -7
View File
@@ -8,7 +8,7 @@ packages:
build: packages && build-schemas
rm -rf dist/*
pnpm run build
pnpm exec tsc
cp metadata.json dist/
cp stylesheet.css dist/
mkdir -p dist/schemas
@@ -47,12 +47,6 @@ test-coverage:
ci-local:
act -W .gitea/workflows/build.yaml
lint:
pnpm run lint
clean:
pnpm run clean
#pack: build
# gnome-extensions pack dist \
# --force \
+1 -2
View File
@@ -5,8 +5,7 @@
"settings-schema": "org.gnome.shell.extensions.aerospike",
"shell-version": [
"48",
"49",
"50"
"49"
],
"gettext-domain": "aerospike@lucaso.io",
"url": "https://gitea.chaosdev.gay/lucasoskorep/aerospike@lucaso.io"
+30 -13
View File
@@ -1,6 +1,6 @@
{
"name": "aerospike",
"version": "0.2.4",
"version": "0.2.1",
"description": "Simple, Opinionated Tiling Window Manager for Gnome written in Typescript",
"type": "module",
"private": true,
@@ -16,25 +16,42 @@
"homepage": "https://github.com/lucasoskorep/aerospike-gnome/#readme",
"sideEffects": false,
"scripts": {
"build": "tsc",
"clean": "rm -rf dist/*",
"lint": "eslint .",
"test": "jest",
"test:watch": "jest --watch",
"test:coverage": "jest --coverage"
},
"devDependencies": {
"@girs/gjs": "4.1.0",
"@girs/gnome-shell": "50.0.3",
"@jest/globals": "^30.4.1",
"@girs/gjs": "4.0.0-beta.38",
"@girs/gnome-shell": "49.1.0",
"@jest/globals": "^30.0.0",
"@types/jest": "^30.0.0",
"eslint": "^10.5.0",
"eslint-plugin-jsdoc": "^63.0.2",
"jest": "^30.4.2",
"ts-jest": "^29.4.11",
"typescript": "^6.0.3"
"eslint": "^10.0.0",
"eslint-plugin-jsdoc": "^62.0.0",
"jest": "^30.0.0",
"ts-jest": "^29.1.2",
"typescript": "^5.9.2"
},
"dependencies": {
"@girs/mtk-17": "17.0.0-4.0.0-rc.17"
"@girs/mtk-17": "17.0.0-4.0.0-beta.38"
},
"pnpm": {
"overrides": {
"@girs/cairo-1.0": "1.0.0-4.0.0-beta.38",
"@girs/freetype2-2.0": "2.0.0-4.0.0-beta.38",
"@girs/gdk-4.0": "4.0.0-4.0.0-beta.38",
"@girs/gdkpixbuf-2.0": "2.0.0-4.0.0-beta.38",
"@girs/gio-2.0": "2.86.0-4.0.0-beta.38",
"@girs/gjs": "4.0.0-beta.38",
"@girs/glib-2.0": "2.86.0-4.0.0-beta.38",
"@girs/gmodule-2.0": "2.0.0-4.0.0-beta.38",
"@girs/gobject-2.0": "2.86.0-4.0.0-beta.38",
"@girs/graphene-1.0": "1.0.0-4.0.0-beta.38",
"@girs/gsk-4.0": "4.0.0-4.0.0-beta.38",
"@girs/gtk-4.0": "4.20.1-4.0.0-beta.38",
"@girs/harfbuzz-0.0": "11.5.0-4.0.0-beta.38",
"@girs/mtk-17": "17.0.0-4.0.0-beta.38",
"@girs/pango-1.0": "1.57.0-4.0.0-beta.38",
"@girs/pangocairo-1.0": "1.0.0-4.0.0-beta.38"
}
}
}
+1391 -1509
View File
File diff suppressed because it is too large Load Diff
-2
View File
@@ -1,2 +0,0 @@
allowBuilds:
unrs-resolver: true
-1
View File
@@ -173,7 +173,6 @@ export default class AerospikeExtensions extends ExtensionPreferences {
if (!!value) {
const mappings = value.split(',').map((x) => {
const [, key, mods] = Gtk.accelerator_parse(x);
if (mods === null) return false;
return Gtk.accelerator_valid(key, mods) && Gtk.accelerator_name(key, mods);
});
// Filter out any false values to ensure we only have strings
-9
View File
@@ -47,10 +47,6 @@ export class WindowWrapper {
return this._window.get_frame_rect();
}
isFullscreen(): boolean {
return this._window.is_fullscreen();
}
getTabLabel(): string {
const rawAppName = this._window.get_wm_class() ?? '';
// Strip reverse-domain prefix (e.g. "org.gnome.Nautilus" -> "Nautilus")
@@ -144,11 +140,6 @@ export class WindowWrapper {
return;
}
if (this.isFullscreen()) {
Logger.info("STOPPED RESIZE BECAUSE WINDOW IS FULLSCREEN");
return;
}
const actor = this._window.get_compositor_private() as Clutter.Actor | null;
if (!actor) {
Logger.log("No actor available, can't resize safely yet");
View File