1 diff -ur kde-workspace-4.9.4.org/powerdevil/daemon/backends/upower/powerdevilupowerbackend.cpp kde-workspace-4.9.4/powerdevil/daemon/backends/upower/powerdevilupowerbackend.cpp
2 --- kde-workspace-4.9.4.org/powerdevil/daemon/backends/upower/powerdevilupowerbackend.cpp 2012-11-30 08:24:40.000000000 +0100
3 +++ kde-workspace-4.9.4/powerdevil/daemon/backends/upower/powerdevilupowerbackend.cpp 2012-12-03 09:18:49.162194544 +0100
6 if (!controls.isEmpty()) {
7 m_cachedBrightness = brightness(Screen);
8 + m_cachedBrightness_timer.start();
9 kDebug() << "current screen brightness: " << m_cachedBrightness;
14 void PowerDevilUPowerBackend::brightnessKeyPressed(PowerDevil::BackendInterface::BrightnessKeyType type)
16 + if (m_cachedBrightness_timer.elapsed() < 100)
17 + return; // two key presses delivered for single physical key press; 100ms marign
19 BrightnessControlsList controls = brightnessControlsAvailable();
20 QList<QString> screenControls = controls.keys(Screen);
23 if (qFuzzyCompare(currentBrightness, m_cachedBrightness)) {
25 if (type == Increase) {
26 - newBrightness = qMin(100.0f, currentBrightness + 10);
27 + newBrightness = qMin(100.0f, currentBrightness + 6);
29 - newBrightness = qMax(0.0f, currentBrightness - 10);
30 + newBrightness = qMax(0.0f, currentBrightness - 6);
33 setBrightness(newBrightness, Screen);
35 m_cachedBrightness = currentBrightness;
36 + m_cachedBrightness_timer.restart();
37 + onBrightnessChanged(Screen, m_cachedBrightness);
42 bool PowerDevilUPowerBackend::setBrightness(float brightnessValue, PowerDevil::BackendInterface::BrightnessControlType type)
46 + if (m_cachedBrightness_timer.elapsed() < 100)
50 kDebug() << "set screen brightness: " << brightnessValue;
51 if (m_brightnessControl->isSupported()) {
53 float newBrightness = brightness(Screen);
54 if (!qFuzzyCompare(newBrightness, m_cachedBrightness)) {
55 m_cachedBrightness = newBrightness;
56 + m_cachedBrightness_timer.restart();
57 onBrightnessChanged(Screen, m_cachedBrightness);
60 Tylko w kde-workspace-4.9.4/powerdevil/daemon/backends/upower: powerdevilupowerbackend.cpp~
61 Tylko w kde-workspace-4.9.4/powerdevil/daemon/backends/upower: powerdevilupowerbackend.cpp.orig
62 Tylko w kde-workspace-4.9.4/powerdevil/daemon/backends/upower: powerdevilupowerbackend.cpp.rej
63 diff -ur kde-workspace-4.9.4.org/powerdevil/daemon/backends/upower/powerdevilupowerbackend.h kde-workspace-4.9.4/powerdevil/daemon/backends/upower/powerdevilupowerbackend.h
64 --- kde-workspace-4.9.4.org/powerdevil/daemon/backends/upower/powerdevilupowerbackend.h 2012-11-30 08:24:40.000000000 +0100
65 +++ kde-workspace-4.9.4/powerdevil/daemon/backends/upower/powerdevilupowerbackend.h 2012-12-03 08:17:04.465869449 +0100
69 float m_cachedBrightness;
70 + QElapsedTimer m_cachedBrightness_timer;
71 XRandrBrightness *m_brightnessControl;
72 OrgFreedesktopUPowerInterface *m_upowerInterface;
73 OrgFreedesktopUPowerKbdBacklightInterface *m_kbdBacklight;