Giter Club home page Giter Club logo

gnome-shell-extension-transparent-top-bar's Introduction

GNOME Shell Extension - Transparent Top Bar

A GNOME Shell extension that brings back the transparent top bar when free-floating in GNOME Shell 3.32.

This basically comes from the feature implementation removed in GNOME Shell 3.32, and I modified the code a bit to make it an extension. Enjoy!

License

This program is distributed under the terms of the GNU General Public License, version 2 or later.

gnome-shell-extension-transparent-top-bar's People

Contributors

celsotavaresdev avatar gilvbp avatar stuarthayhurst avatar superterran avatar zhanghai 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

Watchers

 avatar  avatar

gnome-shell-extension-transparent-top-bar's Issues

Gnome Shell v. 44.0 | Installation fails

Installation attempted via web-site extensions.gnome.org.

$ gnome-shell --version
GNOME Shell 44.0
$ cd ~/.local/share/gnome-shell/extensions; stat -c %n * | grep top | grep bar
[email protected]
$ gnome-extensions list | grep top | grep bar
$ 

Hello. I can reasonably assume that this extension is being running on your system. Then for you, to uninstall and attempting to reinstall it, would be an adequate procedure to start an investigation.

Remove transparency only if the window is maximized instead of by proximity

I really like Elementary OS and its smart transparent top panel.

One of the features they have is that they make the top panel solid only when a window is full screen. This makes sense because it's when you lose any context of the desktop, and when you want to focus on only one thing. If you have open only a small window, and that window is touching the top bar, the transparency is not really something that disturbs you.

I've successfully implemented this easily editing the source code of the extension, but I'm wondering if you would be open to a PR to add this behaviour, maybe as an optional setting.

Error on upgrade

OS info: Fedora 35
Using GNOME Application Platform version 41

Not working on Ubuntu 21.10

Hi, my top panel doesn't become transparent after I installed this extension. I am using Ubuntu 21.10 with Wayland. Is Wayland supported?

Opaque TopBar with Desktop Icons Enabled

I've tried two Desktop Icons extensions (The 1st and The 2nd) and with both of them, the Transparent TopBar considered a window touching the TopBar, making it opaque while there is only the desktop icons enabled.

TopBar_with_Desktop_Icons.mp4

You shall find a video screen shot attached to this report.

Argument 'instance' (type interface) may not be null

Update:
journalctl output from Debian 11, gnome-shell v3.36.4

Aug 05 22:17:53 hostname systemd-logind[553]: Lid closed.
Aug 05 22:17:53 hostname systemd-logind[553]: Suspending...
Aug 05 22:17:53 hostname gnome-shell[1752]: Object .MetaWindowActorX11 (0x55f42c2dfd20), has been already deallocated โ€” impossible to access it. This might be caused by the object having been destroyed from C code using something such as destroy(), dispose(), or remove() vfuncs.
Aug 05 22:17:53 hostname gnome-shell[1752]: == Stack trace for context 0x55f4299b84f0 ==
Aug 05 22:17:53 hostname gnome-shell[1752]: #0   7fff8ced1900 b   resource:///org/gnome/gjs/modules/core/overrides/GObject.js:571 (1d7bb6c40 @ 25)
Aug 05 22:17:53 hostname gnome-shell[1752]: #1   7fff8ced1a30 b   /home/username/.local/share/gnome-shell/extensions/[email protected]/extension.js:46 (dafe5b961f0 @ 586)
Aug 05 22:17:53 hostname gnome-shell[1752]: #2   7fff8ced2640 b   resource:///org/gnome/shell/ui/extensionSystem.js:107 (3a7bc3968358 @ 394)
Aug 05 22:17:53 hostname gnome-shell[1752]: #3   7fff8ced3100 b   resource:///org/gnome/shell/ui/extensionSystem.js:615 (3a7bc396a5b0 @ 15)
Aug 05 22:17:53 hostname gnome-shell[1752]: #4   7fff8ced3b50 b   self-hosted:266 (1d7bace20 @ 259)
Aug 05 22:17:53 hostname gnome-shell[1752]: #5   55f42c125710 i   resource:///org/gnome/shell/ui/extensionSystem.js:614 (3a7bc396a538 @ 98)
Aug 05 22:17:53 hostname gnome-shell[1752]: #6   55f42c125680 i   resource:///org/gnome/shell/ui/extensionSystem.js:632 (3a7bc396a628 @ 82)
Aug 05 22:17:53 hostname gnome-shell[1752]: #7   7fff8ced4a10 b   self-hosted:1009 (3d67df99e6a0 @ 423)
Aug 05 22:17:53 hostname gnome-shell[1752]: #8   7fff8ced4b10 b   resource:///org/gnome/gjs/modules/core/_signals.js:133 (1d7bac880 @ 427)
Aug 05 22:17:53 hostname gnome-shell[1752]: #9   7fff8ced5630 b   resource:///org/gnome/shell/ui/sessionMode.js:195 (3d67df924f88 @ 286)
Aug 05 22:17:53 hostname gnome-shell[1752]: #10   55f42c125520 i   resource:///org/gnome/shell/ui/sessionMode.js:156 (3d67df924da8 @ 40)
Aug 05 22:17:53 hostname gnome-shell[1752]: #11   55f42c125468 i   resource:///org/gnome/shell/ui/screenShield.js:571 (3d67df90ff88 @ 191)
Aug 05 22:17:53 hostname gnome-shell[1752]: #12   55f42c1253a8 i   resource:///org/gnome/shell/ui/screenShield.js:620 (3d67df910088 @ 419)
Aug 05 22:17:53 hostname gnome-shell[1752]: #13   55f42c125310 i   resource:///org/gnome/shell/ui/screenShield.js:219 (3d67df90f268 @ 65)
Aug 05 22:17:53 hostname gnome-shell[1752]: #14   7fff8ced6310 b   self-hosted:1011 (3d67df99e6a0 @ 454)
Aug 05 22:17:53 hostname gnome-shell[1752]: #15   7fff8ced6410 b   resource:///org/gnome/gjs/modules/core/_signals.js:133 (1d7bac880 @ 427)
Aug 05 22:17:53 hostname gnome-shell[1752]: #16   55f42c125258 i   resource:///org/gnome/shell/misc/loginManager.js:198 (3a7bc39063d0 @ 202)
Aug 05 22:17:53 hostname gnome-shell[1752]: #17   7fff8ced73e0 b   self-hosted:1013 (3d67df99e6a0 @ 492)
Aug 05 22:17:53 hostname gnome-shell[1752]: #18   7fff8ced8a40 b   resource:///org/gnome/gjs/modules/core/_signals.js:133 (1d7bac880 @ 427)
Aug 05 22:17:53 hostname gnome-shell[1752]: #19   55f42c1250c8 i   resource:///org/gnome/gjs/modules/core/overrides/Gio.js:169 (1d7b92880 @ 39)
Aug 05 22:17:53 hostname gnome-shell[1752]: JS ERROR: Extension [email protected]: Error: Argument 'instance' (type interface) may not be null
                                             _init/GObject.Object.prototype.disconnect@resource:///org/gnome/gjs/modules/core/overrides/GObject.js:571:24
                                             disable@/home/username/.local/share/gnome-shell/extensions/[email protected]/extension.js:46:27
                                             _callExtensionDisable@resource:///org/gnome/shell/ui/extensionSystem.js:107:32
                                             _disableAllExtensions/<@resource:///org/gnome/shell/ui/extensionSystem.js:615:22
                                             _disableAllExtensions@resource:///org/gnome/shell/ui/extensionSystem.js:614:52
                                             _sessionUpdated@resource:///org/gnome/shell/ui/extensionSystem.js:632:18
                                             _emit@resource:///org/gnome/gjs/modules/core/_signals.js:133:47
                                             _sync@resource:///org/gnome/shell/ui/sessionMode.js:195:14
                                             pushMode@resource:///org/gnome/shell/ui/sessionMode.js:156:14
                                             activate@resource:///org/gnome/shell/ui/screenShield.js:571:34
                                             lock@resource:///org/gnome/shell/ui/screenShield.js:620:14
                                             _prepareForSleep@resource:///org/gnome/shell/ui/screenShield.js:219:22
                                             _emit@resource:///org/gnome/gjs/modules/core/_signals.js:133:47
                                             _prepareForSleep@resource:///org/gnome/shell/misc/loginManager.js:198:14
                                             _emit@resource:///org/gnome/gjs/modules/core/_signals.js:133:47
                                             _convertToNativeSignal@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:169:19
Aug 05 22:17:55 hostname systemd[1]: Reached target Sleep.

Crashes after system suspension on GNOME 3.36.8 (Ubuntu 20.04)

The extension crashes (cannot be re-enabled in extension manager and showing 'ERROR' on extension webpage) after system suspension.

In Looking Glass lg it says there's an error in the extension Error: Argument 'instance' (type interface) may not be null.

How do I adjust the transparency of the top bar?

Hello!

I have recently started using this extension on Gnome 41, I previously used to use a fork of this repo which had the option of changing the transparency using the extensions settings itself

Unfortunately, this extension doesnt seem to have a similar option.

How can I manually adjust the transparency of the top bar using this current extension if I wish to?

Thank you!

Request: Support for GNOME 3.38

Installing the extensions from the website gives an error, however, after changing src/metadata.json to include 3.38 and installing manually, it can be turned on. However, it will always stay transparent, even when a window is maximized.

Top bar not transparent with Desktop Icons NG extention enabled

The top bar is not transparent whenever I have the Desktop Icons NG extension enabled. When turning all extensions on and off, the top bar is transparent for a second, and goes back to black when the desktop icons are loaded. My guess is that the top bar extension thinks of the desktop extension as a maximized window?
I use Manjaro 12.1 and GNOME 40.3

Add opacity settings

I want to have 0 opacity when there is no full-screen window. Can we add settings for it?

Cannot find this extension via GNOME Software?

Hello. I'm having some trouble installing this extension. I'd like to install it via GNOME Software, but for some reason it doesn't come up in a search. Any idea why this might be?

I can of course see the extension webpage via my browser, but if I search for it (e.g. "transparent", "transparent top bar", "zhanghai", etc.) it doesn't come up. There is another, older extension with the same name which does come up.

I'm running GNOME 3.34. Could it be because this extension is targeting 3.32? Any advice? Thanks.

Bug with 2 monitors

When working with more than one monitor, I observe the following:
on the main monitor everything works well, but on the additional one the transparency does not work

i am using extension Extension

Many log warnings on Gnome 40

Every time the top bar turns transparent the following warnings are logged:

gnome-shell[1636]: Can't update stage views actor panelBox is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor panel is on because it needs gnome-shell[1636]: Can't update stage views actor panelBox is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor panel is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor panelLeft is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBin is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_ui_panel_AppMenuButton is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor appMenu is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBoxLayout is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBin is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor panelRight is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBin is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_ClipboardIndicator is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBoxLayout is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBin is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_VitalsMenuButton is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBoxLayout is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBin is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_ui_panel_AggregateMenu is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBoxLayout is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_status_network_Indicator is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_status_volume_Indicator is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_batime_martin_zurowietz_de_power_Indicator is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
an allocation.
gnome-shell[1636]: Can't update stage views actor panelLeft is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBin is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_ui_panel_AppMenuButton is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor appMenu is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBoxLayout is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBin is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor panelRight is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBin is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_ClipboardIndicator is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBoxLayout is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBin is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_VitalsMenuButton is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBoxLayout is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBin is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_ui_panel_AggregateMenu is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StBoxLayout is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_status_network_Indicator is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_status_volume_Indicator is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor Gjs_batime_martin_zurowietz_de_power_Indicator is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor StIcon is on because it needs an allocation.
gnome-shell[1636]: Can't update stage views actor ClutterActor is on because it needs an allocation.

[FER]Could the alpha/transparent value be adjustable ?

This extension set alpha value to 0.35 by defult, and there seems no way to change it without modifying the style sheet.

Maybe this is a design limitation of gnome, but could there be an option to adjust the alpha value ?

Request: Support for GNOME 3.36

GNOME 3.36 is going to be released March 11 and I like your extension very much and hope it can be updated to include support for GNOME 3.36. Keep up the great work!

Multiple Screens

It's currently working for the primary screen only but I've the top bar enabled on my secondary screen as well.

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.