summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/taskbarapplet/mailapplet.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/noncore/net/mail/taskbarapplet/mailapplet.cpp b/noncore/net/mail/taskbarapplet/mailapplet.cpp
index 35198d1..25fd400 100644
--- a/noncore/net/mail/taskbarapplet/mailapplet.cpp
+++ b/noncore/net/mail/taskbarapplet/mailapplet.cpp
@@ -72,13 +72,13 @@ void MailApplet::slotClicked() {
// m_statusMails->reset_status();
}
void MailApplet::startup() {
Settings *settings = new Settings();
QList<Account> ma = settings->getAccounts();
- StatusMail m_statusMail = StatusMail( ma );
+ m_statusMail = new StatusMail( ma );
delete settings;
m_intervalMs = m_config->readNumEntry( "CheckEvery", 5 ) * 60000;
m_intervalTimer = new QTimer();
m_intervalTimer->start( m_intervalMs );
connect( m_intervalTimer, SIGNAL( timeout() ), this, SLOT( slotCheck() ) );
@@ -89,12 +89,16 @@ void MailApplet::slotCheck() {
int newIntervalMs = m_config->readNumEntry( "CheckEvery", 5 ) * 60000;
if ( newIntervalMs != m_intervalMs ) {
m_intervalTimer->changeInterval( newIntervalMs );
m_intervalMs = newIntervalMs;
}
+ if (m_statusMail == 0) {
+ return;
+ }
+
folderStat stat;
m_statusMail->check_current_stat( stat );
m_newMails = stat.message_unseen;
qDebug( QString( "test %1" ).arg( m_newMails ) );
if ( m_newMails > 0 ) {
ODevice *device = ODevice::inst();
@@ -110,13 +114,13 @@ void MailApplet::slotCheck() {
device->alarmSound();
Config cfg( "mail" );
cfg.setGroup( "Status" );
cfg.writeEntry( "NewMails", m_newMails );
QCopEnvelope env( "QPE/Pim", "newMails(int)" );
- env << stat.message_unseen;
+ env << m_newMails;
repaint( true );
} else {
ODevice *device = ODevice::inst();
if ( !isHidden() )
hide();