summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/calendarview.cpp54
-rw-r--r--korganizer/calendarview.h3
-rw-r--r--korganizer/koeventviewer.h2
-rw-r--r--korganizer/koeventviewerdialog.cpp21
-rw-r--r--korganizer/koeventviewerdialog.h10
-rw-r--r--korganizer/kolistview.cpp8
-rw-r--r--korganizer/kolistview.h1
-rw-r--r--korganizer/kotodoview.cpp22
-rw-r--r--korganizer/mainwindow.cpp1
9 files changed, 111 insertions, 11 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index 3dac20b..1009956 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -231,3 +231,4 @@ CalendarView::CalendarView( Calendar *calendar,
231 mTodoEditor = 0; 231 mTodoEditor = 0;
232 init();} 232 init();
233}
233 234
@@ -235,2 +236,5 @@ void CalendarView::init()
235{ 236{
237
238 setFocusPolicy ( WheelFocus );
239 mViewerCallerIsSearchDialog = false;
236 mBlockShowDates = false; 240 mBlockShowDates = false;
@@ -2622,2 +2626,3 @@ void CalendarView::cloneIncidence(Incidence * orgInc )
2622 } 2626 }
2627 setActiveWindow();
2623} 2628}
@@ -2679,2 +2684,4 @@ void CalendarView::newEvent(QDateTime fromHint, QDateTime toHint, bool allDay)
2679 } 2684 }
2685 mEventEditor->exec();
2686 setActiveWindow();
2680} 2687}
@@ -2715,2 +2722,4 @@ void CalendarView::newTodoDateTime( QDateTime dt, bool allday )
2715 } 2722 }
2723 mTodoEditor->exec();
2724 setActiveWindow();
2716} 2725}
@@ -2732,3 +2741,5 @@ void CalendarView::newSubTodo(Todo *parentEvent)
2732 showTodoEditor(); 2741 showTodoEditor();
2733 mTodoEditor->newTodo(QDateTime(),parentEvent,true); 2742 mTodoEditor->newTodo(QDateTime(),parentEvent,true);
2743 mTodoEditor->exec();
2744 setActiveWindow();
2734} 2745}
@@ -2755,2 +2766,5 @@ void CalendarView::editEvent( Event *event )
2755 mEventEditor->editEvent( event , mFlagEditDescription); 2766 mEventEditor->editEvent( event , mFlagEditDescription);
2767 mEventEditor->exec();
2768 setActiveWindow();
2769
2756} 2770}
@@ -2773,2 +2787,4 @@ void CalendarView::editTodo( Todo *todo )
2773 mTodoEditor->editTodo( todo ,mFlagEditDescription); 2787 mTodoEditor->editTodo( todo ,mFlagEditDescription);
2788 mTodoEditor->exec();
2789 setActiveWindow();
2774 2790
@@ -2786,2 +2802,4 @@ KOEventViewerDialog* CalendarView::getEventViewerDialog()
2786 viewManager(), SLOT( showAgendaView( bool ) ) ); 2802 viewManager(), SLOT( showAgendaView( bool ) ) );
2803 connect( mEventViewerDialog, SIGNAL(signalViewerClosed()),
2804 this, SLOT( slotViewerClosed() ) );
2787 connect( mEventViewerDialog, SIGNAL( todoCompleted(Todo *) ), 2805 connect( mEventViewerDialog, SIGNAL( todoCompleted(Todo *) ),
@@ -3740,2 +3758,3 @@ void CalendarView::showIncidence()
3740{ 3758{
3759 mViewerCallerIsSearchDialog = false;
3741 Incidence *incidence = currentSelection(); 3760 Incidence *incidence = currentSelection();
@@ -3775,2 +3794,9 @@ void CalendarView::showIncidence(Incidence *incidence)
3775{ 3794{
3795 mViewerCallerIsSearchDialog = false;
3796 //qDebug("%x %x ",sender (), mDialogManager->getSearchDialog() );
3797 if ( sender() && mDialogManager->getSearchDialog() ) {
3798 if ( sender () == mDialogManager->getSearchDialog()->listview() ) {
3799 mViewerCallerIsSearchDialog = true;
3800 }
3801 }
3776 if ( incidence ) { 3802 if ( incidence ) {
@@ -3924 +3950,25 @@ void CalendarView::undo_delete()
3924} 3950}
3951
3952void CalendarView::slotViewerClosed()
3953{
3954 QTimer::singleShot( 50, this, SLOT ( resetFocus() ) );
3955}
3956
3957void CalendarView::resetFocus()
3958{
3959 if ( mViewerCallerIsSearchDialog ) {
3960 if ( mDialogManager->getSearchDialog()->isVisible() ){
3961 mDialogManager->getSearchDialog()->raise();
3962 mDialogManager->getSearchDialog()->setActiveWindow();
3963 mDialogManager->getSearchDialog()->listview()->resetFocus();
3964 } else
3965 mViewerCallerIsSearchDialog = false;
3966 }
3967 if ( !mViewerCallerIsSearchDialog ) {
3968 //mViewManager->currentView()->setFocus();
3969 //qDebug("sssssssssssssssset focus ");
3970 setActiveWindow();
3971 //setFocus();
3972 }
3973 mViewerCallerIsSearchDialog = false;
3974}
diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h
index e626ea3..664d700 100644
--- a/korganizer/calendarview.h
+++ b/korganizer/calendarview.h
@@ -458,2 +458,4 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser
458 protected slots: 458 protected slots:
459 void resetFocus();
460 void slotViewerClosed();
459 void timerAlarm(); 461 void timerAlarm();
@@ -497,2 +499,3 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser
497 private: 499 private:
500 bool mViewerCallerIsSearchDialog;
498 bool mBlockShowDates; 501 bool mBlockShowDates;
diff --git a/korganizer/koeventviewer.h b/korganizer/koeventviewer.h
index d8142ca..2d4a08e 100644
--- a/korganizer/koeventviewer.h
+++ b/korganizer/koeventviewer.h
@@ -72,3 +72,3 @@ class KOEventViewer : public QTextBrowser {
72 signals: 72 signals:
73 void launchaddressbook(QString uid); 73 void launchaddressbook(QString uid);
74}; 74};
diff --git a/korganizer/koeventviewerdialog.cpp b/korganizer/koeventviewerdialog.cpp
index 23e62d3..8bada3b 100644
--- a/korganizer/koeventviewerdialog.cpp
+++ b/korganizer/koeventviewerdialog.cpp
@@ -22,2 +22,3 @@
22#include <libkcal/event.h> 22#include <libkcal/event.h>
23#include <qtimer.h>
23#include <qpushbutton.h> 24#include <qpushbutton.h>
@@ -41,3 +42,3 @@ KOEventViewerDialog::KOEventViewerDialog(QWidget *parent,const char *name)
41{ 42{
42 43 sendSignalViewerClosed = true;
43 mEventViewer = new KOEventViewer(this); 44 mEventViewer = new KOEventViewer(this);
@@ -191,2 +192,3 @@ void KOEventViewerDialog::editIncidence()
191{ 192{
193 sendSignalViewerClosed = false;
192 if ( mSyncMode ) { 194 if ( mSyncMode ) {
@@ -205,3 +207,3 @@ void KOEventViewerDialog::showIncidence()
205{ 207{
206 208 sendSignalViewerClosed = false;
207 if ( mSyncMode ) { 209 if ( mSyncMode ) {
@@ -266 +268,16 @@ void KOEventViewerDialog::keyPressEvent ( QKeyEvent * e )
266} 268}
269void KOEventViewerDialog::hideEvent ( QHideEvent * e )
270{
271 KDialogBase::hideEvent ( e );
272 QTimer::singleShot( 1, this, SLOT (slotViewerClosed() ) );
273}
274
275void KOEventViewerDialog::slotViewerClosed()
276{
277 if ( sendSignalViewerClosed ) {
278 //qDebug("KOEventViewerDialog::hideEvent ");
279 emit signalViewerClosed();
280 }
281 sendSignalViewerClosed = true;
282}
283
diff --git a/korganizer/koeventviewerdialog.h b/korganizer/koeventviewerdialog.h
index b6b4103..36431ad 100644
--- a/korganizer/koeventviewerdialog.h
+++ b/korganizer/koeventviewerdialog.h
@@ -57,8 +57,12 @@ class KOEventViewerDialog : public KDialogBase {
57 void showAgendaView( bool ); 57 void showAgendaView( bool );
58 void todoCompleted(Todo*); 58 void todoCompleted(Todo*);
59 void signalViewerClosed();
59private slots: 60private slots:
61 void slotViewerClosed();
60 void editIncidence(); 62 void editIncidence();
61 void showIncidence(); 63 void showIncidence();
62 64 protected:
65 void hideEvent ( QHideEvent * e );
63 private: 66 private:
67 bool sendSignalViewerClosed;
64 bool mSyncMode; 68 bool mSyncMode;
diff --git a/korganizer/kolistview.cpp b/korganizer/kolistview.cpp
index 4a6e17d..6acee75 100644
--- a/korganizer/kolistview.cpp
+++ b/korganizer/kolistview.cpp
@@ -786,3 +786,6 @@ void KOListView::hideDates()
786} 786}
787 787void KOListView::resetFocus()
788{
789 mListView->setFocus();
790}
788void KOListView::updateView() 791void KOListView::updateView()
@@ -1077,3 +1080,3 @@ void KOListViewListView::keyPressEvent ( QKeyEvent *e)
1077 if ( ci ){ 1080 if ( ci ){
1078 emit showIncidence( ci->data()); 1081 //emit showIncidence( ci->data());
1079 cn = cn->nextSibling(); 1082 cn = cn->nextSibling();
@@ -1082,2 +1085,3 @@ void KOListViewListView::keyPressEvent ( QKeyEvent *e)
1082 ensureItemVisible ( cn ); 1085 ensureItemVisible ( cn );
1086 emit showIncidence( ci->data());
1083 } 1087 }
diff --git a/korganizer/kolistview.h b/korganizer/kolistview.h
index bd5bd12..c86449d 100644
--- a/korganizer/kolistview.h
+++ b/korganizer/kolistview.h
@@ -256,2 +256,3 @@ class KOListView : public KOEventView
256 QString getWhatsThisText(QPoint p); 256 QString getWhatsThisText(QPoint p);
257 void resetFocus();
257 signals: 258 signals:
diff --git a/korganizer/kotodoview.cpp b/korganizer/kotodoview.cpp
index 3483e95..5e8ea27 100644
--- a/korganizer/kotodoview.cpp
+++ b/korganizer/kotodoview.cpp
@@ -607,2 +607,7 @@ void KOTodoView::updateView()
607 QFont fo = KOPrefs::instance()->mTodoViewFont; 607 QFont fo = KOPrefs::instance()->mTodoViewFont;
608 Incidence* oldInc = 0;
609 mActiveItem = (KOTodoViewItem*)mTodoListView->currentItem();
610 if (mActiveItem)
611 oldInc = mActiveItem->todo();
612
608 mTodoListView->clear(); 613 mTodoListView->clear();
@@ -688,2 +693,19 @@ void KOTodoView::updateView()
688 mTodoListView->setFocus(); 693 mTodoListView->setFocus();
694 if ( mTodoListView->firstChild () ) {
695 if ( oldInc ) {
696 KOTodoViewItem* item = (KOTodoViewItem*)mTodoListView->firstChild ();
697 while ( item ) {
698 if ( item->todo() == oldInc ) {
699 mTodoListView->setCurrentItem( item );
700 mTodoListView->ensureItemVisible( item );
701 break;
702 }
703 item = (KOTodoViewItem*)item->itemBelow();
704 }
705 if ( ! item )
706 mTodoListView->setCurrentItem( mTodoListView->firstChild () );
707 } else {
708 mTodoListView->setCurrentItem( mTodoListView->firstChild () );
709 }
710 }
689 processSelectionChange(); 711 processSelectionChange();
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp
index 4f2cccf..2de7f28 100644
--- a/korganizer/mainwindow.cpp
+++ b/korganizer/mainwindow.cpp
@@ -289,3 +289,2 @@ MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) :
289 //toggleBeamReceive(); 289 //toggleBeamReceive();
290 setFocusPolicy ( WheelFocus );
291} 290}