Originally inspired by the floating panel design in KDE Plasma 6, it presents a translucent floating bar effect when there are no windows nearby, and a solid panel style when windows are close. It supports Gnome's dark and light mode switching. You can set custom colors for dark and light modes respectively. And there are more settings!
GNOME panel experiences brief flickering during workspace transitions or when returning from the overview. This is caused by GNOME's system forcibly resetting panel styles during these actions. As this is an underlying GNOME behavior, there is currently no external fix available. Therefore, this flickering issue is listed as a known and temporarily unresolvable problem.
When there are no windows near the top panel, it will be in floating mode.
You can combine various styles as you like, but improper combinations may not produce good visual effects.
Floating mode has a translucent effect and a built-in simple blur effect. if you want a more advanced and more controllable blur effect, it is recommended to use Blur my shell's static pipeline for the panel. Blur my shell's dynamic mode will not have rounded corners, which is a problem with Blur my shell.
Use static effects because dynamic effects do not support rounded corners
Remember to add the "Corner" effect to the corresponding Pipeline and adjust it according to the rounded corners you set in this extension.
When any window is close enough (almost touching) to the top panel, the top panel will become an opaque dock (same as the default in Gnome, but you can apply custom colors to it), which can better blend with maximized windows, unlike themes that are always floating and have a "light leakage" phenomenon.
Extension link: https://extensions.gnome.org/extension/7284/dynamic-panel/
Not recommended: The Main branch may be in the process of developing the next version, so it may not work properly
- Select Tag to the latest or desired version, Clone or download Zip to local, or you should go to Release to download
- Unzip all files to
~/.local/share/gnome-shell/extensions/[email protected]/
- If the directory does not exist, create it yourself.
- Be careful not to nest! extension.js should be directly in
[email protected]
, not in[email protected]/dynamic-panel/
. - The path is fixed, including
[email protected]
, and the directory name cannot be changed, otherwise the extension will not be displayed in the list and will not take effect. This is because Gnome extensions require the directory name to be consistent with the uuid specified in metadata.json.
- Restart Gnome (Alt-F2, type r, and press Enter) or log out and log back in
- Enable the extension in Gnome Extensions
Due to Gnome's own css and gjs, CSS3's transition tweening animation is actually invalid for most properties! And the requestAnimationFrame animation frame alignment function cannot be used either. Therefore, it is necessary to use a fixed frame interval loop to do frame-by-frame animation to achieve smooth movement, size change, rounded corner animation, etc., so there will be a certain impact on performance during the animation process. But there is no performance impact in a static state.
- Except for Simplified Chinese, Traditional Chinese (Taiwan), and English maintained by the author (Velade), other translations mainly come from other contributors.
- Because I don't understand other languages at all, when translations other than the above languages have entries added/changed, the author will use Gemini AI to translate and supplement/modify instead of leaving them blank. However, the accuracy of the translation and whether it is the most appropriate choice cannot be guaranteed.
- Aleksandr Shamaraev - Russian
- Amerey - Czech
- Ritam Saha - English(India)
-
Thanks to Gonzague/Paul Fauchon's Transparent Top Bar (Adjustable transparency) for the idea, the implementation of window proximity detection largely refers to this extension
-
Thanks to Google Gemini for the help provided in the research and learning of Gjs