Commit Graph

218 Commits

Author SHA1 Message Date
Matthias Clasen
0b0f176ac4 Move the module cache files below libdir
These files contain architecture-dependent paths, and thus placing
them into sysconfdir causes unnecessary hassle. Now the immodule cache
file is looked for in libdir/gtk-3.0/3.0.0/immodules.cache, and the
pixbuf loader cache is looked for in libdir/gtk-3.0/3.0.0/loaders.cache.
2010-05-17 21:30:46 -04:00
Bastien Nocera
4551509af1 Make it easy for apps to have dark themes
Some types of applications would benefit from having "dark" themes,
usually black backgrounds, such as:
* Movie players
* Photo management and display applications

To make it easy for those applications to prefer a dark theme,
we're adding the "gtk-application-prefer-dark-theme" GtkSetting, which
will make the theme loading code automatically look for a "gtkrc-dark"
file in the same directory you would usually find a gtkrc file.
the same name and a "-dark" suffix.

If no "-dark" gtkrc variant is available, the normal gtkrc will
be used.

https://bugzilla.gnome.org/show_bug.cgi?id=617955
2010-05-10 01:15:14 +01:00
Matthias Clasen
7447ef0fc2 Make 3.0 parallel-installable to 2.x
In particular, rename

  - libraries to lib*-3.0.so
  - pc files to *-3.0.pc
  - include paths to /usr/include/gtk-3.0/*
  - module paths to /usr/lib/gtk-3.0/*
  - rc files names to gtk-3.0/gtkrc
  - commandline utilities to *-3.0
  - adjust documentation

Also change the install location for unix-print headers to
/usr/include/gtk-3.0/unix-print/gtk.
2010-05-08 01:18:53 -04:00
Christian Dywan
a13d2c200b Remove obsolete helper function gtk_rc_add_rc_sets 2010-05-03 01:51:18 +02:00
Christian Dywan
956a5c47ed Remove deprecated GtkRcStyle functions 2010-05-03 01:39:50 +02:00
Matthias Clasen
1335275548 Add a way to set symbolic colors per-widget
The new function, gtk_widget_modify_symbolic_color() is similar
in spirit to the other gtk_widget_modify_ functions.
2010-04-29 17:01:25 -04:00
Johan Dahlin
fe85272112 [annotations] Add allow-none
This commit was created using a script that searched for all docstrings
containing a parameter and the string 'or %NULL'.
Gdk backends and demos excluded as they are not part of a public API

https://bugzilla.gnome.org/show_bug.cgi?id=610474
2010-02-19 17:57:51 -02:00
Colin Walters
6529c07614 [introspection] Merge in Gtk-custom.c annotations
The Gtk-custom.c file in gir-repository contained a number of
introspection annotations.  Merge those into the GTK source files.

Some documentation was moved from the tmpl/ files to accomodate
the addition of annotations.
2009-12-16 17:22:01 -02:00
Matthias Clasen
d3e6cffff7 Fix issues with symbolic colors in rc file parsing
Don't recreate the settings color hash every time, repopulate it
instead. This avoids invalidating the references held by RcContexts.
2009-10-25 23:47:59 -04:00
Matthias Clasen
a1ec034734 Improve the drawing of progress in entries, using fg/bg[SELECTED]. Add a
* gtk/gtkentry.c: Improve the drawing of progress in entries,
        using fg/bg[SELECTED]. Add a progress-border style property.
        Draw progress behind icons too.
        * gtk/gtkrc.c: Add defaults for fg/bg[SELECTED] in entries.
        Patch by Benjamin Berg.



svn path=/trunk/; revision=22445
2009-03-02 18:22:56 +00:00
Matthias Clasen
2e22288e75 Handle being called early. Bug report by Andrés G. Aragoneses
* gtk/gtkrc.c (gtk_rc_parse_default_files): Handle being called
        early. Bug report by Andrés G. Aragoneses


svn path=/trunk/; revision=21875
2008-12-13 04:39:38 +00:00
Matthias Clasen
783c7932f3 Bug 552959 – GtkTrayIcon: _NET_SYSTEM_TRAY_VISUAL and real
transparency

        * gtk/gtktrayicon-x11.c: Add support for the _BET_SYSTEM_TRAY_VISUAL
        property described in
        http://lists.freedesktop.org/archives/xdg/2008-September/009919.html
        If _NET_SYSTEM_TRAY_VISUAL is a visual with an alpha channel, the
        parent-relative-background hack is skipped and we draw with a real
        transparent background.

        * gtk/gtkrc.c: Remove the default GtkTrayIcon style, since the
        parent-relative background is now set when realizing the tray
        icon.

        Patch by Owen Taylor


svn path=/trunk/; revision=21531
2008-09-27 04:27:53 +00:00
Tor Lillqvist
729524185b gtk/gtk.symbols gtk/makegtkalias.pl gtk/gtkaccelmap.c gtk/gtkfilechooser.c
2008-08-08  Tor Lillqvist  <tml@novell.com>

	* gtk/gtk.symbols
	* gtk/makegtkalias.pl
	* gtk/gtkaccelmap.c
	* gtk/gtkfilechooser.c
	* gtk/gtkfilesel.c
	* gtk/gtkiconfactory.c
	* gtk/gtkicontheme.c
	* gtk/gtkimage.c
	* gtk/gtkrc.c
	* gtk/gtkuimanager.c
	* gtk/gtkwindow.c: No need for the DLL ABI backward compatibility
	functions on Win64.


svn path=/trunk/; revision=21040
2008-08-08 03:49:18 +00:00
Cody Russell
57223c9a05 Revert name change
svn path=/trunk/; revision=20724
2008-07-01 22:57:50 +00:00
Cody Russell
fce9c8b7d4 Practically everything changed.
2008-06-30  Cody Russell  <bratsche@gnome.org>

        * Practically everything changed.

        Change	all references	of GIMP	Toolkit	(and variations	of it)
        to GTK+	Toolkit, showing no mercy at all to our	beloved
	ancestry. (#540529)


svn path=/trunk/; revision=20709
2008-06-30 23:01:56 +00:00
Johan Dahlin
d97cdbdf53 Include "config.h" instead of <config.h> Command used: find -name
2008-06-21  Johan Dahlin  <jdahlin@async.com.br>

    * *.[ch]: Include "config.h" instead of <config.h>
    Command used:
    find -name \*.[ch]|xargs perl -p -i -e 's/^#include <config.h>/#include "config.h"/g'
    Rubberstamped by Mitch and Tim


svn path=/trunk/; revision=20669
2008-06-22 14:28:52 +00:00
Michael Natterer
ff5ba96c26 gtk/gtkfontsel.c gtk/gtkrc.c gtk/gtkstyle.c use g_object_unref() instead
2008-06-16  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkfontsel.c
	* gtk/gtkrc.c
	* gtk/gtkstyle.c
	* gtk/gtkwidget.c: use g_object_unref() instead of the deprecated
	gtk_rc_style_unref().


svn path=/trunk/; revision=20405
2008-06-16 16:53:39 +00:00
Michael Natterer
7a658c1389 add cast to fix const warning.
2008-01-14  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkrc.c (_gtk_rc_style_unset_rc_property): add cast to fix
	const warning.

	(gtk_rc_parse_any): change variables to const and introduce
	another local variable to fix const warnings.


svn path=/trunk/; revision=19371
2008-01-14 17:07:03 +00:00
Matthias Clasen
7fbc566d32 Fix doc typos
svn path=/trunk/; revision=19094
2007-11-30 18:20:39 +00:00
Matthias Clasen
4896e24bb1 Require gtk-doc 1.8
2007-11-25  Matthias Clasen  <mclasen@redhat.com>

        * configure.in: Require gtk-doc 1.8

        * */*.c: Use gtk-doc abbreviations for examples in docs.


svn path=/trunk/; revision=19041
2007-11-25 06:51:19 +00:00
Matthias Clasen
d090fe423b Accept class names starting with lowercase letters for style property
2007-06-10  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkrc.c (gtk_rc_parse_style): Accept class names starting
        with lowercase letters for style property assignments, since
        GType accepts these too, and gtkmm uses such class names.  (#343012,
        Murray Cumming, Johannes Schmid)


svn path=/trunk/; revision=18101
2007-06-11 04:45:18 +00:00
Carlos Garnacho
705d6545e5 initialize rc_priv in the else branch too. (#445539)
2007-06-09  Carlos Garnacho  <carlos@imendio.com>

        * gtk/gtkrc.c (gtk_rc_parse_engine): initialize rc_priv in the else
        branch too. (#445539)


svn path=/trunk/; revision=18084
2007-06-08 16:28:52 +00:00
Matthias Clasen
3c49e2ef62 Make it possible for theme engines to support symbolic colors. (#426192,
2007-06-08  Matthias Clasen  <mclasen@redhat.com>

        Make it possible for theme engines to support symbolic 
        colors.  (#426192, Andrea Cimitan, patch by Olivier Samyn)

        * gtk/gtk.symbols:
        * gtk/gtkrc.h:
        * gtk/gtkrc.c (gtk_rc_parse_color_full): Export this function

        * gtk/gtkrc.c (gtk_rc_parse_engine): Copy color hashes
        to new style before parsing engine section.

svn path=/trunk/; revision=18081
2007-06-08 05:02:13 +00:00
Yevgen Muntyan
2cbaeadf43 new method, gtk_widget_modify_cursor() (#89314).
2007-06-06  Yevgen Muntyan  <muntyan@tamu.edu>

	* gtk/gtkwidget.c:
	* gtk/gtkwidget.h: new method, gtk_widget_modify_cursor() (#89314).

	* gtkrc.c:
	* gtkrc.h: new functions _gtk_rc_style_set_rc_property() and
	_gtk_rc_style_unset_rc_property().

	* gtk/gtk.symbols: added gtk_widget_modify_cursor.

	* tests/testtext.c (do_cursor_visible_changed):
	* tests/testgtk.c (create_styles): test it.


svn path=/trunk/; revision=18066
2007-06-06 19:43:31 +00:00
Christian Persch
bab3676f95 Initialise variable. Bug #423064.
2007-03-26  Christian Persch  <chpe@gnome.org>

	* gtk/gtkrc.c: (gtk_rc_context_get): Initialise variable. Bug #423064.

svn path=/trunk/; revision=17564
2007-03-26 21:00:17 +00:00
Matthias Clasen
229999d8a9 Freeze property notification. Handle the gtk-color-scheme xsetting being
2007-03-22  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtksettings.c (merge_color_scheme): Freeze property
        notification.
        * gtk/gtksettings.c (_gtk_settings_handle_event): Handle
        the gtk-color-scheme xsetting being unset.

        * gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): Handle
        recursion locally.



svn path=/trunk/; revision=17553
2007-03-22 21:09:08 +00:00
Matthias Clasen
82ce59cd0f Remove unnecessary NULL checks before g_free(). (#369666, Morten Welinder,
2007-03-09  Matthias Clasen <mclasen@redhat.com>

        * Everywhere: Remove unnecessary NULL checks before
        g_free().  (#369666, Morten Welinder, Djihed Afifi)

        * configure.in: Check for ftw.h



svn path=/trunk/; revision=17444
2007-03-09 21:57:37 +00:00
Matthias Clasen
2b029759c7 Don't leak references to the color-hash gotten from GtkSettings. (#409357,
2007-02-28  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtkrc.c: Don't leak references to the color-hash
        gotten from GtkSettings.  (#409357, Benjamin Berg)


svn path=/trunk/; revision=17364
2007-02-28 17:00:55 +00:00
Kristian Rietveld
0ef946ed64 New tooltips API.
2007-02-06  Kristian Rietveld  <kris@imendio.com>

	New tooltips API.

	* gtk/Makefile.am
	* gtk/gtk.h
	* gtk/gtk.symbols: build system foo.

	* gtk/gtkmain.c (gtk_main_do_event): call tooltip event handler
	hook for appropriate events.

	* gtk/gtkmarshalers.list: add BOOLEAN:INT,INT,BOOLEAN,OBJECT.

	* gtk/gtkrc.c: add style for gtk-tooltip.

	* gtk/gtksettings.c (gtk_settings_class_init): make the
	different tooltip timeouts configurable.

	* gtk/gtkwidget.[ch]: add new properties, signals, make sure
	tooltips are hidden on unmap, destroy, update window event
	mask on realize, hook into focus change and show help
	handlers.

	* gtk/gtkwindow.h: move GtkWindow typdef to gtkwidget.h ...

	* gtk/gtktooltip.[ch]: new files.

	* tests/Makefile.am
	* tests/testtooltips.c: add test application.


svn path=/trunk/; revision=17264
2007-02-06 10:25:21 +00:00
Matthias Clasen
88d742d937 Fix accelerator clipping 2006-12-07 14:45:04 +00:00
Paolo Borelli
ed3f611c41 plug small memory leak (#370395)
2006-11-13  Paolo Borelli  <pborelli@katamail.com>

	* gtk/gtkrc.c (gtk_rc_parse_icon_source): plug small memory
	leak (#370395)
2006-11-13 20:04:59 +00:00
Michael Natterer
a3b67535df added new scanner token "unbind" which gets rid of a key binding (in fact,
2006-10-05  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkrc.[ch]: added new scanner token "unbind" which gets
	rid of a key binding (in fact, it only lets it appear unbound).

	* gtk/gtkbindings.[ch] (struct GtkBindingEntry): added
	"guint marks_unbound : 1"

	(gtk_binding_entry_skip): new API which marks the entry as unbound.

	Changed code so it returns FALSE when "marks_unbound == TRUE" is
	encountered while activating bindings, effectively letting the
	binding appear unbound (regardless of still existing bindings in
	lower binding priority levels). Fixes bug #358329.

	(gtk_binding_entry_add)
	(gtk_binding_entry_clear)
	(gtk_binding_entry_add_signall)
	(gtk_binding_parse_binding): deprected these functions.

	(_gtk_binding_parse_binding)
	(_gtk_binding_entry_add_signall): new internal API.

	* gtk/gtk.symbols: changed accordingly.
2006-10-05 14:48:57 +00:00
Michael Natterer
a4dcea2bed serialize floating point values using locale-independent functions.
2006-09-04  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkrc.c (rc_parse_token_or_compound)
	(gtk_rc_parse_assignment): serialize floating point values using
	locale-independent functions. (#346751, Frederic Crozat)
2006-09-04 11:23:38 +00:00
Michael Natterer
edab825640 reset scanner config to default values while checking if an
2006-08-03  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkrc.c (gtk_rc_parse_assignment): reset scanner config to
	default values while checking if an expression(foobar) follows,
	because if no expression follows the scanner's "next token" must
	be usable for the caller of this function (fixes bug #349552).
2006-08-03 14:07:26 +00:00
Matthias Clasen
fee9accbd1 New function to destroy an rc context.
2006-07-21  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkrc.h:
	* gtk/gtkrc.c (_gtk_rc_context_destroy): New function to
	destroy an rc context.

	* gtk/gtksettings.c (gtk_settings_finalize): Destroy the rc context.
	(gtk_settings_get_for_screen): Unref the settings when the screen
	goes away. (#348096, Chris Wilson)
2006-07-21 16:12:44 +00:00
Matthias Clasen
465daa910f Replace gtk_rc_style_ref/unref by g_object_ref/unref.
2006-07-21  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstyle.c:
	* gtk/gtkrc.c:
	* gtk/gtkwidget.c: Replace gtk_rc_style_ref/unref by
	g_object_ref/unref.
2006-07-21 14:52:05 +00:00
Michael Natterer
c095ee2670 Enable symbolic colors and color expressions in style properties. Fixes
2006-07-21  Michael Natterer  <mitch@imendio.com>

	Enable symbolic colors and color expressions in style
	properties. Fixes bug #346751.

	* gtk/gtkrc.c (rc_parse_token_or_compound): add GtkRcStyle
	parameter and replace symbolic colors by color constants.

	(gtk_rc_parse_assignment): likewise. Also support parsing of
	expressions of the form identifier(compound).

	(gtk_rc_parse_style): pass the GtkRcStyle to
	gtk_rc_parse_assignment().

	(gtk_rc_parse_statement): pass NULL since we don't have a
	GtkRcStyle here.
2006-07-21 08:27:31 +00:00
Michael Natterer
232414f371 gtk/gtkrc.c fix canonicalization of property names which was broken after
2006-07-07  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkrc.c
	* gtk/gtksettings.c: fix canonicalization of property names which
	was broken after recent constant string cleanup.
2006-07-07 15:54:06 +00:00
Michael Natterer
94bfc3665b added a bunch of utility functions to copy icon_factories and color_hashes
2006-07-06  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkrc.c: added a bunch of utility functions to copy
	icon_factories and color_hashes between GtkRcStyles and make sure
	that newly created, duplicated and merged styles have access to
	all icon_factories and color_hashes they need. Fixes bug #346668.
2006-07-06 15:56:02 +00:00
Matthias Clasen
f8794cccca Improve consistency of signal and property names 2006-07-06 05:14:03 +00:00
Matthias Clasen
219aa66d5d Make transparent tray icons work. (#320034, based on a patch by Dan
2006-06-19  Matthias Clasen  <mclasen@redhat.com>

	Make transparent tray icons work.  (#320034, based on a
	patch by Dan Winship)

	* gtk/gtktrayicon-x11.c (gtk_tray_icon_init): Make trayicons
	app-paintable and non-double buffered.

	* gtk/gtkrc.c (_gtk_rc_init): Give tray icons a parent-relative
	background in the default style.
2006-06-19 23:53:28 +00:00
Matthias Clasen
113f364a37 More of the same 2006-05-14 04:25:34 +00:00
Matthias Clasen
f26aad1916 Boilerplate reduction 2006-05-02 23:56:43 +00:00
Matthias Clasen
a5f63de17b Fix problems with setting symbolic colors from rc files. (#338345,
2006-04-30  Matthias Clasen  <mclasen@localhost.localdomain>

	Fix problems with setting symbolic colors from rc files.
	(#338345, Benjamin Berg)

	* gtk/gtkrc.c (gtk_rc_settings_changed, gtk_rc_font_name_changed)
	(gtk_rc_color_hash_changed, gtk_rc_reparse_all_for_settings): Don't
	freeze notification for settings changes while parsing; instead
	manually avoid recursion, and update the color hashes.
2006-04-30 06:10:37 +00:00
Matthias Clasen
8245abde4b Allocate pixmap_path dynamically, rather than using a fixed array of size
2006-04-18  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkrc.c: Allocate pixmap_path dynamically, rather than
	using a fixed array of size 128.
2006-04-18 17:46:15 +00:00
Matthias Clasen
e40a3b0e3b Allocate the gtk_rc_default_files array dynamically.
2006-04-03  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkrc.c (gtk_rc_add_initial_default_files)
	(gtk_rc_add_default_file): Allocate the gtk_rc_default_files array
	dynamically.
2006-04-03 04:17:10 +00:00
Matthias Clasen
168e2d2590 Avoid relocations for the array of symbol names.
2006-04-02  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkrc.c: Avoid relocations for the array of symbol names.
2006-04-03 03:57:29 +00:00
Matthias Clasen
ac879843d0 Support subclasses in RC files. (#142417, Todd Berman, patch based on a
2006-03-23  Matthias Clasen  <mclasen@redhat.com>

	Support subclasses in RC files.  (#142417, Todd Berman, patch
	based on a patch by Benjamin Berg)

	* gtk/gtkrc.h:
	* gtk/gtkrc.c: Support <classname> elements in widget_class paths
	in rc files which match any classes derived from named class.

	(_gtk_rc_init): Use the new syntax in the default rc string.

	* gtk/gtkbindings.c: Support the new syntax for bindings too.

	* tests/testrc.c: Tests for widget_class path matching
2006-03-23 23:21:30 +00:00
Matthias Clasen
bc190f2a70 Rework the way the color scheme setting is inherited. Now the overriding
2005-12-16  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtksettings.[hc]: Rework the way the color scheme setting
	is inherited. Now the overriding is done on a per-color basis,
	rather than for the setting as a whole. This has the effect
	that themes can declare defaults for all the symbolic colors they
	use by specifying a value for the gtk-color-scheme setting in
	their rc file, while still allowing the XSetting to override
	"standard" symbolic colors. The hash table is now available
	through the color-hash property.

	* gtk/gtkrc.c: Use the new color-hash property.
2005-12-16 18:45:31 +00:00
Matthias Clasen
128bc9f3ea Make the gtk-color-scheme setting work.
2005-12-12  Matthias Clasen  <mclasen@redhat.com>

	Make the gtk-color-scheme setting work.

	* gtk/gtksettings.h:
	* gtk/gtksettings.c (_gtk_settings_get_color_hash): Add a getter
	that takes care of initializing the color hash if it is not
	already there.

	* gtk/gtkrc.c (gtk_rc_color_scheme_changed, gtk_rc_context_get):
	And use it here.
2005-12-12 15:48:43 +00:00