Compare commits
23 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ffcbf03c9c | |||
| 1d7f37f420 | |||
| 30a15387b5 | |||
| b5b841dd38 | |||
| 5f2b199627 | |||
| 071584621e | |||
| 5c57f44838 | |||
| 93741e9e1c | |||
| 836f81f2e2 | |||
| 574638328e | |||
| e0750db1bd | |||
| 5652182fb3 | |||
| c3cbef19ac | |||
| 8c8f990a28 | |||
| f6a6bdda99 | |||
| 0d5d06fdd7 | |||
| d10b98c4fc | |||
| 8b7cfff558 | |||
| 25a75e1b0e | |||
| 91a1b8245b | |||
| 4abde90e82 | |||
| dd8ee2931a | |||
| f530acbf9e |
+12
@@ -0,0 +1,12 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2011 Giovanni Campagna <gcampagna@src.gnome.org>
|
||||||
|
# SPDX-FileCopyrightText: 2023 Florian Müllner <fmuellner@gnome.org>
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: CC0-1.0
|
||||||
|
|
||||||
|
po/gnome-shell-extensions.pot
|
||||||
|
zip-files/
|
||||||
|
*~
|
||||||
|
*.patch
|
||||||
|
*.sw?
|
||||||
|
.buildconfig
|
||||||
|
.vscode
|
||||||
@@ -1,22 +1,17 @@
|
|||||||
45.2
|
46.alpha
|
||||||
====
|
========
|
||||||
|
* workspace-indicator: Fix initial preview visibility [Florian; !280, !292]
|
||||||
|
* screenshot-window-sizer: Fix cycling between sizes backwards [Florian; !284]
|
||||||
|
* Add back overview in Classic session [Florian; !287]
|
||||||
|
* Allow running Classic session headless [Jonas; !289]
|
||||||
* window-list: Fix buttons not being clickable at the screen edge
|
* window-list: Fix buttons not being clickable at the screen edge
|
||||||
[Florian; !291]
|
[Florian; !291]
|
||||||
* window-list: Really fix initial preview visibility [Florian; !292]
|
* Add system-monitor extension [Florian; !277]
|
||||||
* workspace-indicator: Really fix initial preview visibility [Florian; !292]
|
* Fixed crash [Florian; !290]
|
||||||
* Misc. bug fixes and cleanups [Florian; !290]
|
* Misc. bug fixes and cleanups [Florian; !276, !275, !278, !281, !286, !288]
|
||||||
|
|
||||||
Contributors:
|
Contributors:
|
||||||
Florian Müllner
|
Jonas Ådahl, Florian Müllner
|
||||||
|
|
||||||
45.1
|
|
||||||
====
|
|
||||||
* workspace-indicator: Fix initial preview visibility [Florian; !280]
|
|
||||||
* screenshot-window-sizer: Fix cycling between sizes backwards [Florian; !284]
|
|
||||||
* Misc. bug fixes and cleanups [Florian; !276, !275, !278, !281]
|
|
||||||
|
|
||||||
Contributors:
|
|
||||||
Florian Müllner
|
|
||||||
|
|
||||||
Translators:
|
Translators:
|
||||||
Kristjan SCHMIDT [eo], Brage Fuglseth [nb]
|
Kristjan SCHMIDT [eo], Brage Fuglseth [nb]
|
||||||
|
|||||||
@@ -1,10 +1,9 @@
|
|||||||
{
|
{
|
||||||
"parentMode": "user",
|
"parentMode": "user",
|
||||||
"colorScheme": "force-light",
|
"colorScheme": "force-light",
|
||||||
"hasOverview": false,
|
|
||||||
"showWelcomeDialog": false,
|
"showWelcomeDialog": false,
|
||||||
"enabledExtensions": [@CLASSIC_EXTENSIONS@],
|
"enabledExtensions": [@CLASSIC_EXTENSIONS@],
|
||||||
"panel": { "left": [],
|
"panel": { "left": ["activities"],
|
||||||
"center": [],
|
"center": [],
|
||||||
"right": ["a11y", "keyboard", "dateMenu", "quickSettings"]
|
"right": ["a11y", "keyboard", "dateMenu", "quickSettings"]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,3 +6,4 @@ TryExec=gnome-session
|
|||||||
Type=Application
|
Type=Application
|
||||||
DesktopNames=GNOME-Classic;GNOME;
|
DesktopNames=GNOME-Classic;GNOME;
|
||||||
X-GDM-SessionRegisters=true
|
X-GDM-SessionRegisters=true
|
||||||
|
X-GDM-CanRunHeadless=true
|
||||||
|
|||||||
@@ -6,3 +6,4 @@ TryExec=gnome-session
|
|||||||
Type=Application
|
Type=Application
|
||||||
DesktopNames=GNOME-Classic;GNOME;
|
DesktopNames=GNOME-Classic;GNOME;
|
||||||
X-GDM-SessionRegisters=true
|
X-GDM-SessionRegisters=true
|
||||||
|
X-GDM-CanRunHeadless=true
|
||||||
|
|||||||
Vendored
-942
@@ -1,942 +0,0 @@
|
|||||||
gnome-shell-extensions (45.2-2) experimental; urgency=medium
|
|
||||||
|
|
||||||
* Restore required dh-sequence-gnome build dependency
|
|
||||||
|
|
||||||
-- Jeremy Bícha <jbicha@ubuntu.com> Tue, 05 Dec 2023 12:07:50 -0500
|
|
||||||
|
|
||||||
gnome-shell-extensions (45.2-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
* Stop using debian/control.in and dh-sequence-gnome
|
|
||||||
* Update standards version to 4.6.2, no changes needed
|
|
||||||
|
|
||||||
-- Jeremy Bícha <jbicha@ubuntu.com> Tue, 05 Dec 2023 10:05:26 -0500
|
|
||||||
|
|
||||||
gnome-shell-extensions (45.1-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bícha <jbicha@ubuntu.com> Sat, 04 Nov 2023 12:31:26 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (45.0-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bícha <jbicha@ubuntu.com> Mon, 18 Sep 2023 08:50:25 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (45~beta-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bícha <jbicha@ubuntu.com> Mon, 21 Aug 2023 10:17:23 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (44.0-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* Upload to unstable (part of transition: #1043144)
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Sun, 20 Aug 2023 23:04:08 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (44.0-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
* debian/control.in: Bump minimum meson to 0.58.0
|
|
||||||
* debian/control.in: Build-Depend on libglib2.0-bin
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Mon, 27 Mar 2023 08:50:32 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (44~rc-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Tue, 07 Mar 2023 12:20:00 -0500
|
|
||||||
|
|
||||||
gnome-shell-extensions (44~beta-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
[ Jeremy Bicha ]
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
[ Debian Janitor ]
|
|
||||||
* Remove constraints unnecessary since buster (oldstable)
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Wed, 15 Feb 2023 11:01:26 -0500
|
|
||||||
|
|
||||||
gnome-shell-extensions (43.1-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Tue, 22 Nov 2022 14:14:48 -0500
|
|
||||||
|
|
||||||
gnome-shell-extensions (43.0-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Release to unstable
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Tue, 27 Sep 2022 19:13:41 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (43.0-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Mon, 19 Sep 2022 10:57:41 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (43~rc-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Tue, 06 Sep 2022 14:39:00 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (43~beta-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Sun, 21 Aug 2022 10:59:20 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (42.3-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release (LP: #1981606)
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Wed, 13 Jul 2022 17:49:05 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (42.2-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Fri, 03 Jun 2022 09:23:28 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (42.1-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release (LP: #1972365)
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Mon, 09 May 2022 08:09:32 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (42.0-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Release to unstable
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Mon, 28 Mar 2022 11:18:12 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (42.0-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jeremy.bicha@canonical.com> Mon, 14 Mar 2022 11:30:18 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (42~rc-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jeremy.bicha@canonical.com> Tue, 08 Mar 2022 17:54:41 -0500
|
|
||||||
|
|
||||||
gnome-shell-extensions (42~beta-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release:
|
|
||||||
- Use libadwaita for preferences
|
|
||||||
- window-list: Fix on-screen keyboard
|
|
||||||
- native-window-placement: Fix distorted layout in app grid
|
|
||||||
* debian/control: Depend on libadwaita and gtk-4 (instead of gtk-3)
|
|
||||||
* debian/patches: Drop applied upstream
|
|
||||||
|
|
||||||
-- Marco Trevisan (Treviño) <marco@ubuntu.com> Wed, 23 Feb 2022 07:35:20 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (41.1-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* d/p/meson-Drop-unused-argument-for-i18n.merge_file.patch:
|
|
||||||
Backport patch from upstream to fix FBTFS with Meson 0.61
|
|
||||||
(Closes: #1005534)
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Tue, 15 Feb 2022 11:18:30 +0000
|
|
||||||
|
|
||||||
gnome-shell-extensions (41.1-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Sun, 12 Dec 2021 20:30:17 -0500
|
|
||||||
|
|
||||||
gnome-shell-extensions (41.0-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* Upload to unstable
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Sat, 16 Oct 2021 20:06:04 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (41.0-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
* debian/control.in: Bump minimum meson to 0.53.0
|
|
||||||
* Bump Standards-Version to 4.6.0
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Sun, 10 Oct 2021 17:04:15 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (40.4-3) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* Release to unstable (transition: #992870)
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Sat, 11 Sep 2021 21:52:59 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (40.4-2) experimental; urgency=medium
|
|
||||||
|
|
||||||
[ Jeremy Bicha ]
|
|
||||||
* New upstream release
|
|
||||||
* debian/copyright: Add gnome-classic.css to Files-Excluded
|
|
||||||
* Revert "debian/control: Don't build depend on sassc"
|
|
||||||
* This ensures we compile the CSS file from source.
|
|
||||||
|
|
||||||
[ Marco Trevisan (Treviño) ]
|
|
||||||
* debian/control: Support pre-release versions of gnome-shell
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Sun, 29 Aug 2021 09:16:04 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (40.1-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
* debian/control:
|
|
||||||
- Update runtime dependencies to match code.
|
|
||||||
Found grepping code via:
|
|
||||||
grep "imports\.gi" --include "*.js" -rh -B2 . \
|
|
||||||
| grep -o "\b[A-Z][A-Za-z]\+\b" | sed "s/,\?\s*$//g" | sort -u
|
|
||||||
- Don't build depend on sassc.
|
|
||||||
Since we compile from tarball, this is not needed anymore given that
|
|
||||||
compiled css are provided already.
|
|
||||||
- Build-depend on dh-sequence-gnome 0.22.
|
|
||||||
It's the first version that supports new GNOME versioning schema.
|
|
||||||
|
|
||||||
-- Marco Trevisan (Treviño) <marco@ubuntu.com> Sun, 30 May 2021 20:05:13 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.38.2-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* New upstream release
|
|
||||||
* Standards-Version: 4.5.1 (no changes required)
|
|
||||||
* d/gbp.conf: Use upstream/3.38.x branch.
|
|
||||||
Version 40~alpha was already released upstream.
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Thu, 03 Dec 2020 10:17:58 +0000
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.38.1-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
* Recommend gnome-shell-extension-prefs instead of gnome-tweaks
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Tue, 06 Oct 2020 17:44:30 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.38.0-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* Revert "debian/watch: Watch for unstable releases"
|
|
||||||
* Release to unstable
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Fri, 25 Sep 2020 23:00:58 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.38.0-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* New upstream release
|
|
||||||
- Translation updates
|
|
||||||
* d/upstream/metadata: Add
|
|
||||||
* Update standards version to 4.5.0, no changes needed
|
|
||||||
* Fix gnome-classic regression in 3.37.91-1.
|
|
||||||
gnome-session no longer takes the `--session gnome-classic` argument
|
|
||||||
when running in classic mode.
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Tue, 22 Sep 2020 11:49:24 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.37.91-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release:
|
|
||||||
- drive-menu: Emphasize eject buttons
|
|
||||||
- user-theme: Add preference dialog
|
|
||||||
- window-list:
|
|
||||||
+ Fix inconsistent state in preference dialog
|
|
||||||
+ auto-move: Modernize preference dialogs
|
|
||||||
- workspace-indicator: Overhaul preference dialog
|
|
||||||
- user-theme: Support session mode styles
|
|
||||||
- Adjust to gnome-shell changes
|
|
||||||
* debian/patches: Refresh
|
|
||||||
* debian/control: B-D on debhelper 13
|
|
||||||
* debian/rules: Don't override dh_missing equal default behavior
|
|
||||||
* debian/control: Remove useless dependency on clutter gir
|
|
||||||
|
|
||||||
-- Marco Trevisan (Treviño) <marco@ubuntu.com> Thu, 27 Aug 2020 17:39:42 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.36.2-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Laurent Bigonville <bigon@debian.org> Sun, 03 May 2020 10:02:18 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.36.1-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* New upstream release
|
|
||||||
- Update Ukrainian translation
|
|
||||||
- Update Gnome Shell CSS
|
|
||||||
* Upload to unstable (part of transition: #954422)
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Fri, 10 Apr 2020 15:12:29 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.36.0-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream translation release
|
|
||||||
|
|
||||||
-- Iain Lane <laney@debian.org> Mon, 16 Mar 2020 12:39:02 +0000
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.35.91-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
- Fixes and adjustments to latest gnome-shell
|
|
||||||
|
|
||||||
-- Marco Trevisan (Treviño) <marco@ubuntu.com> Mon, 24 Feb 2020 18:29:29 +0000
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.34.2-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
* debian/control.in: Bump Standards-Version to 4.4.1 (no further changes)
|
|
||||||
|
|
||||||
-- Laurent Bigonville <bigon@debian.org> Mon, 30 Dec 2019 00:51:13 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.34.1-2) unstable; urgency=high
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
- Fix GNOME Classic session's compatibility with gnome-setting-daemon 3.34
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Tue, 08 Oct 2019 22:49:14 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.34.0-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Team upload.
|
|
||||||
* Upload to unstable.
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Mon, 30 Sep 2019 17:27:38 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.34.0-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream translation release
|
|
||||||
|
|
||||||
-- Iain Lane <laney@debian.org> Tue, 10 Sep 2019 10:59:31 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.33.92-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream bugfix / translation releases
|
|
||||||
|
|
||||||
-- Iain Lane <laney@debian.org> Thu, 05 Sep 2019 18:22:14 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.33.90-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
[ Marco Trevisan (Treviño) ]
|
|
||||||
* New upstream release
|
|
||||||
+ window-list: Support showing windows from all workspaces
|
|
||||||
+ Make GNOME Classic more classic:
|
|
||||||
- Disable GNOME 3 overview
|
|
||||||
- Add window picker button to window list
|
|
||||||
- Style improvements and fixes
|
|
||||||
- Support horizontal workspace layout in window list
|
|
||||||
- Add draggable previews to window list workspace switcher
|
|
||||||
- Arrange workspaces horizontally
|
|
||||||
+ workspace-indicator: Support horizontal workspace layout
|
|
||||||
+ workspace-indicator: Add draggable previews
|
|
||||||
+ Fix windowsNavigator extension after ES6 port
|
|
||||||
+ screenshot-window-sizer: Add phone screenshot sizes
|
|
||||||
|
|
||||||
[ Iain Lane ]
|
|
||||||
* rules: Build all extensions via the upstream build system. We don't need
|
|
||||||
to hardcode the list to build, as the build system provides a way to build
|
|
||||||
'all' extensions.
|
|
||||||
* rules: Build with --fail-missing
|
|
||||||
* compat, control, rules: Move to compat 12 and specifying via build-deps
|
|
||||||
|
|
||||||
-- Iain Lane <laney@debian.org> Tue, 13 Aug 2019 11:59:22 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.32.0-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Iain Lane <laney@debian.org> Tue, 12 Mar 2019 16:34:14 +0000
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.31.92-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Iain Lane <laney@debian.org> Wed, 06 Mar 2019 15:40:48 +0000
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.31.90-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
+ Misc. bug fixes and cleanups
|
|
||||||
+ Remove obsolete alternate-tab extension
|
|
||||||
+ Adjust to gnome-shell changes
|
|
||||||
* debian/watch: Watch for unstable releases
|
|
||||||
* rules: alternate-tab is dropped; stop trying to enable it
|
|
||||||
|
|
||||||
-- Iain Lane <laney@debian.org> Thu, 21 Feb 2019 10:33:12 +0000
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.30.1-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* New upstream release
|
|
||||||
* Bump Standards-Version to 4.2.1
|
|
||||||
* d/p/gnome-session-classic-wrapper-script.patch:
|
|
||||||
Re-word to avoid a Lintian warning
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Fri, 02 Nov 2018 09:26:47 +0000
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.30.0-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
* Release to unstable
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Wed, 05 Sep 2018 12:34:40 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.29.91-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* New upstream development release
|
|
||||||
* Bump Standards-Version to 4.2.0
|
|
||||||
* Sort dependency lists (wrap-and-sort -a)
|
|
||||||
* d/copyright: Remove unnecessary sentence fragment
|
|
||||||
* d/p/series: Remove commented-out line
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Mon, 20 Aug 2018 20:27:57 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.29.90-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* New upstream development release
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Thu, 02 Aug 2018 10:46:44 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.29.3+really3.29.3-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* d/watch: Watch for development versions
|
|
||||||
* Re-upload to experimental with a higher version than
|
|
||||||
3.29.3+really3.28.1-1, which reverted the incorrect upload of the
|
|
||||||
previous version to unstable
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Fri, 27 Jul 2018 23:56:10 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.29.3-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
|
|
||||||
[ Arnaud Rebillout ]
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
[ Simon McVittie ]
|
|
||||||
* Bump Standards-Version to 4.1.5
|
|
||||||
* Set Rules-Requires-Root to no
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Fri, 27 Jul 2018 09:37:34 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.28.1-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
* Bump Standards-Version to 4.1.4
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Mon, 14 May 2018 21:51:46 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.28.0-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Fix typo in configure flag that resulted in missing
|
|
||||||
auto-move-windows, native-window-placement, & user-theme extensions
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Mon, 19 Mar 2018 18:20:53 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.28.0-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Sun, 18 Mar 2018 20:17:17 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.27.92-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Release to unstable
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Sat, 10 Mar 2018 19:37:45 -0500
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.27.92-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
[ Jeremy Bicha ]
|
|
||||||
* New upstream release candidate
|
|
||||||
* Drop explicit dependency on mutter's gir. gnome-shell-extensions depends
|
|
||||||
on gnome-shell which depends on the gir. Dropping it will make transitions
|
|
||||||
easier.
|
|
||||||
|
|
||||||
[ Simon McVittie ]
|
|
||||||
* Recommend gnome-tweaks instead of transitional gnome-tweak-tool
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Mon, 05 Mar 2018 21:02:01 -0500
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.27.91-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream development release
|
|
||||||
* Build with meson
|
|
||||||
* Build-Depend on sassc
|
|
||||||
* Bump debhelper compat to 11
|
|
||||||
* Drop places-menu-Don-t-force-dispose-of-uninitialized-proxies.patch &
|
|
||||||
dont-require-nautilus-classic.patch: Applied in new release
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Fri, 23 Feb 2018 19:49:59 -0500
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.26.2-3) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
|
|
||||||
[ Jeremy Bicha ]
|
|
||||||
* Update Vcs fields for migration to https://salsa.debian.org/
|
|
||||||
|
|
||||||
[ Simon McVittie ]
|
|
||||||
* d/patches: Re-export with gbp pq export
|
|
||||||
* d/p/places-menu-Don-t-force-dispose-of-uninitialized-proxies.patch:
|
|
||||||
Take patch from upstream to avoid frequent tracebacks from the Places
|
|
||||||
menu with gjs >= 1.50.2-3 (Closes: #888608)
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Tue, 30 Jan 2018 09:15:54 +0000
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.26.2-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Update Vcs fields for conversion to git
|
|
||||||
* Add debian/gbp.conf
|
|
||||||
* Bump Standards-Version to 4.1.2
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Fri, 15 Dec 2017 15:19:14 -0500
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.26.2-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Sun, 05 Nov 2017 20:17:03 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.26.1-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Release to unstable
|
|
||||||
* Bump Standards-Version to 4.1.1
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@debian.org> Fri, 13 Oct 2017 16:49:30 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.26.1-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* New upstream stable release
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Fri, 06 Oct 2017 11:01:11 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.26.0-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* New upstream stable release
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Wed, 13 Sep 2017 11:33:19 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.25.91-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
* New upstream release, for GNOME Shell 3.25.91
|
|
||||||
- d/p/adapt-to-gsd324.patch: Drop, applied upstream
|
|
||||||
- Switch dependency to gir1.2-mutter-1
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Tue, 05 Sep 2017 16:43:01 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.22.2-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Add adapt-to-gsd324.patch (Closes: #869948):
|
|
||||||
- Adjust gnome-session file for gnome-settings-daemon 3.24
|
|
||||||
* debian/control.in:
|
|
||||||
- Bump Standards-Version to 4.0.0
|
|
||||||
- Explicitly depend on gnome-settings-daemon >= 3.24
|
|
||||||
- Drop version from gnome-tweak-tool recommends
|
|
||||||
- Depend on gnome-session-bin instead of gnome-session (LP: #1702832)
|
|
||||||
|
|
||||||
-- Jeremy Bicha <jbicha@ubuntu.com> Sun, 06 Aug 2017 17:38:06 -0400
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.22.2-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Thu, 10 Nov 2016 19:36:44 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.22.1-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Tue, 11 Oct 2016 17:58:31 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.22.0-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Tue, 20 Sep 2016 01:59:50 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.21.92-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream development release.
|
|
||||||
* Replace Build-Depends gnome-common with pkg-config and gettext.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Tue, 13 Sep 2016 22:13:19 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.21.91-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream beta release.
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Tue, 30 Aug 2016 19:57:32 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.21.90-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
[ Andreas Henriksson ]
|
|
||||||
* New upstream beta release.
|
|
||||||
* Update build-dependencies according to configure.ac changes:
|
|
||||||
- drop intltool, now gettext is used instead.
|
|
||||||
|
|
||||||
[ Jeremy Bicha ]
|
|
||||||
* Convert from cdbs to dh
|
|
||||||
* Add debian/docs to install NEWS and README
|
|
||||||
* Bump dh compat to 10
|
|
||||||
* Update Vcs fields
|
|
||||||
* Refresh patches
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Sun, 21 Aug 2016 05:36:17 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.21.4-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream development release.
|
|
||||||
* Stop hard-coding Victor Seva in the Uploaders field
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Fri, 12 Aug 2016 16:28:33 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.20.1-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
* Bump Standards-Version to 3.9.8.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Wed, 11 May 2016 15:21:35 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.20.0-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Upload to unstable.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Sun, 17 Apr 2016 00:25:25 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.20.0-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Fri, 25 Mar 2016 10:48:00 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.19.92-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
* Update dont-require-nautilus-classic.patch to apply.
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Thu, 17 Mar 2016 12:51:13 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.18.4-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
* Bump Standards-Version to 3.9.7.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Sun, 06 Mar 2016 22:38:57 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.18.3-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Add Breaks/Replaces gnome-shell-common (<< 3.18) (Closes: #808906)
|
|
||||||
- Helps upgrades from Jessie by allowing overwriting
|
|
||||||
/usr/share/gnome-shell/theme/calendar-today.svg et.al.
|
|
||||||
which was previously shipped in gnome-shell-common.
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Wed, 10 Feb 2016 01:24:42 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.18.3-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Thu, 14 Jan 2016 22:49:16 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.18.2-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Fri, 13 Nov 2015 00:04:09 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.18.1-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Fri, 16 Oct 2015 22:09:01 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.18.0-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
|
|
||||||
-- Laurent Bigonville <bigon@debian.org> Sun, 11 Oct 2015 16:29:18 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.17.92-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release candidate.
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Fri, 18 Sep 2015 17:28:06 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.16.2-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
[ Emilio Pozuelo Monfort ]
|
|
||||||
* debian/gnome-shell-extensions.gsettings-override:
|
|
||||||
+ Dropped, no longer needed as the enabled extension no longer exists.
|
|
||||||
Thanks Artur Rona for noticing. (Closes: #782747)
|
|
||||||
|
|
||||||
[ Michael Biebl ]
|
|
||||||
* New upstream release.
|
|
||||||
* Update Homepage.
|
|
||||||
* Bump debhelper compatibility level to 9.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Thu, 02 Jul 2015 19:13:32 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.16.1-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
* debian/control.in,
|
|
||||||
debian/rules:
|
|
||||||
+ The system monitor extension was removed. Drop the libgtop
|
|
||||||
build and runtime dependencies and stop enabling it.
|
|
||||||
* debian/patches/apps-center-labels.patch,
|
|
||||||
debian/patches/window-list-pointerInNotification.patch,
|
|
||||||
debian/patches/menu-arrows-icons.patch:
|
|
||||||
+ Dropped, merged upstream.
|
|
||||||
* debian/patches/dont-require-nautilus-classic.patch:
|
|
||||||
+ Updated for the new version.
|
|
||||||
|
|
||||||
-- Emilio Pozuelo Monfort <pochu@debian.org> Sun, 14 Jun 2015 15:23:59 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.14.2-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream bugfix release.
|
|
||||||
* menu-arrows-icons: new patch. Make arrows consistent with the rest
|
|
||||||
of the shell.
|
|
||||||
* apps-center-labels.patch: patch from upstream git. Center labels
|
|
||||||
vertically in the applications menu.
|
|
||||||
* window-list-pointerInNotification.patch: patch from upstream git.
|
|
||||||
Update window-list extension for an older shell API change.
|
|
||||||
|
|
||||||
-- Josselin Mouette <joss@debian.org> Sun, 30 Nov 2014 16:06:59 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.14.1-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
* debian/control.in: Bump Standards-Version to 3.9.6 (no further changes)
|
|
||||||
* Add missing dependencies against gir packages, including gir1.2-gmenu-3.0,
|
|
||||||
this should fix the apps-menu extension for some people (Closes: #765460).
|
|
||||||
|
|
||||||
-- Laurent Bigonville <bigon@debian.org> Sun, 19 Oct 2014 21:17:58 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.14.0-2) unstable; urgency=medium
|
|
||||||
|
|
||||||
* Drop xrandr from EXTENSIONS_DISABLED, this extension was removed
|
|
||||||
upstream.
|
|
||||||
* Add new screenshot-window-sizer extension to EXTENSIONS_ENABLED.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Wed, 24 Sep 2014 01:15:32 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.14.0-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* debian/watch: only scan for stable releases.
|
|
||||||
* New upstream release.
|
|
||||||
* Upload to unstable.
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Tue, 23 Sep 2014 15:46:30 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.13.91-1) experimental; urgency=medium
|
|
||||||
|
|
||||||
* New upstream development release.
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Sat, 06 Sep 2014 11:16:39 -0700
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.12.2-1) unstable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
* Bump Standards-Version to 3.9.5
|
|
||||||
* Upload to unstable.
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Tue, 15 Jul 2014 00:06:09 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.12.0-1) experimental; urgency=low
|
|
||||||
|
|
||||||
[ Jean Schurger ]
|
|
||||||
* New upstream release (3.10.1)
|
|
||||||
* debian/rules: remove one of the 'windowsNavigator' extension listed twice
|
|
||||||
and the 'alternative-system-menu' extension (does not exists anymore)
|
|
||||||
* debian/copyright: Update 'Format:' line
|
|
||||||
|
|
||||||
[ Andreas Henriksson ]
|
|
||||||
* New upstream release (3.12.0)
|
|
||||||
* debian/local/gnome-session-classic,
|
|
||||||
debian/patches/gnome-session-classic-wrapper-script.patch:
|
|
||||||
- update script to include new GNOME_SHELL_SESSION_MODE env variable
|
|
||||||
and update patch to apply again.
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Fri, 04 Apr 2014 21:43:18 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.8.4-2) unstable; urgency=low
|
|
||||||
|
|
||||||
* Upload to unstable.
|
|
||||||
|
|
||||||
-- Emilio Pozuelo Monfort <pochu@debian.org> Sun, 13 Oct 2013 18:11:33 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.8.4-1) experimental; urgency=low
|
|
||||||
|
|
||||||
[ Jeremy Bicha ]
|
|
||||||
* New upstream release
|
|
||||||
* Dropped patches applied in new version:
|
|
||||||
- fix-hibernate.patch
|
|
||||||
- fix-applications-menu-resolution-change.patch
|
|
||||||
- look-in-data-home-for-themes.patch
|
|
||||||
|
|
||||||
[ Michael Biebl ]
|
|
||||||
* Add a wrapper script to start the GNOME Classic session as currently
|
|
||||||
Xsession doesn't allow to run gnome-session with custom arguments due to
|
|
||||||
#653327.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Fri, 11 Oct 2013 18:55:23 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.8.3.1-1) experimental; urgency=low
|
|
||||||
|
|
||||||
[ Jeremy Bicha ]
|
|
||||||
* New upstream release
|
|
||||||
- default-min-max and static-workspaces extensions have been dropped.
|
|
||||||
Use Classic Mode or tweak org.gnome.shell.overrides in dconf-editor
|
|
||||||
* debian/control.in:
|
|
||||||
- Depend on gnome-session 3.8, required for the new Classic mode.
|
|
||||||
- Update homepage
|
|
||||||
* debian/patches/dont-require-nautilus-classic.patch:
|
|
||||||
- Don't require nautilus-classic since it forces desktop icons
|
|
||||||
* debian/patches/fix-applications-menu-resolution-change.patch:
|
|
||||||
- Backport commit to not break applications menu when screen resolution
|
|
||||||
changes
|
|
||||||
* debian/patches/fix-hibernate.patch:
|
|
||||||
- Backport patch to fix checking whether hibernate is allowed
|
|
||||||
* debian/patches/look-in-data-home-for-themes.patch:
|
|
||||||
- Backport commit to also look in XDG_DATA_HOME (usually ~/.local/share/)
|
|
||||||
for user themes
|
|
||||||
* debian/rules:
|
|
||||||
- Run autoreconf
|
|
||||||
|
|
||||||
-- Andreas Henriksson <andreas@fatal.se> Fri, 16 Aug 2013 20:25:30 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.8.2-1) experimental; urgency=low
|
|
||||||
|
|
||||||
* Team upload
|
|
||||||
|
|
||||||
[ Victor Seva ]
|
|
||||||
* Recommends gnome-tweak-tool
|
|
||||||
|
|
||||||
[ Jean Schurger ]
|
|
||||||
* New upstream release 3.7.92 (LP: #1017979, #1059152).
|
|
||||||
* Enabled new extensions.
|
|
||||||
* Dropped 'dock' and 'gajim'.
|
|
||||||
* Use ./configure instead of autoreconf.
|
|
||||||
* Bumped Standards-Version to 3.9.4.
|
|
||||||
* Updated Vcs-Svn.
|
|
||||||
* debian/control.in
|
|
||||||
- Added runtime dependency to 'gvfs' (>= 1.16.0).
|
|
||||||
The 'Places' extension rely on a 'gvfs' linked to 'udisks2'.
|
|
||||||
|
|
||||||
[ Simon McVittie ]
|
|
||||||
* New upstream release 3.8.2.
|
|
||||||
* Install the "classic mode"
|
|
||||||
* Enable windowNavigator extension (this means we have everything except
|
|
||||||
example and xrandr, the same as in the Ubuntu gnome3-team's PPA)
|
|
||||||
|
|
||||||
-- Simon McVittie <smcv@debian.org> Thu, 23 May 2013 09:07:23 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.4.0-2) unstable; urgency=low
|
|
||||||
|
|
||||||
* Upload to unstable.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Wed, 30 May 2012 13:22:54 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.4.0-1) experimental; urgency=low
|
|
||||||
|
|
||||||
* New upstream release.
|
|
||||||
* Remove 01_status-menu_disable_accounts.patch: The alternative-status-menu
|
|
||||||
extension no longer recreates the complete user menu but reuses the one
|
|
||||||
from gnome-shell, so we can't easily get rid of the "Online Accounts" menu
|
|
||||||
entry. We will patch gnome-shell directly instead.
|
|
||||||
* Remove 02-Revert-all-remove-all-GSettings-usage.patch and
|
|
||||||
03-Revert-Remove-all-references-to-localedir-from-metad.patch, no longer
|
|
||||||
required.
|
|
||||||
* Bump Standards-Version to 3.9.3
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Mon, 21 May 2012 00:24:56 +0200
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.2.3-1) unstable; urgency=low
|
|
||||||
|
|
||||||
[ Josselin Mouette ]
|
|
||||||
* gnome-shell-extensions.gsettings-override: enable the alternative
|
|
||||||
status menu by default. Closes: #648112.
|
|
||||||
* Use ${gnome:Version} to generate strict dependencies, it’s very
|
|
||||||
unlikely that extensions remain compatible after a major upgrade.
|
|
||||||
|
|
||||||
[ Michael Biebl ]
|
|
||||||
* Upload to unstable.
|
|
||||||
|
|
||||||
[ Josselin Mouette ]
|
|
||||||
* 01_status-menu_disable_accounts.patch: new patch. Drop the unusable
|
|
||||||
advertisement for Google. It is already available in the control
|
|
||||||
center anyway.
|
|
||||||
|
|
||||||
[ Michael Biebl ]
|
|
||||||
* New upstream release.
|
|
||||||
* Drop patches which have been merged upstream:
|
|
||||||
- debian/patches/upstream/*
|
|
||||||
- debian/patches/fix-*
|
|
||||||
* Refresh 01_status-menu_disable_accounts.patch.
|
|
||||||
* Add 02-Revert-all-remove-all-GSettings-usage.patch: Use GSettings since we
|
|
||||||
install the extensions system-wide.
|
|
||||||
* Use dh-autoreconf to generate the build system.
|
|
||||||
* Add 03-Revert-Remove-all-references-to-localedir-from-metad.patch: Use
|
|
||||||
locales from system-wide location.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Sat, 11 Feb 2012 23:28:53 +0100
|
|
||||||
|
|
||||||
gnome-shell-extensions (3.2.0-1) experimental; urgency=low
|
|
||||||
|
|
||||||
[ Victor Seva ]
|
|
||||||
* Initial release (Closes: #627515)
|
|
||||||
Package based on the work by Bilal Akhtar <bilalakhtar@ubuntu.com>
|
|
||||||
* debian/copyright
|
|
||||||
- Added myself
|
|
||||||
- Fixed syntax-error-in-dep5-copyright syntax error
|
|
||||||
* debian/control.in
|
|
||||||
- Added myself as maintainer.
|
|
||||||
- Fix gnome-shell dependency.
|
|
||||||
- Fix gir1.2-gtop-2.0 dependency for systemMonitor ext.
|
|
||||||
* debian/rules
|
|
||||||
- Added uploaders.mk gnome-version.mk includes.
|
|
||||||
- Removed unused variables.
|
|
||||||
* debian/watch added.
|
|
||||||
* No more gnome-shell-extension-* packages.
|
|
||||||
* debian/patches/upstream
|
|
||||||
- patch_967aee7aad2accfb38d91ab56b6c5e91d86a2722.diff
|
|
||||||
popup menu fix
|
|
||||||
- patch_66242aa76a5d59fb4659551575c1fbb42e50b8fb.diff
|
|
||||||
dock fix.
|
|
||||||
- patch_4c5a36e4c0cbe38f2e26b6b3c8b02e88b4b939f7.diff
|
|
||||||
patch_2bba98d6214cffae2eb5cecb9d7c1f6b6d244052.diff
|
|
||||||
systemMonitor: Properly enable/disable
|
|
||||||
* debian/patches
|
|
||||||
- fix_dock_gnome-shell_version.diff
|
|
||||||
- fix_alternate-tab_661281.diff
|
|
||||||
- fix_alternate-tab_gnome-shell_version.diff
|
|
||||||
* debian/rules
|
|
||||||
- EXTENSIONS_ENABLED, EXTENSIONS_DISABLED variables
|
|
||||||
- disabled xrandr-indicator
|
|
||||||
|
|
||||||
[ Michael Biebl ]
|
|
||||||
* debian/watch: Track .xz tarballs.
|
|
||||||
* debian/control.in:
|
|
||||||
- Set pkg-gnome-maintainers@lists.alioth.debian.org as Maintainer and add
|
|
||||||
Victor Seva <linuxmaniac@torreviejawireless.org> to Uploaders.
|
|
||||||
- Wrap (Build-)Depends.
|
|
||||||
- Add Vcs-Svn and Vcs-Browser field.
|
|
||||||
* debian/rules:
|
|
||||||
- Include gnome-get-source.mk.
|
|
||||||
|
|
||||||
-- Michael Biebl <biebl@debian.org> Sat, 12 Nov 2011 18:32:22 +0100
|
|
||||||
Vendored
-46
@@ -1,46 +0,0 @@
|
|||||||
Source: gnome-shell-extensions
|
|
||||||
Section: gnome
|
|
||||||
Priority: optional
|
|
||||||
Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
|
|
||||||
Uploaders: Iain Lane <laney@debian.org>, Jeremy Bícha <jbicha@ubuntu.com>, Laurent Bigonville <bigon@debian.org>, Marco Trevisan (Treviño) <marco@ubuntu.com>
|
|
||||||
Build-Depends: debhelper-compat (= 13),
|
|
||||||
dh-sequence-gnome,
|
|
||||||
libglib2.0-bin,
|
|
||||||
meson (>= 0.58.0),
|
|
||||||
sassc
|
|
||||||
Rules-Requires-Root: no
|
|
||||||
Standards-Version: 4.6.2
|
|
||||||
Vcs-Browser: https://salsa.debian.org/gnome-team/gnome-shell-extensions
|
|
||||||
Vcs-Git: https://salsa.debian.org/gnome-team/gnome-shell-extensions.git
|
|
||||||
Homepage: https://wiki.gnome.org/Projects/GnomeShell/Extensions
|
|
||||||
|
|
||||||
Package: gnome-shell-extensions
|
|
||||||
Architecture: all
|
|
||||||
Depends: gir1.2-adw-1,
|
|
||||||
gir1.2-atk-1.0,
|
|
||||||
gir1.2-glib-2.0,
|
|
||||||
gir1.2-gmenu-3.0,
|
|
||||||
gir1.2-graphene-1.0 (>= 1.10.2),
|
|
||||||
gir1.2-gtk-4.0,
|
|
||||||
gir1.2-pango-1.0,
|
|
||||||
gnome-session-bin (>= 3.8),
|
|
||||||
gnome-settings-daemon (>= 3.24),
|
|
||||||
gnome-shell (<< ${gnome:NextVersion}),
|
|
||||||
gnome-shell (>= ${gnome:Version}),
|
|
||||||
gvfs (>= 1.16.0),
|
|
||||||
${misc:Depends}
|
|
||||||
Recommends: gnome-shell-extension-prefs
|
|
||||||
Replaces: gnome-shell-common (<< 3.18)
|
|
||||||
Breaks: gnome-shell-common (<< 3.18)
|
|
||||||
Description: Extensions to extend functionality of GNOME Shell
|
|
||||||
The GNOME Shell redefines user interactions with the GNOME desktop. In
|
|
||||||
particular, it offers new paradigms for launching applications,
|
|
||||||
accessing documents, and organizing open windows in GNOME. Later, it
|
|
||||||
will introduce a new applets eco-system and offer new solutions for
|
|
||||||
other desktop features, such as notifications and contacts management.
|
|
||||||
The GNOME Shell is intended to replace functions handled by the GNOME
|
|
||||||
Panel and by the window manager in previous versions of GNOME. The GNOME
|
|
||||||
Shell has rich visual effects enabled by new graphical technologies.
|
|
||||||
.
|
|
||||||
GNOME Shell is extensible using extensions. This package contains
|
|
||||||
official GNOME Shell extensions.
|
|
||||||
Vendored
-30
@@ -1,30 +0,0 @@
|
|||||||
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
|
||||||
Upstream-Name: gnome-shell-extensions
|
|
||||||
Upstream-Contact: 2011 Giovanni Campagna <gcampagna@src.gnome.org>
|
|
||||||
Source: https://download.gnome.org/sources/gnome-shell-extensions/
|
|
||||||
Files-Excluded: data/gnome-classic.css
|
|
||||||
Comment: Build that generated file from source
|
|
||||||
|
|
||||||
Files: *
|
|
||||||
Copyright: 2011 Giovanni Campagna <gcampagna@src.gnome.org>
|
|
||||||
License: GPL-2+
|
|
||||||
|
|
||||||
Files: debian/*
|
|
||||||
Copyright:
|
|
||||||
2011 Victor Seva <linuxmaniac@torreviejawireless.org>
|
|
||||||
2011 Bilal Akhtar <bilalakhtar@ubuntu.com>
|
|
||||||
License: GPL-2+
|
|
||||||
|
|
||||||
License: GPL-2+
|
|
||||||
This package is free software; you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
.
|
|
||||||
This package is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
.
|
|
||||||
On Debian systems, the complete text of the GNU General
|
|
||||||
Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
|
|
||||||
Vendored
-2
@@ -1,2 +0,0 @@
|
|||||||
NEWS
|
|
||||||
README.md
|
|
||||||
Vendored
-17
@@ -1,17 +0,0 @@
|
|||||||
[DEFAULT]
|
|
||||||
pristine-tar = True
|
|
||||||
debian-branch = debian/latest
|
|
||||||
upstream-branch = upstream/latest
|
|
||||||
|
|
||||||
[buildpackage]
|
|
||||||
sign-tags = True
|
|
||||||
|
|
||||||
[dch]
|
|
||||||
multimaint-merge = True
|
|
||||||
|
|
||||||
[import-orig]
|
|
||||||
postimport = dch -v%(version)s New upstream release; git add debian/changelog; debcommit
|
|
||||||
upstream-vcs-tag = %(version%~%.)s
|
|
||||||
|
|
||||||
[pq]
|
|
||||||
patch-numbers = False
|
|
||||||
Vendored
-1
@@ -1 +0,0 @@
|
|||||||
debian/local/gnome-session-classic usr/bin
|
|
||||||
Vendored
-2
@@ -1,2 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
env GNOME_SHELL_SESSION_MODE=classic gnome-session "$@"
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
From: Michael Biebl <biebl@debian.org>
|
|
||||||
Date: Tue, 30 Jan 2018 09:04:03 +0000
|
|
||||||
Subject: Use a wrapper script to start GNOME classic session
|
|
||||||
|
|
||||||
Xsession currently doesn't allow passing more then one argument, as it
|
|
||||||
otherwise fails with
|
|
||||||
Xsession: unable to launch "gnome-session --session classic" X session ---
|
|
||||||
"gnome-session --session classic" not found; falling back to default session.
|
|
||||||
|
|
||||||
This is due to [1]. Add a wrapper script to start the GNOME classic session
|
|
||||||
as a workaround. Once [1] is fixed, this should be removed again.
|
|
||||||
|
|
||||||
[1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=653327.
|
|
||||||
---
|
|
||||||
data/gnome-classic.desktop.in | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/data/gnome-classic.desktop.in b/data/gnome-classic.desktop.in
|
|
||||||
index 13da2b5..d627655 100644
|
|
||||||
--- a/data/gnome-classic.desktop.in
|
|
||||||
+++ b/data/gnome-classic.desktop.in
|
|
||||||
@@ -1,7 +1,7 @@
|
|
||||||
[Desktop Entry]
|
|
||||||
Name=GNOME Classic
|
|
||||||
Comment=This session logs you into GNOME Classic
|
|
||||||
-Exec=env GNOME_SHELL_SESSION_MODE=classic gnome-session
|
|
||||||
+Exec=gnome-session-classic
|
|
||||||
TryExec=gnome-session
|
|
||||||
Type=Application
|
|
||||||
DesktopNames=GNOME-Classic;GNOME;
|
|
||||||
Vendored
-1
@@ -1 +0,0 @@
|
|||||||
gnome-session-classic-wrapper-script.patch
|
|
||||||
Vendored
-11
@@ -1,11 +0,0 @@
|
|||||||
#!/usr/bin/make -f
|
|
||||||
|
|
||||||
%:
|
|
||||||
dh $@
|
|
||||||
|
|
||||||
override_dh_auto_configure:
|
|
||||||
dh_auto_configure -- \
|
|
||||||
-Dextension_set=all \
|
|
||||||
-Dclassic_mode=true
|
|
||||||
|
|
||||||
override_dh_gnome_clean:
|
|
||||||
Vendored
-1
@@ -1 +0,0 @@
|
|||||||
3.0 (quilt)
|
|
||||||
Vendored
-5
@@ -1,5 +0,0 @@
|
|||||||
---
|
|
||||||
Bug-Database: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/issues
|
|
||||||
Bug-Submit: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/issues/new
|
|
||||||
Repository: https://gitlab.gnome.org/GNOME/gnome-shell-extensions.git
|
|
||||||
Repository-Browse: https://gitlab.gnome.org/GNOME/gnome-shell-extensions
|
|
||||||
Vendored
-4
@@ -1,4 +0,0 @@
|
|||||||
version=4
|
|
||||||
opts="searchmode=plain, uversionmangle=s/\.(alpha|beta|rc)/~$1/, downloadurlmangle=s|cache.json||" \
|
|
||||||
https://download.gnome.org/sources/@PACKAGE@/cache.json \
|
|
||||||
[\d.]+/@PACKAGE@-([\d.]+\.?(?:beta|rc)?[\d.]*)@ARCHIVE_EXT@
|
|
||||||
@@ -41,6 +41,8 @@ for f in $extensiondir/*; do
|
|||||||
cp $srcdir/NEWS $srcdir/COPYING $f
|
cp $srcdir/NEWS $srcdir/COPYING $f
|
||||||
sources=(NEWS COPYING $(cd $f; ls *.js))
|
sources=(NEWS COPYING $(cd $f; ls *.js))
|
||||||
|
|
||||||
|
[ -d $f/icons ] && sources+=(icons)
|
||||||
|
|
||||||
[ -f $schema ] || unset schema
|
[ -f $schema ] || unset schema
|
||||||
|
|
||||||
gnome-extensions pack ${sources[@]/#/--extra-source=} \
|
gnome-extensions pack ${sources[@]/#/--extra-source=} \
|
||||||
|
|||||||
@@ -255,7 +255,7 @@ class DesktopTarget extends EventEmitter {
|
|||||||
this._desktopDestroyedId = 0;
|
this._desktopDestroyedId = 0;
|
||||||
|
|
||||||
this._windowAddedId =
|
this._windowAddedId =
|
||||||
global.window_group.connect('actor-added',
|
global.window_group.connect('child-added',
|
||||||
this._onWindowAdded.bind(this));
|
this._onWindowAdded.bind(this));
|
||||||
|
|
||||||
global.get_window_actors().forEach(a => {
|
global.get_window_actors().forEach(a => {
|
||||||
@@ -399,7 +399,7 @@ class ApplicationsButton extends PanelMenu.Button {
|
|||||||
y_align: Clutter.ActorAlign.CENTER,
|
y_align: Clutter.ActorAlign.CENTER,
|
||||||
});
|
});
|
||||||
|
|
||||||
this.add_actor(this._label);
|
this.add_child(this._label);
|
||||||
this.name = 'panelApplications';
|
this.name = 'panelApplications';
|
||||||
this.label_actor = this._label;
|
this.label_actor = this._label;
|
||||||
|
|
||||||
@@ -568,13 +568,13 @@ class ApplicationsButton extends PanelMenu.Button {
|
|||||||
this.leftBox.add_child(this.categoriesScrollBox);
|
this.leftBox.add_child(this.categoriesScrollBox);
|
||||||
|
|
||||||
this.applicationsBox = new St.BoxLayout({vertical: true});
|
this.applicationsBox = new St.BoxLayout({vertical: true});
|
||||||
this.applicationsScrollBox.add_actor(this.applicationsBox);
|
this.applicationsScrollBox.set_child(this.applicationsBox);
|
||||||
this.categoriesBox = new St.BoxLayout({vertical: true});
|
this.categoriesBox = new St.BoxLayout({vertical: true});
|
||||||
this.categoriesScrollBox.add_actor(this.categoriesBox);
|
this.categoriesScrollBox.set_child(this.categoriesBox);
|
||||||
|
|
||||||
this.mainBox.add(this.leftBox);
|
this.mainBox.add_child(this.leftBox);
|
||||||
this.mainBox.add_child(this.applicationsScrollBox);
|
this.mainBox.add_child(this.applicationsScrollBox);
|
||||||
section.actor.add_actor(this.mainBox);
|
section.actor.add_child(this.mainBox);
|
||||||
}
|
}
|
||||||
|
|
||||||
_display() {
|
_display() {
|
||||||
@@ -586,7 +586,7 @@ class ApplicationsButton extends PanelMenu.Button {
|
|||||||
this._tree.load_sync();
|
this._tree.load_sync();
|
||||||
let root = this._tree.get_root_directory();
|
let root = this._tree.get_root_directory();
|
||||||
let categoryMenuItem = new CategoryMenuItem(this, null);
|
let categoryMenuItem = new CategoryMenuItem(this, null);
|
||||||
this.categoriesBox.add_actor(categoryMenuItem);
|
this.categoriesBox.add_child(categoryMenuItem);
|
||||||
let iter = root.iter();
|
let iter = root.iter();
|
||||||
let nextType;
|
let nextType;
|
||||||
while ((nextType = iter.next()) !== GMenu.TreeItemType.INVALID) {
|
while ((nextType = iter.next()) !== GMenu.TreeItemType.INVALID) {
|
||||||
@@ -602,7 +602,7 @@ class ApplicationsButton extends PanelMenu.Button {
|
|||||||
this._loadCategory(categoryId, dir);
|
this._loadCategory(categoryId, dir);
|
||||||
if (this.applicationsByCategory[categoryId].length > 0) {
|
if (this.applicationsByCategory[categoryId].length > 0) {
|
||||||
categoryMenuItem = new CategoryMenuItem(this, dir);
|
categoryMenuItem = new CategoryMenuItem(this, dir);
|
||||||
this.categoriesBox.add_actor(categoryMenuItem);
|
this.categoriesBox.add_child(categoryMenuItem);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -615,7 +615,7 @@ class ApplicationsButton extends PanelMenu.Button {
|
|||||||
if (c._delegate instanceof PopupMenu.PopupSeparatorMenuItem)
|
if (c._delegate instanceof PopupMenu.PopupSeparatorMenuItem)
|
||||||
c._delegate.destroy();
|
c._delegate.destroy();
|
||||||
else
|
else
|
||||||
this.applicationsBox.remove_actor(c);
|
this.applicationsBox.remove_child(c);
|
||||||
});
|
});
|
||||||
|
|
||||||
if (dir)
|
if (dir)
|
||||||
@@ -638,7 +638,7 @@ class ApplicationsButton extends PanelMenu.Button {
|
|||||||
this._applicationsButtons.set(app, item);
|
this._applicationsButtons.set(app, item);
|
||||||
}
|
}
|
||||||
if (!item.get_parent())
|
if (!item.get_parent())
|
||||||
this.applicationsBox.add_actor(item);
|
this.applicationsBox.add_child(item);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ class MountMenuItem extends PopupMenu.PopupBaseMenuItem {
|
|||||||
style_class: 'button',
|
style_class: 'button',
|
||||||
});
|
});
|
||||||
ejectButton.connect('clicked', this._eject.bind(this));
|
ejectButton.connect('clicked', this._eject.bind(this));
|
||||||
this.add(ejectButton);
|
this.add_child(ejectButton);
|
||||||
|
|
||||||
this.hide();
|
this.hide();
|
||||||
|
|
||||||
|
|||||||
@@ -95,7 +95,7 @@ class PlacesMenu extends PanelMenu.Button {
|
|||||||
y_expand: true,
|
y_expand: true,
|
||||||
y_align: Clutter.ActorAlign.CENTER,
|
y_align: Clutter.ActorAlign.CENTER,
|
||||||
});
|
});
|
||||||
this.add_actor(label);
|
this.add_child(label);
|
||||||
|
|
||||||
this.placesManager = new PlacesManager();
|
this.placesManager = new PlacesManager();
|
||||||
|
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ export default class ScreenshotWindowSizerExtension extends Extension {
|
|||||||
_flashMessage(message) {
|
_flashMessage(message) {
|
||||||
if (!this._text) {
|
if (!this._text) {
|
||||||
this._text = new St.Label({style_class: 'screenshot-sizer-message'});
|
this._text = new St.Label({style_class: 'screenshot-sizer-message'});
|
||||||
Main.uiGroup.add_actor(this._text);
|
Main.uiGroup.add_child(this._text);
|
||||||
}
|
}
|
||||||
|
|
||||||
this._text.remove_all_transitions();
|
this._text.remove_all_transitions();
|
||||||
|
|||||||
@@ -0,0 +1,480 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2023 Florian Müllner <fmuellner@gnome.org>
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
*/
|
||||||
|
|
||||||
|
import Clutter from 'gi://Clutter';
|
||||||
|
import Gio from 'gi://Gio';
|
||||||
|
import GLib from 'gi://GLib';
|
||||||
|
import GObject from 'gi://GObject';
|
||||||
|
import GTop from 'gi://GTop';
|
||||||
|
import Pango from 'gi://Pango';
|
||||||
|
import Shell from 'gi://Shell';
|
||||||
|
import St from 'gi://St';
|
||||||
|
|
||||||
|
import {Extension, gettext as _} from 'resource:///org/gnome/shell/extensions/extension.js';
|
||||||
|
import * as PanelMenu from 'resource:///org/gnome/shell/ui/panelMenu.js';
|
||||||
|
import * as PopupMenu from 'resource:///org/gnome/shell/ui/popupMenu.js';
|
||||||
|
|
||||||
|
import * as Main from 'resource:///org/gnome/shell/ui/main.js';
|
||||||
|
|
||||||
|
const THRESHOLD_HIGH = 0.80;
|
||||||
|
|
||||||
|
// adapted from load-graph.cpp in gnome-system-monitor
|
||||||
|
/**
|
||||||
|
* @param {string} str
|
||||||
|
* @returns {number}
|
||||||
|
*/
|
||||||
|
function strHash(str) {
|
||||||
|
let hash = 0xcbf29ce484222325n;
|
||||||
|
|
||||||
|
for (const c of str)
|
||||||
|
hash = (hash * 0x00000100000001B3n) ^ BigInt(c.codePointAt(0));
|
||||||
|
return hash;
|
||||||
|
}
|
||||||
|
|
||||||
|
class StatSection extends St.BoxLayout {
|
||||||
|
static {
|
||||||
|
GObject.registerClass(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor(iconName, accessibleName) {
|
||||||
|
super({
|
||||||
|
style_class: 'system-monitor-stat-section',
|
||||||
|
accessibleName,
|
||||||
|
});
|
||||||
|
|
||||||
|
const ext = Extension.lookupByURL(import.meta.url);
|
||||||
|
const file =
|
||||||
|
ext.dir.resolve_relative_path(`icons/${iconName}.svg`);
|
||||||
|
|
||||||
|
this._icon = new St.Icon({
|
||||||
|
style_class: 'system-monitor-stat-section-icon',
|
||||||
|
gicon: new Gio.FileIcon({file}),
|
||||||
|
});
|
||||||
|
this.add_child(this._icon);
|
||||||
|
|
||||||
|
this.label = new St.Label({
|
||||||
|
style_class: 'system-monitor-stat-section-label',
|
||||||
|
y_align: Clutter.ActorAlign.CENTER,
|
||||||
|
});
|
||||||
|
this.label.clutter_text.set({
|
||||||
|
ellipsize: Pango.EllipsizeMode.NONE,
|
||||||
|
x_align: Clutter.ActorAlign.CENTER,
|
||||||
|
});
|
||||||
|
this.add_child(this.label);
|
||||||
|
|
||||||
|
this.connect('destroy', () => this._clearTimeout());
|
||||||
|
this.connect('notify::visible', () => this._sync());
|
||||||
|
this._sync();
|
||||||
|
}
|
||||||
|
|
||||||
|
_ensureTimeout() {
|
||||||
|
if (this._updateId)
|
||||||
|
return;
|
||||||
|
|
||||||
|
this._updateId = GLib.timeout_add_seconds(GLib.PRIORITY_DEFAULT, 1,
|
||||||
|
() => {
|
||||||
|
this._update();
|
||||||
|
return GLib.SOURCE_CONTINUE;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
_clearTimeout() {
|
||||||
|
if (this._updateId)
|
||||||
|
GLib.source_remove(this._updateId);
|
||||||
|
delete this._updateId;
|
||||||
|
}
|
||||||
|
|
||||||
|
_sync() {
|
||||||
|
if (this.visible)
|
||||||
|
this._ensureTimeout();
|
||||||
|
else
|
||||||
|
this._clearTimeout();
|
||||||
|
|
||||||
|
if (this.visible)
|
||||||
|
this._update();
|
||||||
|
}
|
||||||
|
|
||||||
|
_update() {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class LoadStatSection extends StatSection {
|
||||||
|
static {
|
||||||
|
GObject.registerClass(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
#formatter = new Intl.NumberFormat(undefined, {
|
||||||
|
style: 'percent',
|
||||||
|
});
|
||||||
|
|
||||||
|
_getLoadValue() {
|
||||||
|
}
|
||||||
|
|
||||||
|
_update() {
|
||||||
|
const load = this._getLoadValue();
|
||||||
|
this.label.text = this.#formatter.format(load);
|
||||||
|
|
||||||
|
if (load >= THRESHOLD_HIGH)
|
||||||
|
this.add_style_class_name('high-usage');
|
||||||
|
else
|
||||||
|
this.remove_style_class_name('high-usage');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class CpuSection extends LoadStatSection {
|
||||||
|
static {
|
||||||
|
GObject.registerClass(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
#prevCpu = new GTop.glibtop_cpu();
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
super('processor-symbolic', _('CPU stats'));
|
||||||
|
}
|
||||||
|
|
||||||
|
_getLoadValue() {
|
||||||
|
const cpu = new GTop.glibtop_cpu();
|
||||||
|
GTop.glibtop_get_cpu(cpu);
|
||||||
|
|
||||||
|
const total = cpu.total - this.#prevCpu.total;
|
||||||
|
const user = cpu.user - this.#prevCpu.user;
|
||||||
|
const sys = cpu.sys - this.#prevCpu.sys;
|
||||||
|
const nice = cpu.nice - this.#prevCpu.nice;
|
||||||
|
|
||||||
|
this.#prevCpu = cpu;
|
||||||
|
|
||||||
|
return (user + sys + nice) / Math.max(total, 1.0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class MemSection extends LoadStatSection {
|
||||||
|
static {
|
||||||
|
GObject.registerClass(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
super('memory-symbolic', _('Memory stats'));
|
||||||
|
}
|
||||||
|
|
||||||
|
_getLoadValue() {
|
||||||
|
const mem = new GTop.glibtop_mem();
|
||||||
|
GTop.glibtop_get_mem(mem);
|
||||||
|
|
||||||
|
const {user, total} = mem;
|
||||||
|
return user / Math.max(total, 1.0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class SwapSection extends LoadStatSection {
|
||||||
|
static {
|
||||||
|
GObject.registerClass(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
super('swap-symbolic', _('Swap stats'));
|
||||||
|
}
|
||||||
|
|
||||||
|
_getLoadValue() {
|
||||||
|
const swap = new GTop.glibtop_swap();
|
||||||
|
GTop.glibtop_get_swap(swap);
|
||||||
|
|
||||||
|
const {used, total} = swap;
|
||||||
|
return used / Math.max(total, 1.0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class NetStatSection extends StatSection {
|
||||||
|
static {
|
||||||
|
GObject.registerClass(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
#formats = [{
|
||||||
|
factor: 1000,
|
||||||
|
formatter: new Intl.NumberFormat(undefined, {
|
||||||
|
style: 'unit',
|
||||||
|
unit: 'kilobyte',
|
||||||
|
maximumFractionDigits: 1,
|
||||||
|
minimumFractionDigits: 1,
|
||||||
|
}),
|
||||||
|
}, {
|
||||||
|
factor: 1000 * 10,
|
||||||
|
formatter: new Intl.NumberFormat(undefined, {
|
||||||
|
style: 'unit',
|
||||||
|
unit: 'kilobyte',
|
||||||
|
maximumFractionDigits: 0,
|
||||||
|
}),
|
||||||
|
}, {
|
||||||
|
factor: 1000 * 1000,
|
||||||
|
formatter: new Intl.NumberFormat(undefined, {
|
||||||
|
style: 'unit',
|
||||||
|
unit: 'megabyte',
|
||||||
|
maximumFractionDigits: 1,
|
||||||
|
minimumFractionDigits: 1,
|
||||||
|
}),
|
||||||
|
}, {
|
||||||
|
factor: 1000 * 1000 * 10,
|
||||||
|
formatter: new Intl.NumberFormat(undefined, {
|
||||||
|
style: 'unit',
|
||||||
|
unit: 'megabyte',
|
||||||
|
maximumFractionDigits: 0,
|
||||||
|
}),
|
||||||
|
}, {
|
||||||
|
factor: 1000 * 1000 * 1000,
|
||||||
|
formatter: new Intl.NumberFormat(undefined, {
|
||||||
|
style: 'unit',
|
||||||
|
unit: 'gigabyte',
|
||||||
|
maximumFractionDigits: 1,
|
||||||
|
minimumFractionDigits: 1,
|
||||||
|
}),
|
||||||
|
}, {
|
||||||
|
factor: 1000 * 1000 * 1000 * 10,
|
||||||
|
formatter: new Intl.NumberFormat(undefined, {
|
||||||
|
style: 'unit',
|
||||||
|
unit: 'gigabyte',
|
||||||
|
maximumFractionDigits: 0,
|
||||||
|
}),
|
||||||
|
}, {
|
||||||
|
factor: 1000 * 1000 * 1000 * 1000,
|
||||||
|
formatter: new Intl.NumberFormat(undefined, {
|
||||||
|
style: 'unit',
|
||||||
|
unit: 'terabyte',
|
||||||
|
maximumFractionDigits: 1,
|
||||||
|
minimumFractionDigits: 1,
|
||||||
|
}),
|
||||||
|
}, {
|
||||||
|
factor: 1000 * 1000 * 1000 * 1000 * 10,
|
||||||
|
formatter: new Intl.NumberFormat(undefined, {
|
||||||
|
style: 'unit',
|
||||||
|
unit: 'terabyte',
|
||||||
|
maximumFractionDigits: 0,
|
||||||
|
}),
|
||||||
|
}, {
|
||||||
|
factor: 1000 * 1000 * 1000 * 1000 * 1000,
|
||||||
|
formatter: new Intl.NumberFormat(undefined, {
|
||||||
|
style: 'unit',
|
||||||
|
unit: 'petabyte',
|
||||||
|
maximumFractionDigits: 1,
|
||||||
|
minimumFractionDigits: 1,
|
||||||
|
}),
|
||||||
|
}];
|
||||||
|
|
||||||
|
#lastBytes = 0;
|
||||||
|
#lastHash = 0;
|
||||||
|
#lastTime = 0;
|
||||||
|
|
||||||
|
_getBytes(_netload) {
|
||||||
|
}
|
||||||
|
|
||||||
|
_getFormat(bytes) {
|
||||||
|
for (let i = 1; i < this.#formats.length; i++) {
|
||||||
|
if (bytes < this.#formats.at(i).factor)
|
||||||
|
return this.#formats.at(i - 1);
|
||||||
|
}
|
||||||
|
return this.#formats.at(-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
_update() {
|
||||||
|
const FLAG_LOOPBACK = 1 << 4; // GTop sucks
|
||||||
|
|
||||||
|
const netlist = new GTop.glibtop_netlist();
|
||||||
|
const ifnames = GTop.glibtop_get_netlist(netlist);
|
||||||
|
|
||||||
|
let bytes = 0;
|
||||||
|
let hash = 1n;
|
||||||
|
|
||||||
|
for (const ifname of ifnames) {
|
||||||
|
const netload = new GTop.glibtop_netload();
|
||||||
|
GTop.glibtop_get_netload(netload, ifname);
|
||||||
|
|
||||||
|
if (netload.if_flags & FLAG_LOOPBACK)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
bytes += this._getBytes(netload);
|
||||||
|
hash += strHash(ifname);
|
||||||
|
}
|
||||||
|
|
||||||
|
const time = GLib.get_monotonic_time();
|
||||||
|
|
||||||
|
let dbytes = 0;
|
||||||
|
|
||||||
|
// Skip calculation if new data is less than old (interface
|
||||||
|
// removed, counters reset, ...) or if it is the first time
|
||||||
|
if (bytes >= this.#lastBytes &&
|
||||||
|
hash === this.#lastHash &&
|
||||||
|
this.#lastTime !== 0) {
|
||||||
|
const dtime = (time - this.#lastTime) / GLib.USEC_PER_SEC;
|
||||||
|
dbytes = (bytes - this.#lastBytes) / dtime;
|
||||||
|
}
|
||||||
|
|
||||||
|
this.#lastBytes = bytes;
|
||||||
|
this.#lastTime = time;
|
||||||
|
this.#lastHash = hash;
|
||||||
|
|
||||||
|
const {factor, formatter} = this._getFormat(dbytes);
|
||||||
|
this.label.text = formatter.format(dbytes / factor);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class UploadSection extends NetStatSection {
|
||||||
|
static {
|
||||||
|
GObject.registerClass(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
super('upload-symbolic', _('Upload stats'));
|
||||||
|
}
|
||||||
|
|
||||||
|
_getBytes(netload) {
|
||||||
|
return netload.bytes_out;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class DownloadSection extends NetStatSection {
|
||||||
|
static {
|
||||||
|
GObject.registerClass(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
super('download-symbolic', _('Download stats'));
|
||||||
|
}
|
||||||
|
|
||||||
|
_getBytes(netload) {
|
||||||
|
return netload.bytes_in;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Indicator extends PanelMenu.Button {
|
||||||
|
static {
|
||||||
|
GObject.registerClass(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor(settings) {
|
||||||
|
super(0.5, _('System stats'));
|
||||||
|
|
||||||
|
this._settings = settings;
|
||||||
|
this.connect('destroy',
|
||||||
|
() => (this._settings = null));
|
||||||
|
|
||||||
|
const box = new St.BoxLayout({
|
||||||
|
styleClass: 'system-monitor-stat-sections',
|
||||||
|
});
|
||||||
|
|
||||||
|
this.add_child(box);
|
||||||
|
|
||||||
|
this._placeholder = new St.Icon({
|
||||||
|
styleClass: 'system-status-icon system-monitor-placeholder',
|
||||||
|
});
|
||||||
|
box.add_child(this._placeholder);
|
||||||
|
|
||||||
|
this._cpuSection = new CpuSection();
|
||||||
|
this._settings.bind('show-cpu',
|
||||||
|
this._cpuSection, 'visible',
|
||||||
|
Gio.SettingsBindFlags.GET);
|
||||||
|
box.add_child(this._cpuSection);
|
||||||
|
|
||||||
|
this._memSection = new MemSection();
|
||||||
|
this._settings.bind('show-memory',
|
||||||
|
this._memSection, 'visible',
|
||||||
|
Gio.SettingsBindFlags.GET);
|
||||||
|
box.add_child(this._memSection);
|
||||||
|
|
||||||
|
this._swapSection = new SwapSection();
|
||||||
|
this._settings.bind('show-swap',
|
||||||
|
this._swapSection, 'visible',
|
||||||
|
Gio.SettingsBindFlags.GET);
|
||||||
|
box.add_child(this._swapSection);
|
||||||
|
|
||||||
|
this._ulSection = new UploadSection();
|
||||||
|
this._settings.bind('show-upload',
|
||||||
|
this._ulSection, 'visible',
|
||||||
|
Gio.SettingsBindFlags.GET);
|
||||||
|
box.add_child(this._ulSection);
|
||||||
|
|
||||||
|
this._dlSection = new DownloadSection();
|
||||||
|
this._settings.bind('show-download',
|
||||||
|
this._dlSection, 'visible',
|
||||||
|
Gio.SettingsBindFlags.GET);
|
||||||
|
box.add_child(this._dlSection);
|
||||||
|
|
||||||
|
this.menu.addMenuItem(
|
||||||
|
new PopupMenu.PopupSeparatorMenuItem(_('Show')));
|
||||||
|
|
||||||
|
this._cpuItem = this.menu.addAction(_('CPU'),
|
||||||
|
() => this._toggleSettings('show-cpu'));
|
||||||
|
this._memItem = this.menu.addAction(_('Memory'),
|
||||||
|
() => this._toggleSettings('show-memory'));
|
||||||
|
this._swapItem = this.menu.addAction(_('Swap'),
|
||||||
|
() => this._toggleSettings('show-swap'));
|
||||||
|
this._ulItem = this.menu.addAction(_('Upload'),
|
||||||
|
() => this._toggleSettings('show-upload'));
|
||||||
|
this._dlItem = this.menu.addAction(_('Download'),
|
||||||
|
() => this._toggleSettings('show-download'));
|
||||||
|
|
||||||
|
this.menu.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
|
||||||
|
|
||||||
|
this._appMenuItem = this.menu.addAction(_('Open System Monitor'),
|
||||||
|
() => this._openSystemMonitor());
|
||||||
|
|
||||||
|
const appSystem = Shell.AppSystem.get_default();
|
||||||
|
appSystem.connectObject('installed-changed',
|
||||||
|
() => this._updateSystemMonitorApp(), this);
|
||||||
|
this._updateSystemMonitorApp();
|
||||||
|
|
||||||
|
this._settings.connectObject('changed',
|
||||||
|
() => this._sync(), this);
|
||||||
|
this._sync();
|
||||||
|
}
|
||||||
|
|
||||||
|
_updateSystemMonitorApp() {
|
||||||
|
const appSystem = Shell.AppSystem.get_default();
|
||||||
|
this._systemMonitorApp =
|
||||||
|
appSystem.lookup_app('gnome-system-monitor.desktop');
|
||||||
|
this._placeholder.gicon = this._systemMonitorApp?.icon ?? null;
|
||||||
|
this.visible = this._systemMonitorApp != null;
|
||||||
|
}
|
||||||
|
|
||||||
|
_openSystemMonitor() {
|
||||||
|
this._systemMonitorApp.activate();
|
||||||
|
Main.overview.hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
_toggleSettings(key) {
|
||||||
|
this._settings.set_boolean(key, !this._settings.get_boolean(key));
|
||||||
|
}
|
||||||
|
|
||||||
|
_sync() {
|
||||||
|
this._cpuItem.setOrnament(this._settings.get_boolean('show-cpu')
|
||||||
|
? PopupMenu.Ornament.CHECK
|
||||||
|
: PopupMenu.Ornament.NONE);
|
||||||
|
this._memItem.setOrnament(this._settings.get_boolean('show-memory')
|
||||||
|
? PopupMenu.Ornament.CHECK
|
||||||
|
: PopupMenu.Ornament.NONE);
|
||||||
|
this._swapItem.setOrnament(this._settings.get_boolean('show-swap')
|
||||||
|
? PopupMenu.Ornament.CHECK
|
||||||
|
: PopupMenu.Ornament.NONE);
|
||||||
|
this._ulItem.setOrnament(this._settings.get_boolean('show-upload')
|
||||||
|
? PopupMenu.Ornament.CHECK
|
||||||
|
: PopupMenu.Ornament.NONE);
|
||||||
|
this._dlItem.setOrnament(this._settings.get_boolean('show-download')
|
||||||
|
? PopupMenu.Ornament.CHECK
|
||||||
|
: PopupMenu.Ornament.NONE);
|
||||||
|
|
||||||
|
this._placeholder.visible =
|
||||||
|
this._settings.list_keys().every(key => !this._settings.get_boolean(key));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export default class SystemMonitorExtension extends Extension {
|
||||||
|
enable() {
|
||||||
|
this._indicator = new Indicator(this.getSettings());
|
||||||
|
Main.panel.addToStatusArea(this.uuid, this._indicator);
|
||||||
|
}
|
||||||
|
|
||||||
|
disable() {
|
||||||
|
this._indicator.destroy();
|
||||||
|
this._indicator = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<filter id="a" height="100%" width="100%" x="0%" y="0%">
|
||||||
|
<feColorMatrix color-interpolation-filters="sRGB" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0"/>
|
||||||
|
</filter>
|
||||||
|
<mask id="b">
|
||||||
|
<g filter="url(#a)">
|
||||||
|
<path d="m -1.6 -1.6 h 19.2 v 19.2 h -19.2 z" fill-opacity="0.5"/>
|
||||||
|
</g>
|
||||||
|
</mask>
|
||||||
|
<clipPath id="c">
|
||||||
|
<path d="m 0 0 h 1600 v 1200 h -1600 z"/>
|
||||||
|
</clipPath>
|
||||||
|
<mask id="d">
|
||||||
|
<g filter="url(#a)">
|
||||||
|
<path d="m -1.6 -1.6 h 19.2 v 19.2 h -19.2 z" fill-opacity="0.7"/>
|
||||||
|
</g>
|
||||||
|
</mask>
|
||||||
|
<clipPath id="e">
|
||||||
|
<path d="m 0 0 h 1600 v 1200 h -1600 z"/>
|
||||||
|
</clipPath>
|
||||||
|
<mask id="f">
|
||||||
|
<g filter="url(#a)">
|
||||||
|
<path d="m -1.6 -1.6 h 19.2 v 19.2 h -19.2 z" fill-opacity="0.35"/>
|
||||||
|
</g>
|
||||||
|
</mask>
|
||||||
|
<clipPath id="g">
|
||||||
|
<path d="m 0 0 h 1600 v 1200 h -1600 z"/>
|
||||||
|
</clipPath>
|
||||||
|
<g mask="url(#b)">
|
||||||
|
<g clip-path="url(#c)" transform="matrix(1 0 0 1 -920 -120)">
|
||||||
|
<path d="m 550 182 c -0.351562 0.003906 -0.695312 0.101562 -1 0.28125 v 3.4375 c 0.304688 0.179688 0.648438 0.277344 1 0.28125 c 1.105469 0 2 -0.894531 2 -2 s -0.894531 -2 -2 -2 z m 0 5 c -0.339844 0 -0.679688 0.058594 -1 0.175781 v 6.824219 h 4 v -4 c 0 -1.65625 -1.34375 -3 -3 -3 z m 0 0"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g mask="url(#d)">
|
||||||
|
<g clip-path="url(#e)" transform="matrix(1 0 0 1 -920 -120)">
|
||||||
|
<path d="m 569 182 v 4 c 1.105469 0 2 -0.894531 2 -2 s -0.894531 -2 -2 -2 z m 0 5 v 7 h 3 v -4 c 0 -1.65625 -1.34375 -3 -3 -3 z m 0 0"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g mask="url(#f)">
|
||||||
|
<g clip-path="url(#g)" transform="matrix(1 0 0 1 -920 -120)">
|
||||||
|
<path d="m 573 182.269531 v 3.449219 c 0.613281 -0.355469 0.996094 -1.007812 1 -1.71875 c 0 -0.714844 -0.382812 -1.375 -1 -1.730469 z m 0 4.90625 v 6.824219 h 2 v -4 c 0 -1.269531 -0.800781 -2.402344 -2 -2.824219 z m 0 0"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<path d="m 7.984375 1 c -0.550781 0 -1 0.449219 -1 1 v 8.585938 l -2.292969 -2.292969 c -0.1875 -0.1875 -0.441406 -0.292969 -0.707031 -0.292969 s -0.519531 0.105469 -0.707031 0.292969 c -0.390625 0.390625 -0.390625 1.023437 0 1.414062 l 4 4 c 0.390625 0.390625 1.023437 0.390625 1.414062 0 l 4 -4 c 0.390625 -0.390625 0.390625 -1.023437 0 -1.414062 s -1.023437 -0.390625 -1.414062 0 l -2.292969 2.292969 v -8.585938 c 0 -0.550781 -0.445313 -1 -1 -1 z m 0 0"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.5 KiB |
@@ -0,0 +1,3 @@
|
|||||||
|
SPDX-FileCopyrightText: Icon Development Kit
|
||||||
|
|
||||||
|
SPDX-License-Identifier: CC0-1.0
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" height="16px" viewBox="0 0 16 16" width="16px"><path d="m 3 2 c -1.660156 0 -3 1.339844 -3 3 v 4 c 0 1.660156 1.339844 3 3 3 h 10 c 1.660156 0 3 -1.339844 3 -3 v -4 c 0 -1.660156 -1.339844 -3 -3 -3 z m 0 2 h 10 c 0.554688 0 1 0.445312 1 1 v 4 c 0 0.554688 -0.445312 1 -1 1 h -10 c -0.554688 0 -1 -0.445312 -1 -1 v -4 c 0 -0.554688 0.445312 -1 1 -1 z m 0 0"/><path d="m 2 10 h 12 v 4 h -12 z m 0 0"/><g fill-opacity="0.501961"><path d="m 4 5 h 2 v 4 h -2 z m 0 0"/><path d="m 7 5 h 2 v 4 h -2 z m 0 0"/><path d="m 10 5 h 2 v 4 h -2 z m 0 0"/></g></svg>
|
||||||
|
After Width: | Height: | Size: 631 B |
@@ -0,0 +1,3 @@
|
|||||||
|
SPDX-FileCopyrightText: Icon Development Kit
|
||||||
|
|
||||||
|
SPDX-License-Identifier: CC0-1.0
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" height="16px" viewBox="0 0 16 16" width="16px"><path d="m 5 5 h 6 v 6 h -6 z m 0 0"/><path d="m 13 5 h 3 v 1 h -3 z m 0 0"/><path d="m 13 7 h 3 v 1 h -3 z m 0 0"/><path d="m 13 9 h 3 v 1 h -3 z m 0 0"/><path d="m 0 6 h 3 v 1 h -3 z m 0 0"/><path d="m 0 8 h 3 v 1 h -3 z m 0 0"/><path d="m 0 10 h 3 v 1 h -3 z m 0 0"/><path d="m 5 0 h 1 v 3 h -1 z m 0 0"/><path d="m 7 0 h 1 v 3 h -1 z m 0 0"/><path d="m 9 0 h 1 v 3 h -1 z m 0 0"/><path d="m 10 13 h 1 v 3 h -1 z m 0 0"/><path d="m 8 13 h 1 v 3 h -1 z m 0 0"/><path d="m 6 13 h 1 v 3 h -1 z m 0 0"/><path d="m 5 2 c -1.644531 0 -3 1.355469 -3 3 v 6 c 0 1.644531 1.355469 3 3 3 h 6 c 1.644531 0 3 -1.355469 3 -3 v -6 c 0 -1.644531 -1.355469 -3 -3 -3 z m 0 2 h 6 c 0.570312 0 1 0.429688 1 1 v 6 c 0 0.570312 -0.429688 1 -1 1 h -6 c -0.570312 0 -1 -0.429688 -1 -1 v -6 c 0 -0.570312 0.429688 -1 1 -1 z m 0 0"/></svg>
|
||||||
|
After Width: | Height: | Size: 943 B |
@@ -0,0 +1,3 @@
|
|||||||
|
SPDX-FileCopyrightText: Icon Development Kit
|
||||||
|
|
||||||
|
SPDX-License-Identifier: CC0-1.0
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" height="16px" viewBox="0 0 16 16" width="16px"><path d="m 5 7 c -0.308594 0 -0.613281 0.089844 -0.8125 0.28125 l -3.59375 3.71875 l 3.65625 3.71875 c 0.199219 0.191406 0.441406 0.28125 0.75 0.28125 h 1 v -1 c 0 -0.257812 -0.128906 -0.527344 -0.3125 -0.71875 l -1.28125 -1.28125 h 4.59375 c 0.527344 0.007812 1 -0.472656 1 -1 s -0.472656 -1.007812 -1 -1 h -4.625 l 1.21875 -1.28125 c 0.183594 -0.191406 0.40625 -0.460938 0.40625 -0.71875 v -1 z m 0 0"/><path d="m 11 9 c 0.308594 0 0.613281 -0.089844 0.8125 -0.28125 l 3.59375 -3.71875 l -3.65625 -3.71875 c -0.199219 -0.191406 -0.441406 -0.28125 -0.75 -0.28125 h -1 v 1 c 0 0.257812 0.128906 0.527344 0.3125 0.71875 l 1.28125 1.28125 h -4.59375 c -0.527344 -0.007812 -1 0.472656 -1 1 s 0.472656 1.007812 1 1 h 4.625 l -1.21875 1.28125 c -0.183594 0.191406 -0.40625 0.460938 -0.40625 0.71875 v 1 z m 0 0"/></svg>
|
||||||
|
After Width: | Height: | Size: 941 B |
@@ -0,0 +1,3 @@
|
|||||||
|
SPDX-FileCopyrightText: Icon Development Kit
|
||||||
|
|
||||||
|
SPDX-License-Identifier: CC0-1.0
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<filter id="a" height="100%" width="100%" x="0%" y="0%">
|
||||||
|
<feColorMatrix color-interpolation-filters="sRGB" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0"/>
|
||||||
|
</filter>
|
||||||
|
<mask id="b">
|
||||||
|
<g filter="url(#a)">
|
||||||
|
<path d="m -1.6 -1.6 h 19.2 v 19.2 h -19.2 z" fill-opacity="0.5"/>
|
||||||
|
</g>
|
||||||
|
</mask>
|
||||||
|
<clipPath id="c">
|
||||||
|
<path d="m 0 0 h 1600 v 1200 h -1600 z"/>
|
||||||
|
</clipPath>
|
||||||
|
<mask id="d">
|
||||||
|
<g filter="url(#a)">
|
||||||
|
<path d="m -1.6 -1.6 h 19.2 v 19.2 h -19.2 z" fill-opacity="0.7"/>
|
||||||
|
</g>
|
||||||
|
</mask>
|
||||||
|
<clipPath id="e">
|
||||||
|
<path d="m 0 0 h 1600 v 1200 h -1600 z"/>
|
||||||
|
</clipPath>
|
||||||
|
<mask id="f">
|
||||||
|
<g filter="url(#a)">
|
||||||
|
<path d="m -1.6 -1.6 h 19.2 v 19.2 h -19.2 z" fill-opacity="0.35"/>
|
||||||
|
</g>
|
||||||
|
</mask>
|
||||||
|
<clipPath id="g">
|
||||||
|
<path d="m 0 0 h 1600 v 1200 h -1600 z"/>
|
||||||
|
</clipPath>
|
||||||
|
<g mask="url(#b)">
|
||||||
|
<g clip-path="url(#c)" transform="matrix(1 0 0 1 -900 -120)">
|
||||||
|
<path d="m 550 182 c -0.351562 0.003906 -0.695312 0.101562 -1 0.28125 v 3.4375 c 0.304688 0.179688 0.648438 0.277344 1 0.28125 c 1.105469 0 2 -0.894531 2 -2 s -0.894531 -2 -2 -2 z m 0 5 c -0.339844 0 -0.679688 0.058594 -1 0.175781 v 6.824219 h 4 v -4 c 0 -1.65625 -1.34375 -3 -3 -3 z m 0 0"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g mask="url(#d)">
|
||||||
|
<g clip-path="url(#e)" transform="matrix(1 0 0 1 -900 -120)">
|
||||||
|
<path d="m 569 182 v 4 c 1.105469 0 2 -0.894531 2 -2 s -0.894531 -2 -2 -2 z m 0 5 v 7 h 3 v -4 c 0 -1.65625 -1.34375 -3 -3 -3 z m 0 0"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g mask="url(#f)">
|
||||||
|
<g clip-path="url(#g)" transform="matrix(1 0 0 1 -900 -120)">
|
||||||
|
<path d="m 573 182.269531 v 3.449219 c 0.613281 -0.355469 0.996094 -1.007812 1 -1.71875 c 0 -0.714844 -0.382812 -1.375 -1 -1.730469 z m 0 4.90625 v 6.824219 h 2 v -4 c 0 -1.269531 -0.800781 -2.402344 -2 -2.824219 z m 0 0"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<path d="m 8.015625 15 c 0.550781 0 1 -0.449219 1 -1 v -8.585938 l 2.292969 2.292969 c 0.1875 0.1875 0.441406 0.292969 0.707031 0.292969 s 0.519531 -0.105469 0.707031 -0.292969 c 0.390625 -0.390625 0.390625 -1.023437 0 -1.414062 l -4 -4 c -0.390625 -0.390625 -1.023437 -0.390625 -1.414062 0 l -4 4 c -0.390625 0.390625 -0.390625 1.023437 0 1.414062 s 1.023437 0.390625 1.414062 0 l 2.292969 -2.292969 v 8.585938 c 0 0.550781 0.445313 1 1 1 z m 0 0"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.5 KiB |
@@ -0,0 +1,3 @@
|
|||||||
|
SPDX-FileCopyrightText: Icon Development Kit
|
||||||
|
|
||||||
|
SPDX-License-Identifier: CC0-1.0
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
# SPDX-FileCopyrightText: 2017 Florian Müllner <fmuellner@gnome.org>
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
extension_data += configure_file(
|
||||||
|
input: metadata_name + '.in',
|
||||||
|
output: metadata_name,
|
||||||
|
configuration: metadata_conf
|
||||||
|
)
|
||||||
|
|
||||||
|
extension_data += files('stylesheet.css')
|
||||||
|
extension_schemas += files('schemas/' + metadata_conf.get('gschemaname') + '.gschema.xml')
|
||||||
|
|
||||||
|
install_subdir('icons', install_dir: join_paths(extensiondir, uuid))
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"extension-id": "@extension_id@",
|
||||||
|
"uuid": "@uuid@",
|
||||||
|
"settings-schema": "@gschemaname@",
|
||||||
|
"gettext-domain": "@gettext_domain@",
|
||||||
|
"name": "System Monitor",
|
||||||
|
"description": "Monitor system from the top bar",
|
||||||
|
"shell-version": [ "@shell_current@" ],
|
||||||
|
"url": "@url@"
|
||||||
|
}
|
||||||
+31
@@ -0,0 +1,31 @@
|
|||||||
|
<!--
|
||||||
|
SPDX-FileCopyrightText: 2023 Florian Müllner <fmuellner@gnome.org>
|
||||||
|
|
||||||
|
SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
-->
|
||||||
|
|
||||||
|
<schemalist gettext-domain="gnome-shell-extensions">
|
||||||
|
<schema id="org.gnome.shell.extensions.system-monitor"
|
||||||
|
path="/org/gnome/shell/extensions/system-monitor/">
|
||||||
|
<key name="show-cpu" type="b">
|
||||||
|
<default>true</default>
|
||||||
|
<summary>Show CPU usage</summary>
|
||||||
|
</key>
|
||||||
|
<key name="show-memory" type="b">
|
||||||
|
<default>true</default>
|
||||||
|
<summary>Show memory usage</summary>
|
||||||
|
</key>
|
||||||
|
<key name="show-swap" type="b">
|
||||||
|
<default>true</default>
|
||||||
|
<summary>Show swap usage</summary>
|
||||||
|
</key>
|
||||||
|
<key name="show-upload" type="b">
|
||||||
|
<default>true</default>
|
||||||
|
<summary>Show upload</summary>
|
||||||
|
</key>
|
||||||
|
<key name="show-download" type="b">
|
||||||
|
<default>true</default>
|
||||||
|
<summary>Show download</summary>
|
||||||
|
</key>
|
||||||
|
</schema>
|
||||||
|
</schemalist>
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2023 Florian Müllner <fmuellner@gnome.org>
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
*/
|
||||||
|
|
||||||
|
.system-monitor-stat-section {
|
||||||
|
padding: 0 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.system-monitor-stat-section-icon {icon-size: 1.08em;}
|
||||||
|
.system-monitor-stat-section-label {
|
||||||
|
min-width: 3.0em;
|
||||||
|
font-size: 0.9em;
|
||||||
|
}
|
||||||
|
.system-monitor-placeholder {-st-icon-style: symbolic;}
|
||||||
|
|
||||||
|
.panel-button .high-usage {color: #ff7800;}
|
||||||
@@ -17,10 +17,8 @@ import {Extension, gettext as _} from 'resource:///org/gnome/shell/extensions/ex
|
|||||||
|
|
||||||
import * as DND from 'resource:///org/gnome/shell/ui/dnd.js';
|
import * as DND from 'resource:///org/gnome/shell/ui/dnd.js';
|
||||||
import * as Main from 'resource:///org/gnome/shell/ui/main.js';
|
import * as Main from 'resource:///org/gnome/shell/ui/main.js';
|
||||||
import * as Overview from 'resource:///org/gnome/shell/ui/overview.js';
|
|
||||||
import * as PopupMenu from 'resource:///org/gnome/shell/ui/popupMenu.js';
|
import * as PopupMenu from 'resource:///org/gnome/shell/ui/popupMenu.js';
|
||||||
|
|
||||||
import {WindowPicker, WindowPickerToggle} from './windowPicker.js';
|
|
||||||
import {WorkspaceIndicator} from './workspaceIndicator.js';
|
import {WorkspaceIndicator} from './workspaceIndicator.js';
|
||||||
|
|
||||||
const ICON_TEXTURE_SIZE = 24;
|
const ICON_TEXTURE_SIZE = 24;
|
||||||
@@ -123,10 +121,10 @@ class WindowTitle extends St.BoxLayout {
|
|||||||
this._metaWindow = metaWindow;
|
this._metaWindow = metaWindow;
|
||||||
|
|
||||||
this._icon = new St.Bin({style_class: 'window-button-icon'});
|
this._icon = new St.Bin({style_class: 'window-button-icon'});
|
||||||
this.add(this._icon);
|
this.add_child(this._icon);
|
||||||
this.label_actor = new St.Label({y_align: Clutter.ActorAlign.CENTER});
|
this.label_actor = new St.Label({y_align: Clutter.ActorAlign.CENTER});
|
||||||
this.label_actor.clutter_text.single_line_mode = true;
|
this.label_actor.clutter_text.single_line_mode = true;
|
||||||
this.add(this.label_actor);
|
this.add_child(this.label_actor);
|
||||||
|
|
||||||
this._textureCache = St.TextureCache.get_default();
|
this._textureCache = St.TextureCache.get_default();
|
||||||
this._textureCache.connectObject('icon-theme-changed',
|
this._textureCache.connectObject('icon-theme-changed',
|
||||||
@@ -412,7 +410,7 @@ class WindowButton extends BaseButton {
|
|||||||
this._onMenuStateChanged.bind(this));
|
this._onMenuStateChanged.bind(this));
|
||||||
this._contextMenu.actor.hide();
|
this._contextMenu.actor.hide();
|
||||||
this._contextMenuManager.addMenu(this._contextMenu);
|
this._contextMenuManager.addMenu(this._contextMenu);
|
||||||
Main.uiGroup.add_actor(this._contextMenu.actor);
|
Main.uiGroup.add_child(this._contextMenu.actor);
|
||||||
|
|
||||||
global.display.connectObject('notify::focus-window',
|
global.display.connectObject('notify::focus-window',
|
||||||
() => this._updateStyle(), this);
|
() => this._updateStyle(), this);
|
||||||
@@ -538,25 +536,25 @@ class AppButton extends BaseButton {
|
|||||||
this._singleWindowTitle = new St.Bin({
|
this._singleWindowTitle = new St.Bin({
|
||||||
x_expand: true,
|
x_expand: true,
|
||||||
});
|
});
|
||||||
stack.add_actor(this._singleWindowTitle);
|
stack.add_child(this._singleWindowTitle);
|
||||||
|
|
||||||
this._multiWindowTitle = new St.BoxLayout({
|
this._multiWindowTitle = new St.BoxLayout({
|
||||||
style_class: 'window-button-box',
|
style_class: 'window-button-box',
|
||||||
x_expand: true,
|
x_expand: true,
|
||||||
});
|
});
|
||||||
stack.add_actor(this._multiWindowTitle);
|
stack.add_child(this._multiWindowTitle);
|
||||||
|
|
||||||
this._icon = new St.Bin({
|
this._icon = new St.Bin({
|
||||||
style_class: 'window-button-icon',
|
style_class: 'window-button-icon',
|
||||||
child: app.create_icon_texture(ICON_TEXTURE_SIZE),
|
child: app.create_icon_texture(ICON_TEXTURE_SIZE),
|
||||||
});
|
});
|
||||||
this._multiWindowTitle.add(this._icon);
|
this._multiWindowTitle.add_child(this._icon);
|
||||||
|
|
||||||
let label = new St.Label({
|
let label = new St.Label({
|
||||||
text: app.get_name(),
|
text: app.get_name(),
|
||||||
y_align: Clutter.ActorAlign.CENTER,
|
y_align: Clutter.ActorAlign.CENTER,
|
||||||
});
|
});
|
||||||
this._multiWindowTitle.add(label);
|
this._multiWindowTitle.add_child(label);
|
||||||
this._multiWindowTitle.label_actor = label;
|
this._multiWindowTitle.label_actor = label;
|
||||||
|
|
||||||
this._menuManager = new PopupMenu.PopupMenuManager(this);
|
this._menuManager = new PopupMenu.PopupMenuManager(this);
|
||||||
@@ -566,13 +564,13 @@ class AppButton extends BaseButton {
|
|||||||
this._menu.actor.hide();
|
this._menu.actor.hide();
|
||||||
this._menu.connect('activate', this._onMenuActivate.bind(this));
|
this._menu.connect('activate', this._onMenuActivate.bind(this));
|
||||||
this._menuManager.addMenu(this._menu);
|
this._menuManager.addMenu(this._menu);
|
||||||
Main.uiGroup.add_actor(this._menu.actor);
|
Main.uiGroup.add_child(this._menu.actor);
|
||||||
|
|
||||||
this._appContextMenu = new AppContextMenu(this);
|
this._appContextMenu = new AppContextMenu(this);
|
||||||
this._appContextMenu.connect('open-state-changed',
|
this._appContextMenu.connect('open-state-changed',
|
||||||
this._onMenuStateChanged.bind(this));
|
this._onMenuStateChanged.bind(this));
|
||||||
this._appContextMenu.actor.hide();
|
this._appContextMenu.actor.hide();
|
||||||
Main.uiGroup.add_actor(this._appContextMenu.actor);
|
Main.uiGroup.add_child(this._appContextMenu.actor);
|
||||||
|
|
||||||
this._textureCache = St.TextureCache.get_default();
|
this._textureCache = St.TextureCache.get_default();
|
||||||
this._textureCache.connectObject('icon-theme-changed', () => {
|
this._textureCache.connectObject('icon-theme-changed', () => {
|
||||||
@@ -637,7 +635,7 @@ class AppButton extends BaseButton {
|
|||||||
this._windowContextMenu = new WindowContextMenu(this, this.metaWindow);
|
this._windowContextMenu = new WindowContextMenu(this, this.metaWindow);
|
||||||
this._windowContextMenu.connect(
|
this._windowContextMenu.connect(
|
||||||
'open-state-changed', this._onMenuStateChanged.bind(this));
|
'open-state-changed', this._onMenuStateChanged.bind(this));
|
||||||
Main.uiGroup.add_actor(this._windowContextMenu.actor);
|
Main.uiGroup.add_child(this._windowContextMenu.actor);
|
||||||
this._windowContextMenu.actor.hide();
|
this._windowContextMenu.actor.hide();
|
||||||
this._contextMenuManager.addMenu(this._windowContextMenu);
|
this._contextMenuManager.addMenu(this._windowContextMenu);
|
||||||
}
|
}
|
||||||
@@ -682,7 +680,7 @@ class AppButton extends BaseButton {
|
|||||||
for (let i = 0; i < windows.length; i++) {
|
for (let i = 0; i < windows.length; i++) {
|
||||||
let windowTitle = new WindowTitle(windows[i]);
|
let windowTitle = new WindowTitle(windows[i]);
|
||||||
let item = new PopupMenu.PopupBaseMenuItem();
|
let item = new PopupMenu.PopupBaseMenuItem();
|
||||||
item.add_actor(windowTitle);
|
item.add_child(windowTitle);
|
||||||
item._window = windows[i];
|
item._window = windows[i];
|
||||||
this._menu.addMenuItem(item);
|
this._menu.addMenuItem(item);
|
||||||
}
|
}
|
||||||
@@ -728,13 +726,7 @@ class WindowList extends St.Widget {
|
|||||||
this._monitor = monitor;
|
this._monitor = monitor;
|
||||||
|
|
||||||
let box = new St.BoxLayout({x_expand: true, y_expand: true});
|
let box = new St.BoxLayout({x_expand: true, y_expand: true});
|
||||||
this.add_actor(box);
|
this.add_child(box);
|
||||||
|
|
||||||
let toggle = new WindowPickerToggle();
|
|
||||||
box.add_actor(toggle);
|
|
||||||
|
|
||||||
toggle.connect('notify::checked',
|
|
||||||
this._updateWindowListVisibility.bind(this));
|
|
||||||
|
|
||||||
let layout = new Clutter.BoxLayout({homogeneous: true});
|
let layout = new Clutter.BoxLayout({homogeneous: true});
|
||||||
this._windowList = new St.Widget({
|
this._windowList = new St.Widget({
|
||||||
@@ -755,7 +747,7 @@ class WindowList extends St.Widget {
|
|||||||
this._windowList.connect('scroll-event', this._onScrollEvent.bind(this));
|
this._windowList.connect('scroll-event', this._onScrollEvent.bind(this));
|
||||||
|
|
||||||
let indicatorsBox = new St.BoxLayout({x_align: Clutter.ActorAlign.END});
|
let indicatorsBox = new St.BoxLayout({x_align: Clutter.ActorAlign.END});
|
||||||
box.add(indicatorsBox);
|
box.add_child(indicatorsBox);
|
||||||
|
|
||||||
this._workspaceIndicator = new WorkspaceIndicator();
|
this._workspaceIndicator = new WorkspaceIndicator();
|
||||||
indicatorsBox.add_child(this._workspaceIndicator.container);
|
indicatorsBox.add_child(this._workspaceIndicator.container);
|
||||||
@@ -883,20 +875,6 @@ class WindowList extends St.Widget {
|
|||||||
this._workspaceIndicator.visible = hasWorkspaces && workspacesOnMonitor;
|
this._workspaceIndicator.visible = hasWorkspaces && workspacesOnMonitor;
|
||||||
}
|
}
|
||||||
|
|
||||||
_updateWindowListVisibility() {
|
|
||||||
const {windowPicker} = Extension.lookupByURL(import.meta.url);
|
|
||||||
const visible = !windowPicker.visible;
|
|
||||||
|
|
||||||
this._windowList.ease({
|
|
||||||
opacity: visible ? 255 : 0,
|
|
||||||
mode: Clutter.AnimationMode.EASE_OUT_QUAD,
|
|
||||||
duration: Overview.ANIMATION_TIME,
|
|
||||||
});
|
|
||||||
|
|
||||||
this._windowList.reactive = visible;
|
|
||||||
this._windowList.get_children().forEach(c => (c.reactive = visible));
|
|
||||||
}
|
|
||||||
|
|
||||||
_getPreferredUngroupedWindowListWidth() {
|
_getPreferredUngroupedWindowListWidth() {
|
||||||
if (this._windowList.get_n_children() === 0)
|
if (this._windowList.get_n_children() === 0)
|
||||||
return this._windowList.get_preferred_width(-1)[1];
|
return this._windowList.get_preferred_width(-1)[1];
|
||||||
@@ -1106,7 +1084,6 @@ export default class WindowListExtension extends Extension {
|
|||||||
super(metadata);
|
super(metadata);
|
||||||
|
|
||||||
this._windowLists = null;
|
this._windowLists = null;
|
||||||
this._hideOverviewOrig = Main.overview.hide;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
enable() {
|
enable() {
|
||||||
@@ -1119,13 +1096,6 @@ export default class WindowListExtension extends Extension {
|
|||||||
Main.layoutManager.connectObject('monitors-changed',
|
Main.layoutManager.connectObject('monitors-changed',
|
||||||
() => this._buildWindowLists(), this);
|
() => this._buildWindowLists(), this);
|
||||||
|
|
||||||
this.windowPicker = new WindowPicker();
|
|
||||||
|
|
||||||
Main.overview.hide = () => {
|
|
||||||
this.windowPicker.close();
|
|
||||||
this._hideOverviewOrig.call(Main.overview);
|
|
||||||
};
|
|
||||||
|
|
||||||
this._buildWindowLists();
|
this._buildWindowLists();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1154,11 +1124,6 @@ export default class WindowListExtension extends Extension {
|
|||||||
windowList.destroy();
|
windowList.destroy();
|
||||||
});
|
});
|
||||||
this._windowLists = null;
|
this._windowLists = null;
|
||||||
|
|
||||||
this.windowPicker.destroy();
|
|
||||||
delete this.windowPicker;
|
|
||||||
|
|
||||||
Main.overview.hide = this._hideOverviewOrig;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
someWindowListContains(actor) {
|
someWindowListContains(actor) {
|
||||||
|
|||||||
@@ -12,5 +12,5 @@ extension_data += files(
|
|||||||
'stylesheet-light.css'
|
'stylesheet-light.css'
|
||||||
)
|
)
|
||||||
|
|
||||||
extension_sources += files('prefs.js', 'windowPicker.js', 'workspaceIndicator.js')
|
extension_sources += files('prefs.js', 'workspaceIndicator.js')
|
||||||
extension_schemas += files(metadata_conf.get('gschemaname') + '.gschema.xml')
|
extension_schemas += files(metadata_conf.get('gschemaname') + '.gschema.xml')
|
||||||
|
|||||||
@@ -32,8 +32,7 @@
|
|||||||
spacing: 4px;
|
spacing: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.window-button > StWidget,
|
.window-button > StWidget {
|
||||||
.window-picker-toggle > StWidget {
|
|
||||||
color: #bbb;
|
color: #bbb;
|
||||||
background-color: #1d1d1d;
|
background-color: #1d1d1d;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
@@ -46,8 +45,7 @@
|
|||||||
max-width: 18.75em;
|
max-width: 18.75em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.window-button:hover > StWidget,
|
.window-button:hover > StWidget {
|
||||||
.window-picker-toggle:hover > StWidget {
|
|
||||||
color: #fff;
|
color: #fff;
|
||||||
background-color: #303030;
|
background-color: #303030;
|
||||||
}
|
}
|
||||||
@@ -58,14 +56,12 @@
|
|||||||
background-color: #3f3f3f;
|
background-color: #3f3f3f;
|
||||||
}
|
}
|
||||||
|
|
||||||
.window-button.focused > StWidget,
|
.window-button.focused > StWidget {
|
||||||
.window-picker-toggle:checked > StWidget {
|
|
||||||
color: #fff;
|
color: #fff;
|
||||||
background-color: #3f3f3f;
|
background-color: #3f3f3f;
|
||||||
}
|
}
|
||||||
|
|
||||||
.window-button.focused:active > StWidget,
|
.window-button.focused:active > StWidget {
|
||||||
.window-picker-toggle:checked:active > StWidget {
|
|
||||||
color: #fff;
|
color: #fff;
|
||||||
background-color: #3f3f3f;
|
background-color: #3f3f3f;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,8 +13,7 @@
|
|||||||
height: 2.5em;
|
height: 2.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bottom-panel .window-button > StWidget,
|
.bottom-panel .window-button > StWidget {
|
||||||
.bottom-panel .window-picker-toggle > StWidget {
|
|
||||||
color: #2e3436;
|
color: #2e3436;
|
||||||
background-color: #eee;
|
background-color: #eee;
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
@@ -29,8 +28,7 @@
|
|||||||
max-width: 18.75em;
|
max-width: 18.75em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bottom-panel .window-button:hover > StWidget,
|
.bottom-panel .window-button:hover > StWidget {
|
||||||
.bottom-panel .window-picker-toggle:hover > StWidget {
|
|
||||||
background-color: #f9f9f9;
|
background-color: #f9f9f9;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -39,8 +37,7 @@
|
|||||||
box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
|
box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
|
||||||
}
|
}
|
||||||
|
|
||||||
.bottom-panel .window-button.focused > StWidget,
|
.bottom-panel .window-button.focused > StWidget {
|
||||||
.bottom-panel .window-picker-toggle:checked > StWidget {
|
|
||||||
background-color: #ccc;
|
background-color: #ccc;
|
||||||
box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
|
box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,342 +0,0 @@
|
|||||||
// SPDX-FileCopyrightText: 2019 Florian Müllner <fmuellner@gnome.org>
|
|
||||||
// SPDX-FileCopyrightText: 2019 Marco Trevisan (Treviño) <mail@3v1n0.net>
|
|
||||||
//
|
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
||||||
|
|
||||||
import Clutter from 'gi://Clutter';
|
|
||||||
import GObject from 'gi://GObject';
|
|
||||||
import Shell from 'gi://Shell';
|
|
||||||
import St from 'gi://St';
|
|
||||||
|
|
||||||
import {Extension, InjectionManager} from 'resource:///org/gnome/shell/extensions/extension.js';
|
|
||||||
import * as Layout from 'resource:///org/gnome/shell/ui/layout.js';
|
|
||||||
import * as Main from 'resource:///org/gnome/shell/ui/main.js';
|
|
||||||
import {WorkspacesDisplay} from 'resource:///org/gnome/shell/ui/workspacesView.js';
|
|
||||||
import * as Workspace from 'resource:///org/gnome/shell/ui/workspace.js';
|
|
||||||
|
|
||||||
import {VIGNETTE_BRIGHTNESS} from 'resource:///org/gnome/shell/ui/lightbox.js';
|
|
||||||
import {
|
|
||||||
SIDE_CONTROLS_ANIMATION_TIME,
|
|
||||||
OverviewAdjustment,
|
|
||||||
ControlsState
|
|
||||||
} from 'resource:///org/gnome/shell/ui/overviewControls.js';
|
|
||||||
|
|
||||||
class MyWorkspacesDisplay extends WorkspacesDisplay {
|
|
||||||
static {
|
|
||||||
GObject.registerClass(this);
|
|
||||||
}
|
|
||||||
|
|
||||||
constructor(controls, overviewAdjustment) {
|
|
||||||
let workspaceManager = global.workspace_manager;
|
|
||||||
|
|
||||||
const workspaceAdjustment = new St.Adjustment({
|
|
||||||
value: workspaceManager.get_active_workspace_index(),
|
|
||||||
lower: 0,
|
|
||||||
page_increment: 1,
|
|
||||||
page_size: 1,
|
|
||||||
step_increment: 0,
|
|
||||||
upper: workspaceManager.n_workspaces,
|
|
||||||
});
|
|
||||||
|
|
||||||
super(controls, workspaceAdjustment, overviewAdjustment);
|
|
||||||
|
|
||||||
this._windowPicker = controls;
|
|
||||||
|
|
||||||
this._workspaceAdjustment = workspaceAdjustment;
|
|
||||||
this._workspaceAdjustment.actor = this;
|
|
||||||
|
|
||||||
workspaceManager.connectObject('notify::n-workspaces',
|
|
||||||
() => this._updateAdjustment(), this);
|
|
||||||
|
|
||||||
this.add_constraint(
|
|
||||||
new Layout.MonitorConstraint({
|
|
||||||
primary: true,
|
|
||||||
work_area: true,
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
|
|
||||||
prepareToEnterOverview(...args) {
|
|
||||||
if (!this._scrollEventId) {
|
|
||||||
this._scrollEventId = this._windowPicker.connect('scroll-event',
|
|
||||||
this._onScrollEvent.bind(this));
|
|
||||||
}
|
|
||||||
|
|
||||||
super.prepareToEnterOverview(...args);
|
|
||||||
}
|
|
||||||
|
|
||||||
vfunc_hide(...args) {
|
|
||||||
if (this._scrollEventId > 0)
|
|
||||||
this._windowPicker.disconnect(this._scrollEventId);
|
|
||||||
this._scrollEventId = 0;
|
|
||||||
|
|
||||||
super.vfunc_hide(...args);
|
|
||||||
}
|
|
||||||
|
|
||||||
_updateAdjustment() {
|
|
||||||
let workspaceManager = global.workspace_manager;
|
|
||||||
this._workspaceAdjustment.set({
|
|
||||||
upper: workspaceManager.n_workspaces,
|
|
||||||
value: workspaceManager.get_active_workspace_index(),
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class WindowPicker extends Clutter.Actor {
|
|
||||||
static [GObject.signals] = {
|
|
||||||
'open-state-changed': {param_types: [GObject.TYPE_BOOLEAN]},
|
|
||||||
};
|
|
||||||
|
|
||||||
static {
|
|
||||||
GObject.registerClass(this);
|
|
||||||
}
|
|
||||||
|
|
||||||
constructor() {
|
|
||||||
super({reactive: true});
|
|
||||||
|
|
||||||
this._visible = false;
|
|
||||||
this._modal = false;
|
|
||||||
|
|
||||||
this._stageKeyPressId = 0;
|
|
||||||
|
|
||||||
this._adjustment = new OverviewAdjustment(this);
|
|
||||||
|
|
||||||
this._injectionManager = new InjectionManager();
|
|
||||||
this.connect('destroy', this._onDestroy.bind(this));
|
|
||||||
|
|
||||||
global.bind_property('screen-width',
|
|
||||||
this, 'width',
|
|
||||||
GObject.BindingFlags.SYNC_CREATE);
|
|
||||||
global.bind_property('screen-height',
|
|
||||||
this, 'height',
|
|
||||||
GObject.BindingFlags.SYNC_CREATE);
|
|
||||||
|
|
||||||
this._workspacesDisplay = new MyWorkspacesDisplay(this, this._adjustment);
|
|
||||||
this.add_child(this._workspacesDisplay);
|
|
||||||
|
|
||||||
Main.uiGroup.insert_child_below(this, global.window_group);
|
|
||||||
|
|
||||||
if (!Main.sessionMode.hasOverview) {
|
|
||||||
this._injectBackgroundShade();
|
|
||||||
|
|
||||||
global.display.connectObject('overlay-key', () => {
|
|
||||||
if (!this._visible)
|
|
||||||
this.open();
|
|
||||||
else
|
|
||||||
this.close();
|
|
||||||
}, this);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
_injectBackgroundShade() {
|
|
||||||
const backgroundProto = Workspace.WorkspaceBackground.prototype;
|
|
||||||
this._injectionManager.overrideMethod(backgroundProto, '_updateBorderRadius',
|
|
||||||
() => {
|
|
||||||
return function () {};
|
|
||||||
});
|
|
||||||
this._injectionManager.overrideMethod(backgroundProto, 'vfunc_allocate',
|
|
||||||
() => {
|
|
||||||
/* eslint-disable no-invalid-this */
|
|
||||||
return function (box) {
|
|
||||||
this.set_allocation(box);
|
|
||||||
|
|
||||||
const themeNode = this.get_theme_node();
|
|
||||||
const contentBox = themeNode.get_content_box(box);
|
|
||||||
|
|
||||||
this._bin.allocate(contentBox);
|
|
||||||
|
|
||||||
const [contentWidth, contentHeight] = contentBox.get_size();
|
|
||||||
const monitor = Main.layoutManager.monitors[this._monitorIndex];
|
|
||||||
const xRatio = contentWidth / this._workarea.width;
|
|
||||||
const yRatio = contentHeight / this._workarea.height;
|
|
||||||
|
|
||||||
const right = area => area.x + area.width;
|
|
||||||
const bottom = area => area.y + area.height;
|
|
||||||
|
|
||||||
const offsets = {
|
|
||||||
left: xRatio * (this._workarea.x - monitor.x),
|
|
||||||
right: xRatio * (right(monitor) - right(this._workarea)),
|
|
||||||
top: yRatio * (this._workarea.y - monitor.y),
|
|
||||||
bottom: yRatio * (bottom(monitor) - bottom(this._workarea)),
|
|
||||||
};
|
|
||||||
|
|
||||||
contentBox.set_origin(-offsets.left, -offsets.top);
|
|
||||||
contentBox.set_size(
|
|
||||||
offsets.left + contentWidth + offsets.right,
|
|
||||||
offsets.top + contentHeight + offsets.bottom);
|
|
||||||
this._backgroundGroup.allocate(contentBox);
|
|
||||||
};
|
|
||||||
/* eslint-enable */
|
|
||||||
});
|
|
||||||
this._injectionManager.overrideMethod(backgroundProto, 'vfunc_parent_set',
|
|
||||||
() => {
|
|
||||||
/* eslint-disable no-invalid-this */
|
|
||||||
return function () {
|
|
||||||
setTimeout(() => {
|
|
||||||
const parent = this.get_parent();
|
|
||||||
if (!parent)
|
|
||||||
return;
|
|
||||||
|
|
||||||
parent._overviewAdjustment.connectObject('notify::value', () => {
|
|
||||||
const {value: progress} = parent._overviewAdjustment;
|
|
||||||
const brightness = 1 - (1 - VIGNETTE_BRIGHTNESS) * progress;
|
|
||||||
for (const bg of this._backgroundGroup ?? []) {
|
|
||||||
bg.content.set({
|
|
||||||
vignette: true,
|
|
||||||
brightness,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}, this);
|
|
||||||
});
|
|
||||||
};
|
|
||||||
/* eslint-enable */
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
get visible() {
|
|
||||||
return this._visible;
|
|
||||||
}
|
|
||||||
|
|
||||||
open() {
|
|
||||||
if (this._visible)
|
|
||||||
return;
|
|
||||||
|
|
||||||
this._visible = true;
|
|
||||||
|
|
||||||
if (!this._syncGrab())
|
|
||||||
return;
|
|
||||||
|
|
||||||
this._fakeOverviewVisible(true);
|
|
||||||
this._workspacesDisplay.prepareToEnterOverview();
|
|
||||||
Main.overview._animationInProgress = true;
|
|
||||||
|
|
||||||
this._adjustment.value = ControlsState.HIDDEN;
|
|
||||||
this._adjustment.ease(ControlsState.WINDOW_PICKER, {
|
|
||||||
duration: SIDE_CONTROLS_ANIMATION_TIME,
|
|
||||||
mode: Clutter.AnimationMode.EASE_OUT_QUAD,
|
|
||||||
onComplete: () => (Main.overview._animationInProgress = false),
|
|
||||||
});
|
|
||||||
|
|
||||||
this._stageKeyPressId = global.stage.connect('key-press-event',
|
|
||||||
(a, event) => {
|
|
||||||
let sym = event.get_key_symbol();
|
|
||||||
if (sym === Clutter.KEY_Escape) {
|
|
||||||
this.close();
|
|
||||||
return Clutter.EVENT_STOP;
|
|
||||||
}
|
|
||||||
return Clutter.EVENT_PROPAGATE;
|
|
||||||
});
|
|
||||||
|
|
||||||
this.emit('open-state-changed', this._visible);
|
|
||||||
}
|
|
||||||
|
|
||||||
close() {
|
|
||||||
if (!this._visible)
|
|
||||||
return;
|
|
||||||
|
|
||||||
this._visible = false;
|
|
||||||
|
|
||||||
if (!this._syncGrab())
|
|
||||||
return;
|
|
||||||
|
|
||||||
this._workspacesDisplay.prepareToLeaveOverview();
|
|
||||||
|
|
||||||
Main.overview._animationInProgress = true;
|
|
||||||
this._adjustment.ease(ControlsState.HIDDEN, {
|
|
||||||
duration: SIDE_CONTROLS_ANIMATION_TIME,
|
|
||||||
mode: Clutter.AnimationMode.EASE_OUT_QUAD,
|
|
||||||
onComplete: () => {
|
|
||||||
Main.overview._animationInProgress = false;
|
|
||||||
this._workspacesDisplay.hide();
|
|
||||||
this._fakeOverviewVisible(false);
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
global.stage.disconnect(this._stageKeyPressId);
|
|
||||||
this._stageKeyPressId = 0;
|
|
||||||
|
|
||||||
this.emit('open-state-changed', this._visible);
|
|
||||||
}
|
|
||||||
|
|
||||||
getWorkspacesBoxForState() {
|
|
||||||
return this.allocation;
|
|
||||||
}
|
|
||||||
|
|
||||||
_fakeOverviewVisible(visible) {
|
|
||||||
// Fake overview state for WorkspacesDisplay
|
|
||||||
Main.overview._visible = visible;
|
|
||||||
|
|
||||||
// Hide real windows
|
|
||||||
Main.layoutManager._inOverview = visible;
|
|
||||||
Main.layoutManager._updateVisibility();
|
|
||||||
}
|
|
||||||
|
|
||||||
_syncGrab() {
|
|
||||||
if (this._visible) {
|
|
||||||
if (this._modal)
|
|
||||||
return true;
|
|
||||||
|
|
||||||
const grab = Main.pushModal(global.stage, {
|
|
||||||
actionMode: Shell.ActionMode.OVERVIEW,
|
|
||||||
});
|
|
||||||
if (grab.get_seat_state() !== Clutter.GrabState.NONE) {
|
|
||||||
this._grab = grab;
|
|
||||||
this._modal = true;
|
|
||||||
} else {
|
|
||||||
Main.popModal(grab);
|
|
||||||
this.hide();
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
} else if (this._modal) {
|
|
||||||
Main.popModal(this._grab);
|
|
||||||
this._modal = false;
|
|
||||||
this._grab = null;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
_onDestroy() {
|
|
||||||
this._injectionManager.clear();
|
|
||||||
|
|
||||||
if (this._stageKeyPressId)
|
|
||||||
global.stage.disconnect(this._stageKeyPressId);
|
|
||||||
this._stageKeyPressId = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class WindowPickerToggle extends St.Button {
|
|
||||||
static {
|
|
||||||
GObject.registerClass(this);
|
|
||||||
}
|
|
||||||
|
|
||||||
constructor() {
|
|
||||||
let iconBin = new St.Widget({
|
|
||||||
layout_manager: new Clutter.BinLayout(),
|
|
||||||
});
|
|
||||||
iconBin.add_child(new St.Icon({
|
|
||||||
icon_name: 'focus-windows-symbolic',
|
|
||||||
icon_size: 16,
|
|
||||||
x_expand: true,
|
|
||||||
y_expand: true,
|
|
||||||
x_align: Clutter.ActorAlign.CENTER,
|
|
||||||
y_align: Clutter.ActorAlign.CENTER,
|
|
||||||
}));
|
|
||||||
super({
|
|
||||||
style_class: 'window-picker-toggle',
|
|
||||||
child: iconBin,
|
|
||||||
visible: !Main.sessionMode.hasOverview,
|
|
||||||
toggle_mode: true,
|
|
||||||
});
|
|
||||||
|
|
||||||
const {windowPicker} = Extension.lookupByURL(import.meta.url);
|
|
||||||
this.connect('notify::checked', () => {
|
|
||||||
if (this.checked)
|
|
||||||
windowPicker.open();
|
|
||||||
else
|
|
||||||
windowPicker.close();
|
|
||||||
});
|
|
||||||
|
|
||||||
windowPicker.connect('open-state-changed', () => {
|
|
||||||
this.checked = windowPicker.visible;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -261,7 +261,7 @@ export class WorkspaceIndicator extends PanelMenu.Button {
|
|||||||
x_expand: true,
|
x_expand: true,
|
||||||
y_expand: true,
|
y_expand: true,
|
||||||
});
|
});
|
||||||
this.add_actor(container);
|
this.add_child(container);
|
||||||
|
|
||||||
let workspaceManager = global.workspace_manager;
|
let workspaceManager = global.workspace_manager;
|
||||||
|
|
||||||
@@ -274,7 +274,7 @@ export class WorkspaceIndicator extends PanelMenu.Button {
|
|||||||
y_expand: true,
|
y_expand: true,
|
||||||
child: this._statusLabel,
|
child: this._statusLabel,
|
||||||
});
|
});
|
||||||
container.add_actor(this._statusBin);
|
container.add_child(this._statusBin);
|
||||||
|
|
||||||
this._thumbnailsBox = new St.BoxLayout({
|
this._thumbnailsBox = new St.BoxLayout({
|
||||||
style_class: 'workspaces-box',
|
style_class: 'workspaces-box',
|
||||||
@@ -283,7 +283,7 @@ export class WorkspaceIndicator extends PanelMenu.Button {
|
|||||||
});
|
});
|
||||||
this._thumbnailsBox.connect('scroll-event',
|
this._thumbnailsBox.connect('scroll-event',
|
||||||
this._onScrollEvent.bind(this));
|
this._onScrollEvent.bind(this));
|
||||||
container.add_actor(this._thumbnailsBox);
|
container.add_child(this._thumbnailsBox);
|
||||||
|
|
||||||
this._workspacesItems = [];
|
this._workspacesItems = [];
|
||||||
|
|
||||||
@@ -397,7 +397,7 @@ export class WorkspaceIndicator extends PanelMenu.Button {
|
|||||||
|
|
||||||
for (let i = 0; i < workspaceManager.n_workspaces; i++) {
|
for (let i = 0; i < workspaceManager.n_workspaces; i++) {
|
||||||
let thumb = new WorkspaceThumbnail(i);
|
let thumb = new WorkspaceThumbnail(i);
|
||||||
this._thumbnailsBox.add_actor(thumb);
|
this._thumbnailsBox.add_child(thumb);
|
||||||
}
|
}
|
||||||
this._updateActiveThumbnail();
|
this._updateActiveThumbnail();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ export default class Extension {
|
|||||||
style_class: 'extension-windowsNavigator-window-tooltip',
|
style_class: 'extension-windowsNavigator-window-tooltip',
|
||||||
visible: false,
|
visible: false,
|
||||||
});
|
});
|
||||||
this.add_actor(this._tip);
|
this.add_child(this._tip);
|
||||||
|
|
||||||
this.connect('notify::scale-x', () => {
|
this.connect('notify::scale-x', () => {
|
||||||
this._tip.set_scale(1 / this.scale_x, 1 / this.scale_x);
|
this._tip.set_scale(1 / this.scale_x, 1 / this.scale_x);
|
||||||
|
|||||||
@@ -263,7 +263,7 @@ class WorkspaceIndicator extends PanelMenu.Button {
|
|||||||
x_expand: true,
|
x_expand: true,
|
||||||
y_expand: true,
|
y_expand: true,
|
||||||
});
|
});
|
||||||
this.add_actor(container);
|
this.add_child(container);
|
||||||
|
|
||||||
let workspaceManager = global.workspace_manager;
|
let workspaceManager = global.workspace_manager;
|
||||||
|
|
||||||
@@ -274,7 +274,7 @@ class WorkspaceIndicator extends PanelMenu.Button {
|
|||||||
text: this._labelText(),
|
text: this._labelText(),
|
||||||
});
|
});
|
||||||
|
|
||||||
container.add_actor(this._statusLabel);
|
container.add_child(this._statusLabel);
|
||||||
|
|
||||||
this._thumbnailsBox = new St.BoxLayout({
|
this._thumbnailsBox = new St.BoxLayout({
|
||||||
style_class: 'panel-workspace-indicator-box',
|
style_class: 'panel-workspace-indicator-box',
|
||||||
@@ -282,7 +282,7 @@ class WorkspaceIndicator extends PanelMenu.Button {
|
|||||||
reactive: true,
|
reactive: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
container.add_actor(this._thumbnailsBox);
|
container.add_child(this._thumbnailsBox);
|
||||||
|
|
||||||
this._workspacesItems = [];
|
this._workspacesItems = [];
|
||||||
this._workspaceSection = new PopupMenu.PopupMenuSection();
|
this._workspaceSection = new PopupMenu.PopupMenuSection();
|
||||||
@@ -405,7 +405,7 @@ class WorkspaceIndicator extends PanelMenu.Button {
|
|||||||
|
|
||||||
for (let i = 0; i < workspaceManager.n_workspaces; i++) {
|
for (let i = 0; i < workspaceManager.n_workspaces; i++) {
|
||||||
let thumb = new WorkspaceThumbnail(i);
|
let thumb = new WorkspaceThumbnail(i);
|
||||||
this._thumbnailsBox.add_actor(thumb);
|
this._thumbnailsBox.add_child(thumb);
|
||||||
}
|
}
|
||||||
this._updateActiveThumbnail();
|
this._updateActiveThumbnail();
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-1
@@ -3,7 +3,7 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
project('gnome-shell-extensions',
|
project('gnome-shell-extensions',
|
||||||
version: '45.2',
|
version: '46.alpha',
|
||||||
meson_version: '>= 0.58.0',
|
meson_version: '>= 0.58.0',
|
||||||
license: 'GPL2+'
|
license: 'GPL2+'
|
||||||
)
|
)
|
||||||
@@ -42,6 +42,7 @@ default_extensions += [
|
|||||||
'drive-menu',
|
'drive-menu',
|
||||||
'light-style',
|
'light-style',
|
||||||
'screenshot-window-sizer',
|
'screenshot-window-sizer',
|
||||||
|
'system-monitor',
|
||||||
'windowsNavigator',
|
'windowsNavigator',
|
||||||
'workspace-indicator'
|
'workspace-indicator'
|
||||||
]
|
]
|
||||||
|
|||||||
Reference in New Issue
Block a user