Browse Source

gnome-shell-extensions package update

Signed-off-by: guibuilder_pel7x64builder0 <guibuilder@powerel.org>
master
guibuilder_pel7x64builder0 7 years ago
parent
commit
3099e2af26
  1. 28
      SOURCES/0001-Include-top-icons-in-classic-session.patch
  2. 36
      SOURCES/0001-Update-style.patch
  3. 40
      SOURCES/0001-apps-menu-Explicitly-set-label_actor.patch
  4. 29
      SOURCES/0001-apps-menu-add-logo-icon-to-Applications-menu.patch
  5. 35
      SOURCES/0001-classic-shade-panel-in-overview.patch
  6. 32
      SOURCES/0001-loginDialog-make-info-messages-themed.patch
  7. 14157
      SOURCES/add-extra-extensions.patch
  8. 107
      SOURCES/apps-menu-follow-sort-order.patch
  9. 100
      SOURCES/apps-menu-support-separators.patch
  10. 89
      SOURCES/classic-style-fixes.patch
  11. 804
      SOURCES/resurrect-system-monitor.patch
  12. 859
      SPECS/gnome-shell-extensions.spec

28
SOURCES/0001-Include-top-icons-in-classic-session.patch

@ -0,0 +1,28 @@
From d5e0f26fc59216da2b2f129d4395a9da0c63e974 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 23 Feb 2018 16:56:46 +0100
Subject: [PATCH] Include top-icons in classic session

---
configure.ac | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/configure.ac b/configure.ac
index ddb6422..378783f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -29,9 +29,9 @@ fi
AC_SUBST([SHELL_VERSION])
dnl keep this in alphabetic order
-CLASSIC_EXTENSIONS="apps-menu places-menu alternate-tab launch-new-instance window-list"
+CLASSIC_EXTENSIONS="apps-menu places-menu alternate-tab launch-new-instance top-icons window-list"
DEFAULT_EXTENSIONS="$CLASSIC_EXTENSIONS drive-menu screenshot-window-sizer windowsNavigator workspace-indicator"
-ALL_EXTENSIONS="$DEFAULT_EXTENSIONS auto-move-windows dash-to-dock example native-window-placement no-hot-corner panel-favorites systemMonitor top-icons updates-dialog user-theme"
+ALL_EXTENSIONS="$DEFAULT_EXTENSIONS auto-move-windows dash-to-dock example native-window-placement no-hot-corner panel-favorites systemMonitor updates-dialog user-theme"
AC_SUBST(CLASSIC_EXTENSIONS, [$CLASSIC_EXTENSIONS])
AC_SUBST(ALL_EXTENSIONS, [$ALL_EXTENSIONS])
AC_ARG_ENABLE([extensions],
--
2.14.3

36
SOURCES/0001-Update-style.patch

@ -0,0 +1,36 @@
From 47d0b2071b07fe70537dde46dc90635e869291f4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 6 Oct 2017 19:41:06 +0200
Subject: [PATCH] Update style

---
data/gnome-classic.css | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/data/gnome-classic.css b/data/gnome-classic.css
index 086fa12..888b695 100644
--- a/data/gnome-classic.css
+++ b/data/gnome-classic.css
@@ -689,6 +689,9 @@ StScrollBar {
-st-icon-style: symbolic;
margin-left: 4px;
margin-right: 4px; }
+ #panel .panel-button .panel-logo-icon {
+ padding-right: .4em;
+ icon-size: 1em; }
#panel .panel-button .system-status-icon,
#panel .panel-button .app-menu-icon > StIcon,
#panel .panel-button .popup-menu-arrow {
@@ -1714,6 +1717,9 @@ StScrollBar {
padding-bottom: 12px;
spacing: 8px;
width: 23em; }
+ .login-dialog-prompt-layout .login-dialog-timed-login-indicator {
+ height: 2px;
+ background-color: #8b8b8b; }
.login-dialog-prompt-label {
color: #bebeb6;
--
2.14.2

40
SOURCES/0001-apps-menu-Explicitly-set-label_actor.patch

@ -0,0 +1,40 @@
From d04e66f692f5022a476c4ad8a9caeb0b5952b7b0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 17 Mar 2016 17:15:38 +0100
Subject: [PATCH] apps-menu: Explicitly set label_actor

For some reason orca fails to pick up the label of category items,
so set the label_actor explicitly as workaround.
---
extensions/apps-menu/extension.js | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/extensions/apps-menu/extension.js b/extensions/apps-menu/extension.js
index 41d1faf..03000bf 100644
--- a/extensions/apps-menu/extension.js
+++ b/extensions/apps-menu/extension.js
@@ -38,7 +38,9 @@ const ActivitiesMenuItem = new Lang.Class({
_init: function(button) {
this.parent();
this._button = button;
- this.actor.add_child(new St.Label({ text: _("Activities Overview") }));
+ let label = new St.Label({ text: _("Activities Overview") });
+ this.actor.add_child(label);
+ this.actor.label_actor = label;
},
activate: function(event) {
@@ -140,7 +142,9 @@ const CategoryMenuItem = new Lang.Class({
else
name = _("Favorites");
- this.actor.add_child(new St.Label({ text: name }));
+ let label = new St.Label({ text: name });
+ this.actor.add_child(label);
+ this.actor.label_actor = label;
this.actor.connect('motion-event', Lang.bind(this, this._onMotionEvent));
},
--
2.14.2

29
SOURCES/0001-apps-menu-add-logo-icon-to-Applications-menu.patch

@ -0,0 +1,29 @@
From fe6695b8d45fe7d1d9aea8c41c9aa54048a9704d Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Tue, 21 Jan 2014 16:48:17 -0500
Subject: [PATCH] apps-menu: add logo icon to Applications menu

Brand requested it.
---
extensions/apps-menu/extension.js | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/extensions/apps-menu/extension.js b/extensions/apps-menu/extension.js
index 2f4002a..41d1faf 100644
--- a/extensions/apps-menu/extension.js
+++ b/extensions/apps-menu/extension.js
@@ -433,6 +433,11 @@ const ApplicationsButton = new Lang.Class({
let hbox = new St.BoxLayout({ style_class: 'panel-status-menu-box' });
+ let iconFile = Gio.File.new_for_path('/usr/share/icons/hicolor/scalable/apps/start-here.svg');
+ this._icon = new St.Icon({ gicon: new Gio.FileIcon({ file: iconFile }),
+ style_class: 'panel-logo-icon' });
+ hbox.add_actor(this._icon);
+
this._label = new St.Label({ text: _("Applications"),
y_expand: true,
y_align: Clutter.ActorAlign.CENTER });
--
2.14.2

35
SOURCES/0001-classic-shade-panel-in-overview.patch

@ -0,0 +1,35 @@
From c948a42b9b5aad6f26a8b8cb61743eedabf3d83f Mon Sep 17 00:00:00 2001
From: Jakub Steiner <jimmac@gmail.com>
Date: Tue, 14 Jan 2014 17:00:23 +0100
Subject: [PATCH] classic: shade panel in overview

- rather than using the top bar styling (negative space),
base the overview panel on the classic grey and "darken"
for overview
---
data/gnome-classic.css | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/data/gnome-classic.css b/data/gnome-classic.css
index 086fa12..961782f 100644
--- a/data/gnome-classic.css
+++ b/data/gnome-classic.css
@@ -1891,12 +1891,10 @@ StScrollBar {
border-bottom: 1px solid #666;
app-icon-bottom-clip: 0px; }
#panel:overview {
- background-color: #000;
- background-gradient-end: #000;
- border-top-color: #000;
- border-bottom: 1px solid #000; }
+ background-color: #e0e0e0;
+ background-gradient-end: #d4d4d4; }
#panel:overview .panel-button {
- color: #fff; }
+ color: #222728; }
#panel .panel-button {
-natural-hpadding: 8px;
-minimum-hpadding: 4px;
--
2.14.2

32
SOURCES/0001-loginDialog-make-info-messages-themed.patch

@ -0,0 +1,32 @@
From 6bb945c95efae345ca388df4a2251a14a55630a5 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Mon, 26 Jun 2017 14:35:05 -0400
Subject: [PATCH] loginDialog: make info messages themed

They were lacking a definition before leading them to
show up invisible.
---
data/gnome-classic.css | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/data/gnome-classic.css b/data/gnome-classic.css
index d9291a1..4d0d737 100644
--- a/data/gnome-classic.css
+++ b/data/gnome-classic.css
@@ -1651,9 +1651,11 @@ StScrollBar {
.login-dialog-message-warning {
color: #f57900; }
-.login-dialog-message-hint {
+.login-dialog-message-hint, .login-dialog-message {
+ color: #bebeb6;
padding-top: 0;
- padding-bottom: 20px; }
+ padding-bottom: 20px;
+ min-height: 2.75em; }
.login-dialog-user-selection-box {
padding: 100px 0px; }
--
2.14.2

14157
SOURCES/add-extra-extensions.patch

File diff suppressed because it is too large Load Diff

107
SOURCES/apps-menu-follow-sort-order.patch

@ -0,0 +1,107 @@
From d19a80a7e7b7a19a723365bae85cc99ebd5bc25b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 13 Oct 2017 00:30:31 +0200
Subject: [PATCH 1/2] apps-menu: Don't override sort order

Keep the order in which GMenu returns loaded apps, so users can
reorder entries in Alacarte.

https://bugzilla.gnome.org/show_bug.cgi?id=788939
---
extensions/apps-menu/extension.js | 3 ---
1 file changed, 3 deletions(-)

diff --git a/extensions/apps-menu/extension.js b/extensions/apps-menu/extension.js
index e430140..dba31e7 100644
--- a/extensions/apps-menu/extension.js
+++ b/extensions/apps-menu/extension.js
@@ -745,9 +745,6 @@ const ApplicationsButton = new Lang.Class({
if (category_menu_id) {
applist = this.applicationsByCategory[category_menu_id];
- applist.sort(function(a,b) {
- return a.get_name().toLowerCase() > b.get_name().toLowerCase();
- });
} else {
applist = new Array();
let favorites = global.settings.get_strv('favorite-apps');
--
2.14.2


From a9d09c692cfb2944cdfd5b5c61140b3f9aa4b250 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 13 Oct 2017 01:43:20 +0200
Subject: [PATCH 2/2] apps-menu: Reload on tree changes

Now that we respect the sort order defined in the .menu file, make
sure to reload the menu on those changes as well, not just when
the installed apps themselves change.

https://bugzilla.gnome.org/show_bug.cgi?id=788939
---
extensions/apps-menu/extension.js | 30 +++++++++++++++++++-----------
1 file changed, 19 insertions(+), 11 deletions(-)

diff --git a/extensions/apps-menu/extension.js b/extensions/apps-menu/extension.js
index dba31e7..600eda3 100644
--- a/extensions/apps-menu/extension.js
+++ b/extensions/apps-menu/extension.js
@@ -466,18 +466,25 @@ const ApplicationsButton = new Lang.Class({
});
});
+ this._tree = new GMenu.Tree({ menu_basename: 'applications.menu' });
+ this._treeChangedId = this._tree.connect('changed',
+ Lang.bind(this, this._onTreeChanged));
+
this._applicationsButtons = new Map();
this.reloadFlag = false;
this._createLayout();
this._display();
- this._installedChangedId = appSys.connect('installed-changed', Lang.bind(this, function() {
- if (this.menu.isOpen) {
- this._redisplay();
- this.mainBox.show();
- } else {
- this.reloadFlag = true;
- }
- }));
+ this._installedChangedId = appSys.connect('installed-changed',
+ Lang.bind(this, this._onTreeChanged));
+ },
+
+ _onTreeChanged: function() {
+ if (this.menu.isOpen) {
+ this._redisplay();
+ this.mainBox.show();
+ } else {
+ this.reloadFlag = true;
+ }
},
get hotCorner() {
@@ -495,6 +502,8 @@ const ApplicationsButton = new Lang.Class({
Main.overview.disconnect(this._showingId);
Main.overview.disconnect(this._hidingId);
appSys.disconnect(this._installedChangedId);
+ this._tree.disconnect(this._treeChangedId);
+ this._tree = null;
Main.wm.setCustomKeybindingHandler('panel-main-menu',
Shell.ActionMode.NORMAL |
@@ -675,9 +684,8 @@ const ApplicationsButton = new Lang.Class({
//Load categories
this.applicationsByCategory = {};
- let tree = new GMenu.Tree({ menu_basename: 'applications.menu' });
- tree.load_sync();
- let root = tree.get_root_directory();
+ this._tree.load_sync();
+ let root = this._tree.get_root_directory();
let categoryMenuItem = new CategoryMenuItem(this, null);
this.categoriesBox.add_actor(categoryMenuItem.actor);
let iter = root.iter();
--
2.14.2

100
SOURCES/apps-menu-support-separators.patch

@ -0,0 +1,100 @@
From a91f33c152c1f463d21a388727e64945c88e4d54 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 13 Oct 2017 01:20:17 +0200
Subject: [PATCH 1/2] apps-menu: Minor code cleanup

The parameter to _clearApplicationBox() has never been used, so
remove it. In fact, modern javascript makes the function so compact
that we can just move the code inline.

https://bugzilla.gnome.org/show_bug.cgi?id=788939
---
extensions/apps-menu/extension.js | 15 +++------------
1 file changed, 3 insertions(+), 12 deletions(-)

diff --git a/extensions/apps-menu/extension.js b/extensions/apps-menu/extension.js
index 600eda3..8138d4c 100644
--- a/extensions/apps-menu/extension.js
+++ b/extensions/apps-menu/extension.js
@@ -712,19 +712,10 @@ const ApplicationsButton = new Lang.Class({
this.mainBox.style+=('height: ' + height);
},
- _clearApplicationsBox: function(selectedActor) {
- let actors = this.applicationsBox.get_children();
- for (let i = 0; i < actors.length; i++) {
- let actor = actors[i];
- this.applicationsBox.remove_actor(actor);
- }
- },
-
selectCategory: function(dir, categoryMenuItem) {
- if (categoryMenuItem)
- this._clearApplicationsBox(categoryMenuItem.actor);
- else
- this._clearApplicationsBox(null);
+ this.applicationsBox.get_children().forEach(c => {
+ this.applicationsBox.remove_actor(c);
+ });
if (dir)
this._displayButtons(this._listApplications(dir.get_menu_id()));
--
2.14.2


From dd79357f429fabfec63ab1ea772428000bf038d0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 13 Oct 2017 01:44:19 +0200
Subject: [PATCH 2/2] apps-menu: Support separators

We currently only load entries and directories, and ignore any
separators defined by the user/admin. Make some people happy
by supporting them ...

https://bugzilla.gnome.org/show_bug.cgi?id=788939
---
extensions/apps-menu/extension.js | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/extensions/apps-menu/extension.js b/extensions/apps-menu/extension.js
index 8138d4c..c2ecf5f 100644
--- a/extensions/apps-menu/extension.js
+++ b/extensions/apps-menu/extension.js
@@ -592,6 +592,8 @@ const ApplicationsButton = new Lang.Class({
app = new Shell.App({ app_info: entry.get_app_info() });
if (app.get_app_info().should_show())
this.applicationsByCategory[categoryId].push(app);
+ } else if (nextType == GMenu.TreeItemType.SEPARATOR) {
+ this.applicationsByCategory[categoryId].push('separator');
} else if (nextType == GMenu.TreeItemType.DIRECTORY) {
let subdir = iter.get_directory();
if (!subdir.get_is_nodisplay())
@@ -714,7 +716,10 @@ const ApplicationsButton = new Lang.Class({
selectCategory: function(dir, categoryMenuItem) {
this.applicationsBox.get_children().forEach(c => {
- this.applicationsBox.remove_actor(c);
+ if (c._delegate instanceof PopupMenu.PopupSeparatorMenuItem)
+ c._delegate.destroy();
+ else
+ this.applicationsBox.remove_actor(c);
});
if (dir)
@@ -727,7 +732,11 @@ const ApplicationsButton = new Lang.Class({
if (apps) {
for (let i = 0; i < apps.length; i++) {
let app = apps[i];
- let item = this._applicationsButtons.get(app);
+ let item;
+ if (app instanceof Shell.App)
+ item = this._applicationsButtons.get(app);
+ else
+ item = new PopupMenu.PopupSeparatorMenuItem();
if (!item) {
item = new ApplicationMenuItem(this, app);
item.setDragEnabled(this._desktopTarget.hasDesktop);
--
2.14.2

89
SOURCES/classic-style-fixes.patch

@ -0,0 +1,89 @@
From 145845f99ac42d0355752d60bbcf561ce31afb55 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 17 Jan 2018 18:26:51 +0100
Subject: [PATCH 1/3] classic: Fix "Clear All" button readability

Most buttons appear in modal dialogs which keep their normal
appearance in the classic theme, except for the calendar's
"Clear All" which needs a dark text color to be readable on
the light background.

https://gitlab.gnome.org/GNOME/gnome-shell-extensions/issues/26
---
data/gnome-classic.css | 3 +++
2 files changed, 7 insertions(+)

diff --git a/data/gnome-classic.css b/data/gnome-classic.css
index 4d0d737..be332c9 100644
--- a/data/gnome-classic.css
+++ b/data/gnome-classic.css
@@ -1961,3 +1961,6 @@ StScrollBar {
.calendar-day-with-events {
background-image: url("calendar-today.svg"); }
+
+.message-list-clear-button.button {
+ color: #2e3436; }
--
2.14.3


From c882621cb806474c077f1511a0f0cfd87432d4c7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonas=20K=C3=BCmmerlin?= <rgcjonas@gmail.com>
Date: Wed, 24 Jan 2018 22:07:36 +0100
Subject: [PATCH 2/3] classic: make notifications legible again

https://gitlab.gnome.org/GNOME/gnome-shell-extensions/issues/41

As requested in discussion about !26, this is resolved by
switching to a light background.
---
data/gnome-classic.css | 8 ++++++++
2 files changed, 17 insertions(+)

diff --git a/data/gnome-classic.css b/data/gnome-classic.css
index be332c9..6dad881 100644
--- a/data/gnome-classic.css
+++ b/data/gnome-classic.css
@@ -1964,3 +1964,11 @@ StScrollBar {
.message-list-clear-button.button {
color: #2e3436; }
+
+.notification-banner {
+ background-color: #ededed !important;
+ color: #2e3436; }
+ .notification-banner .notification-button {
+ background-color: #e0e0e0; }
+ .notification-banner .notification-button:hover, .notification-banner .notification-buttonfocus {
+ background-color: #e8e8e8; }
--
2.14.3


From eac93f3f081306d62d82e8d2e45f73cd38c318b1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonas=20K=C3=BCmmerlin?= <rgcjonas@gmail.com>
Date: Wed, 24 Jan 2018 22:24:06 +0100
Subject: [PATCH 3/3] classic: never show drop shadow for panel icons

https://gitlab.gnome.org/GNOME/gnome-shell-extensions/issues/39
---
data/gnome-classic.css | 2 ++
2 files changed, 6 insertions(+)

diff --git a/data/gnome-classic.css b/data/gnome-classic.css
index 6dad881..93d84ba 100644
--- a/data/gnome-classic.css
+++ b/data/gnome-classic.css
@@ -1923,6 +1923,8 @@ StScrollBar {
width: 0;
height: 0;
margin: 0; }
+ #panel .panel-button .system-status-icon {
+ icon-shadow: none; }
#panel .panel-corner,
#panel .panel-corner:active,
#panel .panel-corner:overview,
--
2.14.3

804
SOURCES/resurrect-system-monitor.patch

@ -0,0 +1,804 @@
From 5b4f81b1b510cc254221cac762dd282408c18a8c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 17 May 2017 19:13:50 +0200
Subject: [PATCH 1/4] extensions: Resurrect systemMonitor extension

The extension was removed upstream because:
- it hooks into the message tray that was removed
- it was known to have performance issues
- there are plenty of alternatives

Those aren't good enough reasons for dropping it downstream
as well though, so we need to bring it back ...

This reverts commit c9a6421f362cd156cf731289eadc11f44f6970ac.
---
README | 4 +
configure.ac | 8 +-
extensions/systemMonitor/Makefile.am | 3 +
extensions/systemMonitor/extension.js | 376 ++++++++++++++++++++++++++++++
extensions/systemMonitor/metadata.json.in | 11 +
extensions/systemMonitor/stylesheet.css | 35 +++
6 files changed, 436 insertions(+), 1 deletion(-)
create mode 100644 extensions/systemMonitor/Makefile.am
create mode 100644 extensions/systemMonitor/extension.js
create mode 100644 extensions/systemMonitor/metadata.json.in
create mode 100644 extensions/systemMonitor/stylesheet.css

diff --git a/README b/README
index cc53a8d..e2bea7a 100644
--- a/README
+++ b/README
@@ -57,6 +57,10 @@ places-menu
Shows a status Indicator for navigating to Places.
+systemMonitor
+
+ An message tray indicator showing CPU and memory loads.
+
user-theme
Loads a shell theme from ~/.themes/<name>/gnome-shell.
diff --git a/configure.ac b/configure.ac
index 34b2171..2c0036c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -31,7 +31,7 @@ AC_SUBST([SHELL_VERSION])
dnl keep this in alphabetic order
CLASSIC_EXTENSIONS="apps-menu places-menu alternate-tab launch-new-instance window-list"
DEFAULT_EXTENSIONS="$CLASSIC_EXTENSIONS drive-menu screenshot-window-sizer windowsNavigator workspace-indicator"
-ALL_EXTENSIONS="$DEFAULT_EXTENSIONS auto-move-windows dash-to-dock example native-window-placement no-hot-corner panel-favorites top-icons updates-dialog user-theme"
+ALL_EXTENSIONS="$DEFAULT_EXTENSIONS auto-move-windows dash-to-dock example native-window-placement no-hot-corner panel-favorites systemMonitor top-icons updates-dialog user-theme"
AC_SUBST(CLASSIC_EXTENSIONS, [$CLASSIC_EXTENSIONS])
AC_SUBST(ALL_EXTENSIONS, [$ALL_EXTENSIONS])
AC_ARG_ENABLE([extensions],
@@ -62,6 +62,11 @@ AM_CONDITIONAL([CLASSIC_MODE], [test x"$enable_classic_mode" != xno])
ENABLED_EXTENSIONS=
for e in $enable_extensions; do
case $e in
+ systemMonitor)
+ PKG_CHECK_MODULES(GTOP, libgtop-2.0 >= 2.28.3,
+ [ENABLED_EXTENSIONS="$ENABLED_EXTENSIONS $e"],
+ [AC_MSG_WARN([libgtop-2.0 not found, disabling systemMonitor])])
+ ;;
dnl keep this in alphabetic order
alternate-tab|apps-menu|auto-move-windows|dash-to-dock|drive-menu|example|launch-new-instance|native-window-placement|no-hot-corner|panel-favorites|places-menu|screenshot-window-sizer|top-icons|updates-dialog|user-theme|window-list|windowsNavigator|workspace-indicator)
ENABLED_EXTENSIONS="$ENABLED_EXTENSIONS $e"
@@ -90,6 +95,7 @@ AC_CONFIG_FILES([
extensions/panel-favorites/Makefile
extensions/places-menu/Makefile
extensions/screenshot-window-sizer/Makefile
+ extensions/systemMonitor/Makefile
extensions/top-icons/Makefile
extensions/updates-dialog/Makefile
extensions/user-theme/Makefile
diff --git a/extensions/systemMonitor/Makefile.am b/extensions/systemMonitor/Makefile.am
new file mode 100644
index 0000000..50ce6d2
--- /dev/null
+++ b/extensions/systemMonitor/Makefile.am
@@ -0,0 +1,3 @@
+EXTENSION_ID = systemMonitor
+
+include ../../extension.mk
diff --git a/extensions/systemMonitor/extension.js b/extensions/systemMonitor/extension.js
new file mode 100644
index 0000000..58a2f57
--- /dev/null
+++ b/extensions/systemMonitor/extension.js
@@ -0,0 +1,376 @@
+/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
+
+const Clutter = imports.gi.Clutter;
+const GTop = imports.gi.GTop;
+const Lang = imports.lang;
+const Mainloop = imports.mainloop;
+const St = imports.gi.St;
+const Shell = imports.gi.Shell;
+
+const Main = imports.ui.main;
+const Tweener = imports.ui.tweener;
+
+const Gettext = imports.gettext.domain('gnome-shell-extensions');
+const _ = Gettext.gettext;
+
+const ExtensionUtils = imports.misc.extensionUtils;
+const Me = ExtensionUtils.getCurrentExtension();
+const Convenience = Me.imports.convenience;
+
+const INDICATOR_UPDATE_INTERVAL = 500;
+const INDICATOR_NUM_GRID_LINES = 3;
+
+const ITEM_LABEL_SHOW_TIME = 0.15;
+const ITEM_LABEL_HIDE_TIME = 0.1;
+const ITEM_HOVER_TIMEOUT = 300;
+
+const Indicator = new Lang.Class({
+ Name: 'SystemMonitor.Indicator',
+
+ _init: function() {
+ this._initValues();
+ this.drawing_area = new St.DrawingArea({ reactive: true });
+ this.drawing_area.connect('repaint', Lang.bind(this, this._draw));
+ this.drawing_area.connect('button-press-event', function() {
+ let app = Shell.AppSystem.get_default().lookup_app('gnome-system-monitor.desktop');
+ app.open_new_window(-1);
+ return true;
+ });
+
+ this.actor = new St.Bin({ style_class: "extension-systemMonitor-indicator-area",
+ reactive: true, track_hover: true,
+ x_fill: true, y_fill: true });
+ this.actor.add_actor(this.drawing_area);
+
+ this._timeout = Mainloop.timeout_add(INDICATOR_UPDATE_INTERVAL, Lang.bind(this, function () {
+ this._updateValues();
+ this.drawing_area.queue_repaint();
+ return true;
+ }));
+ },
+
+ showLabel: function() {
+ if (this.label == null)
+ return;
+
+ this.label.opacity = 0;
+ this.label.show();
+
+ let [stageX, stageY] = this.actor.get_transformed_position();
+
+ let itemWidth = this.actor.allocation.x2 - this.actor.allocation.x1;
+ let itemHeight = this.actor.allocation.y2 - this.actor.allocation.y1;
+
+ let labelWidth = this.label.width;
+ let labelHeight = this.label.height;
+ let xOffset = Math.floor((itemWidth - labelWidth) / 2)
+
+ let x = stageX + xOffset;
+
+ let node = this.label.get_theme_node();
+ let yOffset = node.get_length('-y-offset');
+
+ let y = stageY - this.label.get_height() - yOffset;
+
+ this.label.set_position(x, y);
+ Tweener.addTween(this.label,
+ { opacity: 255,
+ time: ITEM_LABEL_SHOW_TIME,
+ transition: 'easeOutQuad',
+ });
+ },
+
+ setLabelText: function(text) {
+ if (this.label == null)
+ this.label = new St.Label({ style_class: 'extension-systemMonitor-indicator-label'});
+
+ this.label.set_text(text);
+ Main.layoutManager.addChrome(this.label);
+ this.label.hide();
+ },
+
+ hideLabel: function () {
+ Tweener.addTween(this.label,
+ { opacity: 0,
+ time: ITEM_LABEL_HIDE_TIME,
+ transition: 'easeOutQuad',
+ onComplete: Lang.bind(this, function() {
+ this.label.hide();
+ })
+ });
+ },
+
+ destroy: function() {
+ Mainloop.source_remove(this._timeout);
+
+ this.actor.destroy();
+ if (this.label)
+ this.label.destroy();
+ },
+
+ _initValues: function() {
+ },
+
+ _updateValues: function() {
+ },
+
+ _draw: function(area) {
+ let [width, height] = area.get_surface_size();
+ let themeNode = this.actor.get_theme_node();
+ let cr = area.get_context();
+
+ //draw the background grid
+ let color = themeNode.get_color(this.gridColor);
+ let gridOffset = Math.floor(height / (INDICATOR_NUM_GRID_LINES + 1));
+ for (let i = 1; i <= INDICATOR_NUM_GRID_LINES; ++i) {
+ cr.moveTo(0, i * gridOffset + .5);
+ cr.lineTo(width, i * gridOffset + .5);
+ }
+ Clutter.cairo_set_source_color(cr, color);
+ cr.setLineWidth(1);
+ cr.setDash([4,1], 0);
+ cr.stroke();
+
+ //draw the foreground
+
+ function makePath(values, reverse, nudge) {
+ if (nudge == null) {
+ nudge = 0;
+ }
+ //if we are going in reverse, we are completing the bottom of a chart, so use lineTo
+ if (reverse) {
+ cr.lineTo(values.length - 1, (1 - values[values.length - 1]) * height + nudge);
+ for (let k = values.length - 2; k >= 0; --k) {
+ cr.lineTo(k, (1 - values[k]) * height + nudge);
+ }
+ } else {
+ cr.moveTo(0, (1 - values[0]) * height + nudge);
+ for (let k = 1; k < values.length; ++k) {
+ cr.lineTo(k, (1 - values[k]) * height + nudge);
+ }
+
+ }
+ }
+
+ let renderStats = this.renderStats;
+
+ // Make sure we don't have more sample points than pixels
+ renderStats.map(Lang.bind(this, function(k){
+ let stat = this.stats[k];
+ if (stat.values.length > width) {
+ stat.values = stat.values.slice(stat.values.length - width, stat.values.length);
+ }
+ }));
+
+ for (let i = 0; i < renderStats.length; ++i) {
+ let stat = this.stats[renderStats[i]];
+ // We outline at full opacity and fill with 40% opacity
+ let outlineColor = themeNode.get_color(stat.color);
+ let color = new Clutter.Color(outlineColor);
+ color.alpha = color.alpha * .4;
+
+ // Render the background between us and the next level
+ makePath(stat.values, false);
+ // If there is a process below us, render the cpu between us and it, otherwise,
+ // render to the bottom of the chart
+ if (i == renderStats.length - 1) {
+ cr.lineTo(stat.values.length - 1, height);
+ cr.lineTo(0, height);
+ cr.closePath();
+ } else {
+ let nextStat = this.stats[renderStats[i+1]];
+ makePath(nextStat.values, true);
+ }
+ cr.closePath()
+ Clutter.cairo_set_source_color(cr, color);
+ cr.fill();
+
+ // Render the outline of this level
+ makePath(stat.values, false, .5);
+ Clutter.cairo_set_source_color(cr, outlineColor);
+ cr.setLineWidth(1.0);
+ cr.setDash([], 0);
+ cr.stroke();
+ }
+ }
+});
+
+const CpuIndicator = new Lang.Class({
+ Name: 'SystemMonitor.CpuIndicator',
+ Extends: Indicator,
+
+ _init: function() {
+ this.parent();
+
+ this.gridColor = '-grid-color';
+ this.renderStats = [ 'cpu-user', 'cpu-sys', 'cpu-iowait' ];
+
+ // Make sure renderStats is sorted as necessary for rendering
+ let renderStatOrder = {'cpu-total': 0, 'cpu-user': 1, 'cpu-sys': 2, 'cpu-iowait': 3};
+ this.renderStats = this.renderStats.sort(function(a,b) {
+ return renderStatOrder[a] - renderStatOrder[b];
+ });
+
+ this.setLabelText(_("CPU"));
+ },
+
+ _initValues: function() {
+ this._prev = new GTop.glibtop_cpu;
+ GTop.glibtop_get_cpu(this._prev);
+
+ this.stats = {
+ 'cpu-user': {color: '-cpu-user-color', values: []},
+ 'cpu-sys': {color: '-cpu-sys-color', values: []},
+ 'cpu-iowait': {color: '-cpu-iowait-color', values: []},
+ 'cpu-total': {color: '-cpu-total-color', values: []}
+ };
+ },
+
+ _updateValues: function() {
+ let cpu = new GTop.glibtop_cpu;
+ let t = 0.0;
+ GTop.glibtop_get_cpu(cpu);
+ let total = cpu.total - this._prev.total;
+ let user = cpu.user - this._prev.user;
+ let sys = cpu.sys - this._prev.sys;
+ let iowait = cpu.iowait - this._prev.iowait;
+ let idle = cpu.idle - this._prev.idle;
+
+ t += iowait / total;
+ this.stats['cpu-iowait'].values.push(t);
+ t += sys / total;
+ this.stats['cpu-sys'].values.push(t);
+ t += user / total;
+ this.stats['cpu-user'].values.push(t);
+ this.stats['cpu-total'].values.push(1 - idle / total);
+
+ this._prev = cpu;
+ }
+});
+
+const MemoryIndicator = new Lang.Class({
+ Name: 'SystemMonitor.MemoryIndicator',
+ Extends: Indicator,
+
+ _init: function() {
+ this.parent();
+
+ this.gridColor = '-grid-color';
+ this.renderStats = [ 'mem-user', 'mem-other', 'mem-cached' ];
+
+ // Make sure renderStats is sorted as necessary for rendering
+ let renderStatOrder = { 'mem-cached': 0, 'mem-other': 1, 'mem-user': 2 };
+ this.renderStats = this.renderStats.sort(function(a,b) {
+ return renderStatOrder[a] - renderStatOrder[b];
+ });
+
+ this.setLabelText(_("Memory"));
+ },
+
+ _initValues: function() {
+ this.mem = new GTop.glibtop_mem;
+ this.stats = {
+ 'mem-user': { color: "-mem-user-color", values: [] },
+ 'mem-other': { color: "-mem-other-color", values: [] },
+ 'mem-cached': { color: "-mem-cached-color", values: [] }
+ };
+ },
+
+ _updateValues: function() {
+ GTop.glibtop_get_mem(this.mem);
+
+ let t = this.mem.user / this.mem.total;
+ this.stats['mem-user'].values.push(t);
+ t += (this.mem.used - this.mem.user - this.mem.cached) / this.mem.total;
+ this.stats['mem-other'].values.push(t);
+ t += this.mem.cached / this.mem.total;
+ this.stats['mem-cached'].values.push(t);
+ }
+});
+
+const INDICATORS = [CpuIndicator, MemoryIndicator];
+
+const Extension = new Lang.Class({
+ Name: 'SystemMonitor.Extension',
+
+ _init: function() {
+ Convenience.initTranslations();
+
+ this._showLabelTimeoutId = 0;
+ this._resetHoverTimeoutId = 0;
+ this._labelShowing = false;
+ },
+
+ enable: function() {
+ this._box = new St.BoxLayout({ style_class: 'extension-systemMonitor-container',
+ x_align: Clutter.ActorAlign.START,
+ x_expand: true });
+ this._indicators = [ ];
+
+ for (let i = 0; i < INDICATORS.length; i++) {
+ let indicator = new (INDICATORS[i])();
+
+ indicator.actor.connect('notify::hover', Lang.bind(this, function() {
+ this._onHover(indicator);
+ }));
+ this._box.add_actor(indicator.actor);
+ this._indicators.push(indicator);
+ }
+
+ this._boxHolder = new St.BoxLayout({ x_expand: true,
+ y_expand: true,
+ x_align: Clutter.ActorAlign.START,
+ });
+ let menuButton = Main.messageTray._messageTrayMenuButton.actor;
+ Main.messageTray.actor.remove_child(menuButton);
+ Main.messageTray.actor.add_child(this._boxHolder);
+
+ this._boxHolder.add_child(this._box);
+ this._boxHolder.add_child(menuButton);
+ },
+
+ disable: function() {
+ this._indicators.forEach(function(i) { i.destroy(); });
+
+ let menuButton = Main.messageTray._messageTrayMenuButton.actor;
+ this._boxHolder.remove_child(menuButton);
+ Main.messageTray.actor.add_child(menuButton);
+
+ this._box.destroy();
+ this._boxHolder.destroy();
+ },
+
+ _onHover: function (item) {
+ if (item.actor.get_hover()) {
+ if (this._showLabelTimeoutId == 0) {
+ let timeout = this._labelShowing ? 0 : ITEM_HOVER_TIMEOUT;
+ this._showLabelTimeoutId = Mainloop.timeout_add(timeout,
+ Lang.bind(this, function() {
+ this._labelShowing = true;
+ item.showLabel();
+ return false;
+ }));
+ if (this._resetHoverTimeoutId > 0) {
+ Mainloop.source_remove(this._resetHoverTimeoutId);
+ this._resetHoverTimeoutId = 0;
+ }
+ }
+ } else {
+ if (this._showLabelTimeoutId > 0)
+ Mainloop.source_remove(this._showLabelTimeoutId);
+ this._showLabelTimeoutId = 0;
+ item.hideLabel();
+ if (this._labelShowing) {
+ this._resetHoverTimeoutId = Mainloop.timeout_add(ITEM_HOVER_TIMEOUT,
+ Lang.bind(this, function() {
+ this._labelShowing = false;
+ return false;
+ }));
+ }
+ }
+ },
+});
+
+function init() {
+ return new Extension();
+}
diff --git a/extensions/systemMonitor/metadata.json.in b/extensions/systemMonitor/metadata.json.in
new file mode 100644
index 0000000..fa75007
--- /dev/null
+++ b/extensions/systemMonitor/metadata.json.in
@@ -0,0 +1,11 @@
+{
+ "shell-version": ["@shell_current@" ],
+ "uuid": "@uuid@",
+ "extension-id": "@extension_id@",
+ "settings-schema": "@gschemaname@",
+ "gettext-domain": "@gettext_domain@",
+ "original-author": "zaspire@rambler.ru",
+ "name": "SystemMonitor",
+ "description": "System monitor showing CPU and memory usage in the message tray.",
+ "url": "@url@"
+}
diff --git a/extensions/systemMonitor/stylesheet.css b/extensions/systemMonitor/stylesheet.css
new file mode 100644
index 0000000..13f95ec
--- /dev/null
+++ b/extensions/systemMonitor/stylesheet.css
@@ -0,0 +1,35 @@
+.extension-systemMonitor-container {
+ spacing: 5px;
+ padding-left: 5px;
+ padding-right: 5px;
+ padding-bottom: 10px;
+ padding-top: 10px;
+}
+
+.extension-systemMonitor-indicator-area {
+ border: 1px solid #8d8d8d;
+ border-radius: 3px;
+ width: 100px;
+ /* message tray is 72px, so 20px padding of the container,
+ 2px of border, makes it 50px */
+ height: 50px;
+ -grid-color: #575757;
+ -cpu-total-color: rgb(0,154,62);
+ -cpu-user-color: rgb(69,154,0);
+ -cpu-sys-color: rgb(255,253,81);
+ -cpu-iowait-color: rgb(210,148,0);
+ -mem-user-color: rgb(210,148,0);
+ -mem-cached-color: rgb(90,90,90);
+ -mem-other-color: rgb(205,203,41);
+ background-color: #1e1e1e;
+}
+
+.extension-systemMonitor-indicator-label {
+ border-radius: 7px;
+ padding: 4px 12px;
+ background-color: rgba(0,0,0,0.9);
+ text-align: center;
+ -y-offset: 8px;
+ font-size: 9pt;
+ font-weight: bold;
+}
--
2.14.2


From 529c0c1da0259953130a0e098820854336b1c87e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Wed, 17 May 2017 19:31:58 +0200
Subject: [PATCH 2/4] systemMonitor: Move indicators to calendar

The message tray joined the invisible choir, so we have to find
a new home for the extension UI. The message list in the calendar
drop-down looks like the best option, given that it replaced the
old tray (and also took over the old keyboard shortcut to bring
it up quickly).
---
extensions/systemMonitor/extension.js | 56 ++++++++++++++++-----------------
extensions/systemMonitor/stylesheet.css | 14 ---------
2 files changed, 28 insertions(+), 42 deletions(-)

diff --git a/extensions/systemMonitor/extension.js b/extensions/systemMonitor/extension.js
index 58a2f57..01146fa 100644
--- a/extensions/systemMonitor/extension.js
+++ b/extensions/systemMonitor/extension.js
@@ -4,10 +4,12 @@ const Clutter = imports.gi.Clutter;
const GTop = imports.gi.GTop;
const Lang = imports.lang;
const Mainloop = imports.mainloop;
+const Signals = imports.signals;
const St = imports.gi.St;
const Shell = imports.gi.Shell;
const Main = imports.ui.main;
+const MessageList = imports.ui.messageList;
const Tweener = imports.ui.tweener;
const Gettext = imports.gettext.domain('gnome-shell-extensions');
@@ -29,18 +31,21 @@ const Indicator = new Lang.Class({
_init: function() {
this._initValues();
- this.drawing_area = new St.DrawingArea({ reactive: true });
+ this.drawing_area = new St.DrawingArea();
this.drawing_area.connect('repaint', Lang.bind(this, this._draw));
- this.drawing_area.connect('button-press-event', function() {
+
+ this.actor = new St.Button({ style_class: "message message-content extension-systemMonitor-indicator-area",
+ x_expand: true, x_fill: true,
+ y_fill: true, can_focus: true });
+ this.actor.add_actor(this.drawing_area);
+
+ this.actor.connect('clicked', function() {
let app = Shell.AppSystem.get_default().lookup_app('gnome-system-monitor.desktop');
app.open_new_window(-1);
- return true;
- });
- this.actor = new St.Bin({ style_class: "extension-systemMonitor-indicator-area",
- reactive: true, track_hover: true,
- x_fill: true, y_fill: true });
- this.actor.add_actor(this.drawing_area);
+ Main.overview.hide();
+ Main.panel.closeCalendar();
+ });
this._timeout = Mainloop.timeout_add(INDICATOR_UPDATE_INTERVAL, Lang.bind(this, function () {
this._updateValues();
@@ -73,6 +78,7 @@ const Indicator = new Lang.Class({
let y = stageY - this.label.get_height() - yOffset;
this.label.set_position(x, y);
+ this.label.get_parent().set_child_above_sibling(this.label, null);
Tweener.addTween(this.label,
{ opacity: 255,
time: ITEM_LABEL_SHOW_TIME,
@@ -100,6 +106,14 @@ const Indicator = new Lang.Class({
});
},
+ /* MessageList.Message boilerplate */
+ canClose: function() {
+ return false;
+ },
+
+ clear: function() {
+ },
+
destroy: function() {
Mainloop.source_remove(this._timeout);
@@ -194,6 +208,7 @@ const Indicator = new Lang.Class({
}
}
});
+Signals.addSignalMethods(Indicator.prototype); // For MessageList.Message compat
const CpuIndicator = new Lang.Class({
Name: 'SystemMonitor.CpuIndicator',
@@ -302,9 +317,7 @@ const Extension = new Lang.Class({
},
enable: function() {
- this._box = new St.BoxLayout({ style_class: 'extension-systemMonitor-container',
- x_align: Clutter.ActorAlign.START,
- x_expand: true });
+ this._section = new MessageList.MessageListSection(_("System Monitor"));
this._indicators = [ ];
for (let i = 0; i < INDICATORS.length; i++) {
@@ -313,31 +326,18 @@ const Extension = new Lang.Class({
indicator.actor.connect('notify::hover', Lang.bind(this, function() {
this._onHover(indicator);
}));
- this._box.add_actor(indicator.actor);
+ this._section.addMessage(indicator, false);
this._indicators.push(indicator);
}
- this._boxHolder = new St.BoxLayout({ x_expand: true,
- y_expand: true,
- x_align: Clutter.ActorAlign.START,
- });
- let menuButton = Main.messageTray._messageTrayMenuButton.actor;
- Main.messageTray.actor.remove_child(menuButton);
- Main.messageTray.actor.add_child(this._boxHolder);
-
- this._boxHolder.add_child(this._box);
- this._boxHolder.add_child(menuButton);
+ Main.panel.statusArea.dateMenu._messageList._addSection(this._section);
+ this._section.actor.get_parent().set_child_at_index(this._section.actor, 0);
},
disable: function() {
this._indicators.forEach(function(i) { i.destroy(); });
- let menuButton = Main.messageTray._messageTrayMenuButton.actor;
- this._boxHolder.remove_child(menuButton);
- Main.messageTray.actor.add_child(menuButton);
-
- this._box.destroy();
- this._boxHolder.destroy();
+ Main.panel.statusArea.dateMenu._messageList._removeSection(this._section);
},
_onHover: function (item) {
diff --git a/extensions/systemMonitor/stylesheet.css b/extensions/systemMonitor/stylesheet.css
index 13f95ec..978ac12 100644
--- a/extensions/systemMonitor/stylesheet.css
+++ b/extensions/systemMonitor/stylesheet.css
@@ -1,17 +1,4 @@
-.extension-systemMonitor-container {
- spacing: 5px;
- padding-left: 5px;
- padding-right: 5px;
- padding-bottom: 10px;
- padding-top: 10px;
-}
-
.extension-systemMonitor-indicator-area {
- border: 1px solid #8d8d8d;
- border-radius: 3px;
- width: 100px;
- /* message tray is 72px, so 20px padding of the container,
- 2px of border, makes it 50px */
height: 50px;
-grid-color: #575757;
-cpu-total-color: rgb(0,154,62);
@@ -21,7 +8,6 @@
-mem-user-color: rgb(210,148,0);
-mem-cached-color: rgb(90,90,90);
-mem-other-color: rgb(205,203,41);
- background-color: #1e1e1e;
}
.extension-systemMonitor-indicator-label {
--
2.14.2


From 77669f312fcd4cdc823c74fecb12480fb5e9769f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 18 May 2017 16:20:07 +0200
Subject: [PATCH 3/4] systemMonitor: Handle clicks on section title

While on 3.24.x only the event section still has a clickable title,
it's a generic message list feature in previous versions. It's easy
enough to support with a small subclass, so use that instead of
the generic baseclass.

Fixes: #3
---
extensions/systemMonitor/extension.js | 20 +++++++++++++++++++-
1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/extensions/systemMonitor/extension.js b/extensions/systemMonitor/extension.js
index 01146fa..cc49cbb 100644
--- a/extensions/systemMonitor/extension.js
+++ b/extensions/systemMonitor/extension.js
@@ -303,6 +303,24 @@ const MemoryIndicator = new Lang.Class({
}
});
+const SystemMonitorSection = new Lang.Class({
+ Name: 'SystemMonitorSection',
+ Extends: MessageList.MessageListSection,
+
+ _init: function() {
+ this.parent(_("System Monitor"));
+ },
+
+ _onTitleClicked: function() {
+ this.parent();
+
+ let appSys = Shell.AppSystem.get_default();
+ let app = appSys.lookup_app('gnome-system-monitor.desktop');
+ if (app)
+ app.open_new_window(-1);
+ }
+});
+
const INDICATORS = [CpuIndicator, MemoryIndicator];
const Extension = new Lang.Class({
@@ -317,7 +335,7 @@ const Extension = new Lang.Class({
},
enable: function() {
- this._section = new MessageList.MessageListSection(_("System Monitor"));
+ this._section = new SystemMonitorSection();
this._indicators = [ ];
for (let i = 0; i < INDICATORS.length; i++) {
--
2.14.2


From 7ba627fcc4646366c851fb0e4a4aa0ddf521b6b7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 18 May 2017 18:00:17 +0200
Subject: [PATCH 4/4] systemMonitor: Provide classic styling

The indicator tooltips currently don't work out in classic mode
(dark text on dark background), so provide some mode-specific
style.

Fixes: #4
---
extensions/systemMonitor/Makefile.am | 6 ++++++
extensions/systemMonitor/classic.css | 6 ++++++
2 files changed, 12 insertions(+)
create mode 100644 extensions/systemMonitor/classic.css

diff --git a/extensions/systemMonitor/Makefile.am b/extensions/systemMonitor/Makefile.am
index 50ce6d2..64a61df 100644
--- a/extensions/systemMonitor/Makefile.am
+++ b/extensions/systemMonitor/Makefile.am
@@ -1,3 +1,9 @@
EXTENSION_ID = systemMonitor
+EXTRA_MODULES =
+
+if CLASSIC_MODE
+ EXTRA_MODULES += classic.css
+endif
+
include ../../extension.mk
diff --git a/extensions/systemMonitor/classic.css b/extensions/systemMonitor/classic.css
new file mode 100644
index 0000000..946863d
--- /dev/null
+++ b/extensions/systemMonitor/classic.css
@@ -0,0 +1,6 @@
+@import url("stylesheet.css");
+
+.extension-systemMonitor-indicator-label {
+ background-color: rgba(237,237,237,0.9);
+ border: 1px solid #a1a1a1;
+}
--
2.14.2

859
SPECS/gnome-shell-extensions.spec

@ -0,0 +1,859 @@
%global major_version %%(cut -d "." -f 1-2 <<<%{version})
# Minimum GNOME Shell version supported
%global min_gs_version %%(cut -d "." -f 1-3 <<<%{version})

%global pkg_prefix gnome-shell-extension

Name: gnome-shell-extensions
Version: 3.26.2
Release: 3%{?dist}
Summary: Modify and extend GNOME Shell functionality and behavior

Group: User Interface/Desktops
# The entire source code is GPLv2+ except lib/convenience.js which is BSD
License: GPLv2+ and BSD
URL: http://wiki.gnome.org/Projects/GnomeShell/Extensions
Source0: http://ftp.gnome.org/pub/GNOME/sources/%{name}/%{major_version}/%{name}-%{version}.tar.xz
# BuildRequires: gnome-common
BuildRequires: autoconf automake
BuildRequires: gettext >= 0.19.6
BuildRequires: git
BuildRequires: pkgconfig(gnome-desktop-3.0)
BuildRequires: pkgconfig(libgtop-2.0)
Requires: gnome-shell >= %{min_gs_version}
BuildArch: noarch

Patch1: 0001-Update-style.patch
Patch2: 0001-classic-shade-panel-in-overview.patch
Patch3: 0001-apps-menu-add-logo-icon-to-Applications-menu.patch
Patch4: add-extra-extensions.patch
Patch5: 0001-apps-menu-Explicitly-set-label_actor.patch
Patch6: resurrect-system-monitor.patch
Patch7: 0001-loginDialog-make-info-messages-themed.patch
Patch8: apps-menu-follow-sort-order.patch
Patch9: apps-menu-support-separators.patch
Patch10: classic-style-fixes.patch
Patch11: 0001-Include-top-icons-in-classic-session.patch

%description
GNOME Shell Extensions is a collection of extensions providing additional and
optional functionality to GNOME Shell.

Enabled extensions:
* alternate-tab
* apps-menu
* auto-move-windows
* drive-menu
* launch-new-instance
* native-window-placement
* places-menu
* screenshot-window-sizer
* systemMonitor
* updates-dialog
* user-theme
* window-list
* windowsNavigator
* workspace-indicator


%package -n %{pkg_prefix}-common
Summary: Files common to GNOME Shell Extensions
Group: User Interface/Desktops
License: GPLv2+
Requires: gnome-shell >= %{min_gs_version}
# Dock extension no longer provided by GNOME Shell extensions >= 3.7.1
Obsoletes: %{pkg_prefix}-dock < 3.7.1
# Alternative-status-menu extension no longer provided by GNOME Shell extensions >= 3.9.5
Obsoletes: %{pkg_prefix}-alternative-status-menu < 3.9.5
# Xrandr-indicator extension no longer provided by GNOME Shell extensions >= 3.9.5
Obsoletes: %{pkg_prefix}-xrandr-indicator < 3.9.90
# Obsolete extensions dropped in favor of schema overrides by upstream
Obsoletes: %{pkg_prefix}-default-min-max < 3.9.3-1
Obsoletes: %{pkg_prefix}-static-workspaces < 3.9.3-1

%description -n %{pkg_prefix}-common
GNOME Shell Extensions is a collection of extensions providing additional and
optional functionality to GNOME Shell.

This package provides common data files shared by various extensions.


%package -n gnome-classic-session
Summary: GNOME "classic" mode session
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-alternate-tab = %{version}-%{release}
Requires: %{pkg_prefix}-apps-menu = %{version}-%{release}
Requires: %{pkg_prefix}-launch-new-instance = %{version}-%{release}
Requires: %{pkg_prefix}-places-menu = %{version}-%{release}
Requires: %{pkg_prefix}-top-icons = %{version}-%{release}
Requires: %{pkg_prefix}-window-list = %{version}-%{release}
Requires: nautilus
# Obsolete fallback mode components
Obsoletes: gnome-applets < 1:3.5.92-5
%global gnome_applet_sensors_obsolete_ver 3.0.0-6
Obsoletes: gnome-applet-sensors < %{gnome_applet_sensors_obsolete_ver}
Obsoletes: gnome-applet-sensors-devel < %{gnome_applet_sensors_obsolete_ver}
%global gnome_panel_obsolete_ver 3.6.2-7
Obsoletes: gnome-panel < %{gnome_panel_obsolete_ver}
Obsoletes: gnome-panel-devel < %{gnome_panel_obsolete_ver}
Obsoletes: gnome-panel-libs < %{gnome_panel_obsolete_ver}

%description -n gnome-classic-session
This package contains the required components for the GNOME Shell "classic"
mode, which aims to provide a GNOME 2-like user interface.


%package -n %{pkg_prefix}-alternate-tab
Summary: Classic Alt+Tab behavior for GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-alternate-tab
This GNOME Shell extension changes Alt+Tab to be window-based instead of
app-based.


%package -n %{pkg_prefix}-apps-menu
Summary: Application menu for GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}
Requires: gnome-menus

%description -n %{pkg_prefix}-apps-menu
This GNOME Shell extension adds a GNOME 2.x style menu for applications.


%package -n %{pkg_prefix}-auto-move-windows
Summary: Assign specific workspaces to applications in GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-auto-move-windows
This GNOME Shell extension enables easy workspace management. A specific
workspace can be assigned to each application as soon as it creates a window, in
a manner configurable with a GSettings key.


%package -n %{pkg_prefix}-dash-to-dock
Summary: Show the dash outside the activities overview
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-dash-to-dock
This GNOME Shell extension makes the dash available outside the activities overview.


%package -n %{pkg_prefix}-drive-menu
Summary: Drive status menu for GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-drive-menu
This GNOME Shell extension provides a panel status menu for accessing and
unmounting removable devices.


%package -n %{pkg_prefix}-launch-new-instance
Summary: Always launch a new application instance for GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-launch-new-instance
This GNOME Shell extension modifies the behavior of clicking in the dash and app
launcher to always launch a new application instance.


%package -n %{pkg_prefix}-native-window-placement
Summary: Native window placement for GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-native-window-placement
This GNOME Shell extension provides additional configurability for the window
layout in the overview, including a mechanism similar to KDE4.


%package -n %{pkg_prefix}-no-hot-corner
Summary: Disable the hot corner in GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-no-hot-corner
This GNOME Shell extension disables the hot corner in the top bar.


%package -n %{pkg_prefix}-panel-favorites
Summary: Favorite launchers in GNOME Shell's top bar
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-panel-favorites
This GNOME Shell extension adds favorite launchers to the top bar.


%package -n %{pkg_prefix}-places-menu
Summary: Places status menu for GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-places-menu
This GNOME Shell extension add a system status menu for quickly navigating
places in the system.


%package -n %{pkg_prefix}-screenshot-window-sizer
Summary: Screenshot window sizer for GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-screenshot-window-sizer
This GNOME Shell extension allows to easily resize windows for GNOME Software
screenshots.


%package -n %{pkg_prefix}-systemMonitor
Summary: System Monitor for GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}
# Should be pulled in by control-center, but in case someone tries for a
# minimalist gnome-shell installation
Requires: libgtop2

%description -n %{pkg_prefix}-systemMonitor
This GNOME Shell extension is a message tray indicator for CPU and memory usage



%package -n %{pkg_prefix}-top-icons
Summary: Show legacy icons on top
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-top-icons
This GNOME Shell extension moves legacy tray icons into the top bar.

%package -n %{pkg_prefix}-updates-dialog
Summary: Show a modal dialog when there are software updates
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-updates-dialog
This GNOME Shell extension shows a modal dialog when there are software updates

%package -n %{pkg_prefix}-user-theme
Summary: Support for custom themes in GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-user-theme
This GNOME Shell extension enables loading a GNOME Shell theme from
~/.themes/<name>/gnome-shell/.


%package -n %{pkg_prefix}-window-list
Summary: Display a window list at the bottom of the screen in GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-window-list
This GNOME Shell extension displays a window list at the bottom of the screen.


%package -n %{pkg_prefix}-windowsNavigator
Summary: Support for keyboard selection of windows and workspaces in GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-windowsNavigator
This GNOME Shell extension enables keyboard selection of windows and workspaces
in overlay mode, by pressing the Alt and Ctrl key respectively.


%package -n %{pkg_prefix}-workspace-indicator
Summary: Workspace indicator for GNOME Shell
Group: User Interface/Desktops
License: GPLv2+
Requires: %{pkg_prefix}-common = %{version}-%{release}

%description -n %{pkg_prefix}-workspace-indicator
This GNOME Shell extension add a system status menu for quickly changing
workspaces.


%prep
%autosetup -S git


%build
autoreconf -f
# In case we build from a Git checkout
[ -x autogen.sh ] && NOCONFIGURE=1 ./autogen.sh
%configure --enable-extensions="all"
make %{?_smp_mflags}


%install
%make_install

# Drop useless example extension
rm -r $RPM_BUILD_ROOT%{_datadir}/gnome-shell/extensions/example*/
rm $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.example.gschema.xml

%find_lang %{name}


%files -n %{pkg_prefix}-common -f %{name}.lang
%doc COPYING NEWS README


%files -n gnome-classic-session
%{_datadir}/gnome-session/sessions/gnome-classic.session
%{_datadir}/gnome-shell/modes/classic.json
%{_datadir}/gnome-shell/theme/*.svg
%{_datadir}/gnome-shell/theme/gnome-classic-high-contrast.css
%{_datadir}/gnome-shell/theme/gnome-classic.css
%{_datadir}/xsessions/gnome-classic.desktop
%{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.classic-overrides.gschema.xml

%files -n %{pkg_prefix}-alternate-tab
%{_datadir}/gnome-shell/extensions/alternate-tab*/


%files -n %{pkg_prefix}-apps-menu
%{_datadir}/gnome-shell/extensions/apps-menu*/


%files -n %{pkg_prefix}-auto-move-windows
%{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.auto-move-windows.gschema.xml
%{_datadir}/gnome-shell/extensions/auto-move-windows*/

%files -n %{pkg_prefix}-dash-to-dock
%{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.dash-to-dock.gschema.xml
%{_datadir}/gnome-shell/extensions/dash-to-dock*/

%files -n %{pkg_prefix}-drive-menu
%{_datadir}/gnome-shell/extensions/drive-menu*/


%files -n %{pkg_prefix}-launch-new-instance
%{_datadir}/gnome-shell/extensions/launch-new-instance*/


%files -n %{pkg_prefix}-native-window-placement
%{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.native-window-placement.gschema.xml
%{_datadir}/gnome-shell/extensions/native-window-placement*/

%files -n %{pkg_prefix}-no-hot-corner
%{_datadir}/gnome-shell/extensions/no-hot-corner*/

%files -n %{pkg_prefix}-panel-favorites
%{_datadir}/gnome-shell/extensions/panel-favorites*/

%files -n %{pkg_prefix}-places-menu
%{_datadir}/gnome-shell/extensions/places-menu*/


%files -n %{pkg_prefix}-screenshot-window-sizer
%{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml
%{_datadir}/gnome-shell/extensions/screenshot-window-sizer*/


%files -n %{pkg_prefix}-systemMonitor
%{_datadir}/gnome-shell/extensions/systemMonitor*/


%files -n %{pkg_prefix}-top-icons
%{_datadir}/gnome-shell/extensions/top-icons*/


%files -n %{pkg_prefix}-updates-dialog
%{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.updates-dialog.gschema.xml
%{_datadir}/gnome-shell/extensions/updates-dialog*/


%files -n %{pkg_prefix}-user-theme
%{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.user-theme.gschema.xml
%{_datadir}/gnome-shell/extensions/user-theme*/


%files -n %{pkg_prefix}-window-list
%{_datadir}/gnome-shell/extensions/window-list*/
%{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.window-list.gschema.xml


%files -n %{pkg_prefix}-windowsNavigator
%{_datadir}/gnome-shell/extensions/windowsNavigator*/


%files -n %{pkg_prefix}-workspace-indicator
%{_datadir}/gnome-shell/extensions/workspace-indicator*/


%postun -n gnome-classic-session
if [ $1 -eq 0 ]; then
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :
fi

%posttrans -n gnome-classic-session
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :


%postun -n %{pkg_prefix}-auto-move-windows
if [ $1 -eq 0 ]; then
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :
fi

%posttrans -n %{pkg_prefix}-auto-move-windows
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :


%postun -n %{pkg_prefix}-dash-to-dock
if [ $1 -eq 0 ]; then
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :
fi

%posttrans -n %{pkg_prefix}-dash-to-dock
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :


%postun -n %{pkg_prefix}-native-window-placement
if [ $1 -eq 0 ]; then
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :
fi

%posttrans -n %{pkg_prefix}-native-window-placement
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :


%postun -n %{pkg_prefix}-screenshot-window-sizer
if [ $1 -eq 0 ]; then
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :
fi

%posttrans -n %{pkg_prefix}-screenshot-window-sizer
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :


%postun -n %{pkg_prefix}-updates-dialog
if [ $1 -eq 0 ]; then
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :
fi

%posttrans -n %{pkg_prefix}-updates-dialog
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :


%postun -n %{pkg_prefix}-user-theme
if [ $1 -eq 0 ]; then
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :
fi

%posttrans -n %{pkg_prefix}-user-theme
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :


%postun -n %{pkg_prefix}-window-list
if [ $1 -eq 0 ]; then
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :
fi

%posttrans -n %{pkg_prefix}-window-list
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &>/dev/null || :


%changelog
* Fri Feb 23 2018 Florian Müllner <fmuellner@redhat.com> - 3.26.2-3
- Enable top-icons extension in classic mode
Resolves: #1548446

* Wed Feb 07 2018 Florian Müllner <fmuellner@redhat.com> - 3.26.2-2
- Fix notification legibility in classic mode
Resolves: #1507457
- Fix stray icon shadows in classic mode
Resolves: #1530654

* Fri Nov 03 2017 Kalev Lember <klember@redhat.com> - 3.26.2-1
- Update to 3.26.2
- Related: #1505743

* Tue Oct 17 2017 Florian Müllner <fmuellner@redhat.com> - 3.26.1-1
- apps-menu: Support separators
Resolves: #1435074

* Tue Oct 17 2017 Florian Müllner <fmuellner@redhat.com> - 3.26.1-1
- apps-menu: Follow sort order
Resolves: #1435073

* Fri Oct 06 2017 Florian Müllner <fmuellner@redhat.com> - 3.26.1-1
- Update to 3.26.1
Related: #1481381

* Mon Jun 26 2017 Ray Strode <rstrode@redhat.com> - 3.22.2-10
- Fix pam info messages at the unlock screen
Related: #1449359

* Sat Jun 24 2017 Florian Müllner <fmuellner@redhat.com> - 3.22.3-9
- Update dash-to-dock to latest upstream
- Resolves: #1464614

* Wed May 17 2017 Florian Müllner <fmuellner@redhat.com> - 3.22.3-8
- Resurrect system monitor extension
- Resolves: #1452319

* Fri Apr 28 2017 Florian Müllner <fmuellner@redhat.com> - 3.22.3-7
- Include DND improvements from upstream
- Resolves: #1236601

* Wed Apr 05 2017 Florian Müllner <fmuellner@redhat.com> - 3.22.2-6
- Update last patch to not rely on newer JS API
- Resolves: #1236601

* Tue Mar 21 2017 Florian Müllner <fmuellner@redhat.com> - 3.22.2-5
- Allow creating desktop launchers via DND from apps menu
- Resolves: #1236601

* Tue Mar 14 2017 Florian Müllner <fmuellner@redhat.com> - 3.22.2-4
- Fix downstream branding
- Resolves: #1386960

* Tue Mar 14 2017 Florian Müllner <fmuellner@redhat.com> - 3.22.2-3
- Hide workspace indicator in window list if there's just 1 workspace
- Resolves: #1414817

* Tue Mar 14 2017 Florian Müllner <fmuellner@redhat.com> - 3.22.2-2
- Re-add downstream patches
- Resolves: #1386960

* Wed Nov 16 2016 Kalev Lember <klember@redhat.com> - 3.22.2-1
- Update to 3.22.2
- Resolves: #1386960

* Wed Sep 07 2016 Florian Müllner <fmuellner@redhat.com> - 3.14.4-21
- Improve menu category accessibility further
Related: rhbz#1263128

* Fri Jul 08 2016 Florian Müllner <fmuellner@redhat.com> - 3.14.4-20
- Fix handling of menu entries from non-standard locations
Resolves: #1353249

* Tue Jun 28 2016 Florian Müllner <fmuellner@redhat.com> - 3.14.4-19
- Update translations
Resolves: #1304265

* Fri Jun 10 2016 Florian Müllner <fmuellner@redhat.com> - 3.14.4-18
- Adjust to changes from backported gnome-shell patches
Resolves: #1343953

* Thu May 12 2016 Florian Müllner <fmuellner@redhat.com> - 3.14.4-17
- Fix updates-dialog schema errors
Related: rhbz#1302864

* Thu Mar 17 2016 Florian Müllner <fmuellner@redhat.com> - 3.14.4-16
- Fix menu category accessibility
Related: rhbz#1263128

* Fri Mar 04 2016 Florian Müllner <fmuellner@redhat.com> - 3.14.4-15
- Add updates-dialog extension
Related: rhbz#1302864

* Tue Sep 22 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-14
- Fix rebase error in last patch series
Related: rhbz#1263368

* Fri Sep 18 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-13
- Add option to display window-list on all monitors
Resolves: rhbz#1263368

* Fri Sep 04 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-12
- Fix window list scaling in classic mode
Resolves: rhbz#1229324

* Fri Sep 04 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-11
- Fix apps-menu taking over panel shortcut
Resolves: rhbz#1255702

* Thu Sep 03 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-10
- Add back nautilus dependency to classic-session
Resolves: rhbz#1256722

* Fri Jul 31 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-9
- Number workspaces consistently
Resolves: rhbz#1249018

* Thu Jul 30 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-8
- Fix window list sorting
Resolves: rhbz#1025370

* Fri Jul 24 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-7
- Support headless mode
Related: rhbz#1243856

* Thu Jun 25 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-6
- Scale window list with text
Resolves: rhbz#1229324

* Wed Jun 17 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-5
- Fix failure of apps-menu to open applications
Resolves: rhbz#1229676

* Wed May 20 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-4
- Include additional (popular) extensions
Resolves: rhbz#1208513

* Thu May 14 2015 Matthias Clasen <mclasen@redhat.com> - 3.14.4-3
- Make the apps-menu package depend on gnome-menus
- Resolves: #1221531

* Tue May 12 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-2
- Backport menu arrow fix from 3.16
- Related: #1174574

* Mon Mar 23 2015 Florian Müllner <fmuellner@redhat.com> - 3.14.4-1
- Update to 3.14.4
- Resolves: #1174574

* Tue Oct 07 2014 David King <dking@redhat.com> 3.8.4-12
- Rebuild for libgtop2 soversion change (#1082123)

* Wed May 28 2014 Lubos Kocman <lkocman@redhat.com> - 3.8.4-11
- Resolves: #1100332 (bump release against 0day)

* Tue Feb 19 2014 Florian Müllner <fmuellner@redhat.com> - 3.8.4-10
- Fix odd menu behavior in window list
Resolves: #1025374

* Thu Feb 13 2014 Florian Müllner <fmuellner@redhat.com> - 3.8.4-9
- Fix context menu backport
Resolves: #1025374

* Mon Feb 10 2014 Debarshi Ray <rishi@fedoraproject.org> - 3.8.4-8
- Add Requires: nautilus
Resolves: #1053753

* Tue Jan 21 2014 Ray Strode <rstrode@redhat.com> - 3.8.4-7
- Add logo to apps menu
Resolves: #1052990

* Wed Jan 15 2014 Debarshi Ray <rishi@fedoraproject.org> - 3.8.4-6
- Shade the overview panel
Resolves: #1053069

* Tue Jan 07 2014 Ray Strode <rstrode@redhat.com> - 3.8.4-5
- Use environment variable for session mode
Related: #1031188

* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 3.8.4-4
- Mass rebuild 2013-12-27

* Thu Dec 12 2013 Matthias Clasen <mclasen@redhat.com> - 3.8.4-3
- Update translations
Resolves: #1030349

* Thu Oct 24 2013 Florian Müllner <fmuellner@redhat.com> - 3.8.4-2
- Backport some classic-mode improvements from 3.10 cycle:
- context menu in window list (close, minimize, maximize)
- use same order for favorites in applications menu as in dash

* Thu Sep 12 2013 Debarshi Ray <rishi@fedoraproject.org> - 3.8.4-1
- Update to 3.8.4

* Sun Aug 04 2013 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.8.3.1-1
- Update to 3.8.3.1
- Drop places-volume.patch patch, merged upstream

* Mon Jun 17 2013 Matthias Clasen <mclasen@redhat.com> - 3.8.3-2
- Fix a problem notices in updates-testing with the places extension

* Sun Jun 09 2013 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.8.3-1
- Update to 3.8.3
- Drop mini-extensions default-min-max and static-workspaces, no longer
available (see https://bugzilla.gnome.org/show_bug.cgi?id=701717)

* Tue May 14 2013 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.8.2-1
- Update to 3.8.2
- Drop useless dependency on libgtop for static-workspaces subpackage

* Fri May 10 2013 Kalev Lember <kalevlember@gmail.com> - 3.8.1-3
- Obsolete gnome-applet-sensors

* Wed May 01 2013 Kalev Lember <kalevlember@gmail.com> - 3.8.1-2
- Obsolete a few more fallback mode packages
- Remove gnome-panel provides

* Tue Apr 16 2013 Matthias Clasen <mclasen@redhat.com> - 3.8.1-1
- Update to 3.8.1

* Tue Mar 26 2013 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.8.0-1
- Update to 3.8.0

* Tue Mar 19 2013 Ray Strode <rstrode@redhat.com> 3.7.92-1
- Update to 3.7.92

* Tue Mar 05 2013 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.7.91-1
- Update to 3.7.91

* Sat Mar 02 2013 Adel Gadllah <adel.gadllah@gmail.com> - 3.7.90-2
- Obsolete gnome-panel

* Fri Feb 22 2013 Kalev Lember <kalevlember@gmail.com> - 3.7.90-1
- Update to 3.7.90

* Thu Feb 07 2013 Kalev Lember <kalevlember@gmail.com> - 3.7.5.1-2
- Depend on gnome-shell 3.7.5, there's no 3.7.5.1

* Thu Feb 07 2013 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.7.5.1-1
- Update to 3.7.5
- Enable new launch-new-instance and window-list extensions, and add them in the
classic-mode extension set
- Re-add places-menu in the classic-mode extension set

* Wed Jan 16 2013 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.7.4-1
- Update to 3.7.4
- places-menu extension no longer part of the classic-mode extension set

* Tue Jan 01 2013 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.7.3-1
- Update to 3.7.3
- Enable new default-min-max and static-workspaces extensions
- Provide new subpackage gnome-classic-session
- Revamp summaries and descriptions

* Tue Oct 30 2012 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.7.1-1
- Update to 3.7.1
- Drop dock and gajim extensions, no longer provided

* Tue Oct 30 2012 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.6.1-1
- Update to 3.6.1

* Tue Oct 02 2012 Mohamed El Morabity <melmorabity@fedorapeople.org> - 3.6.0-1
- Update to 3.6.0

* Thu Sep 06 2012 Mohamed El Morabity <melmorabity@fedorapeople.org> - 3.5.91-1
- Update to 3.5.91

* Wed Aug 29 2012 Mohamed El Morabity <melmorabity@fedorapeople.org> - 3.5.90-1
- Update to 3.5.90

* Sat Aug 11 2012 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.5.5-1
- Update to 3.5.5

* Sun Jul 22 2012 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.5.4-1
- Update to 3.5.4

* Wed Jul 18 2012 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.5.2-1
- Update to 3.5.2
- Drop useless Provides/Obsoletes

* Sat Mar 24 2012 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.4.0-1
- Update to 3.4.0
- Minor spec fixes

* Sat Mar 24 2012 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.3.92-1
- Update to 3.3.92

* Tue Feb 28 2012 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.3.90-1
- Update to 3.3.90

* Thu Feb 16 2012 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.3.5-1
- Update to 3.3.5
- Spec cleanup

* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild

* Wed Nov 30 2011 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.3.2-1
- Update to 3.3.2

* Wed Nov 30 2011 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.2.1-1
- Update to 3.2.1
- Fix alternative-status-menu extension crash when login

* Wed Nov 09 2011 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.2.0-2
- Fix dock and alternate-tab extensions
- Fix GNOME Shell version to work with GS 3.2.1

* Mon Oct 03 2011 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.2.0-1
- Update to 3.2.0

* Mon Sep 26 2011 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.1.91-3.20111001gite102c0c6
- Update to a newer git snapshot
- Fix GNOME Shell version to work with GS 3.2.0
- Add Requires on GS 3.2.0 or above to gnome-shell-common

* Wed Sep 14 2011 Mohamed El Morabity <melmorabity@fedorapeople.org> - 3.1.91-2
- Enable xrandr-indicator and workspace-indicator extensions

* Mon Sep 12 2011 Michel Salim <salimma@fedoraproject.org> - 3.1.91-1
- Update to 3.1.91
- add more documentation

* Thu Sep 1 2011 Michel Salim <salimma@fedoraproject.org> - 3.1.4-3.20110830git6b5e3a3e
- Update to git snapshot, for gnome-shell 3.1.90

* Sun Aug 21 2011 Michel Salim <salimma@fedoraproject.org> - 3.1.4-2
- Enable apps-menu extension
- Spec cleanup

* Sun Aug 21 2011 Michel Salim <salimma@fedoraproject.org> - 3.1.4-1
- Update to 3.1.4
- Enable systemMonitor extension
- Prepare xrandr-indicator, commenting out since it does not seem to work yet
- Rename subpackages in line with new guidelines (# 715367)
- Sort subpackages in alphabetical order

* Sat May 28 2011 Timur Kristóf <venemo@fedoraproject.org> - 3.0.2-1.g63dd27cgit
- Update to a newer git snapshot
- Fix RHBZ bug #708230
- Enabled systemMonitor extension, but commented out since the requirements are not available

* Fri May 13 2011 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.0.1-3.03660fgit
- Update to a newer git snapshot
- Enable native-window-placement extension

* Fri May 06 2011 Rahul Sundaram <sundaram@fedoraproject.org> - 3.0.1-2b20cbagit
- Fix description

* Thu May 5 2011 Elad Alfassa <elad@fedoraproject.org> - 3.0.1-1.b20cbagit
- Update to a newer git snapshot
- Enabled the places-menu extension

* Tue Apr 26 2011 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.0.1-1.f016b9git
- Update to a newer git snapshot (post-3.0.1 release)
- Enable drive-menu extension

* Mon Apr 11 2011 Mohamed El Morabity <melmorabity@fedoraproject.org> - 3.0.0-5.6d56cfgit
- Enable auto-move-windows extension

* Sun Apr 10 2011 Rahul Sundaram <sundaram@fedoraproject.org> - 3.0.0-4.6d56cfgit
- Add glib2-devel as build requires

* Sun Apr 10 2011 Rahul Sundaram <sundaram@fedoraproject.org> - 3.0.0-3.6d56cfgit
- Tweak description
- Fix typo in configure

* Sun Apr 10 2011 Rahul Sundaram <sundaram@fedoraproject.org> - 3.0.0-2.6d56cfgit
- Added the user-theme extension
- Patch from Timur Kristóf <venemo@msn.com>

* Fri Apr 08 2011 Rahul Sundaram <sundaram@fedoraproject.org> - 3.0.0-1.6d56cfgit
- Make sure configure doesn't get called twice

* Fri Apr 08 2011 Rahul Sundaram <sundaram@fedoraproject.org> - 3.0.0-0.6d56cfgit
- Initial build
Loading…
Cancel
Save