Hello community,
here is the log from the commit of package kdebase3 for openSUSE:Factory checked in at 2012-02-28 14:13:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kdebase3 (Old)
and /work/SRC/openSUSE:Factory/.kdebase3.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kdebase3", Maintainer is "kde-maintainers@suse.de"
Changes:
--------
--- /work/SRC/openSUSE:Factory/kdebase3/kdebase3.changes 2012-02-10 17:15:37.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kdebase3.new/kdebase3.changes 2012-02-28 14:13:40.000000000 +0100
@@ -1,0 +2,6 @@
+Fri Feb 24 10:47:50 UTC 2012 - anixx@opensuse.org
+
+- use upower instead of hal for hibernate and suspend,
+ thanks to Sergei Amelian (gentoo/trinity) (bnc#749028)
+
+-------------------------------------------------------------------
New:
----
kickoff-shutdown-upower.patch
ksmserver-shutdown-upower.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kdebase3.spec ++++++
--- /var/tmp/diff_new_pack.2BR9du/_old 2012-02-28 14:13:44.000000000 +0100
+++ /var/tmp/diff_new_pack.2BR9du/_new 2012-02-28 14:13:44.000000000 +0100
@@ -44,6 +44,7 @@
BuildRequires: utempter
BuildRequires: xorg-x11
BuildRequires: xorg-x11-libfontenc-devel
+BuildRequires: libdbus-1-qt3-0-devel
%if %suse_version >= 1130
BuildRequires: libusb-compat-devel
%endif
@@ -274,6 +275,8 @@
Patch268: systemd-shutdown.patch
Patch269: kdebase-slackware-kicker.diff
Patch270: kdebase-svn-konq-move.patch
+Patch271: ksmserver-shutdown-upower.patch
+Patch272: kickoff-shutdown-upower.patch
%description
This package contains kdebase, one of the basic packages of the K
@@ -327,7 +330,7 @@
Kate, Konqueror and KWrite.
%package devel
-Requires: kdelibs3-devel kdebase3 = %version kdebase3-apps = %version kdebase3-runtime = %version kdebase3-workspace = %version
+Requires: kdelibs3-devel libdbus-1-qt3-0-devel kdebase3 = %version kdebase3-apps = %version kdebase3-runtime = %version kdebase3-workspace = %version
Summary: KDE Base Package: Base, Build Environment
Group: System/GUI/KDE
@@ -616,6 +619,8 @@
%patch268 -p1
%patch269 -p4
%patch270 -p4
+%patch271 -p1
+%patch272 -p1
rm -rf kappfinder
rm pics/crystalsvg/cr??-*emacs.png
@@ -638,7 +643,7 @@
%endif
LDAP="--with-ldap"
X_SERVER=/usr/bin/X RUN_KAPPFINDER=no \
-
+export LIBS="$LIBS -ldbus-1-qt3"
./configure \
$configkde \
$PARANOIA \
@@ -650,6 +655,7 @@
--with-kdm-xconsole \
--with-kdm-pam=xdm \
--with-kcp-pam=kcheckpass \
+ --with-extra-includes=/usr/include/dbus-1.0/qt3 \
--with-kss-pam=kcheckpass
do_make %{?_smp_mflags}
cd ../fileshareset2
@@ -683,12 +689,8 @@
mkdir -p ${RPM_BUILD_ROOT}/usr/bin \
${RPM_BUILD_ROOT}/usr/sbin \
${RPM_BUILD_ROOT}/var/run/xdmctl
-%if %suse_version > 1010
- ln -fs /opt/kde3/bin/startkde $RPM_BUILD_ROOT/usr/bin/kde
- ln -fs /opt/kde3/bin/startkde $RPM_BUILD_ROOT/usr/bin/startkde3
-%else
- ln -fs /opt/kde3/bin/startkde $RPM_BUILD_ROOT/usr/X11R6/bin/kde
-%endif
+ln -fs /opt/kde3/bin/startkde $RPM_BUILD_ROOT/usr/bin/kde
+ln -fs /opt/kde3/bin/startkde $RPM_BUILD_ROOT/usr/bin/startkde3
ln -sf rcxdm ${RPM_BUILD_ROOT}/usr/sbin/rckdm
mv ${RPM_BUILD_ROOT}/opt/kde3/bin/ksysguardd ${RPM_BUILD_ROOT}/usr/bin/ksysguardd
ln -sf /usr/bin/ksysguardd ${RPM_BUILD_ROOT}/opt/kde3/bin/ksysguardd
@@ -826,9 +828,7 @@
rm $RPM_BUILD_ROOT/%_mandir/man1/kbookmarkmerger.*
rm $RPM_BUILD_ROOT/%_mandir/man1/kfind.*
kde_post_install
-%if %suse_version > 1020
%fdupes $RPM_BUILD_ROOT/opt/kde3/share
-%endif
# move konqueror.desktop back to old position (#281572)
mv $RPM_BUILD_ROOT/opt/kde3/share/applications/kde/konqueror.desktop $RPM_BUILD_ROOT/opt/kde3/share/applnk/konqueror.desktop
@@ -887,23 +887,6 @@
%postun
%insserv_cleanup
/sbin/ldconfig
-%if %suse_version < 1031
-
-%post ksysguardd
-%{fillup_and_insserv -sn kdebase3-ksysguardd ksysguardd RUN_KSYSGUARDD}
-%verifyscript
-%verify_permissions -e /opt/kde3/bin/kcheckpass
-%verify_permissions -e /opt/kde3/bin/kdesud
-%verify_permissions -e /opt/kde3/bin/khc_indexbuilder
-
-%postun ksysguardd
-%restart_on_update ksysguardd
-%insserv_cleanup
-
-%preun ksysguardd
-%stop_on_removal ksysguardd
-%endif
-
%post runtime -p /sbin/ldconfig
%postun runtime -p /sbin/ldconfig
@@ -919,9 +902,6 @@
%postun apps -p /sbin/ldconfig
-%clean
-rm -rf $RPM_BUILD_ROOT
-
%files -n misc-console-font
%defattr(-,root,root)
%doc COPYING
@@ -979,9 +959,7 @@
/opt/kde3/bin/khc_htsearch.pl
/opt/kde3/bin/kapplymousetheme
/opt/kde3/bin/kio_system_documenthelper
-%if %suse_version > 1010
/opt/kde3/bin/runupdater
-%endif
/opt/kde3/bin/kstart
/opt/kde3/bin/ksystraycmd
/opt/kde3/%_lib/kde3/cursorthumbnail.*
@@ -1027,10 +1005,8 @@
/opt/kde3/%_lib/kde3/kstyle_keramik_config.*
/opt/kde3/%_lib/kde3/libkmanpart.*
/opt/kde3/%_lib/kde3/liblocaldomainurifilter.*
-%if %suse_version > 1010
/opt/kde3/%_lib/kde3/runupdater.*
/opt/kde3/%_lib/libkdeinit_runupdater.so
-%endif
/opt/kde3/%_lib/libkdeinit_kaccess.so
/opt/kde3/%_lib/libkdeinit_kcminit.so
/opt/kde3/%_lib/libkdeinit_kcminit_startup.so
@@ -1334,11 +1310,6 @@
/opt/kde3/share/services/kfile_font.desktop
/opt/kde3/share/services/kfontviewpart.desktop
%_mandir/man1/*
-%if %suse_version < 1001
-%config(noreplace) /etc/security/fileshare.conf
-/opt/kde3/bin/filesharelist
-%verify(not mode) /opt/kde3/bin/fileshareset
-%endif
%{_mandir}/man8/kcheckpass.8.gz
%doc %lang(en) /opt/kde3/share/doc/HTML/en/kcontrol
%doc %lang(en) /opt/kde3/share/doc/HTML/en/kdcop
@@ -1376,15 +1347,6 @@
%dir /opt/kde3/share/config/kdm
%config(noreplace) /opt/kde3/share/config/kdm/kdmrc
%config(noreplace) /opt/kde3/share/config/kdm/backgroundrc
-%if %suse_version < 1010
-%config /opt/kde3/share/config/kdm/Xaccess
-%config /opt/kde3/share/config/kdm/Xreset
-%config /opt/kde3/share/config/kdm/Xresources
-%config /opt/kde3/share/config/kdm/Xsession
-%config /opt/kde3/share/config/kdm/Xsetup
-%config /opt/kde3/share/config/kdm/Xstartup
-%config /opt/kde3/share/config/kdm/Xwilling
-%endif
%ghost /var/run/xdmctl
/usr/sbin/rckdm
/opt/kde3/share/applications/kde/kdm.desktop
@@ -1394,15 +1356,8 @@
%files session
%defattr(-,root,root)
-%if %suse_version > 1010
/usr/bin/kde
/usr/bin/startkde3
-%else
-/usr/X11R6/bin/kde
-%endif
-%if %suse_version < 1030
-%dir /usr/share/xsessions
-%endif
/usr/share/xsessions/kde.desktop
%files extra
++++++ kickoff-shutdown-upower.patch ++++++
diff -wruN kdebase-3.5.10.orig/kicker/kicker/ui/k_new_mnu.cpp kdebase-3.5.10/kicker/kicker/ui/k_new_mnu.cpp
--- kdebase-3.5.10.orig/kicker/kicker/ui/k_new_mnu.cpp 2012-02-24 14:00:03.000000000 +0400
+++ kdebase-3.5.10/kicker/kicker/ui/k_new_mnu.cpp 2012-02-26 09:16:18.726727042 +0400
@@ -3685,54 +3685,41 @@
return 5;
}
-#define DBUS_HAL_INTERFACE "org.freedesktop.Hal"
-#define DBUS_HAL_SYSTEM_POWER_INTERFACE "org.freedesktop.Hal.Device.SystemPowerManagement"
-#define HAL_UDI_COMPUTER "/org/freedesktop/Hal/devices/computer"
-
#ifdef KDELIBS_SUSE
-#include
#include
#include
+
+#include
+#include
+#include
+#include
#endif
void KMenu::insertSuspendOption( int &nId, int &index )
{
#ifdef KDELIBS_SUSE
- int supported = -1;
+
bool suspend_ram, suspend_disk, standby;
- DCOPRef kpowersave( "kpowersave", "KPowersaveIface" );
- DCOPReply reply = kpowersave.call( "allowed_sleepingStates" );
- if( reply.isValid()) {
- QStringList supported = reply;
- suspend_ram = supported.contains( "suspendToRAM" );
- suspend_disk = supported.contains( "suspendToDisk" );
- standby = supported.contains( "standBy" );
- } else {
- liblazy_hal_get_property_bool(HAL_UDI_COMPUTER, "power_management.can_suspend", &supported);
- if (supported == 1)
- suspend_ram = true;
- else
- suspend_ram = false;
- liblazy_hal_get_property_bool(HAL_UDI_COMPUTER, "power_management.can_standby", &supported);
- if (supported == 1)
- standby = true;
- else
- standby = false;
- liblazy_hal_get_property_bool(HAL_UDI_COMPUTER, "power_management.can_hibernate", &supported);
- if (supported == 1)
- suspend_disk = true;
- else
- suspend_disk = false;
+ m_dbusConn = QDBusConnection::addConnection(QDBusConnection::SystemBus);
+
+ QDBusProxy upowerProperties("org.freedesktop.UPower", "/org/freedesktop/UPower", "org.freedesktop.DBus.Properties", m_dbusConn);
+ // can suspend?
+ QValueList<QDBusData> params;
+ params << QDBusData::fromString(upowerProperties.interface()) << QDBusData::fromString("CanSuspend");
+ QDBusMessage reply = upowerProperties.sendWithReply("Get", params);
+ if(reply.type() == QDBusMessage::ReplyMessage && reply.count() == 1)
+ suspend_ram = reply[0].toVariant().value.toBool();
+
+ // can hibernate?
+ params.clear();
+ params << QDBusData::fromString(upowerProperties.interface()) << QDBusData::fromString("CanHibernate");
+ reply = upowerProperties.sendWithReply("Get", params);
+ if(reply.type() == QDBusMessage::ReplyMessage && reply.count() == 1)
+ suspend_disk = reply[0].toVariant().value.toBool();
- if (liblazy_hal_is_caller_privileged("org.freedesktop.hal.power-management.hibernate") != 1)
- suspend_disk = false;
- if (liblazy_hal_is_caller_privileged("org.freedesktop.hal.power-management.suspend") != 1)
- suspend_ram = false;
- if (liblazy_hal_is_caller_privileged("org.freedesktop.hal.power-management.standby") != 1)
standby = false;
- }
if ( ! ( standby + suspend_ram + suspend_disk ) )
return;
@@ -3756,59 +3743,29 @@
void KMenu::slotSuspend(int id)
{
#ifdef KDELIBS_SUSE
- int error = 0;
-
- DCOPRef kpowersave( "kpowersave", "KPowersaveIface" );
- DCOPReply reply = kpowersave.call( "allowed_sleepingStates" );
- if( reply.isValid()) {
- bool ok;
- extern Time qt_x_time;
- XUngrabKeyboard( qt_xdisplay(), qt_x_time );
- XUngrabPointer( qt_xdisplay(), qt_x_time );
- XSync( qt_xdisplay(), False );
- if( id == 1 )
- ok = kpowersave.call( "do_suspendToDisk" );
- else if( id == 2 )
- ok = kpowersave.call( "do_suspendToRAM" );
- else if( id == 3 )
- ok = kpowersave.call( "do_standBy" );
- else
- return;
- error = ok ? 0 : 1;
- } else {
- int wake = 0;
- DBusMessage *reply = 0;
if (id == 1) {
- error = liblazy_dbus_system_send_method_call(DBUS_HAL_INTERFACE,
- HAL_UDI_COMPUTER,
- DBUS_HAL_SYSTEM_POWER_INTERFACE,
- "Hibernate",
- &reply,
- DBUS_TYPE_INVALID);
+ if( m_dbusConn.isConnected() ) {
+ QDBusMessage msg = QDBusMessage::methodCall(
+ "org.freedesktop.UPower",
+ "/org/freedesktop/UPower",
+ "org.freedesktop.UPower",
+ "Hibernate");
+ m_dbusConn.sendWithReply(msg);
+ }
} else if (id == 2)
- error = liblazy_dbus_system_send_method_call(DBUS_HAL_INTERFACE,
- HAL_UDI_COMPUTER,
- DBUS_HAL_SYSTEM_POWER_INTERFACE,
- "Suspend",
- &reply,
- DBUS_TYPE_INT32,
- &wake,
- DBUS_TYPE_INVALID);
- else if (id == 3)
- error = liblazy_dbus_system_send_method_call(DBUS_HAL_INTERFACE,
- HAL_UDI_COMPUTER,
- DBUS_HAL_SYSTEM_POWER_INTERFACE,
- "Standby",
- &reply,
- DBUS_TYPE_INVALID);
+ if( m_dbusConn.isConnected() ) {
+ QDBusMessage msg = QDBusMessage::methodCall(
+ "org.freedesktop.UPower",
+ "/org/freedesktop/UPower",
+ "org.freedesktop.UPower",
+ "Suspend");
+ m_dbusConn.sendWithReply(msg);
+ }
else
return;
- }
- if (error)
#endif
- KMessageBox::error(this, i18n("Suspend failed"));
}
diff -wruN kdebase-3.5.10.orig/kicker/kicker/ui/k_new_mnu.h kdebase-3.5.10/kicker/kicker/ui/k_new_mnu.h
--- kdebase-3.5.10.orig/kicker/kicker/ui/k_new_mnu.h 2012-02-24 14:28:32.000000000 +0400
+++ kdebase-3.5.10/kicker/kicker/ui/k_new_mnu.h 2012-02-26 09:14:15.733728378 +0400
@@ -41,6 +41,7 @@
#include "kmenubase.h"
#include "service_mnu.h"
#include "query.h"
+#include
class KickerClientMenu;
class KickoffTabBar;
@@ -228,6 +229,7 @@
FlipScrollView * m_exitView;
QVBox * m_searchWidget;
QLabel * m_resizeHandle;
+ QDBusConnection m_dbusConn;
bool m_isresizing;
// timer for search without pressing enter feature
++++++ ksmserver-shutdown-upower.patch ++++++
diff -wruN kdebase-3.5.10.orig/ksmserver/shutdowndlg.cpp kdebase-3.5.10/ksmserver/shutdowndlg.cpp
--- kdebase-3.5.10.orig/ksmserver/shutdowndlg.cpp 2012-02-22 08:17:40.342199124 +0400
+++ kdebase-3.5.10/ksmserver/shutdowndlg.cpp 2012-02-26 05:57:11.235726994 +0400
@@ -47,15 +47,15 @@
#include
#include
#include
-#include
#include
#include "shutdowndlg.moc"
-#define DBUS_HAL_INTERFACE "org.freedesktop.Hal"
-#define DBUS_HAL_SYSTEM_POWER_INTERFACE "org.freedesktop.Hal.Device.SystemPowerManagement"
-#define HAL_UDI_COMPUTER "/org/freedesktop/Hal/devices/computer"
+#include
+#include
+#include
+#include
static const int max_faded = 2300;
static const int slice = 20;
@@ -265,43 +265,29 @@
} else
QToolTip::add( btnReboot, i18n( "<qt><h3>Restart Computer</h3><p>Log out of the current session and restart the computer</p></qt>" ) );
- DCOPRef kpowersave( "kpowersave", "KPowersaveIface" );
- DCOPReply reply = kpowersave.call( "allowed_sleepingStates" );
- if( reply.isValid()) {
- QStringList supported = reply;
- suspend_ram = supported.contains( "suspendToRAM" );
- suspend_disk = supported.contains( "suspendToDisk" );
- standby = supported.contains( "standBy" );
- } else {
- int supported = -1;
- liblazy_hal_get_property_bool(HAL_UDI_COMPUTER, "power_management.can_suspend", &supported);
- if (supported == 1)
- suspend_ram = true;
- else
- suspend_ram = false;
- liblazy_hal_get_property_bool(HAL_UDI_COMPUTER, "power_management.can_standby", &supported);
- if (supported == 1)
- standby = true;
- else
- standby = false;
- liblazy_hal_get_property_bool(HAL_UDI_COMPUTER, "power_management.can_hibernate", &supported);
- if (supported == 1)
- suspend_disk = true;
- else
- suspend_disk = false;
+ m_dbusConn = QDBusConnection::addConnection(QDBusConnection::SystemBus);
+
+ QDBusProxy upowerProperties("org.freedesktop.UPower", "/org/freedesktop/UPower", "org.freedesktop.DBus.Properties", m_dbusConn);
- if (liblazy_hal_is_caller_privileged("org.freedesktop.hal.power-management.hibernate") != 1)
- suspend_disk = false;
- if (liblazy_hal_is_caller_privileged("org.freedesktop.hal.power-management.suspend") != 1)
- suspend_ram = false;
- if (liblazy_hal_is_caller_privileged("org.freedesktop.hal.power-management.standby") != 1)
+ // can suspend?
+ QValueList<QDBusData> params;
+ params << QDBusData::fromString(upowerProperties.interface()) << QDBusData::fromString("CanSuspend");
+ QDBusMessage reply = upowerProperties.sendWithReply("Get", params);
+ if(reply.type() == QDBusMessage::ReplyMessage && reply.count() == 1)
+ suspend_ram = reply[0].toVariant().value.toBool();
+
+ // can hibernate?
+ params.clear();
+ params << QDBusData::fromString(upowerProperties.interface()) << QDBusData::fromString("CanHibernate");
+ reply = upowerProperties.sendWithReply("Get", params);
+ if(reply.type() == QDBusMessage::ReplyMessage && reply.count() == 1)
+ suspend_disk = reply[0].toVariant().value.toBool();
standby = false;
- }
int sum = standby + suspend_ram + suspend_disk;
if ( sum ) {
QButton *btnSuspend;
- if (sum > 1) {
+ if (sum >= 1) {
btnSuspend = new KSMDelayedPushButton( KGuiItem( i18n("&Suspend Computer"), "player_pause"), frame );
QPopupMenu *suspends = new QPopupMenu(frame);
if (suspend_disk)
@@ -312,8 +298,6 @@
suspends->insertItem(i18n("Standby"), 3);
connect(suspends, SIGNAL(activated(int)), SLOT(slotSuspend(int)));
static_cast(btnSuspend)->setPopup(suspends);
- } else {
- btnSuspend = new KPushButton( KGuiItem( i18n("&Suspend Computer"), "player_pause"), frame );
}
btnSuspend->setFont( btnFont );
buttonlay->addWidget( btnSuspend );
@@ -334,55 +318,25 @@
void KSMShutdownDlg::slotSuspend()
{
- int error = 0;
- DCOPRef kpowersave( "kpowersave", "KPowersaveIface" );
- DCOPReply reply = kpowersave.call( "allowed_sleepingStates" );
- if( reply.isValid()) {
- bool ok;
- // so that screen locking can take place
- extern Time qt_x_time;
- XUngrabKeyboard( qt_xdisplay(), qt_x_time );
- XUngrabPointer( qt_xdisplay(), qt_x_time );
- XSync( qt_xdisplay(), False );
- if( suspend_disk )
- ok = kpowersave.call( "do_suspendToDisk" );
- else if( suspend_ram )
- ok = kpowersave.call( "do_suspendToRAM" );
- else
- ok = kpowersave.call( "do_standBy" );
- error = ok ? 0 : 1;
- } else {
-
- int wake = 0;
- DBusMessage *reply;
- if (suspend_disk)
- error = liblazy_dbus_system_send_method_call(DBUS_HAL_INTERFACE,
- HAL_UDI_COMPUTER,
- DBUS_HAL_SYSTEM_POWER_INTERFACE,
- "Hibernate",
- &reply,
- DBUS_TYPE_INVALID);
- else if (suspend_ram)
- error = liblazy_dbus_system_send_method_call(DBUS_HAL_INTERFACE,
- HAL_UDI_COMPUTER,
- DBUS_HAL_SYSTEM_POWER_INTERFACE,
- "Suspend",
- &reply,
- DBUS_TYPE_INT32,
- &wake,
- DBUS_TYPE_INVALID);
- else
- error = liblazy_dbus_system_send_method_call(DBUS_HAL_INTERFACE,
- HAL_UDI_COMPUTER,
- DBUS_HAL_SYSTEM_POWER_INTERFACE,
- "Standby",
- &reply,
- DBUS_TYPE_INVALID);
+ if (suspend_disk) {
+ if( m_dbusConn.isConnected() ) {
+ QDBusMessage msg = QDBusMessage::methodCall(
+ "org.freedesktop.UPower",
+ "/org/freedesktop/UPower",
+ "org.freedesktop.UPower",
+ "Hibernate");
+ m_dbusConn.sendWithReply(msg);
+ }
+ } else
+ if( m_dbusConn.isConnected() ) {
+ QDBusMessage msg = QDBusMessage::methodCall(
+ "org.freedesktop.UPower",
+ "/org/freedesktop/UPower",
+ "org.freedesktop.UPower",
+ "Suspend");
+ m_dbusConn.sendWithReply(msg);
}
-
- if (error)
- KMessageBox::error(this, i18n("Suspend failed"));
// possibly after resume :)
reject();
@@ -390,60 +344,27 @@
void KSMShutdownDlg::slotSuspend(int id)
{
- int error = 0;
-
- DCOPRef kpowersave( "kpowersave", "KPowersaveIface" );
- DCOPReply reply = kpowersave.call( "allowed_sleepingStates" );
- if( reply.isValid()) {
- bool ok;
- extern Time qt_x_time;
- XUngrabKeyboard( qt_xdisplay(), qt_x_time );
- XUngrabPointer( qt_xdisplay(), qt_x_time );
- XSync( qt_xdisplay(), False );
- if( suspend_disk && id == 1 )
- ok = kpowersave.call( "do_suspendToDisk" );
- else if( suspend_ram && id == 2 )
- ok = kpowersave.call( "do_suspendToRAM" );
- else if( standby && id == 3 )
- ok = kpowersave.call( "do_standBy" );
- else
- return;
- error = ok ? 0 : 1;
- } else {
-
-
- int wake = 0;
- DBusMessage *reply;
if (suspend_disk && id == 1) {
- error = liblazy_dbus_system_send_method_call(DBUS_HAL_INTERFACE,
- HAL_UDI_COMPUTER,
- DBUS_HAL_SYSTEM_POWER_INTERFACE,
- "Hibernate",
- &reply,
- DBUS_TYPE_INVALID);
+ if( m_dbusConn.isConnected() ) {
+ QDBusMessage msg = QDBusMessage::methodCall(
+ "org.freedesktop.UPower",
+ "/org/freedesktop/UPower",
+ "org.freedesktop.UPower",
+ "Hibernate");
+ m_dbusConn.sendWithReply(msg);
+ }
} else if (suspend_ram && id == 2)
- error = liblazy_dbus_system_send_method_call(DBUS_HAL_INTERFACE,
- HAL_UDI_COMPUTER,
- DBUS_HAL_SYSTEM_POWER_INTERFACE,
- "Suspend",
- &reply,
- DBUS_TYPE_INT32,
- &wake,
- DBUS_TYPE_INVALID);
- else if (standby && id == 3)
- error = liblazy_dbus_system_send_method_call(DBUS_HAL_INTERFACE,
- HAL_UDI_COMPUTER,
- DBUS_HAL_SYSTEM_POWER_INTERFACE,
- "Standby",
- &reply,
- DBUS_TYPE_INVALID);
- else
- return;
+ if( m_dbusConn.isConnected() ) {
+ QDBusMessage msg = QDBusMessage::methodCall(
+ "org.freedesktop.UPower",
+ "/org/freedesktop/UPower",
+ "org.freedesktop.UPower",
+ "Suspend");
+ m_dbusConn.sendWithReply(msg);
}
-
- if (error)
- KMessageBox::error(this, i18n("Suspend failed"));
+ else
+ KSMShutdownDlg::slotSuspend(); return;
// possibly after resume :)
reject();
diff -wruN kdebase-3.5.10.orig/ksmserver/shutdowndlg.h kdebase-3.5.10/ksmserver/shutdowndlg.h
--- kdebase-3.5.10.orig/ksmserver/shutdowndlg.h 2012-02-20 01:01:49.084200000 +0400
+++ kdebase-3.5.10/ksmserver/shutdowndlg.h 2012-02-25 16:45:19.519737644 +0400
@@ -12,6 +12,7 @@
#include
#include
#include
+#include
class QPushButton;
class QVButtonGroup;
class QPopupMenu;
@@ -74,6 +75,7 @@
QPopupMenu *targets;
QStringList rebootOptions;
bool suspend_disk, suspend_ram, standby;
+ QDBusConnection m_dbusConn;
};
class KSMDelayedPushButton : public KPushButton
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org