Commit Graph

249 Commits

Author SHA1 Message Date
Matthias Clasen
f1a9c3efff Remove unused includes
Nothing is using gtkrc.h functionality any more.
2011-06-16 23:33:43 -04:00
Benjamin Otte
27a661143e settings: Recompute styles when font name changes 2011-05-01 04:44:56 +02:00
Cosimo Cecchi
24bba4cc56 gtksettings: unset attributes set to normal from font description
So that they do not override values coming from the theme.

Based on a patch by Carlos Garnacho.

https://bugzilla.gnome.org/show_bug.cgi?id=645458
2011-03-23 10:00:00 -04:00
Kristian Rietveld
a55b59fef3 Include gdkquartz.h so GDK_IS_QUARTZ_SCREEN is actually defined 2011-03-10 21:20:37 +01:00
Carlos Garnacho
191428f596 gtksettings: plug a leak
Make the GValue take the created GString.
2011-03-07 23:06:55 +01:00
John Ralls
f7f9e16939 Finish making the GtkSettings object identical on all backends so that it doesn't assert on non-X11 backends 2011-03-07 12:28:50 -08:00
Benjamin Otte
172f894120 settings: Always use the same default values
Set the Mac key theme when creating a Quartz settings object instead of
having it the default when quartz is enabled.
This keeps compatibility with the GTK2 behavior that the Mac key theme
is not used for the X11 backend, which could now happen for a
multi-backend build.
2011-03-02 17:18:49 +01:00
Benjamin Otte
e69badbcd1 settings: Keep the GtkSettings object identical no matter the backend
Previously we were enabling some settings properties only if the X11
backend was enabled. This worked fine with GTK2 where only one backend
was enabled at a time, but now when multiple backends can be enabled,
this does not make sense.
2011-03-02 17:02:51 +01:00
Benjamin Otte
399dc74d74 settings: Avoid a segfault when loading keyfile
When the keyfile is loaded, no screen exists yet, so we need to vheck
for that.
2011-03-02 16:21:44 +01:00
Matthias Clasen
f67ab808fd doc fixes 2011-01-30 23:35:25 -05:00
Carlos Garnacho
c0b8053089 Move key/theme CSS providers to GtkSettingsPrivate 2011-01-30 21:27:55 -05:00
Carlos Garnacho
a03e33b10b Parse the gtk-keys.css file in the GtkSettings::gtk-key-theme-name theme path 2011-01-30 21:25:42 -05:00
Bastien Nocera
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
Bastien Nocera
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
Matthias Clasen
008de2bafd Document new default handling 2011-01-27 00:32:07 -05:00
Matthias Clasen
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
Matthias Clasen
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
Matthias Clasen
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
Matthias Clasen
8f3a3fda0b First pass a parsing a keyfile for default settings 2011-01-27 00:32:07 -05:00
Johan Dahlin
030b5ebf3e gtksettings: Add gtk-doc to silent an annotation warning 2011-01-20 12:12:22 -02:00
Matthias Clasen
6cdb6255af More documentation fixes 2011-01-06 09:44:08 -05:00
Matthias Clasen
16877b4d7b Reduce includes of gtktypeutils.h to a minimum 2011-01-04 12:05:05 -05:00
Matthias Clasen
1bcf8a0027 Remove sealed members from GtkSettings 2010-12-23 21:56:50 -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
Carlos Garcia Campos
3b3307b946 Use gtk_style_context_reset_widgets() instead of gtk_rc_reset_styles() 2010-12-04 15:39:56 +01:00
Carlos Garcia Campos
a8c8c23c77 GtkSettings: add _gtk_settings_get_screen() private method 2010-12-04 15:39:55 +01:00
Carlos Garnacho
066f35bf28 Parse user CSS from $XDG_CONFIG_HOME/gtk-3.0/gtk.css 2010-12-04 15:39:53 +01:00
Matthias Clasen
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
Matthias Clasen
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
Carlos Garnacho
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
Carlos Garnacho
c37797a10c GtkSettings: Keep right refcount of the theme provider. 2010-12-04 15:39:08 +01:00
Carlos Garnacho
611cb007b4 GtkSettings: Ensure the theme CSS is loaded on startup. 2010-12-04 15:39:08 +01:00
Carlos Garnacho
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
Carlos Garnacho
605fa03248 Fix compile warning 2010-12-04 15:38:37 +01:00
Carlos Garnacho
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
Carlos Garnacho
4e02218f52 Use GdkRGBA all around in GtkStyleContext. 2010-12-04 15:38:25 +01:00
Carlos Garnacho
5c2cf1e934 Plug some leaks. 2010-12-04 15:38:18 +01:00
Carlos Garnacho
cc68e62e24 GtkSettings: Add a new provider for the theme CSS file. 2010-12-04 15:38:16 +01:00
Carlos Garnacho
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
Carlos Garnacho
621a95f515 GtkSettings: implement GtkStyleProvider 2010-12-04 15:38:11 +01:00
Javier Jardón
c418ea89e5 docs: Move documentation to inline comments: GtkSettings 2010-11-06 18:21:35 +01:00
Emmanuele Bassi
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
Matthias Clasen
f53ad33994 Remove GtkObject completely 2010-09-26 22:18:19 -04:00
Benjamin Otte
9f47be2216 gtk: gdk_drawable_get_screen/visual => gdk_window_get_screen/visual 2010-09-26 15:11:33 +02:00
Matthias Clasen
e0aa12eb0a Tons of transfer annotations 2010-09-21 00:18:11 -04:00
Havoc Pennington
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
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
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
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
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
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
Matthias Clasen
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
Matthias Clasen
37255486d4 Merge branch 'master' into toolpalette 2009-11-26 23:54:55 -05:00
Javier Jardón
1a02671437 Fix compilation warning: Use gpointer variables 2009-11-02 23:49:00 +01:00
Johannes Schmid
c229306a18 Merge branch 'master' into toolpalette 2009-10-28 10:57:46 +01: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
Yevgen Muntyan
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
Matthias Clasen
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
Murray Cumming
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
Behdad Esfahbod
03e5467b68 Change the "gtk-fontconfig-timestamp" property from int to uint. Doesn't
2009-02-01  Behdad Esfahbod  <behdad@gnome.org>

        * gtk/gtksettings.c (gtk_settings_class_init): Change the 
        "gtk-fontconfig-timestamp" property from int to uint.  Doesn't affect
        anything in practice, except that  it overflows years later...


svn path=/trunk/; revision=22270
2009-02-01 06:04:12 +00:00
Murray Cumming
53097873ca documentation description: Mention the various properties and the
2009-01-15  Murray Cumming  <murrayc@murrayc.com>

* gtk/gtkimcontext.c: documentation description: Mention the various 
properties and the environment variable, with links to their 
 documentation.
* gtk/gtksettings.c:
* gtk/gtktextview.c: Make the im-module property documentation more 
expansive.

svn path=/trunk/; revision=22123
2009-01-15 16:53:27 +00:00
Matthias Clasen
9a8c209a80 When reconstructing the color hash, try harder to avoid unnecessary
* gtk/gtksettings.c: When reconstructing the color hash, try
        harder to avoid unnecessary notification, since this can lead
        to infinite reloading of rc files in some situations.


svn path=/trunk/; revision=21182
2008-08-22 03:51:56 +00:00
Behdad Esfahbod
a7f6e2c8fb Bug 547680 – fontconfig monitoring can crash apps
2008-08-15  Behdad Esfahbod  <behdad@gnome.org>

        Bug 547680 – fontconfig monitoring can crash apps

        * gtk/gtksettings.c (settings_update_fontconfig): Clear pango cache
        before recreating fontconfig config.


svn path=/trunk/; revision=21134
2008-08-15 19:43:20 +00:00
Matthias Clasen
785b5f1b3f Improve a string
svn path=/trunk/; revision=20995
2008-08-04 23:36:17 +00:00
Matthias Clasen
ca66090cd5 Add translator comment
svn path=/trunk/; revision=20950
2008-08-03 19:25:00 +00:00
Matthias Clasen
a2802754f1 Bug 327582 – Incomplete docs for GtkSettings::gtk-icon-sizes
2008-07-06  Matthias Clasen  <mclasen@redhat.com>

        Bug 327582 – Incomplete docs for GtkSettings::gtk-icon-sizes

        * gtk/gtksettings.c: Improve the documentation of the
        gtk-icon-sizes setting. Proposed by Tommi Komulainen.



svn path=/trunk/; revision=20790
2008-07-06 06:28:47 +00:00
Kristian Rietveld
4cceb2f1dc Bug 455268 - Add gtk-enable-tooltips GtkSetting
2008-07-02  Kristian Rietveld  <kris@imendio.com>

	Bug 455268 - Add gtk-enable-tooltips GtkSetting

	* gtk/gtk.symbols:
	* gtk/gtktoolbar.[ch] (gtk_toolbar_[gs]et_tooltips): deprecated.

	* gtk/gtksettings.c: introduce gtk-enable-tooltips XSetting.

	* gtk/gtktooltip.c (_gtk_tooltip_handle_event): take the newly
	introduced XSetting into account.

	* demos/gtk-demo/appwindow.c: don't use the now deprecated
	gtk_toolbar_set_tooltips().


svn path=/trunk/; revision=20730
2008-07-02 09:32:14 +00:00
Cody Russell
57223c9a05 Revert name change
svn path=/trunk/; revision=20724
2008-07-01 22:57:50 +00:00
Matthias Clasen
44e2afaadb Add event sound settings. Patch by Lennart Pöttering.
* gdk/x11/gdksettings.c:
        * gtk/gtksettings.c: Add event sound settings.
        Patch by Lennart Pöttering.


svn path=/trunk/; revision=20717
2008-07-01 06:22:04 +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. ()


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
73800758fd deprecate gtk_type_class().
2008-06-18  Michael Natterer  <mitch@imendio.com>

	* gtk/gtktypeutils.[ch]: deprecate gtk_type_class().

	* gtk/gtk.symbols: changed accordingly.

	* gtk/gtksettings.c (gtk_settings_install_property)
	(gtk_settings_install_property_parser): get rid of using
	gtk_type_class() by keeping a static reference to GtkSettingsClass
	around in both functions and passing that pointer on to
	settings_install_property_parser().

	* tests/testgtk.c: use g_type_class_ref()/unref() instead of
	gtk_type_class().

	* gtk/gtkobject.c: #undef GTK_DISABLE_DEPRECATED around including
	gtktypeutils.h.


svn path=/trunk/; revision=20444
2008-06-18 07:00:46 +00:00
Behdad Esfahbod
2a0358f6ce Bug 538182 – pango_cairo_context_update_layout is not noop after
2008-06-16  Behdad Esfahbod  <behdad@gnome.org>

        Bug 538182 – pango_cairo_context_update_layout is not noop after
        gtk_widget_create_pango_layout

        * gtk/gtksettings.c (settings_update_font_options): Make sure all
        font option fields are set to non-DEFAULT values.


svn path=/trunk/; revision=20406
2008-06-16 18:53:17 +00:00
Behdad Esfahbod
74b8297ee3 Bug 536185 – monitor font configuration
2008-06-06  Behdad Esfahbod  <behdad@gnome.org>

        Bug 536185 – monitor font configuration

        * configure.in:
        * gdk/x11/gdksettings.c:
        * gtk/gtksettings.c (gtk_settings_class_init),
        (gtk_settings_notify), (settings_update_fontconfig):
        Monitor xsettings key Fontconfig/Timestamp and upon change,
        reread fontconfig configuration, clear Pango's caches, and
        redraw all widgets.


svn path=/trunk/; revision=20324
2008-06-06 16:39:37 +00:00
Cody Russell
d46b2c14a8 Bug 507389 – use gslice for gtksettings
2008-05-25  Cody Russell  <bratsche@gnome.org>

        Bug 507389 – use gslice for gtksettings

        * gtk/gtksettings.c: Change from g_new0/g_free to use GSlice.
        Report and patch by Christian Persch.


svn path=/trunk/; revision=20168
2008-05-25 23:47:36 +00:00
Emmanuele Bassi
beb54a9b39 Bug 488507 – boundless growth of .recently-used.xbel file slows down
2008-04-15  Emmanuele Bassi  <ebassi@gnome.org>

	Bug 488507 – boundless growth of .recently-used.xbel file
	slows down applications

	* gtk/gtkrecentmanager.c:
	(gtk_recent_manager_init),
	(gtk_recent_manager_real_changed),
	(gtk_recent_manager_set_filename),
	(gtk_recent_manager_clamp_to_age): Clamp the recently
	used resources list by the age of its items, using
	the newly added GtkSettings property.

	* gtk/gtksettings.c (gtk_settings_class_init): Add the
	gtk-recent-files-max-age property, controlling the
	maximum age of the items in the recently used resources
	list.

svn path=/trunk/; revision=20006
2008-04-15 22:37:32 +00:00
Matthias Clasen
f8a1be3a04 Add a gtk-im-module GTK setting
2007-12-17  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtksettings.c: Add a gtk-im-module GTK setting
        * gdk/win32/gdkproperty-win32.c:
        * gdk/x11/gdksettings.c: ...and back it by a Gtk/IMModule X setting.

        * gtk/gtkimmodule.[hc]:
        * gtk/gtkimmulticontext.[hc]: When determining the default context,
        look at the gtk-im-module setting, and listen for changes to the
        setting.  (, Akira Tagoh)


svn path=/trunk/; revision=19195
2007-12-18 03:24:17 +00:00
Kristian Rietveld
35cae8d92b lower the default timeout values for gtk-tooltip-timeout and
2007-08-29  Kristian Rietveld  <kris@imendio.com>

	* gtk/gtksettings.c: lower the default timeout values for
	gtk-tooltip-timeout and gtk-tooltip-browse-timeout. (,
	Richard Hult).


svn path=/trunk/; revision=18701
2007-08-29 12:01:15 +00:00
Matthias Clasen
13277b42e2 Apply a patch by Emmanuele Bassi to limit the number of shown recent
2007-07-20  Matthias Clasen  <mclasen@redhat.com>

        Apply a patch by Emmanuele Bassi to limit the number
        of shown recent files.  ()

        * gtk/gtksettings.c: Add a setting for the number
        of recent files to display by default.

        * gtk/gtkrecentchooserdefault.c:
        * gtk/gtkfilechooserdefault.c: Respect the limit.

        * gtk/gtkrecentmanager.c: Remove the poll timeout in
        dispose, and do not stat more often than every 5 seconds.

        * gtk/gtkrecentchooserutils.c:
        * gtk/gtkrecentchoosermenu.c: Cleanups

        * tests/testrecentchoosermenu.c: Test limits.


svn path=/trunk/; revision=18510
2007-07-20 10:39:03 +00:00
Matthias Clasen
e1926de86a Merge color scheme before sending notification.
2007-07-19  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtksettings.c (apply_queued_setting): Merge color
        scheme before sending notification.



svn path=/trunk/; revision=18504
2007-07-19 15:32:04 +00:00
Matthias Clasen
8210544708 Fix a typo
svn path=/trunk/; revision=18076
2007-06-07 18:03:57 +00:00
Matthias Clasen
b80b526080 Require gtk-doc 1.6, for signal and property links.
2007-05-26  Matthias Clasen  <mclasen@redhat.com>

        * configure.in: Require gtk-doc 1.6, for signal and property links.
        * gtk/gtkbox.c:
        * gtk/gtkbutton.c:
        * gtk/gtkcontainer.c:
        * gtk/gtkdialog.c:
        * gtk/gtkentry.c:
        * gtk/gtkimage.c:
        * gtk/gtklabel.c:
        * gtk/gtkmisc.c:
        * gtk/gtksettings.c:
        * gtk/gtkwidget.c: Documentation improvements, link signals
        and properties where it makes sense.

svn path=/trunk/; revision=17924
2007-05-26 06:59:36 +00:00
Matthias Clasen
c3d16b2780 Make sure we always have a color_hash. (, Jens Granseuer)
2007-04-30  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtksettings.c (settings_update_color_scheme):
        Make sure we always have a color_hash.  (, Jens Granseuer)



svn path=/trunk/; revision=17748
2007-04-30 19:27:08 +00:00
Matthias Clasen
034ec57184 Support passing a print settings file to the preview command. (,
2007-04-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintoperation-unix.c
        (_gtk_print_operation_platform_backend_launch_preview):
        Support passing a print settings file to the preview
        command.  (, Christian Persch)

        * gtk/gtksettings.c: Document %s in the
        gtk-print-preview-command setting.


svn path=/trunk/; revision=17704
2007-04-29 06:59:27 +00:00
Behdad Esfahbod
166d3ff65b Don't set metrics-hinting font option. Rely on the default value which is
2007-04-03  Behdad Esfahbod  <behdad@gnome.org>

        * gtk/gtksettings.c (settings_update_font_options): Don't set
        metrics-hinting font option.  Rely on the default value which is
        on for all raster cairo surfaces. ()


svn path=/trunk/; revision=17582
2007-04-03 23:17:11 +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(). (, Morten Welinder,
2007-03-09  Matthias Clasen <mclasen@redhat.com>

        * Everywhere: Remove unnecessary NULL checks before
        g_free().  (, 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
cc1bdc2bc3 remove forgotten debug code
svn path=/trunk/; revision=17370
2007-03-01 06:47:15 +00:00
Matthias Clasen
b30b4ccfa4 Always store gtk-color-scheme values from all sources in the
2007-03-01  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtksettings.c: Always store gtk-color-scheme
        values from all sources in the ColorSchemeData struct
        and ignore the property_value for gtk-color-scheme.
        This fixes , reported by Thomas Wood.



svn path=/trunk/; revision=17369
2007-03-01 06:44:00 +00:00
Matthias Clasen
c955072b67 Make color scheme update properly when changing themes. (, Benjamin
2007-02-28  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtksettings.c: Make color scheme update properly
        when changing themes.  (, Benjamin Berg)



svn path=/trunk/; revision=17366
2007-02-28 19:37:08 +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
Michael Natterer
17fed85c24 add new boolean settings gtk-enable-accels and gtk-enable-mnemonics which
2007-02-05  Michael Natterer  <mitch@imendio.com>

	* gtk/gtksettings.c: add new boolean settings gtk-enable-accels
	and gtk-enable-mnemonics which enable/disable accelerators and
	mnemonics (bug , based on a patch from Tommi Komulainen).

	* gtk/gtkwindow.c (gtk_window_activate_key)
	* gtk/gtkmenushell.c (gtk_menu_shell_key_press): don't invoke them
	if the resp. setting is FALSE.

	* gtk/gtkaccellabel.c (gtk_accel_label_refetch)
	* gtk/gtklabel.c (gtk_label_set_pattern_internal): don't display
	them if the setting is FALSE.

	* gtk/gtklabel.c: added signal connection to the screen's settings
	object and traverse all widgets on the screen when the setting
	changes. It's slightly ugly to also update GtkAccelLabels here,
	but less ugly than connecting and traversing all widgets twice.


svn path=/trunk/; revision=17262
2007-02-05 14:11:39 +00:00
Tim Janik
98170cf57e cleaned up ::color-hash registration to not abuse class_n_properties and
Tue Jan 30 12:09:56 2007  Tim Janik  <timj@gtk.org>

        * gtk/gtksettings.c: cleaned up ::color-hash registration to not abuse
        class_n_properties and leave an uninitialized value array behind.



svn path=/trunk/; revision=17235
2007-01-30 11:10:22 +00:00
Matthias Clasen
7979cd6ac7 Move a few settings to gtksettings.c to make sure they show up in the
2006-12-30  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintoperation-unix.c:
        * gtk/gtkprintbackend.c:
        * gtk/gtkfilechooserdefault.c:
        * gtk/gtksettings.c: Move a few settings to gtksettings.c
        to make sure they show up in the docs.  (, Christian
        Persch)



svn path=/trunk/; revision=16992
2006-12-31 05:54:46 +00:00
Kristian Rietveld
0677ad8e59 Support inverting arrows via XSetting. (, Yevgen Muntyan).
2006-12-27  Kristian Rietveld  <kris@gtk.org>

	Support inverting arrows via XSetting. (, Yevgen Muntyan).

	* gtk/gtksettings.c (gtk_settings_class_init): add new setting
	gtk-alternative-sort-arrows.

	* gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting): add
	new setting.

	* modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: set new
	gtk-alternative-sort-arrows setting to true.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
	invert direction if gtk-alternative-sort-arrows is TRUE.
2006-12-27 19:52:25 +00:00
Matthias Clasen
57b078de1e Change the way in which color scheme information is merged to correctly
2006-12-11  Matthias Clasen  <mclasen@redhat.com>

	* gtksettings.c: Change the way in which color scheme information
	is merged to correctly handle vanishing colors.  (,
	Benjamin Berg, patch by Callum McKenzie)
	Also allow to separate entries in color schemes by ';'
	instead of newline.
2006-12-11 06:16:21 +00:00
Michael Natterer
7f374a74ba Add new infrastructure for notifications of failed keyboard navigation and
2006-11-16  Michael Natterer  <mitch@imendio.com>

	Add new infrastructure for notifications of failed keyboard
	navigation and navigation with restricted set of keys.

	The patch handles configurable beeping, navigating the GUI with
	cursor keys only (as in phone environments), and configurable
	wrap-around. Fixes bugs , , , , 
	and .

	* gtk/gtksettings.c: added properties gtk-keynav-cursor-only,
	gtk-keynav-wrap-around and gtk-error-bell.

	* gtk/gtkwidget.[ch]: added new signal "keynav-failed" and public
	API to emit it. Added New function gtk_widget_error_bell() which
	looks at the gtk-error-bell setting and calls gdk_window_beep()
	accordingly.

	* gtk/gtk.symbols: add the new widget symbols.

	* gtk/gtkcellrendereraccel.c
	* gtk/gtkimcontextsimple.c
	* gtk/gtkmenu.c
	* gtk/gtknotebook.c: use gtk_widget_error_bell() or look at the
	gtk-error-bell setting instead of calling gdk_display_beep()
	unconditionally.

	* gtk/gtkcombobox.c
	* gtk/gtkentry.c
	* gtk/gtkiconview.c
	* gtk/gtklabel.c
	* gtk/gtkmenushell.c
	* gtk/gtkspinbutton.c
	* gtk/gtktextview.c
	* gtk/gtktreeview.c: call gtk_widget_error_bell() on failed keynav.

	* gtk/gtkentry.c
	* gtk/gtklabel.c
	* gtk/gtkrange.c
	* gtk/gtktextview.c: consult gtk_widget_keynav_failed() on failed
	cursor navigation and leave the widget if it returns FALSE.

	* gtk/gtkmenushell.c
	* gtk/gtknotebook.c: only wrap around if gtk-keynav-wrap-around
	is TRUE.

	* gtk/gtkradiobutton.c: ask gtk_widget_keynav_failed() to decide
	whether to to wrap-around, and don't select active items on cursor
	navigation if gtk-keynav-cursor-only is TRUE. Should look at
	gtk-keynav-wrap-around too, will look into that.
2006-11-16 12:56:30 +00:00
Matthias Clasen
5c547a504f Don't leak the to_reset list. (, Chris Wilson)
2006-09-09  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtksettings.c (_gtk_settings_reset_rc_values):
        Don't leak the to_reset list.  (, Chris Wilson)
2006-09-09 05:22:16 +00:00
Matthias Clasen
5b0de8d597 Stop cursor blinking after a configurable timeout. (, ,
Stop cursor blinking after a configurable timeout.
	(, , Arjan van de Ven, Manu Cornet)

	* gtk/gtksettings.c (gtk_settings_class_init): Add a
	gtk-cursor-blink-timeout setting, which specifies the number
	of seconds that the cursor should blink after a user interaction.
	The default value is G_MAXINT to preserve the current behaviour.

	* gtk/gtkentry.c (blink_cb): Stop blinking after blink-timeout
	seconds.

	* gtk/gtkentry.c (gtk_entry_completion_key_press)
	(gtk_entry_button_press, gtk_entry_focus_in): Reset the
	blink timer.

	* gtk/gtktextview.c (blink_cb): Stop blinking after blink-timeout
	seconds.

	* gtk/gtktextview.c (gtk_text_view_key_press_event)
	(gtk_text_view_button_press_event, gtk_text_view_focus_in_event):
	Reset the blink timer.
2006-09-01 02:14:30 +00:00
Matthias Clasen
d9c4801d94 Move a call 2006-07-27 14:13:18 +00:00