]> git.pld-linux.org Git - packages/kde4-kdebase-workspace.git/blob - kde4-kdebase-workspace-brightness.patch
- drop enlightenment reqs
[packages/kde4-kdebase-workspace.git] / kde4-kdebase-workspace-brightness.patch
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
4 @@ -108,6 +108,7 @@
5  
6      if (!controls.isEmpty()) {
7          m_cachedBrightness = brightness(Screen);
8 +        m_cachedBrightness_timer.start();
9          kDebug() << "current screen brightness: " << m_cachedBrightness;
10      }
11  
12 @@ -153,6 +154,9 @@
13  
14  void PowerDevilUPowerBackend::brightnessKeyPressed(PowerDevil::BackendInterface::BrightnessKeyType type)
15  {
16 +    if (m_cachedBrightness_timer.elapsed() < 100)
17 +        return; // two key presses delivered for single physical key press; 100ms marign
18 +
19      BrightnessControlsList controls = brightnessControlsAvailable();
20      QList<QString> screenControls = controls.keys(Screen);
21  
22 @@ -165,14 +169,16 @@
23      if (qFuzzyCompare(currentBrightness, m_cachedBrightness)) {
24          float newBrightness;
25          if (type == Increase) {
26 -            newBrightness = qMin(100.0f, currentBrightness + 10);
27 +            newBrightness = qMin(100.0f, currentBrightness + 6);
28          } else {
29 -            newBrightness = qMax(0.0f, currentBrightness - 10);
30 +            newBrightness = qMax(0.0f, currentBrightness - 6);
31          }
32  
33          setBrightness(newBrightness, Screen);
34      } else {
35          m_cachedBrightness = currentBrightness;
36 +        m_cachedBrightness_timer.restart();
37 +        onBrightnessChanged(Screen, m_cachedBrightness);
38      }
39  }
40  
41 @@ -209,6 +215,10 @@
42  bool PowerDevilUPowerBackend::setBrightness(float brightnessValue, PowerDevil::BackendInterface::BrightnessControlType type)
43  {
44      bool success = false;
45 +
46 +    if (m_cachedBrightness_timer.elapsed() < 100)
47 +        return success;
48 +
49      if (type == Screen) {
50          kDebug() << "set screen brightness: " << brightnessValue;
51          if (m_brightnessControl->isSupported()) {
52 @@ -236,6 +246,7 @@
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);
58          }
59          return true;
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
66 @@ -70,6 +70,7 @@
67  
68      // brightness
69      float m_cachedBrightness;
70 +    QElapsedTimer m_cachedBrightness_timer;
71      XRandrBrightness         *m_brightnessControl;
72      OrgFreedesktopUPowerInterface *m_upowerInterface;
73      OrgFreedesktopUPowerKbdBacklightInterface *m_kbdBacklight;
This page took 0.299709 seconds and 3 git commands to generate.