<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
               "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
<!ENTITY % local.common.attrib "xmlns:xi  CDATA  #FIXED 'http://www.w3.org/2003/XInclude'">
<!ENTITY version SYSTEM "version.xml">
<!ENTITY pi "&#960;">
<!ENTITY solidus "&#8260;">
]>
<refentry id="GtkSettings">
<refmeta>
<refentrytitle role="top_of_page" id="GtkSettings.top_of_page">Settings</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>GTK4 Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>Settings</refname>
<refpurpose>Sharing settings between applications</refpurpose>
</refnamediv>

<refsect1 id="GtkSettings.functions" role="functions_proto">
<title role="functions_proto.title">Functions</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="functions_proto_type" colwidth="150px"/>
<colspec colname="functions_proto_name"/>
<tbody>
<row><entry role="function_type"><link linkend="GtkSettings"><returnvalue>GtkSettings</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-settings-get-default">gtk_settings_get_default</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkSettings"><returnvalue>GtkSettings</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-settings-get-for-display">gtk_settings_get_for_display</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-settings-reset-property">gtk_settings_reset_property</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkSettings.properties" role="properties">
<title role="properties.title">Properties</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="properties_type" colwidth="150px"/>
<colspec colname="properties_name" colwidth="300px"/>
<colspec colname="properties_flags" colwidth="200px"/>
<tbody>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-alternative-button-order">gtk-alternative-button-order</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-alternative-sort-arrows">gtk-alternative-sort-arrows</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-application-prefer-dark-theme">gtk-application-prefer-dark-theme</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gfloat"><type>gfloat</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-cursor-aspect-ratio">gtk-cursor-aspect-ratio</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-cursor-blink">gtk-cursor-blink</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-cursor-blink-time">gtk-cursor-blink-time</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-cursor-blink-timeout">gtk-cursor-blink-timeout</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-cursor-theme-name">gtk-cursor-theme-name</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-cursor-theme-size">gtk-cursor-theme-size</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-decoration-layout">gtk-decoration-layout</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-dialogs-use-header">gtk-dialogs-use-header</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-dnd-drag-threshold">gtk-dnd-drag-threshold</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-double-click-distance">gtk-double-click-distance</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-double-click-time">gtk-double-click-time</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-enable-accels">gtk-enable-accels</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-enable-animations">gtk-enable-animations</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-enable-event-sounds">gtk-enable-event-sounds</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-enable-input-feedback-sounds">gtk-enable-input-feedback-sounds</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-enable-primary-paste">gtk-enable-primary-paste</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="guint"><type>guint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-entry-password-hint-timeout">gtk-entry-password-hint-timeout</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-entry-select-on-focus">gtk-entry-select-on-focus</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-error-bell">gtk-error-bell</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-font-name">gtk-font-name</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="guint"><type>guint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-fontconfig-timestamp">gtk-fontconfig-timestamp</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-icon-theme-name">gtk-icon-theme-name</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-im-module">gtk-im-module</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-keynav-use-caret">gtk-keynav-use-caret</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-label-select-on-focus">gtk-label-select-on-focus</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="guint"><type>guint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-long-press-time">gtk-long-press-time</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-overlay-scrolling">gtk-overlay-scrolling</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-primary-button-warps-slider">gtk-primary-button-warps-slider</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-print-backends">gtk-print-backends</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-print-preview-command">gtk-print-preview-command</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-recent-files-enabled">gtk-recent-files-enabled</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-recent-files-max-age">gtk-recent-files-max-age</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-shell-shows-app-menu">gtk-shell-shows-app-menu</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-shell-shows-desktop">gtk-shell-shows-desktop</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-shell-shows-menubar">gtk-shell-shows-menubar</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-sound-theme-name">gtk-sound-theme-name</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-split-cursor">gtk-split-cursor</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-theme-name">gtk-theme-name</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-titlebar-double-click">gtk-titlebar-double-click</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-titlebar-middle-click">gtk-titlebar-middle-click</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-titlebar-right-click">gtk-titlebar-right-click</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-xft-antialias">gtk-xft-antialias</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-xft-dpi">gtk-xft-dpi</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkSettings--gtk-xft-hinting">gtk-xft-hinting</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-xft-hintstyle">gtk-xft-hintstyle</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkSettings--gtk-xft-rgba">gtk-xft-rgba</link></entry><entry role="property_flags">Read / Write</entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkSettings.other" role="other_proto">
<title role="other_proto.title">Types and Values</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="other_proto_type" colwidth="150px"/>
<colspec colname="other_proto_name"/>
<tbody>
<row><entry role="datatype_keyword"></entry><entry role="function_name"><link linkend="GtkSettings-struct">GtkSettings</link></entry></row>
<row><entry role="datatype_keyword">struct</entry><entry role="function_name"><link linkend="GtkSettingsValue">GtkSettingsValue</link></entry></row>
<row><entry role="datatype_keyword">enum</entry><entry role="function_name"><link linkend="GtkSystemSetting">GtkSystemSetting</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkSettings.object-hierarchy" role="object_hierarchy">
<title role="object_hierarchy.title">Object Hierarchy</title>
<screen>    <link linkend="GObject">GObject</link>
    <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> GtkSettings
</screen>
</refsect1>
<refsect1 id="GtkSettings.implemented-interfaces" role="impl_interfaces">
<title role="impl_interfaces.title">Implemented Interfaces</title>
<para>
GtkSettings implements
 <link linkend="GtkStyleProvider">GtkStyleProvider</link>.</para>

</refsect1>

<refsect1 id="GtkSettings.includes"><title>Includes</title><synopsis>#include &lt;gtk/gtk.h&gt;
</synopsis></refsect1>

<refsect1 id="GtkSettings.description" role="desc">
<title role="desc.title">Description</title>
<para>GtkSettings provide a mechanism to share global settings between
applications.</para>
<para>On the X window system, this sharing is realized by an
<ulink url="http://www.freedesktop.org/wiki/Specifications/xsettings-spec">XSettings</ulink>
manager that is usually part of the desktop environment, along with
utilities that let the user change these settings.</para>
<para>On Wayland, the settings are obtained either via a settings portal,
or by reading desktop settings from DConf.</para>
<para>In the absence of these sharing mechanisms, GTK reads default values for
settings from <literal>settings.ini</literal> files in <literal>/etc/gtk-4.0</literal>, <literal>$XDG_CONFIG_DIRS/gtk-4.0</literal>
and <literal>$XDG_CONFIG_HOME/gtk-4.0</literal>. These files must be valid key files (see
<link linkend="GKeyFile"><type>GKeyFile</type></link>), and have a section called Settings. Themes can also provide
default values for settings by installing a <literal>settings.ini</literal> file
next to their <literal>gtk.css</literal> file.</para>
<para>Applications can override system-wide settings by setting the property
of the GtkSettings object with <link linkend="g-object-set"><function>g_object_set()</function></link>. This should be restricted
to special cases though; GtkSettings are not meant as an application
configuration facility.</para>
<para>There is one GtkSettings instance per display. It can be obtained with
<link linkend="gtk-settings-get-for-display"><function>gtk_settings_get_for_display()</function></link>, but in many cases, it is more convenient
to use <link linkend="gtk-widget-get-settings"><function>gtk_widget_get_settings()</function></link>.</para>

</refsect1>
<refsect1 id="GtkSettings.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="gtk-settings-get-default" role="function">
<title>gtk_settings_get_default&#160;()</title>
<indexterm zone="gtk-settings-get-default"><primary>gtk_settings_get_default</primary></indexterm>
<programlisting language="C"><link linkend="GtkSettings"><returnvalue>GtkSettings</returnvalue></link>&#160;*
gtk_settings_get_default (<parameter><type>void</type></parameter>);</programlisting>
<para>Gets the <link linkend="GtkSettings"><type>GtkSettings</type></link> object for the default display, creating
it if necessary. See <link linkend="gtk-settings-get-for-display"><function>gtk_settings_get_for_display()</function></link>.</para>
<refsect3 id="gtk-settings-get-default.returns" role="returns">
<title>Returns</title>
<para>a <link linkend="GtkSettings"><type>GtkSettings</type></link> object. If there is
no default display, then returns <link linkend="NULL:CAPS"><literal>NULL</literal></link>. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>][<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-settings-get-for-display" role="function">
<title>gtk_settings_get_for_display&#160;()</title>
<indexterm zone="gtk-settings-get-for-display"><primary>gtk_settings_get_for_display</primary></indexterm>
<programlisting language="C"><link linkend="GtkSettings"><returnvalue>GtkSettings</returnvalue></link>&#160;*
gtk_settings_get_for_display (<parameter><link linkend="GdkDisplay"><type>GdkDisplay</type></link> *display</parameter>);</programlisting>
<para>Gets the <link linkend="GtkSettings"><type>GtkSettings</type></link> object for <parameter>display</parameter>
, creating it if necessary.</para>
<refsect3 id="gtk-settings-get-for-display.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>display</para></entry>
<entry role="parameter_description"><para>a <link linkend="GdkDisplay"><type>GdkDisplay</type></link>.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-settings-get-for-display.returns" role="returns">
<title>Returns</title>
<para>a <link linkend="GtkSettings"><type>GtkSettings</type></link> object. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-settings-reset-property" role="function">
<title>gtk_settings_reset_property&#160;()</title>
<indexterm zone="gtk-settings-reset-property"><primary>gtk_settings_reset_property</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_settings_reset_property (<parameter><link linkend="GtkSettings"><type>GtkSettings</type></link> *settings</parameter>,
                             <parameter>const <link linkend="gchar"><type>gchar</type></link> *name</parameter>);</programlisting>
<para>Undoes the effect of calling <link linkend="g-object-set"><function>g_object_set()</function></link> to install an
application-specific value for a setting. After this call,
the setting will again follow the session-wide value for
this setting.</para>
<refsect3 id="gtk-settings-reset-property.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>settings</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkSettings"><type>GtkSettings</type></link> object</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>name</para></entry>
<entry role="parameter_description"><para>the name of the setting to reset</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkSettings.other_details" role="details">
<title role="details.title">Types and Values</title>
<refsect2 id="GtkSettings-struct" role="struct">
<title>GtkSettings</title>
<indexterm zone="GtkSettings-struct"><primary>GtkSettings</primary></indexterm>
<programlisting language="C">typedef struct _GtkSettings GtkSettings;</programlisting>
</refsect2>
<refsect2 id="GtkSettingsValue" role="struct">
<title>struct GtkSettingsValue</title>
<indexterm zone="GtkSettingsValue"><primary>GtkSettingsValue</primary></indexterm>
<programlisting language="C">struct GtkSettingsValue {
  /* origin should be something like "filename:linenumber" for rc files,
   * or e.g. "XProperty" for other sources
   */
  gchar *origin;

  /* valid types are LONG, DOUBLE and STRING corresponding to the token parsed,
   * or a GSTRING holding an unparsed statement
   */
  GValue value;
};
</programlisting>
<refsect3 id="GtkSettingsValue.members" role="struct_members">
<title>Members</title>
<informaltable role="struct_members_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="struct_members_name" colwidth="300px"/>
<colspec colname="struct_members_description"/>
<colspec colname="struct_members_annotations" colwidth="200px"/>
<tbody>
<row role="member"><entry role="struct_member_name"><para><link linkend="gchar"><type>gchar</type></link>&#160;*<structfield id="GtkSettingsValue.origin">origin</structfield>;</para></entry>
<entry role="struct_member_description"><para>Origin should be something like “filename:linenumber” for
rc files, or e.g. “XProperty” for other sources.</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><link linkend="GValue"><type>GValue</type></link>&#160;<structfield id="GtkSettingsValue.value">value</structfield>;</para></entry>
<entry role="struct_member_description"><para>Valid types are LONG, DOUBLE and STRING corresponding to
the token parsed, or a GSTRING holding an unparsed statement</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3>
</refsect2>
<refsect2 id="GtkSystemSetting" role="enum">
<title>enum GtkSystemSetting</title>
<indexterm zone="GtkSystemSetting"><primary>GtkSystemSetting</primary></indexterm>
<para>Values that can be passed to the GtkWidgetClass.system_setting_changed
vfunc to indicate that a system setting has changed and widgets may
need to drop caches, or react otherwise.</para>
<para>Most of the values correspond to <link linkend="GtkSettings"><type>GtkSettings</type></link> properties.</para>
<para>More values may be added over time.</para>
<refsect3 id="GtkSystemSetting.members" role="enum_members">
<title>Members</title>
<informaltable role="enum_members_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="enum_members_name" colwidth="300px"/>
<colspec colname="enum_members_description"/>
<colspec colname="enum_members_annotations" colwidth="200px"/>
<tbody>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SYSTEM-SETTING-DPI:CAPS">GTK_SYSTEM_SETTING_DPI</para></entry>
<entry role="enum_member_description"><para>the <link linkend="GtkSettings--gtk-xft-dpi"><type>“gtk-xft-dpi”</type></link> setting has changed</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SYSTEM-SETTING-FONT-NAME:CAPS">GTK_SYSTEM_SETTING_FONT_NAME</para></entry>
<entry role="enum_member_description"><para>The <link linkend="GtkSettings--gtk-font-name"><type>“gtk-font-name”</type></link> setting has changed</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SYSTEM-SETTING-FONT-CONFIG:CAPS">GTK_SYSTEM_SETTING_FONT_CONFIG</para></entry>
<entry role="enum_member_description"><para>The font configuration has changed in a way that
requires text to be redrawn. This can be any of the
<link linkend="GtkSettings--gtk-xft-antialias"><type>“gtk-xft-antialias”</type></link>, <link linkend="GtkSettings--gtk-xft-hinting"><type>“gtk-xft-hinting”</type></link>,
<link linkend="GtkSettings--gtk-xft-hintstyle"><type>“gtk-xft-hintstyle”</type></link>, <link linkend="GtkSettings--gtk-xft-rgba"><type>“gtk-xft-rgba”</type></link> or
<link linkend="GtkSettings--gtk-fontconfig-timestamp"><type>“gtk-fontconfig-timestamp”</type></link> settings</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SYSTEM-SETTING-DISPLAY:CAPS">GTK_SYSTEM_SETTING_DISPLAY</para></entry>
<entry role="enum_member_description"><para>The display has changed</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SYSTEM-SETTING-ICON-THEME:CAPS">GTK_SYSTEM_SETTING_ICON_THEME</para></entry>
<entry role="enum_member_description"><para>The icon theme has changed in a way that requires
icons to be looked up again</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkSettings.property-details" role="property_details">
<title role="property_details.title">Property Details</title>
<refsect2 id="GtkSettings--gtk-alternative-button-order" role="property"><title>The <literal>“gtk-alternative-button-order”</literal> property</title>
<indexterm zone="GtkSettings--gtk-alternative-button-order"><primary>GtkSettings:gtk-alternative-button-order</primary></indexterm>
<programlisting>  “gtk-alternative-button-order” <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether buttons in dialogs should use the alternative button order.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-alternative-sort-arrows" role="property"><title>The <literal>“gtk-alternative-sort-arrows”</literal> property</title>
<indexterm zone="GtkSettings--gtk-alternative-sort-arrows"><primary>GtkSettings:gtk-alternative-sort-arrows</primary></indexterm>
<programlisting>  “gtk-alternative-sort-arrows” <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Controls the direction of the sort indicators in sorted list and tree
views. By default an arrow pointing down means the column is sorted
in ascending order. When set to <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>, this order will be inverted.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-application-prefer-dark-theme" role="property"><title>The <literal>“gtk-application-prefer-dark-theme”</literal> property</title>
<indexterm zone="GtkSettings--gtk-application-prefer-dark-theme"><primary>GtkSettings:gtk-application-prefer-dark-theme</primary></indexterm>
<programlisting>  “gtk-application-prefer-dark-theme” <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether the application prefers to use a dark theme. If a GTK theme
includes a dark variant, it will be used instead of the configured
theme.</para>
<para>Some applications benefit from minimizing the amount of light pollution that
interferes with the content. Good candidates for dark themes are photo and
video editors that make the actual content get all the attention and minimize
the distraction of the chrome.</para>
<para>Dark themes should not be used for documents, where large spaces are white/light
and the dark chrome creates too much contrast (web browser, text editor...).</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-cursor-aspect-ratio" role="property"><title>The <literal>“gtk-cursor-aspect-ratio”</literal> property</title>
<indexterm zone="GtkSettings--gtk-cursor-aspect-ratio"><primary>GtkSettings:gtk-cursor-aspect-ratio</primary></indexterm>
<programlisting>  “gtk-cursor-aspect-ratio”  <link linkend="gfloat"><type>gfloat</type></link></programlisting>
<para>The aspect ratio of the text caret.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Allowed values: [0,1]</para>
<para>Default value: 0.04</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-cursor-blink" role="property"><title>The <literal>“gtk-cursor-blink”</literal> property</title>
<indexterm zone="GtkSettings--gtk-cursor-blink"><primary>GtkSettings:gtk-cursor-blink</primary></indexterm>
<programlisting>  “gtk-cursor-blink”         <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether the cursor should blink.</para>
<para>Also see the <link linkend="GtkSettings--gtk-cursor-blink-timeout"><type>“gtk-cursor-blink-timeout”</type></link> setting,
which allows more flexible control over cursor blinking.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-cursor-blink-time" role="property"><title>The <literal>“gtk-cursor-blink-time”</literal> property</title>
<indexterm zone="GtkSettings--gtk-cursor-blink-time"><primary>GtkSettings:gtk-cursor-blink-time</primary></indexterm>
<programlisting>  “gtk-cursor-blink-time”    <link linkend="gint"><type>gint</type></link></programlisting>
<para>Length of the cursor blink cycle, in milliseconds.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Allowed values: &gt;= 100</para>
<para>Default value: 1200</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-cursor-blink-timeout" role="property"><title>The <literal>“gtk-cursor-blink-timeout”</literal> property</title>
<indexterm zone="GtkSettings--gtk-cursor-blink-timeout"><primary>GtkSettings:gtk-cursor-blink-timeout</primary></indexterm>
<programlisting>  “gtk-cursor-blink-timeout” <link linkend="gint"><type>gint</type></link></programlisting>
<para>Time after which the cursor stops blinking, in seconds.
The timer is reset after each user interaction.</para>
<para>Setting this to zero has the same effect as setting
<link linkend="GtkSettings--gtk-cursor-blink"><type>“gtk-cursor-blink”</type></link> to <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Allowed values: &gt;= 1</para>
<para>Default value: 10</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-cursor-theme-name" role="property"><title>The <literal>“gtk-cursor-theme-name”</literal> property</title>
<indexterm zone="GtkSettings--gtk-cursor-theme-name"><primary>GtkSettings:gtk-cursor-theme-name</primary></indexterm>
<programlisting>  “gtk-cursor-theme-name”    <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>Name of the cursor theme to use, or NULL to use the default theme.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-cursor-theme-size" role="property"><title>The <literal>“gtk-cursor-theme-size”</literal> property</title>
<indexterm zone="GtkSettings--gtk-cursor-theme-size"><primary>GtkSettings:gtk-cursor-theme-size</primary></indexterm>
<programlisting>  “gtk-cursor-theme-size”    <link linkend="gint"><type>gint</type></link></programlisting>
<para>Size to use for cursors, or 0 to use the default size.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Allowed values: [0,128]</para>
<para>Default value: 0</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-decoration-layout" role="property"><title>The <literal>“gtk-decoration-layout”</literal> property</title>
<indexterm zone="GtkSettings--gtk-decoration-layout"><primary>GtkSettings:gtk-decoration-layout</primary></indexterm>
<programlisting>  “gtk-decoration-layout”    <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>This setting determines which buttons should be put in the
titlebar of client-side decorated windows, and whether they
should be placed at the left of right.</para>
<para>The format of the string is button names, separated by commas.
A colon separates the buttons that should appear on the left
from those on the right. Recognized button names are minimize,
maximize, close, icon (the window icon) and menu (a menu button
for the fallback app menu).</para>
<para>For example, "menu:minimize,maximize,close" specifies a menu
on the left, and minimize, maximize and close buttons on the right.</para>
<para>Note that buttons will only be shown when they are meaningful.
E.g. a menu button only appears when the desktop shell does not
show the app menu, and a close button only appears on a window
that can be closed.</para>
<para>Also note that the setting can be overridden with the
<link linkend="GtkHeaderBar--decoration-layout"><type>“decoration-layout”</type></link> property.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: "menu:minimize,maximize,close"</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-dialogs-use-header" role="property"><title>The <literal>“gtk-dialogs-use-header”</literal> property</title>
<indexterm zone="GtkSettings--gtk-dialogs-use-header"><primary>GtkSettings:gtk-dialogs-use-header</primary></indexterm>
<programlisting>  “gtk-dialogs-use-header”   <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether builtin GTK dialogs such as the file chooser, the
color chooser or the font chooser will use a header bar at
the top to show action widgets, or an action area at the bottom.</para>
<para>This setting does not affect custom dialogs using GtkDialog
directly, or message dialogs.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-dnd-drag-threshold" role="property"><title>The <literal>“gtk-dnd-drag-threshold”</literal> property</title>
<indexterm zone="GtkSettings--gtk-dnd-drag-threshold"><primary>GtkSettings:gtk-dnd-drag-threshold</primary></indexterm>
<programlisting>  “gtk-dnd-drag-threshold”   <link linkend="gint"><type>gint</type></link></programlisting>
<para>Number of pixels the cursor can move before dragging.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Allowed values: &gt;= 1</para>
<para>Default value: 8</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-double-click-distance" role="property"><title>The <literal>“gtk-double-click-distance”</literal> property</title>
<indexterm zone="GtkSettings--gtk-double-click-distance"><primary>GtkSettings:gtk-double-click-distance</primary></indexterm>
<programlisting>  “gtk-double-click-distance” <link linkend="gint"><type>gint</type></link></programlisting>
<para>Maximum distance allowed between two clicks for them to be considered a double click (in pixels).</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Allowed values: &gt;= 0</para>
<para>Default value: 5</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-double-click-time" role="property"><title>The <literal>“gtk-double-click-time”</literal> property</title>
<indexterm zone="GtkSettings--gtk-double-click-time"><primary>GtkSettings:gtk-double-click-time</primary></indexterm>
<programlisting>  “gtk-double-click-time”    <link linkend="gint"><type>gint</type></link></programlisting>
<para>Maximum time allowed between two clicks for them to be considered a double click (in milliseconds).</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Allowed values: &gt;= 0</para>
<para>Default value: 400</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-enable-accels" role="property"><title>The <literal>“gtk-enable-accels”</literal> property</title>
<indexterm zone="GtkSettings--gtk-enable-accels"><primary>GtkSettings:gtk-enable-accels</primary></indexterm>
<programlisting>  “gtk-enable-accels”        <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether menu items should have visible accelerators which can be
activated.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-enable-animations" role="property"><title>The <literal>“gtk-enable-animations”</literal> property</title>
<indexterm zone="GtkSettings--gtk-enable-animations"><primary>GtkSettings:gtk-enable-animations</primary></indexterm>
<programlisting>  “gtk-enable-animations”    <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether to enable toolkit-wide animations.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-enable-event-sounds" role="property"><title>The <literal>“gtk-enable-event-sounds”</literal> property</title>
<indexterm zone="GtkSettings--gtk-enable-event-sounds"><primary>GtkSettings:gtk-enable-event-sounds</primary></indexterm>
<programlisting>  “gtk-enable-event-sounds”  <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether to play any event sounds at all.</para>
<para>See the <ulink url="http://www.freedesktop.org/wiki/Specifications/sound-theme-spec">Sound Theme Specifications</ulink>
for more information on event sounds and sound themes.</para>
<para>GTK itself does not support event sounds, you have to use a loadable
module like the one that comes with libcanberra.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-enable-input-feedback-sounds" role="property"><title>The <literal>“gtk-enable-input-feedback-sounds”</literal> property</title>
<indexterm zone="GtkSettings--gtk-enable-input-feedback-sounds"><primary>GtkSettings:gtk-enable-input-feedback-sounds</primary></indexterm>
<programlisting>  “gtk-enable-input-feedback-sounds” <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether to play event sounds as feedback to user input.</para>
<para>See the <ulink url="http://www.freedesktop.org/wiki/Specifications/sound-theme-spec">Sound Theme Specifications</ulink>
for more information on event sounds and sound themes.</para>
<para>GTK itself does not support event sounds, you have to use a loadable
module like the one that comes with libcanberra.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-enable-primary-paste" role="property"><title>The <literal>“gtk-enable-primary-paste”</literal> property</title>
<indexterm zone="GtkSettings--gtk-enable-primary-paste"><primary>GtkSettings:gtk-enable-primary-paste</primary></indexterm>
<programlisting>  “gtk-enable-primary-paste” <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether a middle click on a mouse should paste the
'PRIMARY' clipboard content at the cursor location.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-entry-password-hint-timeout" role="property"><title>The <literal>“gtk-entry-password-hint-timeout”</literal> property</title>
<indexterm zone="GtkSettings--gtk-entry-password-hint-timeout"><primary>GtkSettings:gtk-entry-password-hint-timeout</primary></indexterm>
<programlisting>  “gtk-entry-password-hint-timeout” <link linkend="guint"><type>guint</type></link></programlisting>
<para>How long to show the last input character in hidden
entries. This value is in milliseconds. 0 disables showing the
last char. 600 is a good value for enabling it.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: 0</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-entry-select-on-focus" role="property"><title>The <literal>“gtk-entry-select-on-focus”</literal> property</title>
<indexterm zone="GtkSettings--gtk-entry-select-on-focus"><primary>GtkSettings:gtk-entry-select-on-focus</primary></indexterm>
<programlisting>  “gtk-entry-select-on-focus” <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether to select the contents of an entry when it is focused.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-error-bell" role="property"><title>The <literal>“gtk-error-bell”</literal> property</title>
<indexterm zone="GtkSettings--gtk-error-bell"><primary>GtkSettings:gtk-error-bell</primary></indexterm>
<programlisting>  “gtk-error-bell”           <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>When <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>, keyboard navigation and other input-related errors
will cause a beep. Since the error bell is implemented using
<link linkend="gdk-surface-beep"><function>gdk_surface_beep()</function></link>, the windowing system may offer ways to
configure the error bell in many ways, such as flashing the
window or similar visual effects.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-font-name" role="property"><title>The <literal>“gtk-font-name”</literal> property</title>
<indexterm zone="GtkSettings--gtk-font-name"><primary>GtkSettings:gtk-font-name</primary></indexterm>
<programlisting>  “gtk-font-name”            <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The default font to use. GTK uses the family name and size from this string.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: "Sans 10"</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-fontconfig-timestamp" role="property"><title>The <literal>“gtk-fontconfig-timestamp”</literal> property</title>
<indexterm zone="GtkSettings--gtk-fontconfig-timestamp"><primary>GtkSettings:gtk-fontconfig-timestamp</primary></indexterm>
<programlisting>  “gtk-fontconfig-timestamp” <link linkend="guint"><type>guint</type></link></programlisting>
<para>Timestamp of current fontconfig configuration.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: 0</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-icon-theme-name" role="property"><title>The <literal>“gtk-icon-theme-name”</literal> property</title>
<indexterm zone="GtkSettings--gtk-icon-theme-name"><primary>GtkSettings:gtk-icon-theme-name</primary></indexterm>
<programlisting>  “gtk-icon-theme-name”      <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>Name of icon theme to use.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: "Adwaita"</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-im-module" role="property"><title>The <literal>“gtk-im-module”</literal> property</title>
<indexterm zone="GtkSettings--gtk-im-module"><primary>GtkSettings:gtk-im-module</primary></indexterm>
<programlisting>  “gtk-im-module”            <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>Which IM (input method) module should be used by default. This is the
input method that will be used if the user has not explicitly chosen
another input method from the IM context menu.
This also can be a colon-separated list of input methods, which GTK
will try in turn until it finds one available on the system.</para>
<para>See <link linkend="GtkIMContext"><type>GtkIMContext</type></link>.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-keynav-use-caret" role="property"><title>The <literal>“gtk-keynav-use-caret”</literal> property</title>
<indexterm zone="GtkSettings--gtk-keynav-use-caret"><primary>GtkSettings:gtk-keynav-use-caret</primary></indexterm>
<programlisting>  “gtk-keynav-use-caret”     <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether GTK should make sure that text can be navigated with
a caret, even if it is not editable. This is useful when using
a screen reader.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-label-select-on-focus" role="property"><title>The <literal>“gtk-label-select-on-focus”</literal> property</title>
<indexterm zone="GtkSettings--gtk-label-select-on-focus"><primary>GtkSettings:gtk-label-select-on-focus</primary></indexterm>
<programlisting>  “gtk-label-select-on-focus” <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether to select the contents of a selectable label when it is focused.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-long-press-time" role="property"><title>The <literal>“gtk-long-press-time”</literal> property</title>
<indexterm zone="GtkSettings--gtk-long-press-time"><primary>GtkSettings:gtk-long-press-time</primary></indexterm>
<programlisting>  “gtk-long-press-time”      <link linkend="guint"><type>guint</type></link></programlisting>
<para>The time for a button or touch press to be considered a "long press".</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Allowed values: &lt;= G_MAXINT</para>
<para>Default value: 500</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-overlay-scrolling" role="property"><title>The <literal>“gtk-overlay-scrolling”</literal> property</title>
<indexterm zone="GtkSettings--gtk-overlay-scrolling"><primary>GtkSettings:gtk-overlay-scrolling</primary></indexterm>
<programlisting>  “gtk-overlay-scrolling”    <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether scrolled windows may use overlayed scrolling indicators.
If this is set to <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>, scrolled windows will have permanent
scrollbars.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-primary-button-warps-slider" role="property"><title>The <literal>“gtk-primary-button-warps-slider”</literal> property</title>
<indexterm zone="GtkSettings--gtk-primary-button-warps-slider"><primary>GtkSettings:gtk-primary-button-warps-slider</primary></indexterm>
<programlisting>  “gtk-primary-button-warps-slider” <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>If the value of this setting is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>, clicking the primary button in a
<link linkend="GtkRange"><type>GtkRange</type></link> trough will move the slider, and hence set the range’s value, to
the point that you clicked. If it is <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>, a primary click will cause the
slider/value to move by the range’s page-size towards the point clicked.</para>
<para>Whichever action you choose for the primary button, the other action will
be available by holding Shift and primary-clicking, or (since GTK 3.22.25)
clicking the middle mouse button.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-print-backends" role="property"><title>The <literal>“gtk-print-backends”</literal> property</title>
<indexterm zone="GtkSettings--gtk-print-backends"><primary>GtkSettings:gtk-print-backends</primary></indexterm>
<programlisting>  “gtk-print-backends”       <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>A comma-separated list of print backends to use in the print
dialog. Available print backends depend on the GTK installation,
and may include "file", "cups", "lpr" or "papi".</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: "file,cups"</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-print-preview-command" role="property"><title>The <literal>“gtk-print-preview-command”</literal> property</title>
<indexterm zone="GtkSettings--gtk-print-preview-command"><primary>GtkSettings:gtk-print-preview-command</primary></indexterm>
<programlisting>  “gtk-print-preview-command” <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>A command to run for displaying the print preview. The command
should contain a <literal>%f</literal> placeholder, which will get replaced by
the path to the pdf file. The command may also contain a <literal>%s</literal>
placeholder, which will get replaced by the path to a file
containing the print settings in the format produced by
<link linkend="gtk-print-settings-to-file"><function>gtk_print_settings_to_file()</function></link>.</para>
<para>The preview application is responsible for removing the pdf file
and the print settings file when it is done.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: "evince --unlink-tempfile --preview --print-settings %s %f"</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-recent-files-enabled" role="property"><title>The <literal>“gtk-recent-files-enabled”</literal> property</title>
<indexterm zone="GtkSettings--gtk-recent-files-enabled"><primary>GtkSettings:gtk-recent-files-enabled</primary></indexterm>
<programlisting>  “gtk-recent-files-enabled” <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether GTK should keep track of items inside the recently used
resources list. If set to <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>, the list will always be empty.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-recent-files-max-age" role="property"><title>The <literal>“gtk-recent-files-max-age”</literal> property</title>
<indexterm zone="GtkSettings--gtk-recent-files-max-age"><primary>GtkSettings:gtk-recent-files-max-age</primary></indexterm>
<programlisting>  “gtk-recent-files-max-age” <link linkend="gint"><type>gint</type></link></programlisting>
<para>The maximum age, in days, of the items inside the recently used
resources list. Items older than this setting will be excised
from the list. If set to 0, the list will always be empty; if
set to -1, no item will be removed.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Allowed values: &gt;= -1</para>
<para>Default value: 30</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-shell-shows-app-menu" role="property"><title>The <literal>“gtk-shell-shows-app-menu”</literal> property</title>
<indexterm zone="GtkSettings--gtk-shell-shows-app-menu"><primary>GtkSettings:gtk-shell-shows-app-menu</primary></indexterm>
<programlisting>  “gtk-shell-shows-app-menu” <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Set to TRUE if the desktop environment is displaying the app menu, FALSE if the app should display it itself.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-shell-shows-desktop" role="property"><title>The <literal>“gtk-shell-shows-desktop”</literal> property</title>
<indexterm zone="GtkSettings--gtk-shell-shows-desktop"><primary>GtkSettings:gtk-shell-shows-desktop</primary></indexterm>
<programlisting>  “gtk-shell-shows-desktop”  <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Set to TRUE if the desktop environment is displaying the desktop folder, FALSE if not.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-shell-shows-menubar" role="property"><title>The <literal>“gtk-shell-shows-menubar”</literal> property</title>
<indexterm zone="GtkSettings--gtk-shell-shows-menubar"><primary>GtkSettings:gtk-shell-shows-menubar</primary></indexterm>
<programlisting>  “gtk-shell-shows-menubar”  <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Set to TRUE if the desktop environment is displaying the menubar, FALSE if the app should display it itself.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-sound-theme-name" role="property"><title>The <literal>“gtk-sound-theme-name”</literal> property</title>
<indexterm zone="GtkSettings--gtk-sound-theme-name"><primary>GtkSettings:gtk-sound-theme-name</primary></indexterm>
<programlisting>  “gtk-sound-theme-name”     <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The XDG sound theme to use for event sounds.</para>
<para>See the <ulink url="http://www.freedesktop.org/wiki/Specifications/sound-theme-spec">Sound Theme Specifications</ulink>
for more information on event sounds and sound themes.</para>
<para>GTK itself does not support event sounds, you have to use a loadable
module like the one that comes with libcanberra.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: "freedesktop"</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-split-cursor" role="property"><title>The <literal>“gtk-split-cursor”</literal> property</title>
<indexterm zone="GtkSettings--gtk-split-cursor"><primary>GtkSettings:gtk-split-cursor</primary></indexterm>
<programlisting>  “gtk-split-cursor”         <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether two cursors should be displayed for mixed left-to-right and right-to-left text.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-theme-name" role="property"><title>The <literal>“gtk-theme-name”</literal> property</title>
<indexterm zone="GtkSettings--gtk-theme-name"><primary>GtkSettings:gtk-theme-name</primary></indexterm>
<programlisting>  “gtk-theme-name”           <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>Name of theme to load.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: "Adwaita"</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-titlebar-double-click" role="property"><title>The <literal>“gtk-titlebar-double-click”</literal> property</title>
<indexterm zone="GtkSettings--gtk-titlebar-double-click"><primary>GtkSettings:gtk-titlebar-double-click</primary></indexterm>
<programlisting>  “gtk-titlebar-double-click” <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>This setting determines the action to take when a double-click
occurs on the titlebar of client-side decorated windows.</para>
<para>Recognized actions are minimize, toggle-maximize, menu, lower
or none.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: "toggle-maximize"</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-titlebar-middle-click" role="property"><title>The <literal>“gtk-titlebar-middle-click”</literal> property</title>
<indexterm zone="GtkSettings--gtk-titlebar-middle-click"><primary>GtkSettings:gtk-titlebar-middle-click</primary></indexterm>
<programlisting>  “gtk-titlebar-middle-click” <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>This setting determines the action to take when a middle-click
occurs on the titlebar of client-side decorated windows.</para>
<para>Recognized actions are minimize, toggle-maximize, menu, lower
or none.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: "none"</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-titlebar-right-click" role="property"><title>The <literal>“gtk-titlebar-right-click”</literal> property</title>
<indexterm zone="GtkSettings--gtk-titlebar-right-click"><primary>GtkSettings:gtk-titlebar-right-click</primary></indexterm>
<programlisting>  “gtk-titlebar-right-click” <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>This setting determines the action to take when a right-click
occurs on the titlebar of client-side decorated windows.</para>
<para>Recognized actions are minimize, toggle-maximize, menu, lower
or none.</para>
<para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: "menu"</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-xft-antialias" role="property"><title>The <literal>“gtk-xft-antialias”</literal> property</title>
<indexterm zone="GtkSettings--gtk-xft-antialias"><primary>GtkSettings:gtk-xft-antialias</primary></indexterm>
<programlisting>  “gtk-xft-antialias”        <link linkend="gint"><type>gint</type></link></programlisting>
<para>Whether to antialias Xft fonts; 0=no, 1=yes, -1=default.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Allowed values: [-1,1]</para>
<para>Default value: -1</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-xft-dpi" role="property"><title>The <literal>“gtk-xft-dpi”</literal> property</title>
<indexterm zone="GtkSettings--gtk-xft-dpi"><primary>GtkSettings:gtk-xft-dpi</primary></indexterm>
<programlisting>  “gtk-xft-dpi”              <link linkend="gint"><type>gint</type></link></programlisting>
<para>Resolution for Xft, in 1024 * dots/inch. -1 to use default value.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Allowed values: [-1,1048576]</para>
<para>Default value: -1</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-xft-hinting" role="property"><title>The <literal>“gtk-xft-hinting”</literal> property</title>
<indexterm zone="GtkSettings--gtk-xft-hinting"><primary>GtkSettings:gtk-xft-hinting</primary></indexterm>
<programlisting>  “gtk-xft-hinting”          <link linkend="gint"><type>gint</type></link></programlisting>
<para>Whether to hint Xft fonts; 0=no, 1=yes, -1=default.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Allowed values: [-1,1]</para>
<para>Default value: -1</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-xft-hintstyle" role="property"><title>The <literal>“gtk-xft-hintstyle”</literal> property</title>
<indexterm zone="GtkSettings--gtk-xft-hintstyle"><primary>GtkSettings:gtk-xft-hintstyle</primary></indexterm>
<programlisting>  “gtk-xft-hintstyle”        <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>What degree of hinting to use; hintnone, hintslight, hintmedium, or hintfull.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkSettings--gtk-xft-rgba" role="property"><title>The <literal>“gtk-xft-rgba”</literal> property</title>
<indexterm zone="GtkSettings--gtk-xft-rgba"><primary>GtkSettings:gtk-xft-rgba</primary></indexterm>
<programlisting>  “gtk-xft-rgba”             <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>Type of subpixel antialiasing; none, rgb, bgr, vrgb, vbgr.</para><para>Owner: GtkSettings</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>

</refsect1>

</refentry>
