A Gnome Shell Extension for organizing your Gnome Shell top bar. https://extensions.gnome.org/extension/4356/top-bar-organizer/
Find a file
June 5a09b1a2c8
refactor: switch to TypeScript
Aside from introducing a bunch of type annotations and other code
adjustments, also add explicit type checking where necessary.

Inline #associateItem into the constructor in PrefsBoxOrderItemRow as
the method sets this.item and:
> Note that the field needs to be initialized in the constructor itself.
> TypeScript does not analyze methods you invoke from the constructor to
> detect initializations, because a derived class might override those
> methods and fail to initialize the members.
https://www.typescriptlang.org/docs/handbook/2/classes.html

Explicitly ensure we actually have a Gdk.Drag in #setupDNDScroll in
PrefsPage and explicitly only scroll when a DND operation is properly
set up. Even tho previously not having a Gdk.Drag in #setupDNDScroll
would probably just error out the callback and probably be just fine
then, handling this explicitly is at least nicer.

Also see the guide on using TypeScript for GNOME Shell Extensions, which
was followed for this work to some degree:
https://gjs.guide/extensions/development/typescript.html
2025-06-12 00:56:10 +02:00
.vscode Other: Specify a textwidth of 80 for JavaScript 2021-05-14 13:18:30 +02:00
data fix: use row title to make settings window not break for long item names 2025-06-09 19:53:12 +02:00
docs docs: add newer, cut down and commented panel.js from GNOME Shell 48.2 2025-06-08 20:57:58 +02:00
res Docs: Add README with screenshot, extension desc. and installation notes 2023-01-30 18:10:52 +01:00
src refactor: switch to TypeScript 2025-06-12 00:56:10 +02:00
.editorconfig refactor: switch to TypeScript 2025-06-12 00:56:10 +02:00
.eslintignore other: add GNOME 48.2 panel source code file to .eslintignore 2025-06-09 18:33:10 +02:00
.eslintrc.yml Other: Require trailing commas for multiline for most 2023-10-05 14:50:36 +02:00
.gitignore refactor: switch to TypeScript 2025-06-12 00:56:10 +02:00
ambient.d.ts refactor: switch to TypeScript 2025-06-12 00:56:10 +02:00
CONTRIBUTING.md other: change commit msg format to use lowercase tags and desc. start 2024-09-11 02:51:20 +02:00
COPYING Other: License this project 2021-05-17 14:37:57 +02:00
git_annotated_tag_template docs: enhance the git annotated tag and release notes templates 2024-09-11 03:58:32 +02:00
package-lock.json refactor: switch to TypeScript 2025-06-12 00:56:10 +02:00
package.json refactor: switch to TypeScript 2025-06-12 00:56:10 +02:00
package.sh refactor: switch to TypeScript 2025-06-12 00:56:10 +02:00
README.md other: update my name 2024-09-11 03:16:46 +02:00
tsconfig.json refactor: switch to TypeScript 2025-06-12 00:56:10 +02:00

Top Bar Organizer

Screenshot of GNOME Shell 43 with Top Bar Organizer v6 running and its preferences open. The GNOME Shell top bar items aren't all in their default location.

Top Bar Organizer allows you to organize the items of the GNOME Shell top (menu)bar.

Installation

The extension is available on the GNOME Extensions website.
Or you can also manually install a release from the releases page.

There's also a community-maintained AUR package available.