MCPcopy Index your code
hub / github.com/home-sweet-gnome/dash-to-panel

github.com/home-sweet-gnome/dash-to-panel @v73 sqlite

repository ↗ · DeepWiki ↗ · release v73 ↗
616 symbols 1,430 edges 18 files 12 documented · 2%
README

<img src="https://github.com/home-sweet-gnome/dash-to-panel/raw/v73/media/design/svg/GitHub_logo.svg" width="120"/>&nbsp;
<a href="https://extensions.gnome.org/extension/1160/dash-to-panel/" style="margin-left: 20px">
    <img src="https://github.com/home-sweet-gnome/dash-to-panel/raw/v73/media/design/svg/Gnome_logo.svg" width="120px"/>
</a>&nbsp;
<a href="https://www.paypal.com/donate/?hosted_button_id=5DCVELP7BSAVQ">
    <img src="https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif" />
</a>

Introduction

Dash to Panel is an icon taskbar for Gnome Shell. This extension moves the dash into the gnome main panel so that the application launchers and system tray are combined into a single panel, similar to that found in KDE Plasma and Windows 7+. A separate dock is no longer needed for easy access to running and favorited applications.

Beyond that, just about every aspect of the panel is fully customizable. From positioning and scaling panel elements to running indicators to multi-monitor display, to window previews and even intellihide, Dash to Panel has everything you need to make your workspace feel like home.

Features

Customizable appearance
screenshot
Hide & show panel elements and set their positions, sizes & colors

Customizable running indicators
Metro Ciliora/Dashes
Ciliora Squares/Segmented
Dashes Dots/Solid
Set position, style, weight & color of running indicators to easily and quickly identify focused and unfocused applications

Live Previews on Hover
screenshot
Hover over the launcher icon for an open application to get a live window preview

Launch by Number
Optionally launch your favorite applications via keyboard

Panel Intellihide
Intellihide
Hide and reveal the panel according to your set preferences

Additional Features Feature Implemented
Add "Show Desktop" button to panel
Isolate running apps by workspaces and/or monitors
Custom click behaviors (launch new window, cycle open windows, minimize, etc)
Integrate native Gnome appMenu into right-click secondary menu
Multi-monitor support
Dynamic transparency
Ungroup application windows
Export and import settings
##

Installation

To install the most recent official release: Visit Dash-to-Panel at GNOME Extensions

To install a development version from source, please see the Installation wiki page.

FAQ

How do I customize the panel? See the Wiki

How do I embed my bottom left notification drawer into the panel like a system tray? Top Icons Plus or (K)StatusNotifierItem/AppIndicator Support

How do I add a traditional start menu? Arc Menu

How do I disable the hot corner? No Topleft Hot Corner

How do I move the notifications to somewhere other than the top center? Notification Banner Reloaded

How do I display Minimize & Maximize buttons? In the Tweak Tool application, turn on Windows > Titlebar Buttons > Minimize & Maximize.

How do I reset the extension to its default settings? dconf reset -f /org/gnome/shell/extensions/dash-to-panel/.

Themes

While this extension works well with most popular Gnome Shell themes, the following themes are known to have explicitly added custom styles for this extension: - Ciliora Tertia / Ciliora Secunda - Plano

Compatibility

This extension has been tested with Gnome 3.18+.

This extension manipulates the Gnome Main Panel, aka Top Bar. So, most other extensions which operate on the top bar should be compatible.

Volunteers needed!

This extension could be even better with your help! Any items in the issue tracker labelled help wanted or good first issue are up for grabs. For more info, see the Contributing wiki page.

Credits

This extension is developed and maintained by @jderose9 and @charlesg99.

Significant portions of code in this extension were derived from Dash-to-Dock.

Additional credits: This extension leverages the work for ZorinOS Taskbar (used in ZorinOS) to show window previews and allow the dash from Dash-to-Dock to be embedded in the Gnome main panel. Code to set anchor position taken from Thoma5/gnome-shell-extension-bottompanel. Pattern for moving panel contents based on Frippery Move Clock by R M Yorston. Ideas for recursing child actors and assigning inline styles are based on code from the extension StatusAreaHorizontalSpacing.

Thanks to the following people for contributing via pull requests:

  • @franglais125 for launching apps by number (w/ overlay), bug fixes, and issue support
  • @LinxGem33 and @sbarrett322 for artwork, logos, screenshots and design effort
  • @dziku1337 for peek mode in window previews
  • @robrobinbin for configuring appMenu on/off in the panel
  • @MartinPL for toggling favorites on/off in panel
  • @jackwickham for thumbnail middle and right click actions
  • @abakkk for centering the taskbar icons in the panel, and animated taskbar hovering
  • @quasoft for changing of font weight of ungrouped application titles
  • @jordanribera for using icon's dominant color as running indicator color
  • @tper0700 for dynamically building context menu based on system capabilities
  • @levacic for configurable minimized application title font color
  • @l3nn4rt for toggling workspace switch popup
  • @hlechner for adjustable show desktop line color and window preview icon size
  • @ArtyomZorin for animated urgent icons
  • @jvpessoa10 for additional click window cycle options
  • @marksvc for assigning percent of display for panel length
  • @philippun1 for GNOME 40 support :rocket:
  • @HaselLoyance for toggle for notification counter badge
  • @rastersoft for Desktop Icons NG integration
  • @max-dw-i for symbolic icons
  • @Hirnmoder for Beautify DTP and panel border
  • @JimBroad for grayscale icons
  • @lufog for Gnome 50 support

Bug Fixes:

@imrvelj, @Teslator, @bil-elmoussaoui, @brandon-schumann, @sw9, @rockon999 , @lexruee, @3v1n0, @freeroot, @moqmar, @ArtyomZorin, @lkc0987, @saibotk, @vanillajonathan, @Zkdc, @leebickmtu, @l3nn4rt, @Melix19, @Aikatsui, @melix99, @kyrillzorin, @oneshadab, @CorvetteCole, @vantu5z, @spectreseven1138, @aperezdc, @smedir, @lucaxvi, @andyholmes, @vowstar, @T99Rots, @City-busz, @guoqiyi, @gcrabbe, @Anduin2017, @xalt7x, @Survolog, @TorosFanny

Documentation Improvements:

@BoQsc, @zakkak, @dandv, @elliotwutingfeng

Translations:

@frnogueira / @victorwpbastos / @vagkaefer / @jotavionm (pt_BR), @zeten30 / @Amereyeu (cs), @franglais125 / @calotam / @oeramirez / @jhonatanseminario / @oscfdezdz (es), @LaurentTreguier / @SolarLiner / @DelphinPETER (fr), @elsieholmes / @xalt7x (uk), @hosiet / @zhmars (zh_CN), @jonnius / @linuxr01 / @Etamuk / @daPhipz (de), @urbalazs / @pappfer (hu), @crayxt (kk), @pkomur / @MartinPL / @alex4401 / @konradmb / @alewicki95 / @0rzech (pl), @AlexGluck / @GoodNike / @rjapolov / @vantu5z / @Keleth / @code-ascend / @antohami (ru), @sicklylife-jp / @ryonakano / @nexryai / @Umoxfo (ja), @oltulu / @TeknoMobil / @daenney / @osmancoskun (tr), @sbadux / @kowalski7cc / @l3nn4rt / @albanobattistella (it), @OriginCode / @pan93412 (zh_TW), @ojn (sv), @frandieguez (gl), @kuroehanako / @MarongHappy (ko), @jose1711 / @dodog (sk), @eshagh79 (fa), @EkaterinePapava (ka)

License & Terms

Dash to Panel is available under the terms of the GPL-v2 or later license See COPYING for details.

Core symbols most depended-on inside this repo

add
called by 62
src/utils.js
remove
called by 21
src/utils.js
close
called by 18
src/windowPreview.js
destroy
called by 18
src/utils.js
_createPreferencesDialog
called by 16
src/prefs.js
_queueUpdatePanelPosition
called by 13
src/intellihide.js
destroy
called by 11
src/panelManager.js
_overrideStyle
called by 10
src/panelStyle.js

Shape

Method 462
Function 100
Class 54

Languages

TypeScript100%

Modules by API surface

src/appIcons.js91 symbols
src/windowPreview.js78 symbols
src/taskbar.js78 symbols
src/utils.js59 symbols
src/prefs.js52 symbols
src/panel.js50 symbols
src/panelManager.js34 symbols
src/intellihide.js29 symbols
src/proximity.js27 symbols
src/overview.js26 symbols
src/panelSettings.js23 symbols
src/transparency.js21 symbols

Dependencies from manifests, versioned

@eslint/js9.19.0 · 1×
eslint9.19.0 · 1×
globals15.14.0 · 1×
prettier3.4.2 · 1×

For agents

$ claude mcp add dash-to-panel \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact