guibuilder_pel7x64builder0
7 years ago
12 changed files with 16316 additions and 0 deletions
@ -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 |
||||||
|
|
@ -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 |
||||||
|
|
@ -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 |
||||||
|
|
@ -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 |
||||||
|
|
@ -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 |
||||||
|
|
@ -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 |
||||||
|
|
File diff suppressed because it is too large
Load Diff
@ -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 |
||||||
|
|
@ -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 |
||||||
|
|
@ -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 |
||||||
|
|
@ -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 |
||||||
|
|
@ -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…
Reference in new issue