[gnome-power-manager] Port to GSettings
- From: Richard Hughes <rhughes src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-power-manager] Port to GSettings
- Date: Fri, 4 Jun 2010 13:53:39 +0000 (UTC)
commit 632c95b59e09cef742446ef752f2c1f24ffcd68d
Author: Richard Hughes <richard hughsie com>
Date: Fri Jun 4 14:53:20 2010 +0100
Port to GSettings
configure.ac | 27 +-
data/.gitignore | 2 +-
data/Makefile.am | 29 +-
data/gnome-power-manager.schemas.in | 741 --------------------------
data/gpm-prefs.ui | 10 +-
data/org.gnome.power-manager.gschema.migrate | 64 +++
data/org.gnome.power-manager.gschema.xml | 318 +++++++++++
po/POTFILES.in | 2 +-
policy/.gitignore | 8 -
src/gpm-backlight.c | 77 ++--
src/gpm-common.h | 157 +++---
src/gpm-control.c | 29 +-
src/gpm-engine.c | 50 +-
src/gpm-manager.c | 126 ++---
src/gpm-phone.c | 1 -
src/gpm-prefs-core.c | 261 +++-------
src/gpm-screensaver.c | 2 +-
src/gpm-statistics.c | 42 +-
src/gpm-tray-icon.c | 30 +-
19 files changed, 699 insertions(+), 1277 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 31111e0..92a8de8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -103,14 +103,16 @@ AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE(GETTEXT_PACKAGE, "AC_PACKAGE_NAME", [foo])
AM_GLIB_GNU_GETTEXT
+GLIB_GSETTINGS
dnl ---------------------------------------------------------------------------
dnl - Library dependencies
dnl ---------------------------------------------------------------------------
GLIB_REQUIRED=2.13.0
+GIO_REQUIRED=2.25.0
GTK_REQUIRED=2.17.7
GDK_REQUIRED=2.11.0
-GCONF_REQUIRED=2.10.0
+GCONF_REQUIRED=2.31.1
GNOME_KEYRING_REQUIRED=0.6.0
DBUS_REQUIRED=1.0
DBUS_GLIB_REQUIRED=0.70
@@ -126,7 +128,7 @@ UPOWER_REQUIRED=0.9.1
dnl ---------------------------------------------------------------------------
dnl - Check library dependencies
dnl ---------------------------------------------------------------------------
-PKG_CHECK_MODULES(GLIB, glib-2.0 >= $GLIB_REQUIRED gobject-2.0)
+PKG_CHECK_MODULES(GLIB, glib-2.0 >= $GLIB_REQUIRED gobject-2.0 gio-2.0 >= $GIO_REQUIRED)
PKG_CHECK_MODULES(CANBERRA, libcanberra-gtk >= $CANBERRA_REQUIRED)
@@ -162,9 +164,6 @@ PKG_CHECK_MODULES(UNIQUE, unique-1.0 >= $UNIQUE_REQUIRED)
PKG_CHECK_MODULES(UPOWER, upower-glib >= $UPOWER_REQUIRED)
-AC_PATH_PROG(GCONFTOOL, gconftool-2)
-AM_GCONF_SOURCE_2
-
dnl ---------------------------------------------------------------------------
dnl - Check XF86XK_Keys
dnl ---------------------------------------------------------------------------
@@ -215,21 +214,6 @@ fi
AM_CONDITIONAL([HAVE_TESTS], [test $have_tests = yes])
dnl ---------------------------------------------------------------------------
-dnl - Build gconf default button?
-dnl ---------------------------------------------------------------------------
-AC_ARG_ENABLE(gconf-defaults,
- AS_HELP_STRING([--disable-gconf-defaults],
- [Allow setting gconf default settings]),
- have_gconfdefaults=$enableval,have_gconfdefaults=yes)
-
-AC_MSG_CHECKING([whether to support gconf defaults])
-if test x$have_gconfdefaults = xyes ; then
- AC_DEFINE(HAVE_GCONF_DEFAULTS, 1, [Define if have gconf defaults])
-fi
-AC_MSG_RESULT([$have_gconfdefaults])
-AM_CONDITIONAL([HAVE_GCONF_DEFAULTS], [test $have_gconfdefaults = yes])
-
-dnl ---------------------------------------------------------------------------
dnl - Build applets
dnl ---------------------------------------------------------------------------
AC_ARG_ENABLE(applets,
@@ -346,7 +330,6 @@ data/icons/scalable/actions/Makefile
data/icons/scalable/apps/Makefile
data/icons/scalable/status/Makefile
])
-
AC_OUTPUT
dnl ==========================================================================
@@ -360,11 +343,9 @@ echo "
cflags: ${CFLAGS}
Building extra applets: ${enable_applets}
Self test support: ${have_tests}
- GConf default support: ${have_gconfdefaults}
Docbook support: ${enable_docbook_docs}
documentation dir: $DOCDIR
dbus-1 services dir: $DBUS_SERVICES_DIR
- gconf-schema dir: $GCONF_SCHEMA_FILE_DIR
"
if [[ "${prefix}" != "/usr" ]] ; then
echo '
diff --git a/data/.gitignore b/data/.gitignore
index 1558039..0b257e7 100644
--- a/data/.gitignore
+++ b/data/.gitignore
@@ -7,4 +7,4 @@ gnome-power-preferences.desktop
gnome-power-preferences.desktop.in
gnome-power-statistics.desktop
gnome-power-statistics.desktop.in
-
+*.valid
diff --git a/data/Makefile.am b/data/Makefile.am
index 99df812..8c4a5b7 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -1,9 +1,7 @@
SUBDIRS = icons
- INTLTOOL_SCHEMAS_RULE@
-schemadir = $(sysconfdir)/gconf/schemas
-schema_in_files = gnome-power-manager.schemas.in
-schema_DATA = $(schema_in_files:.schemas.in=.schemas)
+migrationdir = $(datadir)/GConf/gsettings
+dist_migration_DATA = org.gnome.power-manager.gschema.migrate
@INTLTOOL_DESKTOP_RULE@
desktopdir = $(datadir)/applications
@@ -23,6 +21,9 @@ service_DATA = $(service_in_files:.service.in=.service)
$(service_DATA): $(service_in_files) Makefile
@sed -e "s|\ servicedir\@|$(bindir)|" $< > $@
+ GSETTINGS_RULES@
+gsettings_SCHEMAS = org.gnome.power-manager.gschema.xml
+
pkgdata_DATA = \
gpm-statistics.ui \
gpm-feedback-widget.ui \
@@ -30,25 +31,12 @@ pkgdata_DATA = \
acme.ui
EXTRA_DIST = \
- gnome-power-manager.schemas.in \
- $(schema_in_files) \
- $(desktop_in_files) \
- $(autostart_in_files) \
+ $(gsettings_SCHEMAS) \
$(service_in_files) \
+ $(autostart_in_files) \
+ $(desktop_in_files) \
$(pkgdata_DATA)
-if GCONF_SCHEMAS_INSTALL
-install-data-local:
- -GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) \
- $(GCONFTOOL) --makefile-install-rule $(schema_DATA)
-endif
-
-if GCONF_SCHEMAS_INSTALL
-uninstall-local:
- -GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) \
- $(GCONFTOOL) --makefile-uninstall-rule $(schema_DATA)
-endif
-
clean-local :
rm -f *~
@@ -56,5 +44,4 @@ DISTCLEANFILES = \
gnome-power-manager.desktop \
gnome-power-preferences.desktop \
gnome-power-statistics.desktop \
- gnome-power-manager.schemas \
gnome-power-manager.service
diff --git a/data/gpm-prefs.ui b/data/gpm-prefs.ui
index b4e3f18..e3c3071 100644
--- a/data/gpm-prefs.ui
+++ b/data/gpm-prefs.ui
@@ -17,10 +17,10 @@
<property name="page_increment">5</property>
</object>
<object class="GtkAdjustment" id="adjustment3">
- <property name="value">41</property>
- <property name="upper">100</property>
- <property name="step_increment">1</property>
- <property name="page_increment">5</property>
+ <property name="value">0.5</property>
+ <property name="upper">1</property>
+ <property name="step_increment">0.01</property>
+ <property name="page_increment">0.050000000000000003</property>
</object>
<object class="GtkAdjustment" id="adjustment4">
<property name="value">1</property>
@@ -271,7 +271,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="adjustment">adjustment3</property>
- <property name="digits">0</property>
+ <property name="digits">2</property>
<property name="value_pos">bottom</property>
</object>
<packing>
diff --git a/data/org.gnome.power-manager.gschema.migrate b/data/org.gnome.power-manager.gschema.migrate
new file mode 100644
index 0000000..670f789
--- /dev/null
+++ b/data/org.gnome.power-manager.gschema.migrate
@@ -0,0 +1,64 @@
+[org.gnome.power-manager]
+action-sleep-type-battery = /apps/gnome-power-manager/actions/sleep_type_battery
+action-critical-battery = /apps/gnome-power-manager/actions/critical_battery
+event-when-closed-battery = /apps/gnome-power-manager/actions/event_when_closed_battery
+action-sleep-type-ac = /apps/gnome-power-manager/actions/sleep_type_ac
+action-critical-ups = /apps/gnome-power-manager/actions/critical_ups
+action-low-ups = /apps/gnome-power-manager/actions/low_ups
+backlight-enable = /apps/gnome-power-manager/backlight/enable
+backlight-battery-reduce = /apps/gnome-power-manager/backlight/battery_reduce
+idle-brightness = /apps/gnome-power-manager/backlight/idle_brightness
+idle-dim-battery = /apps/gnome-power-manager/backlight/idle_dim_battery
+idle-dim-time = /apps/gnome-power-manager/backlight/idle_dim_time
+brightness-dim-battery = /apps/gnome-power-manager/backlight/brightness_dim_battery
+idle-dim-ac = /apps/gnome-power-manager/backlight/idle_dim_ac
+dpms-method-ac = /apps/gnome-power-manager/backlight/dpms_method_ac
+dpms-method-battery = /apps/gnome-power-manager/backlight/dpms_method_battery
+brightness-ac" type="d"> = /apps/gnome-power-manager/backlight/brightness_ac
+button-suspend = /apps/gnome-power-manager/buttons/suspend
+button-hibernate = /apps/gnome-power-manager/buttons/hibernate
+button-power = /apps/gnome-power-manager/buttons/power
+button-lid-battery = /apps/gnome-power-manager/buttons/lid_battery
+button-lid-ac = /apps/gnome-power-manager/buttons/lid_ac
+schema-version = /apps/gnome-power-manager/general/installed_schema
+use-profile-time = /apps/gnome-power-manager/general/use_profile_time
+use-time-for-policy = /apps/gnome-power-manager/general/use_time_for_policy
+check-type-cpu = /apps/gnome-power-manager/general/check_type_cpu
+network-sleep = /apps/gnome-power-manager/general/network_sleep
+lock-use-screensaver = /apps/gnome-power-manager/lock/use_screensaver_settings
+lock-blank-screen = /apps/gnome-power-manager/lock/blank_screen
+lock-suspend = /apps/gnome-power-manager/lock/suspend
+lock-hibernate = /apps/gnome-power-manager/lock/hibernate
+lock-keyring-suspend = /apps/gnome-power-manager/lock/gnome_keyring_suspend
+lock-keyring-hibernate = /apps/gnome-power-manager/lock/gnome_keyring_hibernate
+spindown-enable-ac = /apps/gnome-power-manager/disks/spindown_enable_ac
+spindown-enable-battery = /apps/gnome-power-manager/disks/spindown_enable_battery
+spindown-timeout-ac = /apps/gnome-power-manager/disks/spindown_timeout_ac
+spindown-timeout-battery = /apps/gnome-power-manager/disks/spindown_timeout_battery
+notify-perhaps-recall = /apps/gnome-power-manager/notify/perhaps_recall
+notify-low-capacity = /apps/gnome-power-manager/notify/low_capacity
+notify-discharging = /apps/gnome-power-manager/notify/discharging
+notify-fully-charged = /apps/gnome-power-manager/notify/fully_charged
+notify-sleep-failed = /apps/gnome-power-manager/notify/sleep_failed
+notify-sleep-failed-uri = /apps/gnome-power-manager/notify/sleep_failed_uri
+notify-low-power = /apps/gnome-power-manager/notify/low_power
+statistics-show-axis-labels = /apps/gnome-power-manager/statistics/show_axis_labels
+statistics-show-events = /apps/gnome-power-manager/statistics/show_events
+statistics-smooth-data = /apps/gnome-power-manager/statistics/smooth_data
+statistics-graph-type = /apps/gnome-power-manager/statistics/graph_type
+statistics-data-max-time = /apps/gnome-power-manager/statistics/data_max_time
+percentage-low = /apps/gnome-power-manager/thresholds/percentage_low
+percentage-critical = /apps/gnome-power-manager/thresholds/percentage_critical
+percentage-action = /apps/gnome-power-manager/thresholds/percentage_action
+time-low = /apps/gnome-power-manager/thresholds/time_low
+time-critical = /apps/gnome-power-manager/thresholds/time_critical
+time-action = /apps/gnome-power-manager/thresholds/time_action
+sleep-computer-battery = /apps/gnome-power-manager/timeout/sleep_computer_battery
+sleep-computer-ac = /apps/gnome-power-manager/timeout/sleep_computer_ac
+sleep-computer-ups = /apps/gnome-power-manager/timeout/sleep_computer_ups
+sleep-display-ac = /apps/gnome-power-manager/timeout/sleep_display_ac
+sleep-display-battery = /apps/gnome-power-manager/timeout/sleep_display_battery
+sleep-display-ups = /apps/gnome-power-manager/timeout/sleep_display_ups
+enable-sound = /apps/gnome-power-manager/ui/enable_sound
+show-actions = /apps/gnome-power-manager/ui/show_actions
+icon-policy = /apps/gnome-power-manager/ui/icon_policy
diff --git a/data/org.gnome.power-manager.gschema.xml b/data/org.gnome.power-manager.gschema.xml
new file mode 100644
index 0000000..f71ce5d
--- /dev/null
+++ b/data/org.gnome.power-manager.gschema.xml
@@ -0,0 +1,318 @@
+<schemalist>
+ <schema id="org.gnome.power-manager" path="/apps/gnome-power-manager/">
+ <key name="action-sleep-type-battery" type="s">
+ <default>'hibernate'</default>
+ <summary>Whether to hibernate, suspend or do nothing when inactive</summary>
+ <description>The type of sleeping that should be performed when the computer is inactive. Possible values are "hibernate", "suspend" and "nothing".</description>
+ </key>
+ <key name="action-critical-battery" type="s">
+ <default>'hibernate'</default>
+ <summary>Battery critical low action</summary>
+ <description>The action to take when the battery is critically low. Possible values are "hibernate", "suspend", "shutdown" and "nothing".</description>
+ </key>
+ <key name="event-when-closed-battery" type="b">
+ <default>true</default>
+ <summary>If the battery event should occur when the lid is shut and the power disconnected</summary>
+ <description>If the battery lid close event should occur (for example 'Suspend when lid closed on battery') when the lid is previously shut and the AC power disconnected at a later time.</description>
+ </key>
+ <key name="action-sleep-type-ac" type="s">
+ <default>'suspend'</default>
+ <summary>Whether to hibernate, suspend or do nothing when inactive</summary>
+ <description>The type of sleeping that should be performed when the computer is inactive. Possible values are "hibernate", "suspend" and "nothing".</description>
+ </key>
+ <key name="action-critical-ups" type="s">
+ <default>'shutdown'</default>
+ <summary>UPS critical low action</summary>
+ <description>The action to take when the UPS is critically low. Possible values are "hibernate", "suspend", "shutdown" and "nothing".</description>
+ </key>
+ <key name="action-low-ups" type="s">
+ <default>'hibernate'</default>
+ <summary>UPS low power action</summary>
+ <description>The action to take when the UPS is low. Possible values are "hibernate", "suspend", "shutdown" and "nothing".</description>
+ </key>
+ <key name="backlight-enable" type="b">
+ <default>true</default>
+ <summary>Allow backlight brightness adjustment</summary>
+ <description>If the screen brightness should be changed when switching between AC and battery power.</description>
+ </key>
+ <key name="backlight-battery-reduce" type="b">
+ <default>true</default>
+ <summary>Reduce the backlight brightness when on battery power</summary>
+ <description>If the screen should be reduced in brightness when the computer is on battery power.</description>
+ </key>
+ <key name="idle-brightness" type="i">
+ <default>30</default>
+ <summary>The brightness of the screen when idle</summary>
+ <description>This is the laptop panel screen brightness used when the session is idle. Only valid when use-time-for-policy is true.</description>
+ </key>
+ <key name="idle-dim-battery" type="b">
+ <default>true</default>
+ <summary>Dim the screen after a period of inactivity when on battery power</summary>
+ <description>If the screen should be dimmed to save power when the computer is idle when on battery power.</description>
+ </key>
+ <key name="idle-dim-time" type="i">
+ <default>10</default>
+ <summary>The default amount of time to dim the screen after idle</summary>
+ <description>The default amount of time to dim the screen after idle.</description>
+ </key>
+ <key name="brightness-dim-battery" type="i">
+ <default>50</default>
+ <summary>LCD dimming amount when on battery</summary>
+ <description>The amount to dim the brightness of the display when on battery power. Possible values are between 0 and 100.</description>
+ </key>
+ <key name="idle-dim-ac" type="b">
+ <default>false</default>
+ <summary>Dim the screen after a period of inactivity when on AC power</summary>
+ <description>If the screen should be dimmed to save power when the computer is idle when on AC power.</description>
+ </key>
+ <key name="dpms-method-ac" type="s">
+ <default>'off'</default>
+ <summary>Method used to blank screen on AC</summary>
+ <description>The DPMS method used to blank the screen when on AC power. Possible values are "standby", "suspend" and "off".</description>
+ </key>
+ <key name="dpms-method-battery" type="s">
+ <default>'off'</default>
+ <summary>Method used to blank screen on battery</summary>
+ <description>The DPMS method used to blank the screen when on battery power. Possible values are "standby", "suspend" and "off".</description>
+ </key>
+ <key name="brightness-ac" type="d">
+ <default>1.0</default>
+ <summary>LCD brightness when on AC</summary>
+ <description>The brightness of the display when on AC power. Possible values are between 0.0 and 1.0.</description>
+ </key>
+ <key name="button-suspend" type="s">
+ <default>'suspend'</default>
+ <summary>Suspend button action</summary>
+ <description>The action to take when the system suspend button is pressed. Possible values are "suspend", "hibernate", "interactive", "shutdown" and "nothing".</description>
+ </key>
+ <key name="button-hibernate" type="s">
+ <default>'hibernate'</default>
+ <summary>Hibernate button action</summary>
+ <description>The action to take when the system hibernate button is pressed. Possible values are "suspend", "hibernate", "interactive", "shutdown" and "nothing".</description>
+ </key>
+ <key name="button-power" type="s">
+ <default>'interactive'</default>
+ <summary>Power button action</summary>
+ <description>The action to take when the system power button is pressed. Possible values are "suspend", "hibernate", "interactive", "shutdown" and "nothing".</description>
+ </key>
+ <key name="button-lid-battery" type="s">
+ <default>'suspend'</default>
+ <summary>Laptop lid close action on battery</summary>
+ <description>The action to take when the laptop lid is closed and the laptop is on battery power. Possible values are "suspend", "hibernate", "blank", and "nothing".</description>
+ </key>
+ <key name="button-lid-ac" type="s">
+ <default>'suspend'</default>
+ <summary>Laptop lid close action when on AC</summary>
+ <description>The action to take when the laptop lid is closed and the laptop is on AC power. Possible values are "suspend", "hibernate", "blank" and "nothing".</description>
+ </key>
+ <key name="schema-version" type="i">
+ <default>3</default>
+ <summary>The default configuration version.</summary>
+ <description>The version of the installed version of the schema. Do not edit this value, it is used so that configure changes between versions can be detected.</description>
+ </key>
+ <key name="use-profile-time" type="b">
+ <default>true</default>
+ <summary>If the learnt profile should be used to calculate the time remaining</summary>
+ <description>If the learnt profile should be used to calculate the time remaining. Only turn this off for debugging.</description>
+ </key>
+ <key name="use-time-for-policy" type="b">
+ <default>true</default>
+ <summary>Whether to use time-based notifications</summary>
+ <description>If time based notifications should be used. If set to false, then the percentage change is used instead, which may fix a broken ACPI BIOS.</description>
+ </key>
+ <key name="check-type-cpu" type="b">
+ <default>false</default>
+ <summary>Check CPU load before sleeping</summary>
+ <description>If the CPU load should be checked before doing the idle action.</description>
+ </key>
+ <key name="network-sleep" type="b">
+ <default>false</default>
+ <summary>Whether NetworkManager should be connected and disconnected on sleep.</summary>
+ <description>Whether NetworkManager should disconnect before suspending or hibernating and connect on resume.</description>
+ </key>
+ <key name="lock-use-screensaver" type="b">
+ <default>true</default>
+ <summary>Use gnome-screensaver lock setting</summary>
+ <description>Whether to use the screen lock setting of gnome-screensaver to decide if the screen is locked after a hibernate, suspend or blank screen.</description>
+ </key>
+ <key name="lock-blank-screen" type="b">
+ <default>true</default>
+ <summary>Lock screen when blanked</summary>
+ <description>Whether the screen is locked when the screen is turned off. Only used if lock-use-screensaver is false.</description>
+ </key>
+ <key name="lock-suspend" type="b">
+ <default>true</default>
+ <summary>Lock screen on suspend</summary>
+ <description>Whether the screen is locked when the computer wakes up from a suspend. Only used if lock-use-screensaver is false.</description>
+ </key>
+ <key name="lock-hibernate" type="b">
+ <default>true</default>
+ <summary>Lock screen on hibernate</summary>
+ <description>Whether the screen is locked when the computer wakes up from a hibernate. Only used if lock-use-screensaver is false.</description>
+ </key>
+ <key name="lock-keyring-suspend" type="b">
+ <default>false</default>
+ <summary>Lock GNOME keyring on sleep</summary>
+ <description>Whether the GNOME keyring is locked before the computer enters suspend. This means the keyring will have to be unlocked on resume.</description>
+ </key>
+ <key name="lock-keyring-hibernate" type="b">
+ <default>true</default>
+ <summary>Lock GNOME keyring on sleep</summary>
+ <description>Whether the GNOME keyring is locked before the computer enters hibernate. This means the keyring will have to be unlocked on resume.</description>
+ </key>
+ <key name="spindown-enable-ac" type="b">
+ <default>false</default>
+ <summary>If the low-power mode should be enabled when on AC</summary>
+ <description>If the system low-power mode should be enabled when on AC power.</description>
+ </key>
+ <key name="spindown-enable-battery" type="b">
+ <default>true</default>
+ <summary>If the low-power mode should be enabled when on battery</summary>
+ <description>If the system low-power mode should be enabled when on laptop battery power.</description>
+ </key>
+ <key name="spindown-timeout-ac" type="i">
+ <default>600</default>
+ <summary>Seconds of inactivity to spin down when on AC</summary>
+ <description>The number of seconds of inactivity to spin down the disks when on AC power.</description>
+ </key>
+ <key name="spindown-timeout-battery" type="i">
+ <default>60</default>
+ <summary>Seconds of inactivity to spin down when on battery</summary>
+ <description>The number of seconds of inactivity to spin down the disks when on battery power.</description>
+ </key>
+ <key name="notify-perhaps-recall" type="b">
+ <default>true</default>
+ <summary>If we should show the recalled battery warning for a broken battery</summary>
+ <description>If we should show the recalled battery warning for a broken battery. Set this to false only if you know your battery is okay.</description>
+ </key>
+ <key name="notify-low-capacity" type="b">
+ <default>true</default>
+ <summary>If we should show the low capacity warning for a broken battery</summary>
+ <description>If we should show the low capacity warning for a broken battery.</description>
+ </key>
+ <key name="notify-discharging" type="b">
+ <default>true</default>
+ <summary>Notify when AC adapter is disconnected</summary>
+ <description>If the user should be notified when the AC adapter is disconnected.</description>
+ </key>
+ <key name="notify-fully-charged" type="b">
+ <default>false</default>
+ <summary>Notify when fully charged</summary>
+ <description>If a notification message should be displayed when the battery is fully charged.</description>
+ </key>
+ <key name="notify-sleep-failed" type="b">
+ <default>true</default>
+ <summary>Notify on a sleep failure</summary>
+ <description>If a notification message should be displayed after suspend or hibernate failed.</description>
+ </key>
+ <key name="notify-sleep-failed-uri" type="s">
+ <default>''</default>
+ <summary>The URI to show to the user on sleep failure</summary>
+ <description>When sleep fails we can show the user a button to help fix the situation. Leave this blank if the button should not be shown.</description>
+ </key>
+ <key name="notify-low-power" type="b">
+ <default>true</default>
+ <summary>Notify on a low power</summary>
+ <description>If a notification message should be displayed when the battery is getting low.</description>
+ </key>
+ <key name="statistics-show-axis-labels" type="b">
+ <default>true</default>
+ <summary>Whether we should show the axis labels in the statistics window</summary>
+ <description>Whether we should show the axis labels in the statistics window.</description>
+ </key>
+ <key name="statistics-show-events" type="b">
+ <default>true</default>
+ <summary>Whether we should show the events in the statistics window</summary>
+ <description>Whether we should show the events in the statistics window.</description>
+ </key>
+ <key name="statistics-smooth-data" type="b">
+ <default>true</default>
+ <summary>Whether we should smooth the data in the graph</summary>
+ <description>Whether we should smooth the data in the graph.</description>
+ </key>
+ <key name="statistics-graph-type" type="s">
+ <default>'power'</default>
+ <summary>The default graph type to show in the statistics window</summary>
+ <description>The default graph type to show in the statistics window.</description>
+ </key>
+ <key name="statistics-data-max-time" type="i">
+ <default>21600</default>
+ <summary>The maximum time displayed on the graph</summary>
+ <description>The maximum duration of time displayed on the x-axis of the graph.</description>
+ </key>
+ <key name="percentage-low" type="i">
+ <default>10</default>
+ <summary>Percentage considered low</summary>
+ <description>The percentage of the battery when it is considered low. Only valid when use-time-for-policy is false.</description>
+ </key>
+ <key name="percentage-critical" type="i">
+ <default>3</default>
+ <summary>Percentage considered critical</summary>
+ <description>The percentage of the battery when it is considered critical. Only valid when use-time-for-policy is false.</description>
+ </key>
+ <key name="percentage-action" type="i">
+ <default>2</default>
+ <summary>Percentage action is taken</summary>
+ <description>The percentage of the battery when the critical action is performed. Only valid when use-time-for-policy is false.</description>
+ </key>
+ <key name="time-low" type="i">
+ <default>1200</default>
+ <summary>The time remaining when low</summary>
+ <description>The time remaining in seconds of the battery when it is considered low. Only valid when use-time-for-policy is true.</description>
+ </key>
+ <key name="time-critical" type="i">
+ <default>300</default>
+ <summary>The time remaining when critical</summary>
+ <description>The time remaining in seconds of the battery when it is considered critical. Only valid when use-time-for-policy is true.</description>
+ </key>
+ <key name="time-action" type="i">
+ <default>120</default>
+ <summary>The time remaining when action is taken</summary>
+ <description>The time remaining in seconds of the battery when critical action is taken. Only valid when use-time-for-policy is true.</description>
+ </key>
+ <key name="sleep-computer-battery" type="i">
+ <default>0</default>
+ <summary>Sleep timeout computer when on battery</summary>
+ <description>The amount of time in seconds the computer on battery power needs to be inactive before it goes to sleep.</description>
+ </key>
+ <key name="sleep-computer-ac" type="i">
+ <default>0</default>
+ <summary>Sleep timeout computer when on AC</summary>
+ <description>The amount of time in seconds the computer on AC power needs to be inactive before it goes to sleep.</description>
+ </key>
+ <key name="sleep-computer-ups" type="i">
+ <default>0</default>
+ <summary>Sleep timeout computer when on UPS</summary>
+ <description>The amount of time in seconds the computer on UPS power needs to be inactive before it goes to sleep.</description>
+ </key>
+ <key name="sleep-display-ac" type="i">
+ <default>1800</default>
+ <summary>Sleep timeout display when on AC</summary>
+ <description>The amount of time in seconds before the display goes to sleep when the computer is on AC power.</description>
+ </key>
+ <key name="sleep-display-battery" type="i">
+ <default>600</default>
+ <summary>Sleep timeout display when on battery</summary>
+ <description>The amount of time in seconds the computer on battery power needs to be inactive before the display goes to sleep.</description>
+ </key>
+ <key name="sleep-display-ups" type="i">
+ <default>600</default>
+ <summary>Sleep timeout display when on UPS</summary>
+ <description>The amount of time in seconds the computer on UPS power needs to be inactive before the display goes to sleep.</description>
+ </key>
+ <key name="enable-sound" type="b">
+ <default>true</default>
+ <summary>If sounds should be used</summary>
+ <description>If sounds should be used when the power is critically low, or inhibit requests have stopped the policy action.</description>
+ </key>
+ <key name="show-actions" type="b">
+ <default>true</default>
+ <summary>If preferences and statistics items should be shown in the context menu</summary>
+ </key>
+ <key name="icon-policy" type="s">
+ <default>'present'</default>
+ <summary>When to show the notification icon</summary>
+ <description>Display options for the notification icon. Valid options are "never", "low", "critical", "charge", and "present".</description>
+ </key>
+ </schema>
+</schemalist>
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 0afea66..90d6d45 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -6,7 +6,7 @@ applets/brightness/GNOME_BrightnessApplet.server.in.in
applets/inhibit/inhibit-applet.c
applets/inhibit/GNOME_InhibitApplet.server.in.in
data/gnome-power-manager.desktop.in.in
-data/gnome-power-manager.schemas.in
+data/org.gnome.power-manager.gschema.xml
data/gnome-power-preferences.desktop.in.in
data/gnome-power-statistics.desktop.in.in
[type: gettext/glade]data/gpm-feedback-widget.ui
diff --git a/src/gpm-backlight.c b/src/gpm-backlight.c
index 9a293fd..1a88981 100644
--- a/src/gpm-backlight.c
+++ b/src/gpm-backlight.c
@@ -39,7 +39,6 @@
#include <glib/gi18n.h>
#include <dbus/dbus-glib.h>
-#include <gconf/gconf-client.h>
#include <libupower-glib/upower.h>
#include "gpm-button.h"
@@ -62,7 +61,7 @@ struct GpmBacklightPrivate
UpClient *client;
GpmBrightness *brightness;
GpmButton *button;
- GConfClient *conf;
+ GSettings *settings;
GtkWidget *popup;
GpmControl *control;
GpmDpms *dpms;
@@ -288,7 +287,7 @@ gpm_backlight_brightness_evaluate_and_set (GpmBacklight *backlight, gboolean int
return FALSE;
}
- do_laptop_lcd = gconf_client_get_bool (backlight->priv->conf, GPM_CONF_BACKLIGHT_ENABLE, NULL);
+ do_laptop_lcd = g_settings_get_boolean (backlight->priv->settings, GPM_SETTINGS_BACKLIGHT_ENABLE);
if (do_laptop_lcd == FALSE) {
egg_warning ("policy is no dimming");
return FALSE;
@@ -304,9 +303,9 @@ gpm_backlight_brightness_evaluate_and_set (GpmBacklight *backlight, gboolean int
NULL);
/* reduce if on battery power if we should */
- battery_reduce = gconf_client_get_bool (backlight->priv->conf, GPM_CONF_BACKLIGHT_BATTERY_REDUCE, NULL);
+ battery_reduce = g_settings_get_boolean (backlight->priv->settings, GPM_SETTINGS_BACKLIGHT_BATTERY_REDUCE);
if (on_battery && battery_reduce) {
- value = gconf_client_get_int (backlight->priv->conf, GPM_CONF_BACKLIGHT_BRIGHTNESS_DIM_BATT, NULL);
+ value = g_settings_get_int (backlight->priv->settings, GPM_SETTINGS_BRIGHTNESS_DIM_BATT);
if (value > 100) {
egg_warning ("cannot use battery brightness value %i, correcting to 50", value);
value = 50;
@@ -320,11 +319,11 @@ gpm_backlight_brightness_evaluate_and_set (GpmBacklight *backlight, gboolean int
/* reduce if system is momentarily idle */
if (!on_battery)
- enable_action = gconf_client_get_bool (backlight->priv->conf, GPM_CONF_BACKLIGHT_IDLE_DIM_AC, NULL);
+ enable_action = g_settings_get_boolean (backlight->priv->settings, GPM_SETTINGS_IDLE_DIM_AC);
else
- enable_action = gconf_client_get_bool (backlight->priv->conf, GPM_CONF_BACKLIGHT_IDLE_DIM_BATT, NULL);
+ enable_action = g_settings_get_boolean (backlight->priv->settings, GPM_SETTINGS_IDLE_DIM_BATT);
if (enable_action && backlight->priv->system_is_idle) {
- value = gconf_client_get_int (backlight->priv->conf, GPM_CONF_BACKLIGHT_IDLE_BRIGHTNESS, NULL);
+ value = g_settings_get_int (backlight->priv->settings, GPM_SETTINGS_IDLE_BRIGHTNESS);
if (value > 100) {
egg_warning ("cannot use idle brightness value %i, correcting to 50", value);
value = 50;
@@ -364,44 +363,39 @@ gpm_backlight_brightness_evaluate_and_set (GpmBacklight *backlight, gboolean int
}
/**
- * gpm_conf_gconf_key_changed_cb:
+ * gpm_settings_key_changed_cb:
*
- * We might have to do things when the gconf keys change; do them here.
+ * We might have to do things when the keys change; do them here.
**/
static void
-gpm_conf_gconf_key_changed_cb (GConfClient *client, guint cnxn_id, GConfEntry *entry, GpmBacklight *backlight)
+gpm_settings_key_changed_cb (GSettings *settings, const gchar *key, GpmBacklight *backlight)
{
- GConfValue *value;
gboolean on_battery;
- value = gconf_entry_get_value (entry);
- if (value == NULL)
- return;
-
/* get battery status */
g_object_get (backlight->priv->client,
"on-battery", &on_battery,
NULL);
- if (!on_battery && strcmp (entry->key, GPM_CONF_BACKLIGHT_BRIGHTNESS_AC) == 0) {
- backlight->priv->master_percentage = gconf_value_get_int (value);
+ if (!on_battery && g_strcmp0 (key, GPM_SETTINGS_BRIGHTNESS_AC) == 0) {
+ backlight->priv->master_percentage = g_settings_get_double (settings, key) * 100.0f;
gpm_backlight_brightness_evaluate_and_set (backlight, FALSE);
- } else if (on_battery && strcmp (entry->key, GPM_CONF_BACKLIGHT_BRIGHTNESS_DIM_BATT) == 0) {
+ } else if (on_battery && g_strcmp0 (key, GPM_SETTINGS_BRIGHTNESS_DIM_BATT) == 0) {
gpm_backlight_brightness_evaluate_and_set (backlight, FALSE);
- } else if (strcmp (entry->key, GPM_CONF_BACKLIGHT_IDLE_DIM_AC) == 0 ||
- strcmp (entry->key, GPM_CONF_BACKLIGHT_ENABLE) == 0 ||
- strcmp (entry->key, GPM_CONF_TIMEOUT_SLEEP_DISPLAY_BATT) == 0 ||
- strcmp (entry->key, GPM_CONF_BACKLIGHT_BATTERY_REDUCE) == 0 ||
- strcmp (entry->key, GPM_CONF_BACKLIGHT_IDLE_BRIGHTNESS) == 0) {
+ } else if (g_strcmp0 (key, GPM_SETTINGS_IDLE_DIM_AC) == 0 ||
+ g_strcmp0 (key, GPM_SETTINGS_BACKLIGHT_ENABLE) == 0 ||
+ g_strcmp0 (key, GPM_SETTINGS_SLEEP_DISPLAY_BATT) == 0 ||
+ g_strcmp0 (key, GPM_SETTINGS_BACKLIGHT_BATTERY_REDUCE) == 0 ||
+ g_strcmp0 (key, GPM_SETTINGS_IDLE_BRIGHTNESS) == 0) {
gpm_backlight_brightness_evaluate_and_set (backlight, FALSE);
- } else if (strcmp (entry->key, GPM_CONF_BACKLIGHT_IDLE_DIM_TIME) == 0) {
- backlight->priv->idle_dim_timeout = gconf_value_get_int (value);
+ } else if (g_strcmp0 (key, GPM_SETTINGS_IDLE_DIM_TIME) == 0) {
+ backlight->priv->idle_dim_timeout = g_settings_get_int (settings, key);
gpm_idle_set_timeout_dim (backlight->priv->idle, backlight->priv->idle_dim_timeout);
} else {
- egg_debug ("unknown key %s", entry->key);
+ egg_debug ("unknown key %s", key);
}
}
@@ -434,7 +428,7 @@ gpm_backlight_button_pressed_cb (GpmButton *button, const gchar *type, GpmBackli
gboolean hw_changed;
egg_debug ("Button press event type=%s", type);
- if (strcmp (type, GPM_BUTTON_BRIGHT_UP) == 0) {
+ if (g_strcmp0 (type, GPM_BUTTON_BRIGHT_UP) == 0) {
/* go up one step */
ret = gpm_brightness_up (backlight->priv->brightness, &hw_changed);
@@ -453,7 +447,7 @@ gpm_backlight_button_pressed_cb (GpmButton *button, const gchar *type, GpmBackli
egg_debug ("emitting brightness-changed : %i", percentage);
g_signal_emit (backlight, signals [BRIGHTNESS_CHANGED], 0, percentage);
}
- } else if (strcmp (type, GPM_BUTTON_BRIGHT_DOWN) == 0) {
+ } else if (g_strcmp0 (type, GPM_BUTTON_BRIGHT_DOWN) == 0) {
/* go up down step */
ret = gpm_brightness_down (backlight->priv->brightness, &hw_changed);
@@ -472,7 +466,7 @@ gpm_backlight_button_pressed_cb (GpmButton *button, const gchar *type, GpmBackli
egg_debug ("emitting brightness-changed : %i", percentage);
g_signal_emit (backlight, signals [BRIGHTNESS_CHANGED], 0, percentage);
}
- } else if (strcmp (type, GPM_BUTTON_LID_OPEN) == 0) {
+ } else if (g_strcmp0 (type, GPM_BUTTON_LID_OPEN) == 0) {
/* make sure we undim when we lift the lid */
gpm_backlight_brightness_evaluate_and_set (backlight, FALSE);
@@ -520,8 +514,8 @@ gpm_backlight_notify_system_idle_changed (GpmBacklight *backlight, gboolean is_i
if (elapsed > 2*60) {
/* reset back to our default dimming */
backlight->priv->idle_dim_timeout =
- gconf_client_get_int (backlight->priv->conf,
- GPM_CONF_BACKLIGHT_IDLE_DIM_TIME, NULL);
+ g_settings_get_int (backlight->priv->settings,
+ GPM_SETTINGS_IDLE_DIM_TIME);
egg_debug ("resetting idle dim time to %is", backlight->priv->idle_dim_timeout);
gpm_idle_set_timeout_dim (backlight->priv->idle, backlight->priv->idle_dim_timeout);
}
@@ -600,9 +594,9 @@ idle_changed_cb (GpmIdle *idle, GpmIdleMode mode, GpmBacklight *backlight)
"on-battery", &on_battery,
NULL);
if (!on_battery)
- dpms_method = gconf_client_get_string (backlight->priv->conf, GPM_CONF_BACKLIGHT_DPMS_METHOD_AC, NULL);
+ dpms_method = g_settings_get_string (backlight->priv->settings, GPM_SETTINGS_DPMS_METHOD_AC);
else
- dpms_method = gconf_client_get_string (backlight->priv->conf, GPM_CONF_BACKLIGHT_DPMS_METHOD_BATT, NULL);
+ dpms_method = g_settings_get_string (backlight->priv->settings, GPM_SETTINGS_DPMS_METHOD_BATT);
/* convert the string types to standard types */
dpms_mode = gpm_dpms_mode_from_string (dpms_method);
@@ -680,7 +674,7 @@ gpm_backlight_finalize (GObject *object)
g_object_unref (backlight->priv->dpms);
g_object_unref (backlight->priv->control);
- g_object_unref (backlight->priv->conf);
+ g_object_unref (backlight->priv->settings);
g_object_unref (backlight->priv->client);
g_object_unref (backlight->priv->button);
g_object_unref (backlight->priv->idle);
@@ -742,17 +736,12 @@ gpm_backlight_init (GpmBacklight *backlight)
backlight->priv->can_dim = gpm_brightness_has_hw (backlight->priv->brightness);
/* watch for dim value changes */
- backlight->priv->conf = gconf_client_get_default ();
-
- /* watch gnome-power-manager keys */
- gconf_client_add_dir (backlight->priv->conf, GPM_CONF_DIR, GCONF_CLIENT_PRELOAD_RECURSIVE, NULL);
- gconf_client_notify_add (backlight->priv->conf, GPM_CONF_DIR,
- (GConfClientNotifyFunc) gpm_conf_gconf_key_changed_cb,
- backlight, NULL, NULL);
+ backlight->priv->settings = g_settings_new (GPM_SETTINGS_SCHEMA);
+ g_signal_connect (backlight->priv->settings, "changed", G_CALLBACK (gpm_settings_key_changed_cb), backlight);
/* set the main brightness, this is designed to be updated if the user changes the
* brightness so we can undim to the 'correct' value */
- backlight->priv->master_percentage = gconf_client_get_int (backlight->priv->conf, GPM_CONF_BACKLIGHT_BRIGHTNESS_AC, NULL);
+ backlight->priv->master_percentage = g_settings_get_double (backlight->priv->settings, GPM_SETTINGS_BRIGHTNESS_AC) * 100.0f;
/* watch for brightness up and down buttons and also check lid state */
backlight->priv->button = gpm_button_new ();
@@ -766,7 +755,7 @@ gpm_backlight_init (GpmBacklight *backlight)
/* assumption */
backlight->priv->system_is_idle = FALSE;
- backlight->priv->idle_dim_timeout = gconf_client_get_int (backlight->priv->conf, GPM_CONF_BACKLIGHT_IDLE_DIM_TIME, NULL);
+ backlight->priv->idle_dim_timeout = g_settings_get_int (backlight->priv->settings, GPM_SETTINGS_IDLE_DIM_TIME);
gpm_idle_set_timeout_dim (backlight->priv->idle, backlight->priv->idle_dim_timeout);
/* use a visual widget */
diff --git a/src/gpm-common.h b/src/gpm-common.h
index 5198490..ec09cac 100644
--- a/src/gpm-common.h
+++ b/src/gpm-common.h
@@ -42,113 +42,108 @@ G_BEGIN_DECLS
#define GPM_FAQ_URL "http://live.gnome.org/GnomePowerManager/Faq"
/* change general/installed_schema whenever adding or moving keys */
-#define GPM_CONF_SCHEMA_ID 3
-
-#define GPM_CONF_DIR "/apps/gnome-power-manager"
+#define GPM_SETTINGS_SCHEMA_ID 3
+#define GPM_SETTINGS_SCHEMA "org.gnome.power-manager"
/* actions */
-#define GPM_CONF_ACTIONS_CRITICAL_UPS GPM_CONF_DIR "/actions/critical_ups"
-#define GPM_CONF_ACTIONS_CRITICAL_BATT GPM_CONF_DIR "/actions/critical_battery"
-#define GPM_CONF_ACTIONS_LOW_UPS GPM_CONF_DIR "/actions/low_ups"
-#define GPM_CONF_ACTIONS_SLEEP_TYPE_AC GPM_CONF_DIR "/actions/sleep_type_ac"
-#define GPM_CONF_ACTIONS_SLEEP_TYPE_BATT GPM_CONF_DIR "/actions/sleep_type_battery"
-#define GPM_CONF_ACTIONS_SLEEP_WHEN_CLOSED GPM_CONF_DIR "/actions/event_when_closed_battery"
+#define GPM_SETTINGS_ACTION_CRITICAL_UPS "action-critical-ups"
+#define GPM_SETTINGS_ACTION_CRITICAL_BATT "action-critical-battery"
+#define GPM_SETTINGS_ACTION_LOW_UPS "action-low-ups"
+#define GPM_SETTINGS_ACTION_SLEEP_TYPE_AC "action-sleep-type-ac"
+#define GPM_SETTINGS_ACTION_SLEEP_TYPE_BATT "action-sleep-type-battery"
+#define GPM_SETTINGS_SLEEP_WHEN_CLOSED "event-when-closed-battery"
/* backlight stuff */
-#define GPM_CONF_BACKLIGHT_ENABLE GPM_CONF_DIR "/backlight/enable"
-#define GPM_CONF_BACKLIGHT_BATTERY_REDUCE GPM_CONF_DIR "/backlight/battery_reduce"
-#define GPM_CONF_BACKLIGHT_DPMS_METHOD_AC GPM_CONF_DIR "/backlight/dpms_method_ac"
-#define GPM_CONF_BACKLIGHT_DPMS_METHOD_BATT GPM_CONF_DIR "/backlight/dpms_method_battery"
-#define GPM_CONF_BACKLIGHT_IDLE_BRIGHTNESS GPM_CONF_DIR "/backlight/idle_brightness"
-#define GPM_CONF_BACKLIGHT_IDLE_DIM_AC GPM_CONF_DIR "/backlight/idle_dim_ac"
-#define GPM_CONF_BACKLIGHT_IDLE_DIM_BATT GPM_CONF_DIR "/backlight/idle_dim_battery"
-#define GPM_CONF_BACKLIGHT_IDLE_DIM_TIME GPM_CONF_DIR "/backlight/idle_dim_time"
-#define GPM_CONF_BACKLIGHT_BRIGHTNESS_AC GPM_CONF_DIR "/backlight/brightness_ac"
-#define GPM_CONF_BACKLIGHT_BRIGHTNESS_DIM_BATT GPM_CONF_DIR "/backlight/brightness_dim_battery"
+#define GPM_SETTINGS_BACKLIGHT_ENABLE "backlight-enable"
+#define GPM_SETTINGS_BACKLIGHT_BATTERY_REDUCE "backlight-battery-reduce"
+#define GPM_SETTINGS_DPMS_METHOD_AC "dpms-method-ac"
+#define GPM_SETTINGS_DPMS_METHOD_BATT "dpms-method-battery"
+#define GPM_SETTINGS_IDLE_BRIGHTNESS "idle-brightness"
+#define GPM_SETTINGS_IDLE_DIM_AC "idle-dim-ac"
+#define GPM_SETTINGS_IDLE_DIM_BATT "idle-dim-battery"
+#define GPM_SETTINGS_IDLE_DIM_TIME "idle-dim-time"
+#define GPM_SETTINGS_BRIGHTNESS_AC "brightness-ac"
+#define GPM_SETTINGS_BRIGHTNESS_DIM_BATT "brightness-dim-battery"
/* buttons */
-#define GPM_CONF_BUTTON_LID_AC GPM_CONF_DIR "/buttons/lid_ac"
-#define GPM_CONF_BUTTON_LID_BATT GPM_CONF_DIR "/buttons/lid_battery"
-#define GPM_CONF_BUTTON_SUSPEND GPM_CONF_DIR "/buttons/suspend"
-#define GPM_CONF_BUTTON_HIBERNATE GPM_CONF_DIR "/buttons/hibernate"
-#define GPM_CONF_BUTTON_POWER GPM_CONF_DIR "/buttons/power"
+#define GPM_SETTINGS_BUTTON_LID_AC "button-lid-ac"
+#define GPM_SETTINGS_BUTTON_LID_BATT "button-lid-battery"
+#define GPM_SETTINGS_BUTTON_SUSPEND "button-suspend"
+#define GPM_SETTINGS_BUTTON_HIBERNATE "button-hibernate"
+#define GPM_SETTINGS_BUTTON_POWER "button-power"
/* general */
-#define GPM_CONF_SCHEMA_VERSION GPM_CONF_DIR "/general/installed_schema"
-#define GPM_CONF_USE_TIME_POLICY GPM_CONF_DIR "/general/use_time_for_policy"
-#define GPM_CONF_USE_PROFILE_TIME GPM_CONF_DIR "/general/use_profile_time"
-#define GPM_CONF_NETWORKMANAGER_SLEEP GPM_CONF_DIR "/general/network_sleep"
-#define GPM_CONF_IDLE_CHECK_CPU GPM_CONF_DIR "/general/check_type_cpu"
-#define GPM_CONF_LAPTOP_USES_EXT_MON GPM_CONF_DIR "/general/using_external_monitor"
+#define GPM_SETTINGS_SCHEMA_VERSION "schema-version"
+#define GPM_SETTINGS_USE_TIME_POLICY "use-time-for-policy"
+#define GPM_SETTINGS_USE_PROFILE_TIME "use-profile-time"
+#define GPM_SETTINGS_NETWORKMANAGER_SLEEP "network-sleep"
+#define GPM_SETTINGS_IDLE_CHECK_CPU "check-type-cpu"
/* lock */
-#define GPM_CONF_LOCK_USE_SCREENSAVER GPM_CONF_DIR "/lock/use_screensaver_settings"
-#define GPM_CONF_LOCK_ON_BLANK_SCREEN GPM_CONF_DIR "/lock/blank_screen"
-#define GPM_CONF_LOCK_ON_SUSPEND GPM_CONF_DIR "/lock/suspend"
-#define GPM_CONF_LOCK_ON_HIBERNATE GPM_CONF_DIR "/lock/hibernate"
-#define GPM_CONF_LOCK_GNOME_KEYRING_SUSPEND GPM_CONF_DIR "/lock/gnome_keyring_suspend"
-#define GPM_CONF_LOCK_GNOME_KEYRING_HIBERNATE GPM_CONF_DIR "/lock/gnome_keyring_hibernate"
+#define GPM_SETTINGS_LOCK_USE_SCREENSAVER "lock-use-screensaver"
+#define GPM_SETTINGS_LOCK_ON_BLANK_SCREEN "lock-blank-screen"
+#define GPM_SETTINGS_LOCK_ON_SUSPEND "lock-suspend"
+#define GPM_SETTINGS_LOCK_ON_HIBERNATE "lock-hibernate"
+#define GPM_SETTINGS_LOCK_KEYRING_SUSPEND "lock-keyring-suspend"
+#define GPM_SETTINGS_LOCK_KEYRING_HIBERNATE "lock-keyring-hibernate"
/* disks */
-#define GPM_CONF_DISKS_SPINDOWN_ENABLE_AC GPM_CONF_DIR "/disks/spindown_enable_ac"
-#define GPM_CONF_DISKS_SPINDOWN_ENABLE_BATT GPM_CONF_DIR "/disks/spindown_enable_battery"
-#define GPM_CONF_DISKS_SPINDOWN_TIMEOUT_AC GPM_CONF_DIR "/disks/spindown_timeout_ac"
-#define GPM_CONF_DISKS_SPINDOWN_TIMEOUT_BATT GPM_CONF_DIR "/disks/spindown_timeout_battery"
+#define GPM_SETTINGS_SPINDOWN_ENABLE_AC "spindown-enable-ac"
+#define GPM_SETTINGS_SPINDOWN_ENABLE_BATT "spindown-enable-battery"
+#define GPM_SETTINGS_SPINDOWN_TIMEOUT_AC "spindown-timeout-ac"
+#define GPM_SETTINGS_SPINDOWN_TIMEOUT_BATT "spindown-timeout-battery"
/* notify */
-#define GPM_CONF_NOTIFY_PERHAPS_RECALL GPM_CONF_DIR "/notify/perhaps_recall"
-#define GPM_CONF_NOTIFY_LOW_CAPACITY GPM_CONF_DIR "/notify/low_capacity"
-#define GPM_CONF_NOTIFY_DISCHARGING GPM_CONF_DIR "/notify/discharging"
-#define GPM_CONF_NOTIFY_FULLY_CHARGED GPM_CONF_DIR "/notify/fully_charged"
-#define GPM_CONF_NOTIFY_SLEEP_FAILED GPM_CONF_DIR "/notify/sleep_failed"
-#define GPM_CONF_NOTIFY_SLEEP_FAILED_URI GPM_CONF_DIR "/notify/sleep_failed_uri"
-#define GPM_CONF_NOTIFY_LOW_POWER GPM_CONF_DIR "/notify/low_power"
+#define GPM_SETTINGS_NOTIFY_PERHAPS_RECALL "notify-perhaps-recall"
+#define GPM_SETTINGS_NOTIFY_LOW_CAPACITY "notify-low-capacity"
+#define GPM_SETTINGS_NOTIFY_DISCHARGING "notify-discharging"
+#define GPM_SETTINGS_NOTIFY_FULLY_CHARGED "notify-fully-charged"
+#define GPM_SETTINGS_NOTIFY_SLEEP_FAILED "notify-sleep-failed"
+#define GPM_SETTINGS_NOTIFY_SLEEP_FAILED_URI "notify-sleep-failed-uri"
+#define GPM_SETTINGS_NOTIFY_LOW_POWER "notify-low-power"
/* statistics */
-#define GPM_CONF_STATS_SHOW_AXIS_LABELS GPM_CONF_DIR "/statistics/show_axis_labels"
-#define GPM_CONF_STATS_SHOW_EVENTS GPM_CONF_DIR "/statistics/show_events"
-#define GPM_CONF_STATS_SMOOTH_DATA GPM_CONF_DIR "/statistics/smooth_data"
-#define GPM_CONF_STATS_GRAPH_TYPE GPM_CONF_DIR "/statistics/graph_type"
-#define GPM_CONF_STATS_MAX_TIME GPM_CONF_DIR "/statistics/data_max_time"
+#define GPM_SETTINGS_STATS_SHOW_AXIS_LABELS "statistics-show-axis-labels"
+#define GPM_SETTINGS_STATS_SHOW_EVENTS "statistics-show-events"
+#define GPM_SETTINGS_STATS_SMOOTH_DATA "statistics-smooth-data"
+#define GPM_SETTINGS_STATS_GRAPH_TYPE "statistics-graph-type"
+#define GPM_SETTINGS_STATS_MAX_TIME "statistics-data-max-time"
/* thresholds */
-#define GPM_CONF_THRESH_PERCENTAGE_LOW GPM_CONF_DIR "/thresholds/percentage_low"
-#define GPM_CONF_THRESH_PERCENTAGE_CRITICAL GPM_CONF_DIR "/thresholds/percentage_critical"
-#define GPM_CONF_THRESH_PERCENTAGE_ACTION GPM_CONF_DIR "/thresholds/percentage_action"
-#define GPM_CONF_THRESH_TIME_LOW GPM_CONF_DIR "/thresholds/time_low"
-#define GPM_CONF_THRESH_TIME_CRITICAL GPM_CONF_DIR "/thresholds/time_critical"
-#define GPM_CONF_THRESH_TIME_ACTION GPM_CONF_DIR "/thresholds/time_action"
+#define GPM_SETTINGS_PERCENTAGE_LOW "percentage-low"
+#define GPM_SETTINGS_PERCENTAGE_CRITICAL "percentage-critical"
+#define GPM_SETTINGS_PERCENTAGE_ACTION "percentage-action"
+#define GPM_SETTINGS_TIME_LOW "time-low"
+#define GPM_SETTINGS_TIME_CRITICAL "time-critical"
+#define GPM_SETTINGS_TIME_ACTION "time-action"
/* timeout */
-#define GPM_CONF_TIMEOUT_SLEEP_COMPUTER_AC GPM_CONF_DIR "/timeout/sleep_computer_ac"
-#define GPM_CONF_TIMEOUT_SLEEP_COMPUTER_BATT GPM_CONF_DIR "/timeout/sleep_computer_battery"
-#define GPM_CONF_TIMEOUT_SLEEP_COMPUTER_UPS GPM_CONF_DIR "/timeout/sleep_computer_ups"
-#define GPM_CONF_TIMEOUT_SLEEP_DISPLAY_AC GPM_CONF_DIR "/timeout/sleep_display_ac"
-#define GPM_CONF_TIMEOUT_SLEEP_DISPLAY_BATT GPM_CONF_DIR "/timeout/sleep_display_battery"
-#define GPM_CONF_TIMEOUT_SLEEP_DISPLAY_UPS GPM_CONF_DIR "/timeout/sleep_display_ups"
+#define GPM_SETTINGS_SLEEP_COMPUTER_AC "sleep-computer-ac"
+#define GPM_SETTINGS_SLEEP_COMPUTER_BATT "sleep-computer-battery"
+#define GPM_SETTINGS_SLEEP_COMPUTER_UPS "sleep-computer-ups"
+#define GPM_SETTINGS_SLEEP_DISPLAY_AC "sleep-display-ac"
+#define GPM_SETTINGS_SLEEP_DISPLAY_BATT "sleep-display-battery"
+#define GPM_SETTINGS_SLEEP_DISPLAY_UPS "sleep-display-ups"
/* ui */
-#define GPM_CONF_UI_ICON_POLICY GPM_CONF_DIR "/ui/icon_policy"
-#define GPM_CONF_UI_ENABLE_SOUND GPM_CONF_DIR "/ui/enable_sound"
-#define GPM_CONF_UI_SHOW_ACTIONS GPM_CONF_DIR "/ui/show_actions"
+#define GPM_SETTINGS_ICON_POLICY "icon-policy"
+#define GPM_SETTINGS_ENABLE_SOUND "enable-sound"
+#define GPM_SETTINGS_SHOW_ACTIONS "show-actions"
/* new info binary */
-#define GPM_CONF_INFO_HISTORY_TIME "/apps/gnome-power-manager/info/history_time"
-#define GPM_CONF_INFO_HISTORY_TYPE "/apps/gnome-power-manager/info/history_type"
-#define GPM_CONF_INFO_HISTORY_GRAPH_SMOOTH "/apps/gnome-power-manager/info/history_graph_smooth"
-#define GPM_CONF_INFO_HISTORY_GRAPH_POINTS "/apps/gnome-power-manager/info/history_graph_points"
-#define GPM_CONF_INFO_STATS_TYPE "/apps/gnome-power-manager/info/stats_type"
-#define GPM_CONF_INFO_STATS_GRAPH_SMOOTH "/apps/gnome-power-manager/info/stats_graph_smooth"
-#define GPM_CONF_INFO_STATS_GRAPH_POINTS "/apps/gnome-power-manager/info/stats_graph_points"
-#define GPM_CONF_INFO_PAGE_NUMBER "/apps/gnome-power-manager/info/page_number"
-#define GPM_CONF_INFO_LAST_DEVICE "/apps/gnome-power-manager/info/last_device"
+#define GPM_SETTINGS_INFO_HISTORY_TIME "info-history-time"
+#define GPM_SETTINGS_INFO_HISTORY_TYPE "info-history-type"
+#define GPM_SETTINGS_INFO_HISTORY_GRAPH_SMOOTH "info-history-graph-smooth"
+#define GPM_SETTINGS_INFO_HISTORY_GRAPH_POINTS "info-history-graph-points"
+#define GPM_SETTINGS_INFO_STATS_TYPE "info-stats-type"
+#define GPM_SETTINGS_INFO_STATS_GRAPH_SMOOTH "info-stats-graph-smooth"
+#define GPM_SETTINGS_INFO_STATS_GRAPH_POINTS "info-stats-graph-points"
+#define GPM_SETTINGS_INFO_PAGE_NUMBER "info-page-number"
+#define GPM_SETTINGS_INFO_LAST_DEVICE "info-last-device"
/* gnome-screensaver */
-#define GS_CONF_DIR "/apps/gnome-screensaver"
-#define GS_PREF_LOCK_ENABLED GS_CONF_DIR "/lock_enabled"
-
-/* gnome-session */
-#define GPM_CONF_IDLE_DELAY "/desktop/gnome/session/idle_delay"
+#define GS_CONF_DIR "/apps/gnome-screensaver"
+#define GS_CONF_PREF_LOCK_ENABLED GS_CONF_DIR "/lock_enabled"
typedef enum {
GPM_ICON_POLICY_PRESENT,
diff --git a/src/gpm-control.c b/src/gpm-control.c
index 825b164..91857c4 100644
--- a/src/gpm-control.c
+++ b/src/gpm-control.c
@@ -56,6 +56,7 @@
struct GpmControlPrivate
{
GConfClient *conf;
+ GSettings *settings;
UpClient *client;
};
@@ -103,7 +104,7 @@ gpm_control_shutdown (GpmControl *control, GError **error)
/**
* gpm_control_get_lock_policy:
* @control: This class instance
- * @policy: The policy gconf string.
+ * @policy: The policy string.
*
* This function finds out if we should lock the screen when we do an
* action. It is required as we can either use the gnome-screensaver policy
@@ -116,15 +117,15 @@ gpm_control_get_lock_policy (GpmControl *control, const gchar *policy)
{
gboolean do_lock;
gboolean use_ss_setting;
- /* This allows us to over-ride the custom lock settings set in gconf
+ /* This allows us to over-ride the custom lock settings set
with a system default set in gnome-screensaver.
See bug #331164 for all the juicy details. :-) */
- use_ss_setting = gconf_client_get_bool (control->priv->conf, GPM_CONF_LOCK_USE_SCREENSAVER, NULL);
+ use_ss_setting = g_settings_get_boolean (control->priv->settings, GPM_SETTINGS_LOCK_USE_SCREENSAVER);
if (use_ss_setting) {
- do_lock = gconf_client_get_bool (control->priv->conf, GS_PREF_LOCK_ENABLED, NULL);
+ do_lock = gconf_client_get_bool (control->priv->conf, GS_CONF_PREF_LOCK_ENABLED, NULL);
egg_debug ("Using ScreenSaver settings (%i)", do_lock);
} else {
- do_lock = gconf_client_get_bool (control->priv->conf, policy, NULL);
+ do_lock = g_settings_get_boolean (control->priv->settings, policy);
egg_debug ("Using custom locking settings (%i)", do_lock);
}
return do_lock;
@@ -157,20 +158,20 @@ gpm_control_suspend (GpmControl *control, GError **error)
}
/* we should perhaps lock keyrings when sleeping #375681 */
- lock_gnome_keyring = gconf_client_get_bool (control->priv->conf, GPM_CONF_LOCK_GNOME_KEYRING_SUSPEND, NULL);
+ lock_gnome_keyring = g_settings_get_boolean (control->priv->settings, GPM_SETTINGS_LOCK_KEYRING_SUSPEND);
if (lock_gnome_keyring) {
keyres = gnome_keyring_lock_all_sync ();
if (keyres != GNOME_KEYRING_RESULT_OK)
egg_warning ("could not lock keyring");
}
- do_lock = gpm_control_get_lock_policy (control, GPM_CONF_LOCK_ON_SUSPEND);
+ do_lock = gpm_control_get_lock_policy (control, GPM_SETTINGS_LOCK_ON_SUSPEND);
if (do_lock) {
throttle_cookie = gpm_screensaver_add_throttle (screensaver, "suspend");
gpm_screensaver_lock (screensaver);
}
- nm_sleep = gconf_client_get_bool (control->priv->conf, GPM_CONF_NETWORKMANAGER_SLEEP, NULL);
+ nm_sleep = g_settings_get_boolean (control->priv->settings, GPM_SETTINGS_NETWORKMANAGER_SLEEP);
if (nm_sleep)
gpm_networkmanager_sleep ();
@@ -189,7 +190,7 @@ gpm_control_suspend (GpmControl *control, GError **error)
gpm_screensaver_remove_throttle (screensaver, throttle_cookie);
}
- nm_sleep = gconf_client_get_bool (control->priv->conf, GPM_CONF_NETWORKMANAGER_SLEEP, NULL);
+ nm_sleep = g_settings_get_boolean (control->priv->settings, GPM_SETTINGS_NETWORKMANAGER_SLEEP);
if (nm_sleep)
gpm_networkmanager_wake ();
@@ -225,7 +226,7 @@ gpm_control_hibernate (GpmControl *control, GError **error)
}
/* we should perhaps lock keyrings when sleeping #375681 */
- lock_gnome_keyring = gconf_client_get_bool (control->priv->conf, GPM_CONF_LOCK_GNOME_KEYRING_HIBERNATE, NULL);
+ lock_gnome_keyring = g_settings_get_boolean (control->priv->settings, GPM_SETTINGS_LOCK_KEYRING_HIBERNATE);
if (lock_gnome_keyring) {
keyres = gnome_keyring_lock_all_sync ();
if (keyres != GNOME_KEYRING_RESULT_OK) {
@@ -233,13 +234,13 @@ gpm_control_hibernate (GpmControl *control, GError **error)
}
}
- do_lock = gpm_control_get_lock_policy (control, GPM_CONF_LOCK_ON_HIBERNATE);
+ do_lock = gpm_control_get_lock_policy (control, GPM_SETTINGS_LOCK_ON_HIBERNATE);
if (do_lock) {
throttle_cookie = gpm_screensaver_add_throttle (screensaver, "hibernate");
gpm_screensaver_lock (screensaver);
}
- nm_sleep = gconf_client_get_bool (control->priv->conf, GPM_CONF_NETWORKMANAGER_SLEEP, NULL);
+ nm_sleep = g_settings_get_boolean (control->priv->settings, GPM_SETTINGS_NETWORKMANAGER_SLEEP);
if (nm_sleep)
gpm_networkmanager_sleep ();
@@ -257,7 +258,7 @@ gpm_control_hibernate (GpmControl *control, GError **error)
gpm_screensaver_remove_throttle (screensaver, throttle_cookie);
}
- nm_sleep = gconf_client_get_bool (control->priv->conf, GPM_CONF_NETWORKMANAGER_SLEEP, NULL);
+ nm_sleep = g_settings_get_boolean (control->priv->settings, GPM_SETTINGS_NETWORKMANAGER_SLEEP);
if (nm_sleep)
gpm_networkmanager_wake ();
@@ -279,6 +280,7 @@ gpm_control_finalize (GObject *object)
control = GPM_CONTROL (object);
g_object_unref (control->priv->conf);
+ g_object_unref (control->priv->settings);
g_object_unref (control->priv->client);
g_return_if_fail (control->priv != NULL);
@@ -326,6 +328,7 @@ gpm_control_init (GpmControl *control)
control->priv = GPM_CONTROL_GET_PRIVATE (control);
control->priv->client = up_client_new ();
+ control->priv->settings = g_settings_new (GPM_SETTINGS_SCHEMA);
control->priv->conf = gconf_client_get_default ();
}
diff --git a/src/gpm-engine.c b/src/gpm-engine.c
index 558e9db..6c3c4f2 100644
--- a/src/gpm-engine.c
+++ b/src/gpm-engine.c
@@ -24,7 +24,6 @@
#include <string.h>
#include <glib.h>
#include <glib/gi18n.h>
-#include <gconf/gconf-client.h>
#include <libupower-glib/upower.h>
#include "egg-debug.h"
@@ -44,7 +43,7 @@ static void gpm_engine_finalize (GObject *object);
struct GpmEnginePrivate
{
- GConfClient *conf;
+ GSettings *settings;
UpClient *client;
UpDevice *battery_composite;
GPtrArray *array;
@@ -509,28 +508,20 @@ gpm_engine_recalculate_state (GpmEngine *engine)
}
/**
- * gpm_engine_conf_key_changed_cb:
+ * gpm_engine_settings_key_changed_cb:
**/
static void
-gpm_engine_conf_key_changed_cb (GConfClient *conf, guint cnxn_id, GConfEntry *entry, GpmEngine *engine)
+gpm_engine_settings_key_changed_cb (GSettings *settings, const gchar *key, GpmEngine *engine)
{
- GConfValue *value;
gchar *icon_policy;
- if (entry == NULL)
- return;
- value = gconf_entry_get_value (entry);
- if (value == NULL)
- return;
-
- if (strcmp (entry->key, GPM_CONF_USE_TIME_POLICY) == 0) {
-
- engine->priv->use_time_primary = gconf_value_get_bool (value);
+ if (g_strcmp0 (key, GPM_SETTINGS_USE_TIME_POLICY) == 0) {
+ engine->priv->use_time_primary = g_settings_get_boolean (settings, key);
- } else if (strcmp (entry->key, GPM_CONF_UI_ICON_POLICY) == 0) {
+ } else if (g_strcmp0 (key, GPM_SETTINGS_ICON_POLICY) == 0) {
/* do we want to display the icon in the tray */
- icon_policy = gconf_client_get_string (conf, GPM_CONF_UI_ICON_POLICY, NULL);
+ icon_policy = g_settings_get_string (settings, key);
engine->priv->icon_policy = gpm_icon_policy_from_string (icon_policy);
g_free (icon_policy);
@@ -567,8 +558,8 @@ gpm_engine_device_check_capacity (GpmEngine *engine, UpDevice *device)
if (capacity < 1.0f)
return FALSE;
- /* only emit this if specified in gconf */
- ret = gconf_client_get_bool (engine->priv->conf, GPM_CONF_NOTIFY_LOW_CAPACITY, NULL);
+ /* only emit this if specified in the settings */
+ ret = g_settings_get_boolean (engine->priv->settings, GPM_SETTINGS_NOTIFY_LOW_CAPACITY);
if (ret) {
egg_debug ("** EMIT: low-capacity");
g_signal_emit (engine, signals [LOW_CAPACITY], 0, device);
@@ -1123,10 +1114,9 @@ gpm_engine_init (GpmEngine *engine)
g_signal_connect (engine->priv->client, "device-changed",
G_CALLBACK (gpm_engine_device_changed_cb), engine);
- engine->priv->conf = gconf_client_get_default ();
- gconf_client_notify_add (engine->priv->conf, GPM_CONF_DIR,
- (GConfClientNotifyFunc) gpm_engine_conf_key_changed_cb,
- engine, NULL, NULL);
+ engine->priv->settings = g_settings_new (GPM_SETTINGS_SCHEMA);
+ g_signal_connect (engine->priv->settings, "changed",
+ G_CALLBACK (gpm_engine_settings_key_changed_cb), engine);
engine->priv->phone = gpm_phone_new ();
g_signal_connect (engine->priv->phone, "device-added",
@@ -1150,22 +1140,22 @@ gpm_engine_init (GpmEngine *engine)
engine->priv->previous_summary = NULL;
/* do we want to display the icon in the tray */
- icon_policy = gconf_client_get_string (engine->priv->conf, GPM_CONF_UI_ICON_POLICY, NULL);
+ icon_policy = g_settings_get_string (engine->priv->settings, GPM_SETTINGS_ICON_POLICY);
engine->priv->icon_policy = gpm_icon_policy_from_string (icon_policy);
g_free (icon_policy);
/* get percentage policy */
- engine->priv->low_percentage = gconf_client_get_int (engine->priv->conf, GPM_CONF_THRESH_PERCENTAGE_LOW, NULL);
- engine->priv->critical_percentage = gconf_client_get_int (engine->priv->conf, GPM_CONF_THRESH_PERCENTAGE_CRITICAL, NULL);
- engine->priv->action_percentage = gconf_client_get_int (engine->priv->conf, GPM_CONF_THRESH_PERCENTAGE_ACTION, NULL);
+ engine->priv->low_percentage = g_settings_get_int (engine->priv->settings, GPM_SETTINGS_PERCENTAGE_LOW);
+ engine->priv->critical_percentage = g_settings_get_int (engine->priv->settings, GPM_SETTINGS_PERCENTAGE_CRITICAL);
+ engine->priv->action_percentage = g_settings_get_int (engine->priv->settings, GPM_SETTINGS_PERCENTAGE_ACTION);
/* get time policy */
- engine->priv->low_time = gconf_client_get_int (engine->priv->conf, GPM_CONF_THRESH_TIME_LOW, NULL);
- engine->priv->critical_time = gconf_client_get_int (engine->priv->conf, GPM_CONF_THRESH_TIME_CRITICAL, NULL);
- engine->priv->action_time = gconf_client_get_int (engine->priv->conf, GPM_CONF_THRESH_TIME_ACTION, NULL);
+ engine->priv->low_time = g_settings_get_int (engine->priv->settings, GPM_SETTINGS_TIME_LOW);
+ engine->priv->critical_time = g_settings_get_int (engine->priv->settings, GPM_SETTINGS_TIME_CRITICAL);
+ engine->priv->action_time = g_settings_get_int (engine->priv->settings, GPM_SETTINGS_TIME_ACTION);
/* we can disable this if the time remaining is inaccurate or just plain wrong */
- engine->priv->use_time_primary = gconf_client_get_bool (engine->priv->conf, GPM_CONF_USE_TIME_POLICY, NULL);
+ engine->priv->use_time_primary = g_settings_get_boolean (engine->priv->settings, GPM_SETTINGS_USE_TIME_POLICY);
if (engine->priv->use_time_primary)
egg_debug ("Using per-time notification policy");
else
diff --git a/src/gpm-manager.c b/src/gpm-manager.c
index d6b5eef..e75afd5 100644
--- a/src/gpm-manager.c
+++ b/src/gpm-manager.c
@@ -38,7 +38,6 @@
#include <gtk/gtk.h>
#include <dbus/dbus-glib.h>
#include <dbus/dbus-glib-lowlevel.h>
-#include <gconf/gconf-client.h>
#include <canberra-gtk.h>
#include <libupower-glib/upower.h>
#include <libnotify/notify.h>
@@ -76,7 +75,7 @@ static void gpm_manager_finalize (GObject *object);
struct GpmManagerPrivate
{
GpmButton *button;
- GConfClient *conf;
+ GSettings *settings;
GpmDisks *disks;
GpmDpms *dpms;
GpmIdle *idle;
@@ -196,7 +195,7 @@ gpm_manager_play_loop_start (GpmManager *manager, GpmManagerSound action, gboole
gboolean ret;
gint retval;
- ret = gconf_client_get_bool (manager->priv->conf, GPM_CONF_UI_ENABLE_SOUND, NULL);
+ ret = g_settings_get_boolean (manager->priv->settings, GPM_SETTINGS_ENABLE_SOUND);
if (!ret && !force) {
egg_debug ("ignoring sound due to policy");
return FALSE;
@@ -255,7 +254,7 @@ gpm_manager_play (GpmManager *manager, GpmManagerSound action, gboolean force)
gboolean ret;
gint retval;
- ret = gconf_client_get_bool (manager->priv->conf, GPM_CONF_UI_ENABLE_SOUND, NULL);
+ ret = g_settings_get_boolean (manager->priv->settings, GPM_SETTINGS_ENABLE_SOUND);
if (!ret && !force) {
egg_debug ("ignoring sound due to policy");
return FALSE;
@@ -349,11 +348,11 @@ gpm_manager_sync_policy_sleep (GpmManager *manager)
guint sleep_computer;
if (!manager->priv->on_battery) {
- sleep_computer = gconf_client_get_int (manager->priv->conf, GPM_CONF_TIMEOUT_SLEEP_COMPUTER_AC, NULL);
- sleep_display = gconf_client_get_int (manager->priv->conf, GPM_CONF_TIMEOUT_SLEEP_DISPLAY_AC, NULL);
+ sleep_computer = g_settings_get_int (manager->priv->settings, GPM_SETTINGS_SLEEP_COMPUTER_AC);
+ sleep_display = g_settings_get_int (manager->priv->settings, GPM_SETTINGS_SLEEP_DISPLAY_AC);
} else {
- sleep_computer = gconf_client_get_int (manager->priv->conf, GPM_CONF_TIMEOUT_SLEEP_COMPUTER_BATT, NULL);
- sleep_display = gconf_client_get_int (manager->priv->conf, GPM_CONF_TIMEOUT_SLEEP_DISPLAY_BATT, NULL);
+ sleep_computer = g_settings_get_int (manager->priv->settings, GPM_SETTINGS_SLEEP_COMPUTER_BATT);
+ sleep_display = g_settings_get_int (manager->priv->settings, GPM_SETTINGS_SLEEP_DISPLAY_BATT);
}
/* set the new sleep (inactivity) value */
@@ -380,7 +379,7 @@ gpm_manager_blank_screen (GpmManager *manager, GError **noerror)
GError *error = NULL;
do_lock = gpm_control_get_lock_policy (manager->priv->control,
- GPM_CONF_LOCK_ON_BLANK_SCREEN);
+ GPM_SETTINGS_LOCK_ON_BLANK_SCREEN);
if (do_lock) {
if (!gpm_screensaver_lock (manager->priv->screensaver))
egg_debug ("Could not lock screen via gnome-screensaver");
@@ -416,7 +415,7 @@ gpm_manager_unblank_screen (GpmManager *manager, GError **noerror)
ret = FALSE;
}
- do_lock = gpm_control_get_lock_policy (manager->priv->control, GPM_CONF_LOCK_ON_BLANK_SCREEN);
+ do_lock = gpm_control_get_lock_policy (manager->priv->control, GPM_SETTINGS_LOCK_ON_BLANK_SCREEN);
if (do_lock)
gpm_screensaver_poke (manager->priv->screensaver);
return ret;
@@ -547,7 +546,7 @@ gpm_manager_sleep_failure_response_cb (GtkDialog *dialog, gint response_id, GpmM
/* user clicked the help button */
if (response_id == GTK_RESPONSE_HELP) {
- uri = gconf_client_get_string (manager->priv->conf, GPM_CONF_NOTIFY_SLEEP_FAILED_URI, NULL);
+ uri = g_settings_get_string (manager->priv->settings, GPM_SETTINGS_NOTIFY_SLEEP_FAILED_URI);
screen = gdk_screen_get_default();
ret = gtk_show_uri (screen, uri, gtk_get_current_event_time (), &error);
if (!ret) {
@@ -575,8 +574,8 @@ gpm_manager_sleep_failure (GpmManager *manager, gboolean is_suspend, const gchar
const gchar *icon;
GtkWidget *dialog;
- /* only show this if specified in gconf */
- show_sleep_failed = gconf_client_get_bool (manager->priv->conf, GPM_CONF_NOTIFY_SLEEP_FAILED, NULL);
+ /* only show this if specified in settings */
+ show_sleep_failed = g_settings_get_boolean (manager->priv->settings, GPM_SETTINGS_NOTIFY_SLEEP_FAILED);
egg_debug ("sleep failed");
gpm_manager_play (manager, GPM_MANAGER_SOUND_SUSPEND_ERROR, TRUE);
@@ -612,7 +611,7 @@ gpm_manager_sleep_failure (GpmManager *manager, gboolean is_suspend, const gchar
gtk_window_set_icon_name (GTK_WINDOW(dialog), icon);
/* show a button? */
- uri = gconf_client_get_string (manager->priv->conf, GPM_CONF_NOTIFY_SLEEP_FAILED_URI, NULL);
+ uri = g_settings_get_string (manager->priv->settings, GPM_SETTINGS_NOTIFY_SLEEP_FAILED_URI);
if (uri != NULL && uri[0] != '\0') {
/* TRANSLATORS: button text, visit the suspend help website */
gtk_dialog_add_button (GTK_DIALOG (dialog), _("Visit help page"), GTK_RESPONSE_HELP);
@@ -678,7 +677,7 @@ gpm_manager_action_hibernate (GpmManager *manager, const gchar *reason)
* @policy: The policy that we should do, e.g. "suspend"
* @reason: The reason we are performing the policy action, e.g. "battery critical"
*
- * Does one of the policy actions specified in gconf.
+ * Does one of the policy actions specified in the settings.
**/
static gboolean
gpm_manager_perform_policy (GpmManager *manager, const gchar *policy_key, const gchar *reason)
@@ -690,7 +689,7 @@ gpm_manager_perform_policy (GpmManager *manager, const gchar *policy_key, const
if (gpm_manager_is_inhibit_valid (manager, FALSE, "policy action") == FALSE)
return FALSE;
- action = gconf_client_get_string (manager->priv->conf, policy_key, NULL);
+ action = g_settings_get_string (manager->priv->settings, policy_key);
egg_debug ("action: %s set to %s (%s)", policy_key, action, reason);
policy = gpm_action_policy_from_string (action);
@@ -728,7 +727,7 @@ gpm_manager_perform_policy (GpmManager *manager, const gchar *policy_key, const
* @manager: This class instance
*
* This callback is called when we want to sleep. Use the users
- * preference from gconf, but change it if we can't do the action.
+ * preference from the settings, but change it if we can't do the action.
**/
static void
gpm_manager_idle_do_sleep (GpmManager *manager)
@@ -739,9 +738,9 @@ gpm_manager_idle_do_sleep (GpmManager *manager)
GpmActionPolicy policy;
if (!manager->priv->on_battery)
- action = gconf_client_get_string (manager->priv->conf, GPM_CONF_ACTIONS_SLEEP_TYPE_AC, NULL);
+ action = g_settings_get_string (manager->priv->settings, GPM_SETTINGS_ACTION_SLEEP_TYPE_AC);
else
- action = gconf_client_get_string (manager->priv->conf, GPM_CONF_ACTIONS_SLEEP_TYPE_BATT, NULL);
+ action = g_settings_get_string (manager->priv->settings, GPM_SETTINGS_ACTION_SLEEP_TYPE_BATT);
policy = gpm_action_policy_from_string (action);
if (policy == GPM_ACTION_POLICY_NOTHING) {
@@ -839,13 +838,13 @@ gpm_manager_lid_button_pressed (GpmManager *manager, gboolean pressed)
if (!manager->priv->on_battery) {
egg_debug ("Performing AC policy");
- gpm_manager_perform_policy (manager, GPM_CONF_BUTTON_LID_AC,
+ gpm_manager_perform_policy (manager, GPM_SETTINGS_BUTTON_LID_AC,
"Lid closed on AC power.");
return;
}
egg_debug ("Performing battery policy");
- gpm_manager_perform_policy (manager, GPM_CONF_BUTTON_LID_BATT,
+ gpm_manager_perform_policy (manager, GPM_SETTINGS_BUTTON_LID_BATT,
"Lid closed on battery power.");
}
@@ -928,13 +927,13 @@ gpm_manager_button_pressed_cb (GpmButton *button, const gchar *type, GpmManager
}
if (g_strcmp0 (type, GPM_BUTTON_POWER) == 0) {
- gpm_manager_perform_policy (manager, GPM_CONF_BUTTON_POWER, "The power button has been pressed.");
+ gpm_manager_perform_policy (manager, GPM_SETTINGS_BUTTON_POWER, "The power button has been pressed.");
} else if (g_strcmp0 (type, GPM_BUTTON_SLEEP) == 0) {
- gpm_manager_perform_policy (manager, GPM_CONF_BUTTON_SUSPEND, "The suspend button has been pressed.");
+ gpm_manager_perform_policy (manager, GPM_SETTINGS_BUTTON_SUSPEND, "The suspend button has been pressed.");
} else if (g_strcmp0 (type, GPM_BUTTON_SUSPEND) == 0) {
- gpm_manager_perform_policy (manager, GPM_CONF_BUTTON_SUSPEND, "The suspend button has been pressed.");
+ gpm_manager_perform_policy (manager, GPM_SETTINGS_BUTTON_SUSPEND, "The suspend button has been pressed.");
} else if (g_strcmp0 (type, GPM_BUTTON_HIBERNATE) == 0) {
- gpm_manager_perform_policy (manager, GPM_CONF_BUTTON_HIBERNATE, "The hibernate button has been pressed.");
+ gpm_manager_perform_policy (manager, GPM_SETTINGS_BUTTON_HIBERNATE, "The hibernate button has been pressed.");
} else if (g_strcmp0 (type, GPM_BUTTON_LID_OPEN) == 0) {
gpm_manager_lid_button_pressed (manager, FALSE);
} else if (g_strcmp0 (type, GPM_BUTTON_LID_CLOSED) == 0) {
@@ -973,11 +972,11 @@ gpm_manager_get_spindown_timeout (GpmManager *manager)
/* get policy */
if (!manager->priv->on_battery) {
- enabled = gconf_client_get_bool (manager->priv->conf, GPM_CONF_DISKS_SPINDOWN_ENABLE_AC, NULL);
- timeout = gconf_client_get_int (manager->priv->conf, GPM_CONF_DISKS_SPINDOWN_TIMEOUT_AC, NULL);
+ enabled = g_settings_get_boolean (manager->priv->settings, GPM_SETTINGS_SPINDOWN_ENABLE_AC);
+ timeout = g_settings_get_int (manager->priv->settings, GPM_SETTINGS_SPINDOWN_TIMEOUT_AC);
} else {
- enabled = gconf_client_get_bool (manager->priv->conf, GPM_CONF_DISKS_SPINDOWN_ENABLE_BATT, NULL);
- timeout = gconf_client_get_int (manager->priv->conf, GPM_CONF_DISKS_SPINDOWN_TIMEOUT_BATT, NULL);
+ enabled = g_settings_get_boolean (manager->priv->settings, GPM_SETTINGS_SPINDOWN_ENABLE_BATT);
+ timeout = g_settings_get_int (manager->priv->settings, GPM_SETTINGS_SPINDOWN_TIMEOUT_BATT);
}
if (!enabled)
timeout = 0;
@@ -1048,15 +1047,15 @@ gpm_manager_client_changed_cb (UpClient *client, GpmManager *manager)
/* We do the lid close on battery action if the ac adapter is removed
when the laptop is closed and on battery. Fixes #331655 */
- event_when_closed = gconf_client_get_bool (manager->priv->conf, GPM_CONF_ACTIONS_SLEEP_WHEN_CLOSED, NULL);
+ event_when_closed = g_settings_get_boolean (manager->priv->settings, GPM_SETTINGS_SLEEP_WHEN_CLOSED);
/* We keep track of the lid state so we can do the
lid close on battery action if the ac adapter is removed when the laptop
is closed. Fixes #331655 */
if (event_when_closed && on_battery && lid_is_closed) {
- gpm_manager_perform_policy (manager, GPM_CONF_BUTTON_LID_BATT,
+ gpm_manager_perform_policy (manager, GPM_SETTINGS_BUTTON_LID_BATT,
"The lid has been closed, and the ac adapter "
- "removed (and gconf is okay).");
+ "removed (and GSettings is okay).");
}
}
@@ -1076,7 +1075,7 @@ manager_critical_action_do (GpmManager *manager)
if (manager->priv->critical_alert_timeout_id)
gpm_manager_play_loop_stop (manager);
- gpm_manager_perform_policy (manager, GPM_CONF_ACTIONS_CRITICAL_BATT, "Battery is critically low.");
+ gpm_manager_perform_policy (manager, GPM_SETTINGS_ACTION_CRITICAL_BATT, "Battery is critically low.");
return FALSE;
}
@@ -1093,23 +1092,17 @@ gpm_manager_class_init (GpmManagerClass *klass)
}
/**
- * gpm_conf_gconf_key_changed_cb:
+ * gpm_manager_settings_changed_cb:
*
- * We might have to do things when the gconf keys change; do them here.
+ * We might have to do things when the keys change; do them here.
**/
static void
-gpm_conf_gconf_key_changed_cb (GConfClient *client, guint cnxn_id, GConfEntry *entry, GpmManager *manager)
+gpm_manager_settings_changed_cb (GSettings *settings, const gchar *key, GpmManager *manager)
{
- GConfValue *value;
-
- value = gconf_entry_get_value (entry);
- if (value == NULL)
- return;
-
- if (g_strcmp0 (entry->key, GPM_CONF_TIMEOUT_SLEEP_COMPUTER_BATT) == 0 ||
- g_strcmp0 (entry->key, GPM_CONF_TIMEOUT_SLEEP_COMPUTER_AC) == 0 ||
- g_strcmp0 (entry->key, GPM_CONF_TIMEOUT_SLEEP_DISPLAY_BATT) == 0 ||
- g_strcmp0 (entry->key, GPM_CONF_TIMEOUT_SLEEP_DISPLAY_AC) == 0)
+ if (g_strcmp0 (key, GPM_SETTINGS_SLEEP_COMPUTER_BATT) == 0 ||
+ g_strcmp0 (key, GPM_SETTINGS_SLEEP_COMPUTER_AC) == 0 ||
+ g_strcmp0 (key, GPM_SETTINGS_SLEEP_DISPLAY_BATT) == 0 ||
+ g_strcmp0 (key, GPM_SETTINGS_SLEEP_DISPLAY_AC) == 0)
gpm_manager_sync_policy_sleep (manager);
}
@@ -1154,7 +1147,7 @@ gpm_manager_perhaps_recall_response_cb (GtkDialog *dialog, gint response_id, Gpm
/* don't show this again */
if (response_id == GTK_RESPONSE_CANCEL) {
- gconf_client_set_bool (manager->priv->conf, GPM_CONF_NOTIFY_PERHAPS_RECALL, FALSE, NULL);
+ g_settings_set_boolean (manager->priv->settings, GPM_SETTINGS_NOTIFY_PERHAPS_RECALL, FALSE);
goto out;
}
@@ -1232,9 +1225,9 @@ gpm_manager_engine_perhaps_recall_cb (GpmEngine *engine, UpDevice *device, gchar
}
/* already shown, and dismissed */
- ret = gconf_client_get_bool (manager->priv->conf, GPM_CONF_NOTIFY_PERHAPS_RECALL, NULL);
+ ret = g_settings_get_boolean (manager->priv->settings, GPM_SETTINGS_NOTIFY_PERHAPS_RECALL);
if (!ret) {
- egg_debug ("GConf prevents notification: %s", GPM_CONF_NOTIFY_PERHAPS_RECALL);
+ egg_debug ("GConf prevents notification: %s", GPM_SETTINGS_NOTIFY_PERHAPS_RECALL);
return;
}
@@ -1312,8 +1305,8 @@ gpm_manager_engine_fully_charged_cb (GpmEngine *engine, UpDevice *device, GpmMan
guint plural = 1;
const gchar *title;
- /* only action this if specified in gconf */
- ret = gconf_client_get_bool (manager->priv->conf, GPM_CONF_NOTIFY_FULLY_CHARGED, NULL);
+ /* only action this if specified in the setings */
+ ret = g_settings_get_boolean (manager->priv->settings, GPM_SETTINGS_NOTIFY_FULLY_CHARGED);
if (!ret) {
egg_debug ("no notification");
goto out;
@@ -1366,8 +1359,8 @@ gpm_manager_engine_discharging_cb (GpmEngine *engine, UpDevice *device, GpmManag
GIcon *icon = NULL;
const gchar *kind_desc;
- /* only action this if specified in gconf */
- ret = gconf_client_get_bool (manager->priv->conf, GPM_CONF_NOTIFY_DISCHARGING, NULL);
+ /* only action this if specified in the settings */
+ ret = g_settings_get_boolean (manager->priv->settings, GPM_SETTINGS_NOTIFY_DISCHARGING);
if (!ret) {
egg_debug ("no notification");
goto out;
@@ -1614,7 +1607,7 @@ gpm_manager_engine_charge_critical_cb (GpmEngine *engine, UpDevice *device, GpmM
}
/* we have to do different warnings depending on the policy */
- action = gconf_client_get_string (manager->priv->conf, GPM_CONF_ACTIONS_CRITICAL_BATT, NULL);
+ action = g_settings_get_string (manager->priv->settings, GPM_SETTINGS_ACTION_CRITICAL_BATT);
policy = gpm_action_policy_from_string (action);
/* use different text for different actions */
@@ -1772,7 +1765,7 @@ gpm_manager_engine_charge_action_cb (GpmEngine *engine, UpDevice *device, GpmMan
title = _("Laptop battery critically low");
/* we have to do different warnings depending on the policy */
- action = gconf_client_get_string (manager->priv->conf, GPM_CONF_ACTIONS_CRITICAL_BATT, NULL);
+ action = g_settings_get_string (manager->priv->settings, GPM_SETTINGS_ACTION_CRITICAL_BATT);
policy = gpm_action_policy_from_string (action);
/* use different text for different actions */
@@ -1810,7 +1803,7 @@ gpm_manager_engine_charge_action_cb (GpmEngine *engine, UpDevice *device, GpmMan
title = _("UPS critically low");
/* we have to do different warnings depending on the policy */
- action = gconf_client_get_string (manager->priv->conf, GPM_CONF_ACTIONS_CRITICAL_UPS, NULL);
+ action = g_settings_get_string (manager->priv->settings, GPM_SETTINGS_ACTION_CRITICAL_UPS);
policy = gpm_action_policy_from_string (action);
/* use different text for different actions */
@@ -1943,7 +1936,9 @@ gpm_manager_init (GpmManager *manager)
manager->priv->notification_discharging = NULL;
manager->priv->notification_fully_charged = NULL;
manager->priv->disks = gpm_disks_new ();
- manager->priv->conf = gconf_client_get_default ();
+ manager->priv->settings = g_settings_new (GPM_SETTINGS_SCHEMA);
+ g_signal_connect (manager->priv->settings, "changed",
+ G_CALLBACK (gpm_manager_settings_changed_cb), manager);
manager->priv->client = up_client_new ();
g_signal_connect (manager->priv->client, "changed",
G_CALLBACK (gpm_manager_client_changed_cb), manager);
@@ -1951,16 +1946,9 @@ gpm_manager_init (GpmManager *manager)
/* use libnotify */
notify_init (GPM_NAME);
- /* watch gnome-power-manager keys */
- gconf_client_add_dir (manager->priv->conf, GPM_CONF_DIR,
- GCONF_CLIENT_PRELOAD_RECURSIVE, NULL);
- gconf_client_notify_add (manager->priv->conf, GPM_CONF_DIR,
- (GConfClientNotifyFunc) gpm_conf_gconf_key_changed_cb,
- manager, NULL, NULL);
-
/* check to see if the user has installed the schema properly */
- version = gconf_client_get_int (manager->priv->conf, GPM_CONF_SCHEMA_VERSION, NULL);
- if (version != GPM_CONF_SCHEMA_ID) {
+ version = g_settings_get_int (manager->priv->settings, GPM_SETTINGS_SCHEMA_VERSION);
+ if (version != GPM_SETTINGS_SCHEMA_ID) {
gpm_manager_notify (manager, &manager->priv->notification_general,
/* TRANSLATORS: there was in install problem */
_("Install problem!"),
@@ -1970,7 +1958,7 @@ gpm_manager_init (GpmManager *manager)
GPM_MANAGER_NOTIFY_TIMEOUT_LONG,
GTK_STOCK_DIALOG_WARNING,
NOTIFY_URGENCY_NORMAL);
- egg_error ("no gconf schema installed!");
+ egg_error ("no GSettings schema installed!");
}
/* coldplug so we are in the correct state at startup */
@@ -2004,7 +1992,7 @@ gpm_manager_init (GpmManager *manager)
G_CALLBACK (gpm_manager_idle_changed_cb), manager);
/* set up the check_type_cpu, so we can disable the CPU load check */
- check_type_cpu = gconf_client_get_bool (manager->priv->conf, GPM_CONF_IDLE_CHECK_CPU, NULL);
+ check_type_cpu = g_settings_get_boolean (manager->priv->settings, GPM_SETTINGS_IDLE_CHECK_CPU);
gpm_idle_set_check_cpu (manager->priv->idle, check_type_cpu);
manager->priv->dpms = gpm_dpms_new ();
@@ -2083,7 +2071,7 @@ gpm_manager_finalize (GObject *object)
if (manager->priv->critical_alert_timeout_id != 0)
g_source_remove (manager->priv->critical_alert_timeout_id);
- g_object_unref (manager->priv->conf);
+ g_object_unref (manager->priv->settings);
g_object_unref (manager->priv->disks);
g_object_unref (manager->priv->dpms);
g_object_unref (manager->priv->idle);
diff --git a/src/gpm-phone.c b/src/gpm-phone.c
index bbe8583..5773f74 100644
--- a/src/gpm-phone.c
+++ b/src/gpm-phone.c
@@ -26,7 +26,6 @@
#include <glib/gi18n.h>
#include <dbus/dbus-glib.h>
-#include <gconf/gconf-client.h>
#include "gpm-phone.h"
#include "egg-debug.h"
#include "gpm-marshal.h"
diff --git a/src/gpm-prefs-core.c b/src/gpm-prefs-core.c
index f08e8d6..f478482 100644
--- a/src/gpm-prefs-core.c
+++ b/src/gpm-prefs-core.c
@@ -30,7 +30,6 @@
#include <dbus/dbus-glib.h>
#include <math.h>
#include <string.h>
-#include <gconf/gconf-client.h>
#include <libupower-glib/upower.h>
#include "egg-debug.h"
@@ -58,8 +57,7 @@ struct GpmPrefsPrivate
gboolean can_shutdown;
gboolean can_suspend;
gboolean can_hibernate;
- guint idle_delay;
- GConfClient *conf;
+ GSettings *settings;
EggConsoleKit *console;
};
@@ -142,8 +140,8 @@ gpm_prefs_icon_radio_cb (GtkWidget *widget, GpmPrefs *prefs)
policy = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (widget), "policy"));
str = gpm_icon_policy_to_string (policy);
- egg_debug ("Changing %s to %s", GPM_CONF_UI_ICON_POLICY, str);
- gconf_client_set_string (prefs->priv->conf, GPM_CONF_UI_ICON_POLICY, str, NULL);
+ egg_debug ("Changing %s to %s", GPM_SETTINGS_ICON_POLICY, str);
+ g_settings_set_string (prefs->priv->settings, GPM_SETTINGS_ICON_POLICY, str);
}
/**
@@ -154,59 +152,7 @@ gpm_prefs_icon_radio_cb (GtkWidget *widget, GpmPrefs *prefs)
static gchar *
gpm_prefs_format_percentage_cb (GtkScale *scale, gdouble value)
{
- return g_strdup_printf ("%.0f%%", value);
-}
-
-/**
- * gpm_prefs_brightness_slider_changed_cb:
- * @range: The GtkRange object
- * @gpm_pref_key: The GConf key for this preference setting.
- **/
-static void
-gpm_prefs_brightness_slider_changed_cb (GtkRange *range, GpmPrefs *prefs)
-{
- gdouble value;
- gchar *gpm_pref_key;
-
- value = gtk_range_get_value (range);
- gpm_pref_key = (char *) g_object_get_data (G_OBJECT (range), "conf_key");
-
- g_object_set_data (G_OBJECT (range), "conf_key", (gpointer) gpm_pref_key);
- egg_debug ("Changing %s to %i", gpm_pref_key, (int) value);
- gconf_client_set_int (prefs->priv->conf, gpm_pref_key, (gint) value, NULL);
-}
-
-/**
- * gpm_prefs_setup_brightness_slider:
- * @prefs: This prefs class instance
- * @widget_name: The GtkWidget name
- * @gpm_pref_key: The GConf key for this preference setting.
- **/
-static GtkWidget *
-gpm_prefs_setup_brightness_slider (GpmPrefs *prefs, const gchar *widget_name, const gchar *gpm_pref_key)
-{
- GtkWidget *widget;
- int value;
- gboolean is_writable;
-
- widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, widget_name));
-
- g_signal_connect (G_OBJECT (widget), "format-value",
- G_CALLBACK (gpm_prefs_format_percentage_cb), NULL);
-
- value = gconf_client_get_int (prefs->priv->conf, gpm_pref_key, NULL);
- is_writable = gconf_client_key_is_writable (prefs->priv->conf, gpm_pref_key, NULL);
-
- gtk_widget_set_sensitive (widget, is_writable);
-
- gtk_range_set_value (GTK_RANGE (widget), value);
-
- g_object_set_data (G_OBJECT (widget), "conf_key", (gpointer) gpm_pref_key);
-
- g_signal_connect (G_OBJECT (widget), "value-changed",
- G_CALLBACK (gpm_prefs_brightness_slider_changed_cb),
- prefs);
- return widget;
+ return g_strdup_printf ("%.0f%%", value * 100.0f);
}
/**
@@ -222,13 +168,13 @@ gpm_prefs_action_combo_changed_cb (GtkWidget *widget, GpmPrefs *prefs)
guint active;
actions = (const GpmActionPolicy *) g_object_get_data (G_OBJECT (widget), "actions");
- gpm_pref_key = (const gchar *) g_object_get_data (G_OBJECT (widget), "conf_key");
+ gpm_pref_key = (const gchar *) g_object_get_data (G_OBJECT (widget), "settings_key");
active = gtk_combo_box_get_active (GTK_COMBO_BOX (widget));
policy = actions[active];
action = gpm_action_policy_to_string (policy);
egg_debug ("Changing %s to %s", gpm_pref_key, action);
- gconf_client_set_string (prefs->priv->conf, gpm_pref_key, action, NULL);
+ g_settings_set_string (prefs->priv->settings, gpm_pref_key, action);
}
/**
@@ -243,13 +189,13 @@ gpm_prefs_action_time_changed_cb (GtkWidget *widget, GpmPrefs *prefs)
guint active;
values = (const gint *) g_object_get_data (G_OBJECT (widget), "values");
- gpm_pref_key = (const gchar *) g_object_get_data (G_OBJECT (widget), "conf_key");
+ gpm_pref_key = (const gchar *) g_object_get_data (G_OBJECT (widget), "settings_key");
active = gtk_combo_box_get_active (GTK_COMBO_BOX (widget));
value = values[active];
egg_debug ("Changing %s to %i", gpm_pref_key, value);
- gconf_client_set_int (prefs->priv->conf, gpm_pref_key, value, NULL);
+ g_settings_set_int (prefs->priv->settings, gpm_pref_key, value);
}
/**
@@ -304,14 +250,14 @@ gpm_prefs_setup_action_combo (GpmPrefs *prefs, const gchar *widget_name,
widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, widget_name));
gpm_prefs_set_combo_simple_text (widget);
- value_txt = gconf_client_get_string (prefs->priv->conf, gpm_pref_key, NULL);
- is_writable = gconf_client_key_is_writable (prefs->priv->conf, gpm_pref_key, NULL);
+ value_txt = g_settings_get_string (prefs->priv->settings, gpm_pref_key);
+ is_writable = g_settings_is_writable (prefs->priv->settings, gpm_pref_key);
value = gpm_action_policy_from_string (value_txt);
gtk_widget_set_sensitive (widget, is_writable);
array = g_ptr_array_new ();
- g_object_set_data (G_OBJECT (widget), "conf_key", (gpointer) gpm_pref_key);
+ g_object_set_data (G_OBJECT (widget), "settings_key", (gpointer) gpm_pref_key);
g_signal_connect (G_OBJECT (widget), "changed",
G_CALLBACK (gpm_prefs_action_combo_changed_cb), prefs);
@@ -345,7 +291,7 @@ gpm_prefs_setup_action_combo (GpmPrefs *prefs, const gchar *widget_name,
g_ptr_array_add (array, GINT_TO_POINTER (policy));
}
} else {
- egg_warning ("Unknown action read from conf: %i", policy);
+ egg_warning ("Unknown action read from settings: %i", policy);
}
}
@@ -389,11 +335,11 @@ gpm_prefs_setup_time_combo (GpmPrefs *prefs, const gchar *widget_name,
widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, widget_name));
gpm_prefs_set_combo_simple_text (widget);
- value = gconf_client_get_int (prefs->priv->conf, gpm_pref_key, NULL);
- is_writable = gconf_client_key_is_writable (prefs->priv->conf, gpm_pref_key, NULL);
+ value = g_settings_get_int (prefs->priv->settings, gpm_pref_key);
+ is_writable = g_settings_is_writable (prefs->priv->settings, gpm_pref_key);
gtk_widget_set_sensitive (widget, is_writable);
- g_object_set_data (G_OBJECT (widget), "conf_key", (gpointer) gpm_pref_key);
+ g_object_set_data (G_OBJECT (widget), "settings_key", (gpointer) gpm_pref_key);
g_object_set_data (G_OBJECT (widget), "values", (gpointer) values);
/* add each time */
@@ -419,55 +365,6 @@ gpm_prefs_setup_time_combo (GpmPrefs *prefs, const gchar *widget_name,
}
/**
- * gpm_prefs_checkbox_lock_cb:
- * @widget: The GtkWidget object
- * @gpm_pref_key: The GConf key for this preference setting.
- **/
-static void
-gpm_prefs_checkbox_lock_cb (GtkWidget *widget, GpmPrefs *prefs)
-{
- gboolean checked;
- gchar *gpm_pref_key;
-
- checked = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
-
- gpm_pref_key = (char *) g_object_get_data (G_OBJECT (widget), "conf_key");
- egg_debug ("Changing %s to %i", gpm_pref_key, checked);
- gconf_client_set_bool (prefs->priv->conf, gpm_pref_key, checked, NULL);
-}
-
-/**
- * gpm_prefs_setup_checkbox:
- * @prefs: This prefs class instance
- * @widget_name: The GtkWidget name
- * @gpm_pref_key: The GConf key for this preference setting.
- **/
-static GtkWidget *
-gpm_prefs_setup_checkbox (GpmPrefs *prefs, const gchar *widget_name, const gchar *gpm_pref_key)
-{
- gboolean checked;
- GtkWidget *widget;
-
- egg_debug ("Setting up %s", gpm_pref_key);
-
- widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, widget_name));
-
- checked = gconf_client_get_bool (prefs->priv->conf, gpm_pref_key, NULL);
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget), checked);
-
- g_object_set_data (G_OBJECT (widget), "conf_key", (gpointer) gpm_pref_key);
-
- /* manually do the callback in case we hide elements in the cb */
- gpm_prefs_checkbox_lock_cb (widget, prefs);
-
- /* setup after set */
- g_signal_connect (widget, "clicked",
- G_CALLBACK (gpm_prefs_checkbox_lock_cb), prefs);
-
- return widget;
-}
-
-/**
* gpm_prefs_close_cb:
* @widget: The GtkWidget object
* @prefs: This prefs class instance
@@ -492,41 +389,6 @@ gpm_prefs_delete_event_cb (GtkWidget *widget, GdkEvent *event, GpmPrefs *prefs)
return FALSE;
}
-/**
- * gpm_conf_gconf_key_changed_cb:
- *
- * We might have to do things when the gconf keys change; do them here.
- **/
-static void
-gpm_conf_gconf_key_changed_cb (GConfClient *client, guint cnxn_id, GConfEntry *entry, GpmPrefs *prefs)
-{
- GConfValue *value;
- gint brightness;
- GtkWidget *widget;
- gboolean enabled;
-
- value = gconf_entry_get_value (entry);
- if (value == NULL)
- return;
-
- if (g_strcmp0 (entry->key, GPM_CONF_BACKLIGHT_BRIGHTNESS_AC) == 0) {
- widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "hscale_ac_brightness"));
- brightness = gconf_value_get_int (value);
- gtk_range_set_value (GTK_RANGE (widget), brightness);
- }
-
- if (g_strcmp0 (entry->key, GPM_CONF_DISKS_SPINDOWN_ENABLE_AC) == 0) {
- widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "checkbutton_ac_spindown"));
- enabled = gconf_value_get_bool (value);
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget), enabled);
-
- } else if (g_strcmp0 (entry->key, GPM_CONF_DISKS_SPINDOWN_ENABLE_BATT) == 0) {
- widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "checkbutton_battery_spindown"));
- enabled = gconf_value_get_bool (value);
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget), enabled);
- }
-}
-
/** setup the notification page */
static void
prefs_setup_notification (GpmPrefs *prefs)
@@ -539,7 +401,7 @@ prefs_setup_notification (GpmPrefs *prefs)
GtkWidget *radiobutton_icon_never;
gboolean is_writable;
- icon_policy_str = gconf_client_get_string (prefs->priv->conf, GPM_CONF_UI_ICON_POLICY, NULL);
+ icon_policy_str = g_settings_get_string (prefs->priv->settings, GPM_SETTINGS_ICON_POLICY);
icon_policy = gpm_icon_policy_from_string (icon_policy_str);
g_free (icon_policy_str);
@@ -552,7 +414,7 @@ prefs_setup_notification (GpmPrefs *prefs)
radiobutton_icon_never = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder,
"radiobutton_notification_never"));
- is_writable = gconf_client_key_is_writable (prefs->priv->conf, GPM_CONF_UI_ICON_POLICY, NULL);
+ is_writable = g_settings_is_writable (prefs->priv->settings, GPM_SETTINGS_ICON_POLICY);
gtk_widget_set_sensitive (radiobutton_icon_present, is_writable);
gtk_widget_set_sensitive (radiobutton_icon_charge, is_writable);
gtk_widget_set_sensitive (radiobutton_icon_low, is_writable);
@@ -576,7 +438,7 @@ prefs_setup_notification (GpmPrefs *prefs)
g_object_set_data (G_OBJECT (radiobutton_icon_never), "policy",
GINT_TO_POINTER (GPM_ICON_POLICY_NEVER));
- /* only connect the callbacks after we set the value, else the conf
+ /* only connect the callbacks after we set the value, else the settings
* keys gets written to (for a split second), and the icon flickers. */
g_signal_connect (radiobutton_icon_present, "clicked",
G_CALLBACK (gpm_prefs_icon_radio_cb), prefs);
@@ -617,23 +479,33 @@ prefs_setup_ac (GpmPrefs *prefs)
-1};
gpm_prefs_setup_time_combo (prefs, "combobox_ac_computer",
- GPM_CONF_TIMEOUT_SLEEP_COMPUTER_AC,
+ GPM_SETTINGS_SLEEP_COMPUTER_AC,
computer_times);
gpm_prefs_setup_time_combo (prefs, "combobox_ac_display",
- GPM_CONF_TIMEOUT_SLEEP_DISPLAY_AC,
+ GPM_SETTINGS_SLEEP_DISPLAY_AC,
display_times);
gpm_prefs_setup_action_combo (prefs, "combobox_ac_lid",
- GPM_CONF_BUTTON_LID_AC,
+ GPM_SETTINGS_BUTTON_LID_AC,
button_lid_actions);
- gpm_prefs_setup_brightness_slider (prefs, "hscale_ac_brightness",
- GPM_CONF_BACKLIGHT_BRIGHTNESS_AC);
+ /* setup brightness slider */
+ widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "hscale_ac_brightness"));
+ g_settings_bind (prefs->priv->settings, GPM_SETTINGS_BRIGHTNESS_AC,
+ widget, "fill-level",
+ G_SETTINGS_BIND_DEFAULT);
+ g_signal_connect (G_OBJECT (widget), "format-value",
+ G_CALLBACK (gpm_prefs_format_percentage_cb), NULL);
- gpm_prefs_setup_checkbox (prefs, "checkbutton_ac_display_dim",
- GPM_CONF_BACKLIGHT_IDLE_DIM_AC);
- gpm_prefs_setup_checkbox (prefs, "checkbutton_ac_spindown",
- GPM_CONF_DISKS_SPINDOWN_ENABLE_AC);
+ /* set up the checkboxes */
+ widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "checkbutton_ac_display_dim"));
+ g_settings_bind (prefs->priv->settings, GPM_SETTINGS_IDLE_DIM_AC,
+ widget, "active",
+ G_SETTINGS_BIND_DEFAULT);
+ widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "checkbutton_ac_spindown"));
+ g_settings_bind (prefs->priv->settings, GPM_SETTINGS_SPINDOWN_ENABLE_AC,
+ widget, "active",
+ G_SETTINGS_BIND_DEFAULT);
if (prefs->priv->has_button_lid == FALSE) {
widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "hbox_ac_lid"));
@@ -685,10 +557,10 @@ prefs_setup_battery (GpmPrefs *prefs)
-1};
gpm_prefs_setup_time_combo (prefs, "combobox_battery_computer",
- GPM_CONF_TIMEOUT_SLEEP_COMPUTER_BATT,
+ GPM_SETTINGS_SLEEP_COMPUTER_BATT,
computer_times);
gpm_prefs_setup_time_combo (prefs, "combobox_battery_display",
- GPM_CONF_TIMEOUT_SLEEP_DISPLAY_BATT,
+ GPM_SETTINGS_SLEEP_DISPLAY_BATT,
display_times);
if (prefs->priv->has_batteries == FALSE) {
@@ -700,19 +572,25 @@ prefs_setup_battery (GpmPrefs *prefs)
}
gpm_prefs_setup_action_combo (prefs, "combobox_battery_lid",
- GPM_CONF_BUTTON_LID_BATT,
+ GPM_SETTINGS_BUTTON_LID_BATT,
button_lid_actions);
gpm_prefs_setup_action_combo (prefs, "combobox_battery_critical",
- GPM_CONF_ACTIONS_CRITICAL_BATT,
+ GPM_SETTINGS_ACTION_CRITICAL_BATT,
battery_critical_actions);
- /* set up the battery reduce checkbox */
- gpm_prefs_setup_checkbox (prefs, "checkbutton_battery_display_reduce",
- GPM_CONF_BACKLIGHT_BATTERY_REDUCE);
- gpm_prefs_setup_checkbox (prefs, "checkbutton_battery_display_dim",
- GPM_CONF_BACKLIGHT_IDLE_DIM_BATT);
- gpm_prefs_setup_checkbox (prefs, "checkbutton_battery_spindown",
- GPM_CONF_DISKS_SPINDOWN_ENABLE_BATT);
+ /* set up the checkboxes */
+ widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "checkbutton_battery_display_reduce"));
+ g_settings_bind (prefs->priv->settings, GPM_SETTINGS_BACKLIGHT_BATTERY_REDUCE,
+ widget, "active",
+ G_SETTINGS_BIND_DEFAULT);
+ widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "checkbutton_battery_display_dim"));
+ g_settings_bind (prefs->priv->settings, GPM_SETTINGS_IDLE_DIM_BATT,
+ widget, "active",
+ G_SETTINGS_BIND_DEFAULT);
+ widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "checkbutton_battery_spindown"));
+ g_settings_bind (prefs->priv->settings, GPM_SETTINGS_SPINDOWN_ENABLE_BATT,
+ widget, "active",
+ G_SETTINGS_BIND_DEFAULT);
if (prefs->priv->has_button_lid == FALSE) {
widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "hbox_battery_lid"));
@@ -754,10 +632,10 @@ prefs_setup_ups (GpmPrefs *prefs)
-1};
gpm_prefs_setup_time_combo (prefs, "combobox_ups_computer",
- GPM_CONF_TIMEOUT_SLEEP_COMPUTER_UPS,
+ GPM_SETTINGS_SLEEP_COMPUTER_UPS,
computer_times);
gpm_prefs_setup_time_combo (prefs, "combobox_ups_display",
- GPM_CONF_TIMEOUT_SLEEP_DISPLAY_UPS,
+ GPM_SETTINGS_SLEEP_DISPLAY_UPS,
display_times);
if (prefs->priv->has_ups == FALSE) {
@@ -769,10 +647,10 @@ prefs_setup_ups (GpmPrefs *prefs)
}
gpm_prefs_setup_action_combo (prefs, "combobox_ups_low",
- GPM_CONF_ACTIONS_LOW_UPS,
+ GPM_SETTINGS_ACTION_LOW_UPS,
ups_low_actions);
gpm_prefs_setup_action_combo (prefs, "combobox_ups_critical",
- GPM_CONF_ACTIONS_CRITICAL_UPS,
+ GPM_SETTINGS_ACTION_CRITICAL_UPS,
ups_low_actions);
}
@@ -793,10 +671,10 @@ prefs_setup_general (GpmPrefs *prefs)
-1};
gpm_prefs_setup_action_combo (prefs, "combobox_general_power",
- GPM_CONF_BUTTON_POWER,
+ GPM_SETTINGS_BUTTON_POWER,
power_button_actions);
gpm_prefs_setup_action_combo (prefs, "combobox_general_suspend",
- GPM_CONF_BUTTON_SUSPEND,
+ GPM_SETTINGS_BUTTON_SUSPEND,
suspend_button_actions);
if (prefs->priv->has_button_suspend == FALSE) {
@@ -805,13 +683,13 @@ prefs_setup_general (GpmPrefs *prefs)
}
}
+#ifdef HAVE_GCONF_DEFAULTS
/**
* gpm_prefs_set_defaults_cb:
**/
static void
gpm_prefs_set_defaults_cb (GtkWidget *widget, GpmPrefs *prefs)
{
- GConfClient *client;
DBusGProxy *proxy;
DBusGConnection *connection;
GError *error = NULL;
@@ -839,9 +717,6 @@ gpm_prefs_set_defaults_cb (GtkWidget *widget, GpmPrefs *prefs)
return;
}
- client = gconf_client_get_default ();
- gconf_client_suggest_sync (client, NULL);
- g_object_unref (client);
dbus_g_proxy_call (proxy, "SetSystem", &error,
G_TYPE_STRV, keys,
G_TYPE_STRV, NULL,
@@ -849,6 +724,7 @@ gpm_prefs_set_defaults_cb (GtkWidget *widget, GpmPrefs *prefs)
g_object_unref (proxy);
}
+#endif
/**
* gpm_prefs_init:
@@ -872,16 +748,7 @@ gpm_prefs_init (GpmPrefs *prefs)
prefs->priv->client = up_client_new ();
prefs->priv->console = egg_console_kit_new ();
- prefs->priv->conf = gconf_client_get_default ();
- /* watch gnome-power-manager keys */
- gconf_client_add_dir (prefs->priv->conf, GPM_CONF_DIR,
- GCONF_CLIENT_PRELOAD_RECURSIVE, NULL);
- gconf_client_notify_add (prefs->priv->conf, GPM_CONF_DIR,
- (GConfClientNotifyFunc) gpm_conf_gconf_key_changed_cb,
- prefs, NULL, NULL);
-
- /* get value of delay in gnome-session */
- prefs->priv->idle_delay = gconf_client_get_int (prefs->priv->conf, GPM_CONF_IDLE_DELAY, NULL);
+ prefs->priv->settings = g_settings_new (GPM_SETTINGS_SCHEMA);
/* are we allowed to shutdown? */
prefs->priv->can_shutdown = TRUE;
@@ -981,7 +848,7 @@ gpm_prefs_finalize (GObject *object)
prefs = GPM_PREFS (object);
prefs->priv = GPM_PREFS_GET_PRIVATE (prefs);
- g_object_unref (prefs->priv->conf);
+ g_object_unref (prefs->priv->settings);
g_object_unref (prefs->priv->client);
g_object_unref (prefs->priv->console);
diff --git a/src/gpm-screensaver.c b/src/gpm-screensaver.c
index d727b57..ab1cb47 100644
--- a/src/gpm-screensaver.c
+++ b/src/gpm-screensaver.c
@@ -137,7 +137,7 @@ gpm_screensaver_lock_enabled (GpmScreensaver *screensaver)
{
gboolean enabled;
g_return_val_if_fail (GPM_IS_SCREENSAVER (screensaver), FALSE);
- enabled = gconf_client_get_bool (screensaver->priv->conf, GS_PREF_LOCK_ENABLED, NULL);
+ enabled = gconf_client_get_bool (screensaver->priv->conf, GS_CONF_PREF_LOCK_ENABLED, NULL);
return enabled;
}
diff --git a/src/gpm-statistics.c b/src/gpm-statistics.c
index b723e23..5815072 100644
--- a/src/gpm-statistics.c
+++ b/src/gpm-statistics.c
@@ -49,7 +49,7 @@ gchar *current_device = NULL;
static const gchar *history_type;
static const gchar *stats_type;
static guint history_time;
-static GConfClient *gconf_client;
+static GSettings *settings;
static gfloat sigma_smoothing = 0.0f;
static UpWakeups *wakeups = NULL;
static GtkWidget *graph_history = NULL;
@@ -1092,7 +1092,7 @@ gpm_stats_notebook_changed_cb (GtkNotebook *notebook, GtkNotebookPage *page, gin
gpm_stats_set_title (GTK_WINDOW (widget), page_num);
/* save page in gconf */
- gconf_client_set_int (gconf_client, GPM_CONF_INFO_PAGE_NUMBER, page_num, NULL);
+ g_settings_set_int (settings, GPM_SETTINGS_INFO_PAGE_NUMBER, page_num);
if (current_device == NULL)
return;
@@ -1136,7 +1136,7 @@ gpm_stats_devices_treeview_clicked_cb (GtkTreeSelection *selection, gboolean dat
gtk_tree_model_get (model, &iter, GPM_DEVICES_COLUMN_ID, ¤t_device, -1);
/* save device in gconf */
- gconf_client_set_string (gconf_client, GPM_CONF_INFO_LAST_DEVICE, current_device, NULL);
+ g_settings_set_string (settings, GPM_SETTINGS_INFO_LAST_DEVICE, current_device);
/* show transaction_id */
egg_debug ("selected row is: %s", current_device);
@@ -1311,7 +1311,7 @@ gpm_stats_history_type_combo_changed_cb (GtkWidget *widget, gpointer data)
g_free (value);
/* save to gconf */
- gconf_client_set_string (gconf_client, GPM_CONF_INFO_HISTORY_TYPE, history_type, NULL);
+ g_settings_set_string (settings, GPM_SETTINGS_INFO_HISTORY_TYPE, history_type);
}
/**
@@ -1362,7 +1362,7 @@ gpm_stats_type_combo_changed_cb (GtkWidget *widget, gpointer data)
g_free (value);
/* save to gconf */
- gconf_client_set_string (gconf_client, GPM_CONF_INFO_STATS_TYPE, stats_type, NULL);
+ g_settings_set_string (settings, GPM_SETTINGS_INFO_STATS_TYPE, stats_type);
}
/**
@@ -1387,7 +1387,7 @@ gpm_stats_range_combo_changed (GtkWidget *widget, gpointer data)
g_assert (FALSE);
/* save to gconf */
- gconf_client_set_int (gconf_client, GPM_CONF_INFO_HISTORY_TIME, history_time, NULL);
+ g_settings_set_int (settings, GPM_SETTINGS_INFO_HISTORY_TIME, history_time);
gpm_stats_button_update_ui ();
g_free (value);
@@ -1402,7 +1402,7 @@ gpm_stats_smooth_checkbox_history_cb (GtkWidget *widget, gpointer data)
{
gboolean checked;
checked = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
- gconf_client_set_bool (gconf_client, GPM_CONF_INFO_HISTORY_GRAPH_SMOOTH, checked, NULL);
+ g_settings_set_boolean (settings, GPM_SETTINGS_INFO_HISTORY_GRAPH_SMOOTH, checked);
gpm_stats_button_update_ui ();
}
@@ -1415,7 +1415,7 @@ gpm_stats_smooth_checkbox_stats_cb (GtkWidget *widget, gpointer data)
{
gboolean checked;
checked = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
- gconf_client_set_bool (gconf_client, GPM_CONF_INFO_STATS_GRAPH_SMOOTH, checked, NULL);
+ g_settings_set_boolean (settings, GPM_SETTINGS_INFO_STATS_GRAPH_SMOOTH, checked);
gpm_stats_button_update_ui ();
}
@@ -1428,7 +1428,7 @@ gpm_stats_points_checkbox_history_cb (GtkWidget *widget, gpointer data)
{
gboolean checked;
checked = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
- gconf_client_set_bool (gconf_client, GPM_CONF_INFO_HISTORY_GRAPH_POINTS, checked, NULL);
+ g_settings_set_boolean (settings, GPM_SETTINGS_INFO_HISTORY_GRAPH_POINTS, checked);
gpm_stats_button_update_ui ();
}
@@ -1441,7 +1441,7 @@ gpm_stats_points_checkbox_stats_cb (GtkWidget *widget, gpointer data)
{
gboolean checked;
checked = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
- gconf_client_set_bool (gconf_client, GPM_CONF_INFO_STATS_GRAPH_POINTS, checked, NULL);
+ g_settings_set_boolean (settings, GPM_SETTINGS_INFO_STATS_GRAPH_POINTS, checked);
gpm_stats_button_update_ui ();
}
@@ -1570,7 +1570,7 @@ main (int argc, char *argv[])
GPM_DATA G_DIR_SEPARATOR_S "icons");
/* get data from gconf */
- gconf_client = gconf_client_get_default ();
+ settings = g_settings_new (GPM_SETTINGS_SCHEMA);
/* get UI */
builder = gtk_builder_new ();
@@ -1610,31 +1610,31 @@ main (int argc, char *argv[])
G_CALLBACK (gpm_stats_button_help_cb), NULL);
widget = GTK_WIDGET (gtk_builder_get_object (builder, "checkbutton_smooth_history"));
- checked = gconf_client_get_bool (gconf_client, GPM_CONF_INFO_HISTORY_GRAPH_SMOOTH, NULL);
+ checked = g_settings_get_boolean (settings, GPM_SETTINGS_INFO_HISTORY_GRAPH_SMOOTH);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget), checked);
g_signal_connect (widget, "clicked",
G_CALLBACK (gpm_stats_smooth_checkbox_history_cb), NULL);
widget = GTK_WIDGET (gtk_builder_get_object (builder, "checkbutton_smooth_stats"));
- checked = gconf_client_get_bool (gconf_client, GPM_CONF_INFO_STATS_GRAPH_SMOOTH, NULL);
+ checked = g_settings_get_boolean (settings, GPM_SETTINGS_INFO_STATS_GRAPH_SMOOTH);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget), checked);
g_signal_connect (widget, "clicked",
G_CALLBACK (gpm_stats_smooth_checkbox_stats_cb), NULL);
widget = GTK_WIDGET (gtk_builder_get_object (builder, "checkbutton_points_history"));
- checked = gconf_client_get_bool (gconf_client, GPM_CONF_INFO_HISTORY_GRAPH_POINTS, NULL);
+ checked = g_settings_get_boolean (settings, GPM_SETTINGS_INFO_HISTORY_GRAPH_POINTS);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget), checked);
g_signal_connect (widget, "clicked",
G_CALLBACK (gpm_stats_points_checkbox_history_cb), NULL);
widget = GTK_WIDGET (gtk_builder_get_object (builder, "checkbutton_points_stats"));
- checked = gconf_client_get_bool (gconf_client, GPM_CONF_INFO_STATS_GRAPH_POINTS, NULL);
+ checked = g_settings_get_boolean (settings, GPM_SETTINGS_INFO_STATS_GRAPH_POINTS);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget), checked);
g_signal_connect (widget, "clicked",
G_CALLBACK (gpm_stats_points_checkbox_stats_cb), NULL);
widget = GTK_WIDGET (gtk_builder_get_object (builder, "notebook1"));
- page = gconf_client_get_int (gconf_client, GPM_CONF_INFO_PAGE_NUMBER, NULL);
+ page = g_settings_get_int (settings, GPM_SETTINGS_INFO_PAGE_NUMBER);
gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), page);
g_signal_connect (widget, "switch-page",
G_CALLBACK (gpm_stats_notebook_changed_cb), NULL);
@@ -1676,14 +1676,14 @@ main (int argc, char *argv[])
gpm_stats_add_wakeups_columns (GTK_TREE_VIEW (widget));
gtk_tree_view_columns_autosize (GTK_TREE_VIEW (widget)); /* show */
- history_type = gconf_client_get_string (gconf_client, GPM_CONF_INFO_HISTORY_TYPE, NULL);
- history_time = gconf_client_get_int (gconf_client, GPM_CONF_INFO_HISTORY_TIME, NULL);
+ history_type = g_settings_get_string (settings, GPM_SETTINGS_INFO_HISTORY_TYPE);
+ history_time = g_settings_get_int (settings, GPM_SETTINGS_INFO_HISTORY_TIME);
if (history_type == NULL)
history_type = GPM_HISTORY_CHARGE_VALUE;
if (history_time == 0)
history_time = GPM_HISTORY_HOUR_VALUE;
- stats_type = gconf_client_get_string (gconf_client, GPM_CONF_INFO_STATS_TYPE, NULL);
+ stats_type = g_settings_get_string (settings, GPM_SETTINGS_INFO_STATS_TYPE);
if (stats_type == NULL)
stats_type = GPM_STATS_CHARGE_DATA_VALUE;
@@ -1768,7 +1768,7 @@ main (int argc, char *argv[])
}
if (last_device == NULL)
- last_device = gconf_client_get_string (gconf_client, GPM_CONF_INFO_LAST_DEVICE, NULL);
+ last_device = g_settings_get_string (settings, GPM_SETTINGS_INFO_LAST_DEVICE);
/* has capability to measure wakeups */
ret = up_wakeups_get_has_capability (wakeups);
@@ -1803,7 +1803,7 @@ main (int argc, char *argv[])
gtk_main ();
out:
- g_object_unref (gconf_client);
+ g_object_unref (settings);
g_object_unref (client);
g_object_unref (wakeups);
g_object_unref (builder);
diff --git a/src/gpm-tray-icon.c b/src/gpm-tray-icon.c
index e805413..0ec7dbe 100644
--- a/src/gpm-tray-icon.c
+++ b/src/gpm-tray-icon.c
@@ -38,7 +38,6 @@
#include <glib/gi18n.h>
#include <gtk/gtk.h>
-#include <gconf/gconf-client.h>
#include <libupower-glib/upower.h>
#include "egg-debug.h"
@@ -55,7 +54,7 @@ static void gpm_tray_icon_finalize (GObject *object);
struct GpmTrayIconPrivate
{
- GConfClient *conf;
+ GSettings *settings;
GpmEngine *engine;
GtkStatusIcon *status_icon;
gboolean show_actions;
@@ -416,22 +415,17 @@ gpm_tray_icon_activate_cb (GtkStatusIcon *status_icon, GpmTrayIcon *icon)
}
/**
- * gpm_conf_gconf_key_changed_cb:
+ * gpm_tray_icon_settings_changed_cb:
*
- * We might have to do things when the gconf keys change; do them here.
+ * We might have to do things when the settings change; do them here.
**/
static void
-gpm_conf_gconf_key_changed_cb (GConfClient *client, guint cnxn_id, GConfEntry *entry, GpmTrayIcon *icon)
+gpm_tray_icon_settings_changed_cb (GSettings *settings, const gchar *key, GpmTrayIcon *icon)
{
- GConfValue *value;
gboolean allowed_in_menu;
- value = gconf_entry_get_value (entry);
- if (value == NULL)
- return;
-
- if (strcmp (entry->key, GPM_CONF_UI_SHOW_ACTIONS) == 0) {
- allowed_in_menu = gconf_value_get_bool (value);
+ if (g_strcmp0 (key, GPM_SETTINGS_SHOW_ACTIONS) == 0) {
+ allowed_in_menu = g_settings_get_boolean (settings, key);
gpm_tray_icon_enable_actions (icon, allowed_in_menu);
}
}
@@ -450,13 +444,9 @@ gpm_tray_icon_init (GpmTrayIcon *icon)
icon->priv->engine = gpm_engine_new ();
- icon->priv->conf = gconf_client_get_default ();
- /* watch gnome-power-manager keys */
- gconf_client_add_dir (icon->priv->conf, GPM_CONF_DIR,
- GCONF_CLIENT_PRELOAD_RECURSIVE, NULL);
- gconf_client_notify_add (icon->priv->conf, GPM_CONF_DIR,
- (GConfClientNotifyFunc) gpm_conf_gconf_key_changed_cb,
- icon, NULL, NULL);
+ icon->priv->settings = g_settings_new (GPM_SETTINGS_SCHEMA);
+ g_signal_connect (icon->priv->settings, "changed",
+ G_CALLBACK (gpm_tray_icon_settings_changed_cb), icon);
icon->priv->status_icon = gtk_status_icon_new ();
g_signal_connect_object (G_OBJECT (icon->priv->status_icon),
@@ -468,7 +458,7 @@ gpm_tray_icon_init (GpmTrayIcon *icon)
G_CALLBACK (gpm_tray_icon_activate_cb),
icon, 0);
- allowed_in_menu = gconf_client_get_bool (icon->priv->conf, GPM_CONF_UI_SHOW_ACTIONS, NULL);
+ allowed_in_menu = g_settings_get_boolean (icon->priv->settings, GPM_SETTINGS_SHOW_ACTIONS);
gpm_tray_icon_enable_actions (icon, allowed_in_menu);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]