Skip to content

Commit

Permalink
Merge branch 'gtk3.20'
Browse files Browse the repository at this point in the history
  • Loading branch information
ochosi committed Aug 16, 2016
2 parents 06bd49a + 2dfbe50 commit 688b10c
Show file tree
Hide file tree
Showing 44 changed files with 14,977 additions and 5,457 deletions.
12 changes: 11 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,12 @@
*~

Makefile
Makefile.in
aclocal.m4
autom4te.cache/
config.log
config.status
configure
install-sh
missing
gtk.gresource
.sass-cache/
50 changes: 50 additions & 0 deletions Makefile.am
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
EXTRA_DIST = \
LICENSE.CC \
LICENSE.GPL \
README.md

MOSTLYCLEANFILES = \
gtk-3.0/gtk.gresource \
gtk-3.0/gtk-contained.css \
gtk-3.0/gtk-contained-dark.css

themedir = $(datadir)/themes/Greybird
SASS = sass

all: clean compile

clean-local:
rm -rf $(srcdir)/gtk-3.0/.sass-cache

compile:
$(SASS) --update --sourcemap=none $(srcdir)/gtk-3.0
glib-compile-resources --sourcedir=$(srcdir)/gtk-3.0 $(srcdir)/gtk-3.0/gtk.gresource.xml

install-data-hook:
$(MKDIR_P) $(DESTDIR)$(themedir)
$(MKDIR_P) $(DESTDIR)$(themedir)/gtk-3.0
$(MKDIR_P) $(DESTDIR)$(datadir)/themes/Greybird-bright/xfce-notify-4.0
$(MKDIR_P) $(DESTDIR)$(datadir)/themes/Greybird-accessibility/xfwm4
$(MKDIR_P) $(DESTDIR)$(datadir)/themes/Greybird-compact/xfwm4

cp -r $(srcdir)/gtk-2.0 $(DESTDIR)$(themedir)
cp -r $(srcdir)/gtk-3.0 $(DESTDIR)$(themedir)
# cp $(srcdir)/gtk-3.0/gtk.css $(DESTDIR)$(themedir)/gtk-3.0
# cp $(srcdir)/gtk-3.0/gtk.gresource $(DESTDIR)$(themedir)/gtk-3.0
# cp $(srcdir)/gtk-3.0/settings.ini $(DESTDIR)$(themedir)/gtk-3.0
cp -r $(srcdir)/metacity-1 $(DESTDIR)$(themedir)
cp -r $(srcdir)/unity $(DESTDIR)$(themedir)
cp -r $(srcdir)/xfce-notify-4.0 $(DESTDIR)$(themedir)
cp -r $(srcdir)/xfce-notify-4.0_bright/* $(DESTDIR)$(datadir)/themes/Greybird-bright/xfce-notify-4.0
cp -r $(srcdir)/xfwm4 $(DESTDIR)$(themedir)
cp -r $(srcdir)/xfwm4-a11y/* $(DESTDIR)$(datadir)/themes/Greybird-accessibility/xfwm4
cp -r $(srcdir)/xfwm4-compact/* $(DESTDIR)$(datadir)/themes/Greybird-compact/xfwm4
cp $(srcdir)/index.theme $(DESTDIR)$(themedir)
cp $(srcdir)/ubiquity-panel-bg.png $(DESTDIR)$(themedir)
cp $(srcdir)/Greybird.emerald $(DESTDIR)$(themedir)

uninstall-hook:
test -e $(DESTDIR)$(themedir) && rm -rfv $(DESTDIR)$(themedir)
test -e $(DESTDIR)$(datadir)/themes/Greybird-accessibility && rm -rfv $(DESTDIR)$(datadir)/themes/Greybird-accessibility
test -e $(DESTDIR)$(datadir)/themes/Greybird-bright && rm -rfv $(DESTDIR)$(datadir)/themes/Greybird-bright
test -e $(DESTDIR)$(datadir)/themes/Greybird-compact && rm -rfv $(DESTDIR)$(datadir)/themes/Greybird-compact
25 changes: 0 additions & 25 deletions README

This file was deleted.

50 changes: 50 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
Greybird
=======
Desktop Suite for Xfce
----------------------
URL: http://shimmerproject.org/projects/greybird/

Copyright 2009–2016 Simon Steinbeiß, Satyajit Sahoo, Pasi Lallinaho

Greybird is dual-licensed as GPLv2 or later and CC-BY-SA 3.0 or later.

Greybird is the default theme in Xubuntu 11.04 onwards.

The Greybird desktop suite includes:
- Gtk+2 theme
- Gtk+3 theme
- Xfwm4 themes (normal and compact)
- xfce-notifyd theme (dark and bright)
- Emerald theme
- Metacity theme
- Mutter theme
- Unity support

Dependencies for Gtk+2 support:
- gtk2-engines-murrine (>= 0.90)

The Gtk+3 theme uses the builtin engine and consequently has no dependencies.

### Build dependencies ###
Debian or Ubuntu:

`sudo apt install libgdk-pixbuf2.0-dev libglib2.0-bin ruby-sass`

Fedora:

`dnf install gdk-pixbuf2-devel rubygem-sass`

### Install without admin privileges

```
./autogen.sh --prefix=$HOME/.local
make
make install
```

### Install for all users

```
./autogen.sh
make
sudo make install
23 changes: 23 additions & 0 deletions autogen.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#!/bin/sh
set -e

test -n "$srcdir" || srcdir=$(dirname "$0")
test -n "$srcdir" || srcdir=.

olddir=$(pwd)

cd $srcdir

autoreconf --force --install --symlink --warnings=all

cd "$olddir"

if [ "$NOCONFIGURE" = "" ]; then
$srcdir/configure "$@" || exit 1

if [ "$1" = "--help" ]; then exit 0 else
echo "Now type 'make' to compile $PKG_NAME" || exit 1
fi
else
echo "Skipping configure process."
fi
15 changes: 15 additions & 0 deletions configure.ac
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
AC_INIT([Greybird ], 0.0, [https://github.com/shimmerproject/Greybird/issues],
[Greybird], [http://shimmerproject.org/our-projects/greybird/])
AM_INIT_AUTOMAKE([1.11 foreign subdir-objects tar-ustar no-dist-gzip dist-xz -Wno-portability])
AM_SILENT_RULES([yes])

AC_PREFIX_DEFAULT(/usr)
AC_CONFIG_FILES([Makefile])
AC_OUTPUT

AC_MSG_RESULT([
Greybird
========
prefix: ${prefix}
])
2 changes: 2 additions & 0 deletions gtk-3.0/Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
source 'https://rubygems.org'
gem "sass", "~> 3.4.0"
35 changes: 35 additions & 0 deletions gtk-3.0/README
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
Summary
-------

* Do not edit the CSS directly, edit the source SCSS files and process them with SASS (run
`./parse-sass.sh` when you have the required software installed, as described below)
* To be able to use the latest/adequate version of sass, install ruby, gem, sass & bundle.
On Fedora F20, this is done with `sudo dnf install rubygems && gem install bundle && bundle install`
from the same directory this README resides in.

How to tweak the theme
----------------------

Greybird is a complex theme (based on Adwaita), so to keep it maintainable it's written and processed
in SASS.

It is very likely your change will happen in the _common.scss file. That's where all the widget
selectors are defined. Here's a rundown of the "supporting" stylesheets, that are unlikely to be the
right place for a drive by stylesheet fix:

_colors.scss - global color definitions. We keep the number of defined colors to a necessary minimum,
most colors are derived form a handful of basics. It covers both the light variant and
the dark variant.

_colors-public.scss - SCSS colors exported through gtk to allow for 3rd party apps color mixing.

_drawing.scss - drawing helper mixings/functions to allow easier definition of widget drawing under
specific context. This is why Adwaita isn't 15000 LOC.

_common.scss - actual definitions of style for each widget. This is where you are likely to add/remove
your changes.

You can read about SASS at http://sass-lang.com/documentation/. Once you make your changes to the
_common.scss file, you can either run the ./parse-sass.sh script or keep SASS watching for changes as you
edit. This is done by running `bundle exec sass --watch --sourcemap=none .` If sass is out of date, or is
missing, you can install it with `bundle install`.
112 changes: 112 additions & 0 deletions gtk-3.0/_colors-public.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
//apps rely on some named colors to be exported
/* GTK NAMED COLORS
----------------
use responsibly! */

// Sass thinks we're using the colors in the variables as strings and may shoot
// warning, it's innocuous and can be defeated by using "" + $var
/*
widget text/foreground color */
@define-color theme_fg_color #{"" +$fg_color};

/*
text color for entries, views and content in general */
@define-color theme_text_color #{"" +$text_color};

/*
widget base background color */
@define-color theme_bg_color #{"" +$bg_color};

/*
text widgets and the like base background color */
@define-color theme_base_color #{"" +$base_color};

/*
base background color of selections */
@define-color theme_selected_bg_color #{"" +$selected_bg_color};

/*
text/foreground color of selections */
@define-color theme_selected_fg_color #{"" +$selected_fg_color};

/*
base background color of insensitive widgets */
@define-color insensitive_bg_color #{"" +$insensitive_bg_color};

/*
text foreground color of insensitive widgets */
@define-color insensitive_fg_color #{"" +$insensitive_fg_color};

/*
insensitive text widgets and the like base background color */
@define-color insensitive_base_color #{"" +$base_color};

/*
widget text/foreground color on backdrop windows */
@define-color theme_unfocused_fg_color #{"" +$backdrop_fg_color};

/*
text color for entries, views and content in general on backdrop windows */
@define-color theme_unfocused_text_color #{"" +$text_color};

/*
widget base background color on backdrop windows */
@define-color theme_unfocused_bg_color #{"" +$backdrop_bg_color};

/*
text widgets and the like base background color on backdrop windows */
@define-color theme_unfocused_base_color #{"" +$backdrop_base_color};

/*
base background color of selections on backdrop windows */
@define-color theme_unfocused_selected_bg_color #{"" +$selected_bg_color};

/*
text/foreground color of selections on backdrop windows */
@define-color theme_unfocused_selected_fg_color #{"" + $selected_fg_color};

/*
widgets main borders color */
@define-color borders #{"" +$borders_color};

/*
widgets main borders color on backdrop windows */
@define-color unfocused_borders #{"" +$backdrop_borders_color};

/*
these are pretty self explicative */
@define-color warning_color #{"" +$warning_color};
@define-color error_color #{"" +$error_color};
@define-color success_color #{"" +$success_color};
//@define-color destructive_color #{$destructive_color}

//WM

$_wm_highlight: if($variant=='light', $top_hilight, // Sass gets mad if this is
transparentize(black,1)); // done directly in the
// color definition

/*
these colors are exported for the window manager and shouldn't be used in applications,
read if you used those and something break with a version upgrade you're on your own... */
@define-color wm_title shade(#{$fg_color}, 1.8);
@define-color wm_unfocused_title #{$backdrop_fg_color};
@define-color wm_highlight #{"" + $_wm_highlight};
@define-color wm_borders_edge #{"" + $borders_edge};

@define-color wm_bg_a shade(#{$bg_color}, 1.2);
@define-color wm_bg_b #{$bg_color};

@define-color wm_shadow alpha(black, 0.35);
@define-color wm_border alpha(black, 0.18);

@define-color wm_button_hover_color_a shade(#{$bg_color}, 1.3);
@define-color wm_button_hover_color_b #{$bg_color};
@define-color wm_button_active_color_a shade(#{$bg_color}, 0.85);
@define-color wm_button_active_color_b shade(#{$bg_color}, 0.89);
@define-color wm_button_active_color_c shade(#{$bg_color}, 0.9);

//FIXME this is really an API

@define-color content_view_bg #{"" + $base_color};

Loading

0 comments on commit 688b10c

Please sign in to comment.