KMilo: added keyboard support for screen brightness up/down.

This is inspired and partially include code from Roman Savochenko
proposed in bug 2783 and tdeutils #8.

Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
pull/21/head
Michele Calgaro 4 years ago
parent eabfd64e74
commit 3c70b34ae3
Signed by: MicheleC
GPG Key ID: 2A75B7CA8ADED5CF

@ -43,7 +43,7 @@
using namespace KMilo; using namespace KMilo;
GenericMonitor::GenericMonitor(TQObject *parent, const char *name, const TQStringList& args) GenericMonitor::GenericMonitor(TQObject *parent, const char *name, const TQStringList& args)
: Monitor(parent, name, args) : Monitor(parent, name, args), kmixClient(NULL), kmixWindow(NULL), tdepowersave(NULL)
{ {
_poll = false; _poll = false;
m_displayType = Monitor::None; m_displayType = Monitor::None;
@ -69,11 +69,8 @@ GenericMonitor::~GenericMonitor()
bool GenericMonitor::init() bool GenericMonitor::init()
{ {
TDEConfig config(CONFIG_FILE); config = new TDEConfig(CONFIG_FILE);
reconfigure(&config); reconfigure(config);
//config = new TDEConfig("kmilodrc");
config.setGroup("kubuntu");
if(!m_enabled) if(!m_enabled)
return false; // exit early if we are not supposed to run return false; // exit early if we are not supposed to run
@ -95,7 +92,9 @@ bool GenericMonitor::init()
{ "FastVolumeDown", TQt::Key_VolumeDown, TQT_SLOT(fastVolumeDown()) }, { "FastVolumeDown", TQt::Key_VolumeDown, TQT_SLOT(fastVolumeDown()) },
{ "SlowVolumeUp", TQt::CTRL+TQt::Key_VolumeUp, TQT_SLOT(slowVolumeUp()) }, { "SlowVolumeUp", TQt::CTRL+TQt::Key_VolumeUp, TQT_SLOT(slowVolumeUp()) },
{ "SlowVolumeDown", TQt::CTRL+TQt::Key_VolumeDown, TQT_SLOT(slowVolumeDown()) }, { "SlowVolumeDown", TQt::CTRL+TQt::Key_VolumeDown, TQT_SLOT(slowVolumeDown()) },
{ "Mute", TDEShortcut("XF86AudioMute"), TQT_SLOT(mute()) } { "Mute", TDEShortcut("XF86AudioMute"), TQT_SLOT(mute()) },
{ "BrightnessUp", TDEShortcut("XF86MonBrightnessUp"), TQT_SLOT(brightnessUp()) },
{ "BrightnessDown", TDEShortcut("XF86MonBrightnessDown"), TQT_SLOT(brightnessDown()) }
}; };
ga = new TDEGlobalAccel(this, "miloGenericAccel"); ga = new TDEGlobalAccel(this, "miloGenericAccel");
@ -116,6 +115,7 @@ bool GenericMonitor::init()
kmixClient = new DCOPRef("kmix", "Mixer0"); kmixClient = new DCOPRef("kmix", "Mixer0");
kmixWindow = new DCOPRef("kmix", "kmix-mainwindow#1"); kmixWindow = new DCOPRef("kmix", "kmix-mainwindow#1");
tdepowersave = new DCOPRef("tdepowersave", "tdepowersaveIface");
return true; return true;
} }
@ -325,6 +325,48 @@ void GenericMonitor::mute()
_interface->displayText(muteText); _interface->displayText(muteText);
} }
void GenericMonitor::brightnessUp()
{
brightnessChange(1, 10);
}
void GenericMonitor::brightnessDown()
{
brightnessChange(-1, 10);
}
void GenericMonitor::brightnessChange(int direction, int step)
{
if (!tdepowersave)
{
return;
}
DCOPReply reply = tdepowersave->call("brightnessGet");
if (reply.isValid())
{
int brightnessLevel = 100 + (int)reply; // reply value is a negative number between 0 and -100.
brightnessLevel += direction * step; // add requested brightness step
if (brightnessLevel > 100)
{
brightnessLevel = 100;
}
if (brightnessLevel < 0)
{
brightnessLevel = 0;
}
if (direction > 0)
{
tdepowersave->send("do_brightnessUp", step);
}
else if (direction < 0)
{
tdepowersave->send("do_brightnessDown", step);
}
_interface->displayProgress(i18n("Brightness"), brightnessLevel);
}
}
int GenericMonitor::progress() const int GenericMonitor::progress() const
{ {
return m_progress; return m_progress;

@ -65,6 +65,8 @@ public slots:
void fastVolumeUp(); void fastVolumeUp();
void fastVolumeDown(); void fastVolumeDown();
void mute(); void mute();
void brightnessUp();
void brightnessDown();
void launchMail(); void launchMail();
void launchBrowser(); void launchBrowser();
void launchSearch(); void launchSearch();
@ -83,12 +85,13 @@ private:
bool retrieveMute(); bool retrieveMute();
bool retrieveVolume(); bool retrieveVolume();
void displayVolume(); void displayVolume();
void brightnessChange(int direction, int step);
void launch(TQString configKey, TQString defaultApplication); void launch(TQString configKey, TQString defaultApplication);
TDEGlobalAccel *ga; TDEGlobalAccel *ga;
TDEConfig* config; TDEConfig* config;
DCOPRef *kmixClient, *kmixWindow; DCOPRef *kmixClient, *kmixWindow, *tdepowersave;
int m_progress; int m_progress;
long m_volume; long m_volume;

Loading…
Cancel
Save