summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--bin/kdepim/WhatsNew.txt3
-rw-r--r--kmicromail/accountview.cpp5
-rw-r--r--kmicromail/libmailwrapper/smtpwrapper.cpp12
-rw-r--r--kmicromail/opiemail.cpp5
4 files changed, 18 insertions, 7 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt
index dc22fc6..a9b6c87 100644
--- a/bin/kdepim/WhatsNew.txt
+++ b/bin/kdepim/WhatsNew.txt
@@ -1,20 +1,23 @@
1Info about the changes in new versions of KDE-Pim/Pi 1Info about the changes in new versions of KDE-Pim/Pi
2 2
3********** VERSION 2.0.13 ************ 3********** VERSION 2.0.13 ************
4 4
5Fixed a problem in the addressee select dialog and made it more user friendly by adding a minimize splitter. 5Fixed a problem in the addressee select dialog and made it more user friendly by adding a minimize splitter.
6 6
7In the search dialog you can switch now the focus from search line edit to the list view by pressing key "arrow down". 7In the search dialog you can switch now the focus from search line edit to the list view by pressing key "arrow down".
8 8
9OM/Pi:
10Fixed a refresh problem of outgoing/sent/sendfailed folders after sending mails.
11
9********** VERSION 2.0.12 ************ 12********** VERSION 2.0.12 ************
10 13
11KO/Pi: 14KO/Pi:
12Fixed a bug in todo start/due date handling for non recurring todos with a start and due date. 15Fixed a bug in todo start/due date handling for non recurring todos with a start and due date.
13Fixed some layout problems in the KO/Pi agenda view when there were many conflicting itmes. 16Fixed some layout problems in the KO/Pi agenda view when there were many conflicting itmes.
14Fixed several problems of the keyboard focus in the desktop versions when opening the search dialog/event viewer. 17Fixed several problems of the keyboard focus in the desktop versions when opening the search dialog/event viewer.
15 18
16Fixed problem in pi-sync mode when wrong password was sent. 19Fixed problem in pi-sync mode when wrong password was sent.
17 20
18OM/Pi: 21OM/Pi:
19Fixed a crash when displaying mails with "Show mail as html" was checked in the config. 22Fixed a crash when displaying mails with "Show mail as html" was checked in the config.
20Added a check before displaying the mail if the mail is in html format, if "Show mail as html" is enabled. 23Added a check before displaying the mail if the mail is in html format, if "Show mail as html" is enabled.
diff --git a/kmicromail/accountview.cpp b/kmicromail/accountview.cpp
index 3ad3e9b..e9be224 100644
--- a/kmicromail/accountview.cpp
+++ b/kmicromail/accountview.cpp
@@ -104,26 +104,29 @@ void AccountView::refreshOutgoing()
104 if ( !m_currentItem ) return; 104 if ( !m_currentItem ) return;
105 AccountViewItem *view = static_cast<AccountViewItem *>(m_currentItem); 105 AccountViewItem *view = static_cast<AccountViewItem *>(m_currentItem);
106 QString bName = view->getFolder()->getDisplayName(); 106 QString bName = view->getFolder()->getDisplayName();
107 if (bName.startsWith("/")&&bName.length()>1) 107 if (bName.startsWith("/")&&bName.length()>1)
108 { 108 {
109 bName.replace(0,1,""); 109 bName.replace(0,1,"");
110 } 110 }
111 int pos = bName.findRev("/"); 111 int pos = bName.findRev("/");
112 if (pos > 0) 112 if (pos > 0)
113 { 113 {
114 bName.replace(0,pos+1,""); 114 bName.replace(0,pos+1,"");
115 } 115 }
116 if ( bName.lower() == "outgoing" ) 116 //qDebug("name *%s* ",bName.lower().latin1() );
117 if ( bName.lower() == "outgoing" || bName.lower() == "sent" || bName.lower() == "sendfailed" ) {
117 refreshCurrent(); 118 refreshCurrent();
119 // qDebug("refresh ");
120 }
118} 121}
119 122
120void AccountView::refreshCurrent() 123void AccountView::refreshCurrent()
121{ 124{
122 m_currentItem = currentItem(); 125 m_currentItem = currentItem();
123 if ( !m_currentItem ) return; 126 if ( !m_currentItem ) return;
124 QValueList<RecMailP> headerlist; 127 QValueList<RecMailP> headerlist;
125 AccountViewItem *view = static_cast<AccountViewItem *>(m_currentItem); 128 AccountViewItem *view = static_cast<AccountViewItem *>(m_currentItem);
126 view->refresh(headerlist); 129 view->refresh(headerlist);
127 emit refreshMailview(headerlist); 130 emit refreshMailview(headerlist);
128} 131}
129 132
diff --git a/kmicromail/libmailwrapper/smtpwrapper.cpp b/kmicromail/libmailwrapper/smtpwrapper.cpp
index 24f4786..5096f67 100644
--- a/kmicromail/libmailwrapper/smtpwrapper.cpp
+++ b/kmicromail/libmailwrapper/smtpwrapper.cpp
@@ -33,26 +33,27 @@ SMTPwrapper::SMTPwrapper(SMTPaccount * aSmtp )
33 emit queuedMails( m_queuedMail ); 33 emit queuedMails( m_queuedMail );
34 connect( this, SIGNAL( queuedMails(int) ), this, SLOT( emitQCop(int) ) ); 34 connect( this, SIGNAL( queuedMails(int) ), this, SLOT( emitQCop(int) ) );
35 m_smtp = 0; 35 m_smtp = 0;
36} 36}
37 37
38SMTPwrapper::~SMTPwrapper() 38SMTPwrapper::~SMTPwrapper()
39{ 39{
40 disc_server(); 40 disc_server();
41} 41}
42 42
43void SMTPwrapper::emitQCop( int queued ) { 43void SMTPwrapper::emitQCop( int queued ) {
44#ifndef DESKTOP_VERSION 44#ifndef DESKTOP_VERSION
45 QCopEnvelope env( "QPE/Pim", "outgoingMails(int)" ); 45 // LR : not used in kde-pim
46 env << queued; 46 //QCopEnvelope env( "QPE/Pim", "outgoingMails(int)" );
47 //env << queued;
47#endif 48#endif
48} 49}
49 50
50QString SMTPwrapper::mailsmtpError( int errnum ) { 51QString SMTPwrapper::mailsmtpError( int errnum ) {
51 switch ( errnum ) { 52 switch ( errnum ) {
52 case MAILSMTP_NO_ERROR: 53 case MAILSMTP_NO_ERROR:
53 return i18n( "No error" ); 54 return i18n( "No error" );
54 case MAILSMTP_ERROR_UNEXPECTED_CODE: 55 case MAILSMTP_ERROR_UNEXPECTED_CODE:
55 return i18n( "Unexpected error code" ); 56 return i18n( "Unexpected error code" );
56 case MAILSMTP_ERROR_SERVICE_NOT_AVAILABLE: 57 case MAILSMTP_ERROR_SERVICE_NOT_AVAILABLE:
57 return i18n( "Service not available" ); 58 return i18n( "Service not available" );
58 case MAILSMTP_ERROR_STREAM: 59 case MAILSMTP_ERROR_STREAM:
@@ -432,39 +433,38 @@ bool SMTPwrapper::flushOutbox() {
432 m_SmtpAccount->setUser(user); 433 m_SmtpAccount->setUser(user);
433 m_SmtpAccount->setPassword(pass); 434 m_SmtpAccount->setPassword(pass);
434 } else { 435 } else {
435 return true; 436 return true;
436 } 437 }
437 } 438 }
438 439
439 440
440 sendProgress = new progressMailSend(); 441 sendProgress = new progressMailSend();
441 sendProgress->show(); 442 sendProgress->show();
442 sendProgress->setMaxMails(mailsToSend.count()); 443 sendProgress->setMaxMails(mailsToSend.count());
443 444
444 while (mailsToSend.count()>0) { 445 while (returnValue && mailsToSend.count()>0) {
445 if (sendQueuedMail(wrap, (*mailsToSend.begin()))==0) { 446 if (sendQueuedMail(wrap, (*mailsToSend.begin()))==0) {
446 QMessageBox::critical(0,i18n("Error sending mail"), 447 QMessageBox::critical(0,i18n("Error sending mail"),
447 i18n("Error sending queued mail - breaking")); 448 i18n("Error sending queued mail.\nBreaking."));
448 returnValue = false; 449 returnValue = false;
449 break;
450 } 450 }
451 mailsToRemove.append((*mailsToSend.begin())); 451 mailsToRemove.append((*mailsToSend.begin()));
452 mailsToSend.remove(mailsToSend.begin()); 452 mailsToSend.remove(mailsToSend.begin());
453 sendProgress->setCurrentMails(mailsToRemove.count()); 453 sendProgress->setCurrentMails(mailsToRemove.count());
454 } 454 }
455 if (reset_user_value) { 455 if (reset_user_value) {
456 m_SmtpAccount->setUser(oldUser); 456 m_SmtpAccount->setUser(oldUser);
457 m_SmtpAccount->setPassword(oldPw); 457 m_SmtpAccount->setPassword(oldPw);
458 } 458 }
459 KConfig cfg( locateLocal("config", "kopiemailrc" ) ); 459 KConfig cfg( locateLocal("config", "kopiemailrc" ) );
460 cfg.setGroup( "Status" ); 460 cfg.setGroup( "Status" );
461 m_queuedMail = 0; 461 m_queuedMail = mailsToSend.count();
462 cfg.writeEntry( "outgoing", m_queuedMail ); 462 cfg.writeEntry( "outgoing", m_queuedMail );
463 emit queuedMails( m_queuedMail ); 463 emit queuedMails( m_queuedMail );
464 sendProgress->hide(); 464 sendProgress->hide();
465 delete sendProgress; 465 delete sendProgress;
466 sendProgress = 0; 466 sendProgress = 0;
467 wrap->deleteMails(mbox,mailsToRemove); 467 wrap->deleteMails(mbox,mailsToRemove);
468 delete wrap; 468 delete wrap;
469 return returnValue; 469 return returnValue;
470} 470}
diff --git a/kmicromail/opiemail.cpp b/kmicromail/opiemail.cpp
index f68467c..197f7ec 100644
--- a/kmicromail/opiemail.cpp
+++ b/kmicromail/opiemail.cpp
@@ -134,24 +134,25 @@ void OpieMail::slotwriteMail2(const QString& namemail )
134 compose.setTo( to.left(sub+1) ); 134 compose.setTo( to.left(sub+1) );
135 compose.setSubject( to.mid(sub+2) ); 135 compose.setSubject( to.mid(sub+2) );
136 } else 136 } else
137 compose.setTo( to ); 137 compose.setTo( to );
138 } 138 }
139 compose.slotAdjustColumns(); 139 compose.slotAdjustColumns();
140#ifndef DESKTOP_VERSION 140#ifndef DESKTOP_VERSION
141 compose.showMaximized(); 141 compose.showMaximized();
142#endif 142#endif
143 mCurrentComposer = &compose; 143 mCurrentComposer = &compose;
144 compose.exec(); 144 compose.exec();
145 mCurrentComposer = 0; 145 mCurrentComposer = 0;
146 folderView->refreshOutgoing();
146 raise(); 147 raise();
147 //qDebug("retttich "); 148 //qDebug("retttich ");
148} 149}
149void OpieMail::slotwriteMail(const QString&name,const QString&email) 150void OpieMail::slotwriteMail(const QString&name,const QString&email)
150{ 151{
151 // qDebug("OpieMail::slotwriteMail "); 152 // qDebug("OpieMail::slotwriteMail ");
152 ComposeMail compose( settings, this, 0, true ); 153 ComposeMail compose( settings, this, 0, true );
153 if (!email.isEmpty()) 154 if (!email.isEmpty())
154 { 155 {
155 if (!name.isEmpty()) 156 if (!name.isEmpty())
156 { 157 {
157 compose.setTo("\"" + name + "\"" + " " + "<"+ email + ">"); 158 compose.setTo("\"" + name + "\"" + " " + "<"+ email + ">");
@@ -160,24 +161,25 @@ void OpieMail::slotwriteMail(const QString&name,const QString&email)
160 { 161 {
161 compose.setTo(email); 162 compose.setTo(email);
162 } 163 }
163 } 164 }
164 compose.slotAdjustColumns(); 165 compose.slotAdjustColumns();
165#ifndef DESKTOP_VERSION 166#ifndef DESKTOP_VERSION
166 compose.showMaximized(); 167 compose.showMaximized();
167#endif 168#endif
168 169
169 mCurrentComposer = &compose; 170 mCurrentComposer = &compose;
170 compose.exec(); 171 compose.exec();
171 mCurrentComposer = 0; 172 mCurrentComposer = 0;
173 folderView->refreshOutgoing();
172 raise(); 174 raise();
173} 175}
174 176
175void OpieMail::slotComposeMail() 177void OpieMail::slotComposeMail()
176{ 178{
177 if ( mPendingEmail == QString::null && mPendingName == QString::null) 179 if ( mPendingEmail == QString::null && mPendingName == QString::null)
178 slotwriteMail2( QString () ); 180 slotwriteMail2( QString () );
179 else { 181 else {
180 if ( mPendingEmail == QString::null ) 182 if ( mPendingEmail == QString::null )
181 slotwriteMail2( mPendingName ); 183 slotwriteMail2( mPendingName );
182 else 184 else
183 slotwriteMail( mPendingName, mPendingEmail ); 185 slotwriteMail( mPendingName, mPendingEmail );
@@ -305,24 +307,25 @@ void OpieMail::replyMail()
305 } 307 }
306 composer.setSubject( prefix + mail->getSubject()); 308 composer.setSubject( prefix + mail->getSubject());
307 composer.setMessage( rtext ); 309 composer.setMessage( rtext );
308 composer.setInReplyTo( mail->Msgid()); 310 composer.setInReplyTo( mail->Msgid());
309 composer.setCharset( body->getCharset() ); 311 composer.setCharset( body->getCharset() );
310 312
311 mCurrentComposer = &composer; 313 mCurrentComposer = &composer;
312 if ( QDialog::Accepted == KApplication::execDialog( &composer ) ) 314 if ( QDialog::Accepted == KApplication::execDialog( &composer ) )
313 { 315 {
314 mail->Wrapper()->answeredMail(mail); 316 mail->Wrapper()->answeredMail(mail);
315 } 317 }
316 mCurrentComposer = 0; 318 mCurrentComposer = 0;
319 folderView->refreshOutgoing();
317 delete settings; 320 delete settings;
318 321
319} 322}
320void OpieMail::closeViewMail(ViewMail * vm) 323void OpieMail::closeViewMail(ViewMail * vm)
321{ 324{
322 vm->hide(); 325 vm->hide();
323} 326}
324 327
325void OpieMail::slotDownloadMail( ) 328void OpieMail::slotDownloadMail( )
326{ 329{
327 QListViewItem*item = mailView->currentItem(); 330 QListViewItem*item = mailView->currentItem();
328 if (!item ) { 331 if (!item ) {
@@ -640,33 +643,35 @@ void OpieMail::reEditMail()
640 if (!mailView->currentItem()) return; 643 if (!mailView->currentItem()) return;
641 644
642 ComposeMail compose( settings, this, 0, true ); 645 ComposeMail compose( settings, this, 0, true );
643 compose.reEditMail(((MailListViewItem*)mailView->currentItem() )->data()); 646 compose.reEditMail(((MailListViewItem*)mailView->currentItem() )->data());
644 compose.slotAdjustColumns(); 647 compose.slotAdjustColumns();
645#ifndef DESKTOP_VERSION 648#ifndef DESKTOP_VERSION
646 compose.showMaximized(); 649 compose.showMaximized();
647#else 650#else
648 compose.resize(640,480); 651 compose.resize(640,480);
649#endif 652#endif
650 mCurrentComposer = &compose; 653 mCurrentComposer = &compose;
651 compose.exec(); 654 compose.exec();
655 folderView->refreshOutgoing();
652 mCurrentComposer = 0; 656 mCurrentComposer = 0;
653} 657}
654 658
655void OpieMail::insertAttendees(const QString& uid,const QStringList& nameList,const QStringList& emailList,const QStringList& uidList) 659void OpieMail::insertAttendees(const QString& uid,const QStringList& nameList,const QStringList& emailList,const QStringList& uidList)
656{ 660{
657 661
658 if ( mCurrentComposer ) { 662 if ( mCurrentComposer ) {
659 mCurrentComposer->insertAttendees(uid,nameList,emailList,uidList); 663 mCurrentComposer->insertAttendees(uid,nameList,emailList,uidList);
660 } else { 664 } else {
661 ComposeMail compose( settings, this, 0, true ); 665 ComposeMail compose( settings, this, 0, true );
662 compose.slotAdjustColumns(); 666 compose.slotAdjustColumns();
663#ifndef DESKTOP_VERSION 667#ifndef DESKTOP_VERSION
664 compose.showMaximized(); 668 compose.showMaximized();
665#endif 669#endif
666 mCurrentComposer = &compose; 670 mCurrentComposer = &compose;
667 mCurrentComposer->insertAttendees(uid,nameList,emailList,uidList); 671 mCurrentComposer->insertAttendees(uid,nameList,emailList,uidList);
668 compose.exec(); 672 compose.exec();
669 mCurrentComposer = 0; 673 mCurrentComposer = 0;
674 folderView->refreshOutgoing();
670 raise(); 675 raise();
671 } 676 }
672} 677}