Commit Graph

390 Commits

Author SHA1 Message Date
f67ab808fd doc fixes 2011-01-30 23:35:25 -05:00
c0b8053089 Move key/theme CSS providers to GtkSettingsPrivate 2011-01-30 21:27:55 -05:00
a03e33b10b Parse the gtk-keys.css file in the GtkSettings::gtk-key-theme-name theme path 2011-01-30 21:25:42 -05:00
b98caf9385 GtkCssProvider: Take into account variant
When loading a theme, make sure we take into account the variant
so we don't use the plain version when the theme changes.

Also make sure to fallback to the plain theme when loading a variant
fails.

https://bugzilla.gnome.org/show_bug.cgi?id=640983
2011-01-30 21:22:12 -05:00
7f3aa92086 GtkSettings: Fix theme not updating for dark theme
The theme was not updated when the "gtk-application-prefer-dark-theme"
GtkSettings property changed.

https://bugzilla.gnome.org/show_bug.cgi?id=640983
2011-01-30 20:48:29 -05:00
008de2bafd Document new default handling 2011-01-27 00:32:07 -05:00
064e48f846 Rename GTK_SETTINGS_SOURCE_RC_FILE to _THEME
This makes more sense, since we don't parse rc files anymore.
This is private api inside gtksettings.c, anyway.
2011-01-27 00:32:07 -05:00
5501569354 Parse a per-theme settings.ini file
This lets themes override settings values again. We are using
the same priority that was used from the rc file parser, so things
are largely unchanged, relative to other settings sources.
2011-01-27 00:32:07 -05:00
368a5c8937 Break out into a separate function
Move key file parsing to gtk_settings_load_from_key_file(), in
preparation for loading per-theme files. Load key files from both
/etc and ~/.config, with the latter overriding the former. Support
parsing enum values.
2011-01-27 00:32:07 -05:00
8f3a3fda0b First pass a parsing a keyfile for default settings 2011-01-27 00:32:07 -05:00
030b5ebf3e gtksettings: Add gtk-doc to silent an annotation warning 2011-01-20 12:12:22 -02:00
6cdb6255af More documentation fixes 2011-01-06 09:44:08 -05:00
16877b4d7b Reduce includes of gtktypeutils.h to a minimum 2011-01-04 12:05:05 -05:00
1bcf8a0027 Remove sealed members from GtkSettings 2010-12-23 21:56:50 -05:00
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
3b3307b946 Use gtk_style_context_reset_widgets() instead of gtk_rc_reset_styles() 2010-12-04 15:39:56 +01:00
a8c8c23c77 GtkSettings: add _gtk_settings_get_screen() private method 2010-12-04 15:39:55 +01:00
066f35bf28 Parse user CSS from $XDG_CONFIG_HOME/gtk-3.0/gtk.css 2010-12-04 15:39:53 +01:00
e598f17871 Some header cleanups
Move GtkGradient to their own files, also move GtkBorder out of
gtkstyle.h, so that header can be all deprecated.
2010-12-04 15:39:47 +01:00
d7a0fe5bf1 Document predefined style provider priorites
Also, rename GTK_STYLE_PROVIDER_PRIORITY_DEFAULT to _THEME and
use it for themes.
2010-12-04 15:39:35 +01:00
9a2d1e5433 GtkSettings: install theme CSS with a lower priority.
This is so GtkSettings has an opportunity to modify theme colors.
2010-12-04 15:39:12 +01:00
c37797a10c GtkSettings: Keep right refcount of the theme provider. 2010-12-04 15:39:08 +01:00
611cb007b4 GtkSettings: Ensure the theme CSS is loaded on startup. 2010-12-04 15:39:08 +01:00
a185954d7c Hardcode 3.0 version for style files and paths.
It's about time to start using the right paths.
2010-12-04 15:39:07 +01:00
605fa03248 Fix compile warning 2010-12-04 15:38:37 +01:00
4acc20abc1 s/GtkStyleSet/GtkStyleProperties/
The former name had oddities such as gtk_style_set_set() and such,
so the new name is nicer in that regard and not much longer.
2010-12-04 15:38:29 +01:00
4e02218f52 Use GdkRGBA all around in GtkStyleContext. 2010-12-04 15:38:25 +01:00
5c2cf1e934 Plug some leaks. 2010-12-04 15:38:18 +01:00
cc68e62e24 GtkSettings: Add a new provider for the theme CSS file. 2010-12-04 15:38:16 +01:00
a07fe2c0e6 Add generic providers per-screen.
The providers are added as soon as gtk GtkSettings object for the screen
is created.
2010-12-04 15:38:15 +01:00
621a95f515 GtkSettings: implement GtkStyleProvider 2010-12-04 15:38:11 +01:00
c418ea89e5 docs: Move documentation to inline comments: GtkSettings 2010-11-06 18:21:35 +01:00
9f9edb662e settings: Move setting property registration in gtksettings.c
Some GtkSettings property are registered by other classes. This leads
to the "interesting" issue that setting GtkSettings:gtk-button-images
requires that the GtkButton class is referenced first - or that a
GtkButton is created.

https://bugzilla.gnome.org/show_bug.cgi?id=632538
2010-10-20 10:34:25 +01:00
f53ad33994 Remove GtkObject completely 2010-09-26 22:18:19 -04:00
9f47be2216 gtk: gdk_drawable_get_screen/visual => gdk_window_get_screen/visual 2010-09-26 15:11:33 +02:00
e0aa12eb0a Tons of transfer annotations 2010-09-21 00:18:11 -04:00
b3079c0d18 Use gint16 for GtkBorder
32K of border ought to be enough for any pixel dimensions. At least
until screens are so huge we start using doubles.

This saves a nice 64 bits of space when we have a GtkBorder
stored somewhere.

Signed integers are used to avoid surprising unsigned math
issues. Just search GTK's whole git log from inception
for "unsigned" if you want to find any number of commits
fixing signed/unsigned bugs.

https://bugzilla.gnome.org/show_bug.cgi?id=629387
2010-09-12 21:47:09 -04:00
0a07e9733b gtk/: fully remove gtkalias hacks
https://bugzilla.gnome.org/show_bug.cgi?id=623845
2010-07-10 02:51:26 +02:00
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
c59f76fda2 Only show the mnemonic underline when pressing Alt
...and show them in menus when navigating the menu with the keyboard.
This is similar to what other platforms do, and reduces visual clutter.
There is a setting to control this. Most of the work on this patch was
done by Thomas Wood. See bug 588554.
2009-12-20 03:11:05 -05:00
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
bbb4e4910b Make the toolbar-style and toolbar-size settings work
This broke when moving the setting from gtktoolbar.c to gtksettings.c.
Spotted by Christian Persch in bug 603271.
2009-11-28 21:43:59 -05:00
d8dfad3eb9 Fix small documentation problems after the toolpalette merge
Several Since tags were wrong. Spotted by Christian Persch in
bug 603268.
2009-11-28 20:59:56 -05:00
37255486d4 Merge branch 'master' into toolpalette 2009-11-26 23:54:55 -05:00
1a02671437 Fix compilation warning: Use gpointer variables 2009-11-02 23:49:00 +01:00
c229306a18 Merge branch 'master' into toolpalette 2009-10-28 10:57:46 +01:00
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
3c510f028f Use standard mac shortcuts
This changes Ctrl-X, Ctrl-C, etc. to Cmd-X, Cmd-C, etc. Also,
Alt-Left and Alt-Right in text widgets bound to Ctrl-Left and
Ctrl-Right actions

https://bugzilla.gnome.org/show_bug.cgi?id=530351
2009-10-26 00:03:05 +01:00
54863bbba6 Correct a doc comment
Add 'papi' to the list of possible print backends, and mention 'file'
instead of 'pdf'.
2009-08-08 22:43:16 -04:00
eb76666f1c GtkToolPalette: Use gtk-toolbar-style and gtk-toolbar-icon-size settings.
* gtk/gtksettings.c: (settings_install_property_parser): Handle enums too.
	* gtk/gtktoolbar.c (gtk_toolbar_class_init): Move the gtk-toolbar-style and
	gtk-toolbar-icon-size settings into GtkSettings because we now use it in
	GtkToolPalette too.

	* gtk/gtktoolpalette.[h|c]: Add gtk_tool_palette_unset_style() and
	gtk_tool_palette_unset_icon_size(), and use the toolbar-style and
	icon-size from GtkSettings if these are not set via the set functions.

	* demos/gtk-demo/toolpalette.c (on_combo_style_changed),
	(do_toolpalette): Add and handle a -1 value to mean the desktop "Default"
	toolbar style.
2009-07-16 17:51:55 +02:00