From 33ec14c1c85580432f8a2d73b76310ab9bef44c3 Mon Sep 17 00:00:00 2001 From: Hylke Bons Date: Wed, 20 Jun 2012 12:07:10 +0100 Subject: [PATCH] build: Use monochrome icons when on Ubuntu. Closes #505 --- NEWS | 1 + SparkleShare/Linux/Pixmaps/icons/Makefile.am | 3 ++ .../icons/ubuntu-mono-dark/Makefile.am | 26 ++++++++++++++++ .../process-syncing-error-24.png} | Bin .../process-syncing-i-24.png} | Bin .../process-syncing-ii-24.png} | Bin .../process-syncing-iii-24.png} | Bin .../process-syncing-iiii-24.png} | Bin .../process-syncing-iiiii-24.png} | Bin .../icons/ubuntu-mono-light/Makefile.am | 26 ++++++++++++++++ .../process-syncing-error-24.png} | Bin .../process-syncing-i-24.png} | Bin .../process-syncing-ii-24.png} | Bin .../process-syncing-iii-24.png} | Bin .../process-syncing-iiii-24.png} | Bin .../process-syncing-iiiii-24.png} | Bin SparkleShare/Linux/SparkleShare.csproj | 29 ++++++++++-------- SparkleShare/Linux/SparkleStatusIcon.cs | 8 ++--- build/icon-theme-installer | 16 ++++++++-- configure.ac | 2 ++ 20 files changed, 92 insertions(+), 19 deletions(-) create mode 100644 SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/Makefile.am rename SparkleShare/Linux/Pixmaps/icons/{process-syncing-error-mono-light-24.png => ubuntu-mono-dark/process-syncing-error-24.png} (100%) rename SparkleShare/Linux/Pixmaps/icons/{process-syncing-mono-light-i-24.png => ubuntu-mono-dark/process-syncing-i-24.png} (100%) rename SparkleShare/Linux/Pixmaps/icons/{process-syncing-mono-light-ii-24.png => ubuntu-mono-dark/process-syncing-ii-24.png} (100%) rename SparkleShare/Linux/Pixmaps/icons/{process-syncing-mono-light-iii-24.png => ubuntu-mono-dark/process-syncing-iii-24.png} (100%) rename SparkleShare/Linux/Pixmaps/icons/{process-syncing-mono-light-iiii-24.png => ubuntu-mono-dark/process-syncing-iiii-24.png} (100%) rename SparkleShare/Linux/Pixmaps/icons/{process-syncing-mono-light-iiiii-24.png => ubuntu-mono-dark/process-syncing-iiiii-24.png} (100%) create mode 100644 SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/Makefile.am rename SparkleShare/Linux/Pixmaps/icons/{process-syncing-error-mono-dark-24.png => ubuntu-mono-light/process-syncing-error-24.png} (100%) rename SparkleShare/Linux/Pixmaps/icons/{process-syncing-mono-dark-i-24.png => ubuntu-mono-light/process-syncing-i-24.png} (100%) rename SparkleShare/Linux/Pixmaps/icons/{process-syncing-mono-dark-ii-24.png => ubuntu-mono-light/process-syncing-ii-24.png} (100%) rename SparkleShare/Linux/Pixmaps/icons/{process-syncing-mono-dark-iii-24.png => ubuntu-mono-light/process-syncing-iii-24.png} (100%) rename SparkleShare/Linux/Pixmaps/icons/{process-syncing-mono-dark-iiii-24.png => ubuntu-mono-light/process-syncing-iiii-24.png} (100%) rename SparkleShare/Linux/Pixmaps/icons/{process-syncing-mono-dark-iiiii-24.png => ubuntu-mono-light/process-syncing-iiiii-24.png} (100%) diff --git a/NEWS b/NEWS index 6bdf8854..5abe70ad 100755 --- a/NEWS +++ b/NEWS @@ -12,6 +12,7 @@ - Show backend error message(s) when on failed project add - Update Growl framework to version 1.3.1: A separate Growl is no longer needed and ready for Mountain Lion's notifications + - Monochrome appindicator icons on Ubuntu Travis: - Rewrote the notification service, now more robust and reliable diff --git a/SparkleShare/Linux/Pixmaps/icons/Makefile.am b/SparkleShare/Linux/Pixmaps/icons/Makefile.am index 841fb80b..c949e4b5 100755 --- a/SparkleShare/Linux/Pixmaps/icons/Makefile.am +++ b/SparkleShare/Linux/Pixmaps/icons/Makefile.am @@ -1,3 +1,6 @@ +SUBDIRS = ubuntu-mono-dark \ + ubuntu-mono-light + theme = hicolor system_themedir = $(datadir)/icons/$(theme) app_themedir = $(pkgdatadir)/icons/$(theme) diff --git a/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/Makefile.am b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/Makefile.am new file mode 100644 index 00000000..3ea62a9f --- /dev/null +++ b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/Makefile.am @@ -0,0 +1,26 @@ +dark_theme = ubuntu-mono-dark +dark_themedir = /usr/share/icons/$(dark_theme) + +dark_theme_icons = \ + status,process-syncing-i-24.png \ + status,process-syncing-ii-24.png \ + status,process-syncing-iii-24.png \ + status,process-syncing-iiii-24.png \ + status,process-syncing-iiiii-24.png \ + status,process-syncing-error-24.png + +install_icon_exec = $(top_srcdir)/build/icon-theme-installer \ + -t "$(dark_theme)" \ + -s "$(srcdir)" \ + -d "x$(DESTDIR)" \ + -m "$(mkinstalldirs)" \ + -x "$(INSTALL_DATA)" + +install-data-local: + @-$(install_icon_exec) -i -b "$(dark_themedir)" $(dark_theme_icons) + +uninstall-hook: + @-$(install_icon_exec) -u -b "$(dark_themedir)" $(dark_theme_icons) + +MAINTAINERCLEANFILES = Makefile.in +EXTRA_DIST = $(wildcard *.png *.svg) diff --git a/SparkleShare/Linux/Pixmaps/icons/process-syncing-error-mono-light-24.png b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/process-syncing-error-24.png similarity index 100% rename from SparkleShare/Linux/Pixmaps/icons/process-syncing-error-mono-light-24.png rename to SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/process-syncing-error-24.png diff --git a/SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-light-i-24.png b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/process-syncing-i-24.png similarity index 100% rename from SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-light-i-24.png rename to SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/process-syncing-i-24.png diff --git a/SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-light-ii-24.png b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/process-syncing-ii-24.png similarity index 100% rename from SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-light-ii-24.png rename to SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/process-syncing-ii-24.png diff --git a/SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-light-iii-24.png b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/process-syncing-iii-24.png similarity index 100% rename from SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-light-iii-24.png rename to SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/process-syncing-iii-24.png diff --git a/SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-light-iiii-24.png b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/process-syncing-iiii-24.png similarity index 100% rename from SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-light-iiii-24.png rename to SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/process-syncing-iiii-24.png diff --git a/SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-light-iiiii-24.png b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/process-syncing-iiiii-24.png similarity index 100% rename from SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-light-iiiii-24.png rename to SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/process-syncing-iiiii-24.png diff --git a/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/Makefile.am b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/Makefile.am new file mode 100644 index 00000000..aa9cf7e8 --- /dev/null +++ b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/Makefile.am @@ -0,0 +1,26 @@ +light_theme = ubuntu-mono-light +light_themedir = /usr/share/icons/$(light_theme) + +light_theme_icons = \ + status,process-syncing-i-24.png \ + status,process-syncing-ii-24.png \ + status,process-syncing-iii-24.png \ + status,process-syncing-iiii-24.png \ + status,process-syncing-iiiii-24.png \ + status,process-syncing-error-24.png + +install_icon_exec = $(top_srcdir)/build/icon-theme-installer \ + -t "$(light_theme)" \ + -s "$(srcdir)" \ + -d "x$(DESTDIR)" \ + -m "$(mkinstalldirs)" \ + -x "$(INSTALL_DATA)" + +install-data-local: + @-$(install_icon_exec) -i -b "$(light_themedir)" $(light_theme_icons) + +uninstall-hook: + @-$(install_icon_exec) -u -b "$(light_themedir)" $(light_theme_icons) + +MAINTAINERCLEANFILES = Makefile.in +EXTRA_DIST = $(wildcard *.png *.svg) diff --git a/SparkleShare/Linux/Pixmaps/icons/process-syncing-error-mono-dark-24.png b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/process-syncing-error-24.png similarity index 100% rename from SparkleShare/Linux/Pixmaps/icons/process-syncing-error-mono-dark-24.png rename to SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/process-syncing-error-24.png diff --git a/SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-dark-i-24.png b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/process-syncing-i-24.png similarity index 100% rename from SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-dark-i-24.png rename to SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/process-syncing-i-24.png diff --git a/SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-dark-ii-24.png b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/process-syncing-ii-24.png similarity index 100% rename from SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-dark-ii-24.png rename to SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/process-syncing-ii-24.png diff --git a/SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-dark-iii-24.png b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/process-syncing-iii-24.png similarity index 100% rename from SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-dark-iii-24.png rename to SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/process-syncing-iii-24.png diff --git a/SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-dark-iiii-24.png b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/process-syncing-iiii-24.png similarity index 100% rename from SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-dark-iiii-24.png rename to SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/process-syncing-iiii-24.png diff --git a/SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-dark-iiiii-24.png b/SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/process-syncing-iiiii-24.png similarity index 100% rename from SparkleShare/Linux/Pixmaps/icons/process-syncing-mono-dark-iiiii-24.png rename to SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/process-syncing-iiiii-24.png diff --git a/SparkleShare/Linux/SparkleShare.csproj b/SparkleShare/Linux/SparkleShare.csproj index 86ea9285..5c5ac4b5 100644 --- a/SparkleShare/Linux/SparkleShare.csproj +++ b/SparkleShare/Linux/SparkleShare.csproj @@ -29,15 +29,22 @@ + gtk-sharp-2.0 + gtk-sharp-2.0 + gtk-sharp-2.0 False + notify-sharp + + + ..\..\..\..\..\..\usr\lib\mono\gac\appindicator-sharp\0.2.0.0__bcae265d1c7ab4c2\appindicator-sharp.dll @@ -57,26 +64,24 @@ - - - - - - - - - - - - + + + + + + + + + + diff --git a/SparkleShare/Linux/SparkleStatusIcon.cs b/SparkleShare/Linux/SparkleStatusIcon.cs index 8d6116b4..8314d15e 100644 --- a/SparkleShare/Linux/SparkleStatusIcon.cs +++ b/SparkleShare/Linux/SparkleStatusIcon.cs @@ -56,7 +56,7 @@ namespace SparkleShare { #if HAVE_APP_INDICATOR this.indicator = new ApplicationIndicator ("sparkleshare", - "process-syncing-sparkleshare-i", Category.ApplicationStatus); + "process-syncing-i", Category.ApplicationStatus); this.indicator.Status = Status.Attention; #else @@ -74,7 +74,7 @@ namespace SparkleShare { Application.Invoke (delegate { if (icon_frame > -1) { #if HAVE_APP_INDICATOR - string icon_name = "process-syncing-sparkleshare-"; + string icon_name = "process-syncing-"; for (int i = 0; i <= icon_frame; i++) icon_name += "i"; @@ -85,9 +85,9 @@ namespace SparkleShare { } else { #if HAVE_APP_INDICATOR - this.indicator.IconName = "sparkleshare-syncing-error"; + this.indicator.IconName = "process-syncing-error"; #else - this.status_icon.Pixbuf = SparkleUIHelpers.GetIcon ("sparkleshare-syncing-error", 24); + this.status_icon.Pixbuf = SparkleUIHelpers.GetIcon ("process-syncing-error", 24); #endif } }); diff --git a/build/icon-theme-installer b/build/icon-theme-installer index 02607882..bf049391 100755 --- a/build/icon-theme-installer +++ b/build/icon-theme-installer @@ -124,11 +124,21 @@ for icon in $@; do if test -z $size; then size=scalable; + + if [[ "${INSTALL_BASE_DIR}" == *ubuntu-mono-* ]]; then + install_dir=${INSTALL_DEST_DIR}${INSTALL_BASE_DIR}/$category/$size + else + install_dir=${INSTALL_DEST_DIR}${INSTALL_BASE_DIR}/$size/$category + fi else - size=${size}x${size}; + if [[ "${INSTALL_BASE_DIR}" == *ubuntu-mono-* ]]; then + install_dir=${INSTALL_DEST_DIR}${INSTALL_BASE_DIR}/$category/$size + else + size=${size}x${size}; + install_dir=${INSTALL_DEST_DIR}${INSTALL_BASE_DIR}/$size/$category + fi fi - - install_dir=${INSTALL_DEST_DIR}${INSTALL_BASE_DIR}/$size/$category + install_path=$install_dir/$install_name if test "x$INSTALL" = "xyes"; then diff --git a/configure.ac b/configure.ac index 29e122f1..9127e8d2 100755 --- a/configure.ac +++ b/configure.ac @@ -143,6 +143,8 @@ SparkleShare/Common/Pixmaps/Makefile SparkleShare/Linux/Makefile SparkleShare/Linux/Pixmaps/Makefile SparkleShare/Linux/Pixmaps/icons/Makefile +SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-dark/Makefile +SparkleShare/Linux/Pixmaps/icons/ubuntu-mono-light/Makefile SparkleShare/Linux/sparkleshare SparkleShare/Linux/Nautilus/Makefile SparkleShare/Linux/Nautilus/sparkleshare-nautilus-extension.py