Giter Site home page Giter Site logo

velitasali / gtktitlebar Goto Github PK

View Code? Open in Web Editor NEW
184.0 4.0 16.0 108 KB

GNOME extension that removes title bar for non-GTK software (when maximized)

Home Page: https://extensions.gnome.org/extension/1732/gtk-title-bar/

License: GNU General Public License v3.0

JavaScript 100.00%

gtktitlebar's Introduction

GTK Title Bar - Remove Title Bar for non-GTK Software

  • This extension simply removes title bars on apps like Spotify and Qt5 apps when you maximize or tile them.
  • Unlike Unite, this does not remove window buttons for GTK apps.
  • Makes the minimal change on your system's default behaviour.
  • Supports GNOME 3.28+ (40 included).

Credits

  • This work here is hardfork of the unite-shell extension.

Dependencies

  • xprop should come preinstalled with your system. If not, you should install it.

Screenshots

Installation

From https://extensions.gnome.org (Recommended)

  1. Go to https://extensions.gnome.org/extension/1732/gtk-title-bar/
  2. Install and Enable.

From GitHub

  1. Download the latest release from 'Releases' page.
  2. Extract the folder into ~/.local/share/gnome-shell/extensions.
    • For X11, do Alt-F2 and type r or restart. This will restart the GNOME Shell.
    • For Wayland, log out and log back in.
    • On 3.38 and above, enable GTK Title Bar using the Extensions app.
    • On below 3.38, install GNOME Tweak Tool if not installed and enable GTK Title Bar.

Arch

AUR VCS package available: https://aur.archlinux.org/packages/gnome-shell-extension-gtktitlebar-git/

gtktitlebar's People

Contributors

danielcherubini avatar jonian avatar sh4r10 avatar terencode avatar velitasali avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

gtktitlebar's Issues

Error: Type name PrefsWidget is already registered

The settings of extension [email protected] had an error:

Error: Type name PrefsWidget is already registered

Stack trace:

_init/GObject.Object._classInit@resource:///org/gnome/gjs/modules/core/overrides/GObject.js:444:27
_init/Gtk.Widget._classInit@resource:///org/gnome/gjs/modules/core/overrides/Gtk.js:74:32
registerClass@resource:///org/gnome/gjs/modules/core/overrides/GObject.js:78:22
@/home/pepodev/.local/share/gnome-shell/extensions/[email protected]/prefs.js:5:29
_init@resource:///org/gnome/Shell/Extensions/js/extensionsService.js:206:33
OpenExtensionPrefsAsync/<@resource:///org/gnome/Shell/Extensions/js/extensionsService.js:122:28
asyncCallback@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:115:22
run@resource:///org/gnome/Shell/Extensions/js/dbusService.js:177:20
main@resource:///org/gnome/Shell/Extensions/js/main.js:19:13
run@resource:///org/gnome/gjs/modules/script/package.js:206:19
start@resource:///org/gnome/gjs/modules/script/package.js:190:8
@/usr/share/gnome-shell/org.gnome.Shell.Extensions:1:17

Gnome 3.36: Could not create transient scope

When maximizing/minimizing a window that gets its titlebar hidden by the extension, I see this in the log:

Could not create transient scope for PID 257097: GDBus.Error:org.freedesktop.DBus.Error.UnixProcessIdUnknown: Process with ID 257097 does not exist.

It doesn't have any visible impact.

ArchLinux with Linux 5.7.2
gnome-shell 3.36.2

Not working on GNOME 41

Hello

I have noted that although the extension installs without any error, the title bars keep showing. I have also tried some settings combinations but none seems to make any difference.

I'm using Fedora 35 with GNOME 41/Wayland with 2 screens.

Thank you!

Won't Work on GNOME 3.34

The extension does not work on GNOME 3.34 on ArchLinux (installed from testing packages). (Further details will be added)

Warning on 3.34 with version 4

nov. 29 16:35:10 terence-arch gnome-shell[1911]: JS ERROR: TypeError: this.focusWindow.syncComponents is not a function
                                                 _onFocusWindow@/usr/share/gnome-shell/extensions/[email protected]/window.js:354:9
                                                 actionMoveWorkspace@resource:///org/gnome/shell/ui/windowManager.js:2225:13
                                                 _showWorkspaceSwitcher@resource:///org/gnome/shell/ui/windowManager.js:2199:13
nov. 29 16:35:10 terence-arch gnome-shell[1911]: g_signal_emitv: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
nov. 29 16:35:10 terence-arch gnome-shell[1911]: invalid (NULL) pointer instance
nov. 29 16:35:10 terence-arch gnome-shell[1911]: JS ERROR: TypeError: this.focusWindow.syncComponents is not a function
                                                 _onFocusWindow@/usr/share/gnome-shell/extensions/[email protected]/window.js:354:9

ArchLinux, gnome-shell 3.34.1

Update? or, alternatives?

It's a sad to hear no news, as it was a useful extension for my small laptop screen.
Please consider update or let me know if there is any information on a replacement app.

Titlebar doesn't hide on apps with native Wayland rendering

Extension working as expected on apps using Xwayland. Some apps using native Wayland rendering, and extension doesn't work: window is maximized and titlebar still showing. Gtk and Qt apps affected.

Test apps for Fedora (other distros might have different combinations)

Wayland GTK: transmission -- doesn't work.
Xwayland GTK: gimp, audacity -- working as expected.

Wayland Qt: qbittorrent, KeePassXC -- doesn't work.
Xwayland Qt: Virtualbox, VLC, Kdenlive -- working as expected.

You can check if app using native Wayland or XWayland with xeyes (xorg-x11-apps): the eyes will move if the cursor is over an X or XWayland window.

Fedora 33
Gnome 3.38.5 Wayland

disable title bar on firefox

there's option in firefox to disable tittle bar, which is working great when this extension disabled. but when the extension activated. there's always title bar on firefox when not maximized, which is unwanted. so please make an exception to firefox and other similar behaviour app...

`meta_window_is_on_primary_monitor: assertion 'window->monitor' failed`

Noticed this error in my logs on a clean shell restart (alt + F2 -> r) with only your plugin installed, no user themes either. Only happens with this plugin installed and enabled.

Extension Information

  • Shell Version
    • 42.3.1
  • Extension Version (Leave blank, if not sure)
    • 10
  • OS
    • Gentoo 5.19.0
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed
Aug 06 12:08:46 localhost gnome-shell[1707]: meta_window_is_on_primary_monitor: assertion 'window->monitor' failed

PrefsWidget is already registered

All I get is this error when opening the settings page.

`Error: Type name PrefsWidget is already registered

Stack trace:
_init/GObject.Object._classInit@resource:///org/gnome/gjs/modules/core/overrides/GObject.js:444:27
_init/Gtk.Widget._classInit@resource:///org/gnome/gjs/modules/core/overrides/Gtk.js:78:32
registerClass@resource:///org/gnome/gjs/modules/core/overrides/GObject.js:78:22
@/home/wisnoskij/.local/share/gnome-shell/extensions/[email protected]/prefs.js:5:29
_init@resource:///org/gnome/Shell/Extensions/js/extensionsService.js:216:33
OpenExtensionPrefsAsync/<@resource:///org/gnome/Shell/Extensions/js/extensionsService.js:128:33
asyncCallback@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:115:22
run@resource:///org/gnome/Shell/Extensions/js/dbusService.js:177:20
main@resource:///org/gnome/Shell/Extensions/js/main.js:19:13
run@resource:///org/gnome/gjs/modules/script/package.js:206:19
start@resource:///org/gnome/gjs/modules/script/package.js:190:8
@/usr/share/gnome-shell/org.gnome.Shell.Extensions:1:17`

Gnome Terminal titlebar is not hidden

I've installed this extension an it works perfectly except for gnome-terminal.

Since Gnome 3.32 I tried a few different extensions, and I have this same problem with similar extensions (such as Unite).

I don't have the problem with any other program, and I tried to disable every other extension to make sure it was not a conflict.

I run on ArchLinux 5.0.7.

Blacklist/Whitelist features

Hi, thanks for this much needed extension :)

Is it possible to implement a blacklist and whitelist option?

Blacklist: list of windows that this extension will not touch (ie. Firefox w/ titlebar hidden)
Whitelist: list of windows that will always have titlebars hidden (not only when maximized)

I use Firefox as my default browser and has configured it to hide its titlebar. With this extension, unmaximizing Firefox will show its titlebar, which should not be the case.

Thanks :)

Some suggestions

Hi, nice extension, here are some suggestions:

  • Mention the github url in the description of the gnome-shell extension page so people can more easily contribute.
  • Disable the debug info like GTKTitleBar: windowDecoration - _toggleTitleBar + win: [object instance wrapper GType:MetaWindowX11 jsobj@0x7f80a8191550 native@0x55dba29a0b20]

Spotify unable to be unmaximized

On Ubuntu 20.04.

However, I'm not sure if this might be an issue that is aggravated by the Hide Top Bar extension (where some apps might think they've been put into a permanent full screen?) I've been using both as a way to remove the GTK title bar as well as the top bar for more available space. This has been reported in a few different places.

Gnome Shell 44 support

The extension stopped working after the gnome-shell 44 upgrade. There are no errors in the logs also.

Unable to resize window after 'Toggle Maximize Vertically'

In gnome tweaks there are "Window titlebars" setting group. There I've set 'middle click' to Toggle Maximize Vertically. Problem is when I use this toggle with your extension enabled - I'm unable to resize it back by mouse dragging:

issue

Can't upgrade

Hi Veli,

Summary: I've clicked "Upgrade" icon, restarted GNOME (and also whole Manjaro), but it still comes up with the "Upgrade" icon. No errors indicated. Repeated that several times over the last week or so.

https://extensions.gnome.org/local:
image

image

Please advise how I can help for you to reproduce this. GNOME 40.1.0 on current Manjaro.

Gap where titlebar used to be when starting maximised app

When a maximised app is closed and reopened there is sometimes a gap where the titlebar would otherwise be. Unmaximising and remaximising the app fixes it so that the gap is gone.

Steps to reproduce:

  1. Launch an app with a titlebar.
  2. Maximise the app. The titlebar is now hidden.
  3. Close the app while maximised.
  4. Relaunch the app.

Since it's intermittent, maybe it's a race condition between removing the window decoration and resizing the window?

Screenshot showing the problem:
Screenshot from 2019-06-19 10-26-47

Unable to resize while splitting to left or right

When I split a window to the left or right, I'm unable to resize the window. This doesn't happen if the plugin is disabled.

This is a problem that is affecting all other plugin solutions for removing the title bar while on Fedora 30. So maybe it's is a change withing Gnome.

TitleBar doesn't always hide

Sometimes the titlebar doesn't hide like it's supposed to do and it takes a restart of the concerned application for it to work again.

  • I'm using your latest commit.

  • I see this sporadically in the log:

déc. 01 17:33:01 terence-arch gnome-shell[1911]: X Error of failed request:  BadWindow (invalid Window parameter)
déc. 01 17:33:01 terence-arch gnome-shell[1911]:   Major opcode of failed request:  18 (X_ChangeProperty)
déc. 01 17:33:01 terence-arch gnome-shell[1911]:   Resource id in failed request:  0x2800176
déc. 01 17:33:01 terence-arch gnome-shell[1911]:   Serial number of failed request:  13
déc. 01 17:33:01 terence-arch gnome-shell[1911]:   Current serial number in output stream:  15
déc. 01 17:33:09 terence-arch gnome-shell[1911]: X Error of failed request:  BadWindow (invalid Window parameter)
déc. 01 17:33:09 terence-arch gnome-shell[1911]:   Major opcode of failed request:  18 (X_ChangeProperty)
déc. 01 17:33:09 terence-arch gnome-shell[1911]:   Resource id in failed request:  0x28001a3
déc. 01 17:33:09 terence-arch gnome-shell[1911]:   Serial number of failed request:  13
déc. 01 17:33:09 terence-arch gnome-shell[1911]:   Current serial number in output stream:  15

Gnome 45 ?

Can someone update the extension for gnome 45?

Black edged corner after minimizing windows in GNOME 41

Hi developer, just a simple/trivial bug but kinda annoying for me to look at

There's a black triangle at the corners right after minimizing window. Resizing the window will make it disappear. The bug only appears on some applications such as VSCode and VLC. Nautilus and terminal are fine.

Screenshot from 2021-11-13 03-52-42

Video showing the problem:
https://user-images.githubusercontent.com/66469454/141526186-3e3758d4-b8db-4869-8624-959543d69192.mp4

Using GNOME 41 on Fedora 35

Thank you! Any extra information, I'll gladly provide

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.