Commit Graph

232 Commits

Author SHA1 Message Date
Matthias Clasen
55ca24d1d4 Drop GtkThemeEngine
It is not used anymore.
2010-12-23 22:16:50 -05:00
Matthias Clasen
1bcf8a0027 Remove sealed members from GtkSettings 2010-12-23 21:56:50 -05:00
Owen W. Taylor
a2dddb1da0 Return an appropriate GtkStyle from gtk_rc_get_style_by_paths()
Always returning NULL (no match) from gtk_rc_get_style_by_paths()
means that looking up colors and style properties based on the
GtkStyle will give default values instead of themed values. We can
do better by returning a GtkStyle based on a GtkWidgetPath that we
figure out from the values passed in to get_style_by_paths().

https://bugzilla.gnome.org/show_bug.cgi?id=637520
2010-12-21 14:27:25 -05:00
Matthias Clasen
07d49ee56a Merge libgdk and libgtk
This commit does a number of things:
- remove some dead wchar configury from configure.ac and gdkconfig.h
- repurpose gdkconfig.h as header that contains GDK_WINDOWING_foo
  macros for each included backend, include it in gdk.h and install
  it in $includedir instead of below $libdir
- drop the backend from the library names
- build libgdk-3.0.la as a convenience lib and include it in libgtk-3.0.la
It does not yet enable building multiple backends at the same time.
2010-12-21 12:06:55 -05:00
Carlos Garnacho
56c3d4b1be Remove dead Gtk[Rc]Style code
Most code in gtkrc.c has been turned into a no-op, but that one
reverting in public API (gtk_rc_scanner_new() and such). GtStyle
is also more shallow, now fully relies in the backing
GtkStyleContext and all connection to gtkrc.c has been removed.

GtkBinding has been also affected, there is no replacement yet
for custom keybindings in style files, so that piece of code that
hooked into gtkrc has been replaced by a FIXME so in the future
it may be added back.
2010-12-18 12:10:00 +01:00
Benjamin Otte
d3ed729643 gtkrc: Remove unused code
Makes gcc happy.
2010-12-15 14:51:26 +01:00
Matthias Clasen
f8a874abb1 Initial attempt at deprecating GtkStyle api
This will probably need some finetuning.
2010-12-04 15:39:46 +01:00
Carlos Garnacho
64e798e190 Do not initialize RC subsystem. 2010-12-04 15:39:06 +01:00
Matthias Clasen
e0aa12eb0a Tons of transfer annotations 2010-09-21 00:18:11 -04:00
Javier Jardón
7e520d908a Fix some compilation warnings
GScanner token field is declared as GTokenType instead a guint
See Glib bug: https://bugzilla.gnome.org/show_bug.cgi?id=627890

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=627962
2010-09-13 03:28:36 +02:00
Tor Lillqvist
4491bdbb9d Drop Win32 DLL ABI compatibility cruft
No need for that any longer as we are changing DLL name.
2010-08-30 14:57:48 +03:00
Matthias Clasen
06c2777d88 Make builtin rc consistent
I removed the default label style a few days ago, so it should
no longer be referenced either.
2010-08-25 00:28:23 -04:00
Matthias Clasen
501eeaff11 Remove GtkWidget::draw-border
This is a never-used style property that came out of some old
themeing experiments, and handling it has some performance
overhead. Bug 426924
2010-08-18 12:46:57 -04:00
Javier Jardón
0a07e9733b gtk/: fully remove gtkalias hacks
https://bugzilla.gnome.org/show_bug.cgi?id=623845
2010-07-10 02:51:26 +02:00
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