summaryrefslogtreecommitdiff
path: root/noncore/net/mail/taskbarapplet
Side-by-side diff
Diffstat (limited to 'noncore/net/mail/taskbarapplet') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/taskbarapplet/mailapplet.cpp51
1 files changed, 33 insertions, 18 deletions
diff --git a/noncore/net/mail/taskbarapplet/mailapplet.cpp b/noncore/net/mail/taskbarapplet/mailapplet.cpp
index 2fc1d01..9c0d32f 100644
--- a/noncore/net/mail/taskbarapplet/mailapplet.cpp
+++ b/noncore/net/mail/taskbarapplet/mailapplet.cpp
@@ -14,2 +14,5 @@
+/* UNIX */
+#include <signal.h>
+
using namespace Opie::Core;
@@ -30,2 +33,9 @@ MailApplet::MailApplet( QWidget *parent )
+ /* for networking we must block SIGPIPE and Co. */
+ struct sigaction blocking_action,temp_action;
+ blocking_action.sa_handler = SIG_IGN;
+ sigemptyset(&(blocking_action.sa_mask));
+ blocking_action.sa_flags = 0;
+ sigaction(SIGPIPE,&blocking_action,&temp_action);
+
if ( !m_config->readBoolEntry( "Disabled", false ) ) {
@@ -71,6 +81,4 @@ void MailApplet::slotClicked() {
}
-
if (m_statusMail)
m_statusMail->reset_status();
-
hide();
@@ -78,3 +86,4 @@ void MailApplet::slotClicked() {
-void MailApplet::startup() {
+void MailApplet::startup()
+{
Settings *settings = new Settings();
@@ -84,3 +93,4 @@ void MailApplet::startup() {
- m_intervalMs = m_config->readNumEntry( "CheckEvery", 5 ) * 60000;
+ //m_intervalMs = m_config->readNumEntry( "CheckEvery", 5 ) * 60000;
+ m_intervalMs = 100;
m_intervalTimer = new QTimer();
@@ -92,2 +102,3 @@ void MailApplet::slotCheck() {
// Check wether the check interval has been changed.
+ odebug << "MailApplet::slotCheck()" << oendl;
int newIntervalMs = m_config->readNumEntry( "CheckEvery", 5 ) * 60000;
@@ -106,16 +117,17 @@ void MailApplet::slotCheck() {
m_newMails = stat.message_unseen;
- odebug << QString( "test %1" ).arg( m_newMails ) << oendl;
- if ( m_newMails > 0 && newMailsOld != m_newMails ) {
- ODevice *device = ODevice::inst();
- if ( isHidden() )
+ odebug << QString( "test %1" ).arg( m_newMails ) << oendl;
+ if ( m_newMails > 0) {
+ if (isHidden())
show();
- if ( m_config->readBoolEntry( "BlinkLed", true ) ) {
- if ( !device->ledList().isEmpty() ) {
- OLed led = ( device->ledList().contains( Led_Mail ) ) ? Led_Mail : device->ledList()[0];
- device->setLedState( led, device->ledStateList( led ).contains( Led_BlinkSlow ) ? Led_BlinkSlow : Led_On );
+ if (newMailsOld != m_newMails) {
+ ODevice *device = ODevice::inst();
+ if ( m_config->readBoolEntry( "BlinkLed", true ) ) {
+ if ( !device->ledList().isEmpty() ) {
+ OLed led = ( device->ledList().contains( Led_Mail ) ) ? Led_Mail : device->ledList()[0];
+ device->setLedState( led, device->ledStateList( led ).contains( Led_BlinkSlow ) ? Led_BlinkSlow : Led_On );
+ }
}
+ if ( m_config->readBoolEntry( "PlaySound", false ) )
+ device->playAlarmSound();
}
- if ( m_config->readBoolEntry( "PlaySound", false ) )
- device->playAlarmSound();
-
Config cfg( "mail" );
@@ -123,6 +135,9 @@ void MailApplet::slotCheck() {
cfg.writeEntry( "newMails", m_newMails );
- QCopEnvelope env( "QPE/Pim", "newMails(int)" );
- env << m_newMails;
+ {
+ odebug << "QCop abschicken" << oendl;
+ QCopEnvelope env( "QPE/Pim", "newMails(int)" );
+ env << m_newMails;
+ }
+ odebug << "QCop abschicken done" << oendl;
repaint( true );
-
} else {