Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Port to GNOME 40. #1402

Merged
merged 102 commits into from Oct 3, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
102 commits
Select commit Hold shift + click to select a range
ad62ac5
Initial port to GNOME 40.
ewlsh Mar 28, 2021
bed2fec
prefs: Port code for the initial size request
3v1n0 Jun 18, 2021
88712ae
theming: Fix various theming issues
ewlsh Mar 31, 2021
d5e6c0f
Fix showing app icon at the start
ewlsh Mar 31, 2021
0644226
Use Graphene for indicator rendering.
ewlsh Apr 5, 2021
ad2825c
Fix show apps button toggling.
ewlsh Apr 5, 2021
3771351
Start fixing panel mode...
ewlsh Apr 8, 2021
e8984d9
Fix drag and drop and panel mode.
ewlsh Apr 22, 2021
30dbcd4
Add back the logic to prevent apps reordering.
micheleg Jun 20, 2021
a0d8b0a
Fix drag and drop in vertical mode.
micheleg Jun 20, 2021
674ade9
Fix workspace scrolling.
ewlsh Apr 22, 2021
aab2e6d
Fix icon scaling and size changes.
ewlsh Apr 22, 2021
008d478
Cleanup preferences.
ewlsh Apr 22, 2021
362ab2f
More theming and style fixes
ewlsh Apr 30, 2021
d820607
Convert stylesheet to SCSS.
ewlsh May 1, 2021
f3b620a
Improve overview animation and styling.
ewlsh May 1, 2021
8073971
Fix regression in panel mode padding.
ewlsh May 1, 2021
5359604
Avoid errors if already tracking the dock
ewlsh May 3, 2021
3dc5ea1
Make sassc the default sass compiler
ewlsh May 3, 2021
3342ae3
Initial fixes for horizontal scrolling.
ewlsh May 3, 2021
28375a1
Initial fix for dynamic icon sizing...
ewlsh May 3, 2021
90aab75
dash: Fix separator in vertical mode.
ewlsh May 3, 2021
9087596
dash: Do not try to use an invalid value of dragPlaceholderPos
3v1n0 Jun 16, 2021
3b5de94
Fix alignement in vertical mode.
micheleg Jun 18, 2021
1a392c2
dash: Better support panel mode.
micheleg Jun 19, 2021
6756c55
Apply rounding to scss math.
micheleg Jun 19, 2021
9a393b1
Add a gap between the dash and windows in fixed mode.
micheleg Jun 19, 2021
6327bfa
Drop old compatibility code.
micheleg Jun 19, 2021
2daa841
pref.js: fix advance setitings dialogs.
micheleg Jun 19, 2021
da2e511
pref.js: fix dodge windows settings.
micheleg Jun 19, 2021
f155e79
pref.js: fix a bunch of label and button alignments issues.
micheleg Jun 19, 2021
441b9f5
Make dash-to-dock work with both horizontal and vertical workspaces
mildred Jun 22, 2021
75a3155
cleanup: Remove the unused InjectionsHandler instances
3v1n0 Jun 16, 2021
3a4a6cf
utils: Don't store the InjectedFunction on InjectionsHandler
3v1n0 Jun 16, 2021
b6ff44c
utils: Modernize BasicHandler making it possible to use non-array arg…
3v1n0 Jun 16, 2021
2df401b
cleanup: Connect to signals with non-array arguments when possible
3v1n0 Jun 16, 2021
3054fb0
BasicHandler: Support auto-destruction when using a parent Object
3v1n0 Jun 21, 2021
1302427
docking: Avoid recursion on _prepareMainDash()
3v1n0 Jun 18, 2021
0ce803f
utils: Add PropertyInjectionsHandler to manage property overrides
3v1n0 Jun 16, 2021
064448e
cleanup: Use PropertyInjectionsHandler
3v1n0 Jun 16, 2021
08eae51
Utils: Pass the original function to InjectionsHandler callback
3v1n0 Jun 16, 2021
5cb2181
docking: Replace DashSpacer by overriding ControlsManagerLayout logic
3v1n0 Jun 16, 2021
938a680
docking: Always show the thumbnails box in vertical mode
3v1n0 Jun 16, 2021
aeabeb7
Utils: Add class to inject virtual functions
3v1n0 Jun 19, 2021
e185734
docking: Replace WorkspaceBackground allocation code taking care of t…
3v1n0 Jun 19, 2021
f4382d0
docking: Also ignore allocation requests on the original dash
3v1n0 Jun 19, 2021
a44101f
Settings: Fix dock size scale selector
3v1n0 Jun 18, 2021
3b00f8c
prefs: Disable monitor selection combo when multi-monitor is enabled
3v1n0 Jun 19, 2021
c6b2ce5
theming: Properly parse color from string and set its alpha value
3v1n0 Jun 19, 2021
6849f93
theming: Do not try to set the background style with no style
3v1n0 Jun 19, 2021
a922453
prefs: Support running as a standalone application
3v1n0 Jun 19, 2021
a59c598
prefs: Use Mutter DBus API to manage per-monitors configuration
3v1n0 Jun 19, 2021
ca06f98
docking: Properly handle top-positioned dock
3v1n0 Jun 21, 2021
e5bf2de
docking: Use implicit properties features for slide-x
3v1n0 Jun 21, 2021
0e45b23
docking: Adapt dash(es) startup animation effect to our positioning
3v1n0 Jun 21, 2021
c2f0385
docking: Do not show the dash before startup animation has completed
3v1n0 Jun 21, 2021
5a18a96
docking: Make ControlsManagerLayout and WorkspaceBackground allocatio…
3v1n0 Jun 21, 2021
7596a73
docking: Adjust overview with vertical auto-hide dock
3v1n0 Jul 1, 2021
3db8998
docking: Adjust the AllWorkspaceBox size in secondary monitors
3v1n0 Jul 2, 2021
6161a2f
docking: Keep cached settings values used during allocation
3v1n0 Jul 1, 2021
cb5f6b1
appIcons: Move logic for computing the focused / running state here
3v1n0 Jun 22, 2021
32d99bf
dash: Fix ensureActorVisibleInScrollView as per upstream changes
3v1n0 Jun 22, 2021
e98c54c
cleanup: Modernize the code ensureActorVisibleInScrollView a bit
3v1n0 Jun 22, 2021
a9bbecc
docking: Add back support to disable animation on show-applications
3v1n0 Jun 22, 2021
5ec6c59
docking: Add and use property to access to upstream overviewControls
3v1n0 Jun 22, 2021
16c0b4d
dash: Cleanup the dash-separator styling, using a single scss definition
3v1n0 Jun 23, 2021
9746c8b
dash: Include paddings and separator to compute available space
3v1n0 Jun 23, 2021
c34fdfc
prefs: Add back support for changing the overlay shortcut
3v1n0 Jul 5, 2021
d7c2551
docking: Disconnect from after-paint signal if we destroy earlier
3v1n0 Jun 23, 2021
4de7e93
theming: Never try to access to members when destroyed
3v1n0 Jun 23, 2021
88e1aa3
theming: Use signals handler auto-destruction
3v1n0 Jun 23, 2021
1c66f31
theming: Never access to dash private member, move the logic in the dock
3v1n0 Jun 23, 2021
a1d75ab
docking: Define a global GtkIconTheme bound to the St's default
3v1n0 Jun 24, 2021
5172289
fileManager1API: Drop XUbuntuOpenLocationsXids support
3v1n0 Jun 23, 2021
f59d676
locations: use org.Nautilus.FileOperations2 API to empty the trash
3v1n0 Jun 23, 2021
c773ab8
dash: Optionally keep the focused application always visible in the dash
3v1n0 Jun 22, 2021
f30bc9d
appIcons: Use public visibile getter for Overview
3v1n0 Jun 23, 2021
b996d15
appIcons: Move urgency logic to the AppIcon
3v1n0 Jun 22, 2021
73e6e80
dash: Ensure urgent applications are visible
3v1n0 Jun 22, 2021
0d8712c
appIcons: Mark urgent apps whose windows are urgent or demands attention
3v1n0 Jun 22, 2021
9b81b07
appIcons: Cleanup window-entered callback code
3v1n0 Jun 22, 2021
f95bb21
dash: Add property to require visibility
3v1n0 Jun 22, 2021
c35da09
dash: Require visibility when an appicon is urgent
3v1n0 Jun 22, 2021
1f6afb6
locations: Use fully async and cancellable async operations
3v1n0 Jun 23, 2021
56cf8cc
locations: Do not use template literals as they may break translations
3v1n0 Jul 4, 2021
d0fda0c
docking: Move ownership of Removable locations and Trash to DockManager
3v1n0 Jun 23, 2021
8c21004
appIcons: Manage app-urgency per windows
3v1n0 Jun 23, 2021
3ce3668
appIcons: Give urgent windows more priority on activation
3v1n0 Jun 23, 2021
f79265c
dash: Do not potentially duplicate location icons and really remove them
3v1n0 Jun 23, 2021
2847bfb
docking: Do not pass LauncherRemoteModel around, but get from DockMan…
3v1n0 Jun 28, 2021
74854cd
appIcons: Split Dock icons by type using sub-classing
3v1n0 Jun 28, 2021
82e11fd
cleanup: Use "Dock" prefix for our implementations
3v1n0 Jun 28, 2021
d9bc253
locations: Patch Shell.App to make location apps to behave as normal …
3v1n0 Jul 5, 2021
cfe11b0
locations: Disable ability for opening new windows in location apps
3v1n0 Jul 6, 2021
8d75b6c
locations: Update app-system status on app state changed
3v1n0 Jul 5, 2021
bb6ab92
locations: Initial support for full location apps isolation from file…
3v1n0 Jul 5, 2021
e77036b
locations: Keep app focus state cached and notify tracker on changes
3v1n0 Jul 6, 2021
0f737b6
locations: Add alt-tab and overview support for location applications
3v1n0 Jul 6, 2021
0b58602
locations: Ignore location windows in file manager in isolation mode
3v1n0 Jul 6, 2021
6b5f356
locations: Use Nautilus FileOperations2 DBus API to empty the trash
3v1n0 Jul 6, 2021
d3f9787
docking: Update barrier when toggling autohide
LorienLV Apr 23, 2021
7ed8807
windowPreview: Use full animation on popup
3v1n0 Oct 3, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Expand Up @@ -4,3 +4,5 @@ gschemas.compiled
dash-to-dock@micxgx.gmail.com.zip
*.mo
po/dashtodock.pot
stylesheet.css
_build
20 changes: 17 additions & 3 deletions Makefile
@@ -1,7 +1,7 @@
# Basic Makefile

UUID = dash-to-dock@micxgx.gmail.com
BASE_MODULES = extension.js stylesheet.css metadata.json COPYING README.md
BASE_MODULES = extension.js metadata.json COPYING README.md
EXTRA_MODULES = dash.js docking.js appIcons.js appIconIndicators.js fileManager1API.js launcherAPI.js locations.js windowPreview.js intellihide.js prefs.js theming.js utils.js dbusmenuUtils.js Settings.ui
EXTRA_MEDIA = logo.svg glossy.svg highlight_stacked_bg.svg highlight_stacked_bg_h.svg
TOLOCALIZE = prefs.js appIcons.js locations.js
Expand Down Expand Up @@ -31,8 +31,10 @@ all: extension

clean:
rm -f ./schemas/gschemas.compiled
rm -f stylesheet.css
rm -rf _build

extension: ./schemas/gschemas.compiled $(MSGSRC:.po=.mo)
extension: ./schemas/gschemas.compiled ./stylesheet.css $(MSGSRC:.po=.mo)

./schemas/gschemas.compiled: ./schemas/org.gnome.shell.extensions.dash-to-dock.gschema.xml
glib-compile-schemas ./schemas/
Expand All @@ -46,13 +48,24 @@ mergepo: potfile

./po/dashtodock.pot: $(TOLOCALIZE) Settings.ui
mkdir -p po
xgettext -k --keyword=__ --keyword=N__ --add-comments='Translators:' -o po/dashtodock.pot --package-name "Dash to Dock" $(TOLOCALIZE)
xgettext -k --keyword=__ --keyword=N__ --add-comments='Translators:' -o po/dashtodock.pot --package-name "Dash to Dock" --from-code=utf-8 $(TOLOCALIZE)
intltool-extract --type=gettext/glade Settings.ui
xgettext -k --keyword=_ --keyword=N_ --join-existing -o po/dashtodock.pot Settings.ui.h

./po/%.mo: ./po/%.po
msgfmt -c $< -o $@

./stylesheet.css: ./_stylesheet.scss
ifeq ($(SASS), ruby)
sass --sourcemap=none --no-cache --scss _stylesheet.scss stylesheet.css
else ifeq ($(SASS), dart)
sass --no-source-map _stylesheet.scss stylesheet.css
else ifeq ($(SASS), sassc)
sassc --omit-map-comment _stylesheet.scss stylesheet.css
else
sassc --omit-map-comment _stylesheet.scss stylesheet.css
3v1n0 marked this conversation as resolved.
Show resolved Hide resolved
endif

install: install-local

install-local: _build
Expand All @@ -79,6 +92,7 @@ _build: all
-rm -fR ./_build
mkdir -p _build
cp $(BASE_MODULES) $(EXTRA_MODULES) _build
cp stylesheet.css _build
mkdir -p _build/media
cd media ; cp $(EXTRA_MEDIA) ../_build/media/
mkdir -p _build/schemas
Expand Down
27 changes: 22 additions & 5 deletions README.md
Expand Up @@ -12,12 +12,29 @@ For additional installation instructions and more information visit [https://mic

The extension can be installed directly from source, either for the convenience of using git or to test the latest development version. Clone the desired branch with git

<pre>git clone https://github.com/micheleg/dash-to-dock.git</pre>
or download the branch from github. A simple Makefile is included. Then run
<pre>make
### Build Dependencies

To compile the stylesheet you'll need an implementation of SASS. Dash to Dock supports `dart-sass` (`sass`), `sassc`, and `ruby-sass`. Every distro should have at least one of these implementations, we recommend using `dart-sass` (`sass`) or `sassc` over `ruby-sass` as `ruby-sass` is deprecated.

By default, Dash to Dock will attempt to build with `dart-sass`. To change this behavior set the `SASS` environment variable to either `sassc` or `ruby`.
3v1n0 marked this conversation as resolved.
Show resolved Hide resolved

```bash
export SASS=sassc
# or...
export SASS=ruby
```

### Building

Clone the repository or download the branch from github. A simple Makefile is included.

Next use `make` to install the extension into your home directory. A Shell reload is required `Alt+F2 r Enter` under Xorg or under Wayland you may have to logout and login. The extension has to be enabled with *gnome-extensions-app* (GNOME Extensions) or with *dconf*.

```bash
git clone https://github.com/micheleg/dash-to-dock.git
make
make install
</pre>
to install the extension in your home directory. A Shell reload is required <code>Alt+F2 r Enter</code> and the extension has to be enabled with *gnome-tweak-tool* or with *dconf*.
```

## Bug Reporting

Expand Down
4,466 changes: 1,895 additions & 2,571 deletions Settings.ui

Large diffs are not rendered by default.