summaryrefslogtreecommitdiffabout
path: root/korganizer/koagenda.cpp
Unidiff
Diffstat (limited to 'korganizer/koagenda.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koagenda.cpp35
1 files changed, 20 insertions, 15 deletions
diff --git a/korganizer/koagenda.cpp b/korganizer/koagenda.cpp
index 0aef929..ffa2678 100644
--- a/korganizer/koagenda.cpp
+++ b/korganizer/koagenda.cpp
@@ -438,17 +438,7 @@ bool KOAgenda::eventFilter_mouse(QObject *object, QMouseEvent *me)
438 mActionItem = 0; 438 mActionItem = 0;
439 if (me->button() == RightButton ) { 439 if (me->button() == RightButton ) {
440 blockNewEvent = true; 440 blockNewEvent = true;
441 //qDebug("right "); 441 block = false;
442 int x,y;
443 viewportToContents(viewportPos.x(),viewportPos.y(),x,y);
444 int gx,gy;
445 contentsToGrid(x,y,gx,gy);
446 mStartCellX = gx;
447 mStartCellY = gy;
448 mCurrentCellX = gx;
449 mCurrentCellY = gy;
450 mNewItemPopup->popup( viewport()->mapToGlobal( me->pos() ) );
451
452 } else { 442 } else {
453 blockNewEvent = false; 443 blockNewEvent = false;
454 setCursor(arrowCursor); 444 setCursor(arrowCursor);
@@ -458,8 +448,24 @@ bool KOAgenda::eventFilter_mouse(QObject *object, QMouseEvent *me)
458 break; 448 break;
459 449
460 case QEvent::MouseButtonRelease: 450 case QEvent::MouseButtonRelease:
461 //qDebug("QEvent::MouseButtonRelease: "); 451 //qDebug("QEvent::MouseButtonRelease: %d",blockNewEvent );
462 if (me->button() == RightButton && block ) { 452 if (me->button() == RightButton && blockNewEvent && !block) {
453 int x,y;
454 viewportToContents(viewportPos.x(),viewportPos.y(),x,y);
455 int gx,gy;
456 contentsToGrid(x,y,gx,gy);
457 if ( mCurrentCellY < mStartCellY +1 ) {
458 //qDebug("mCurrentCellY %d mStartCellY %d ", mCurrentCellY,mStartCellY);
459 mCurrentCellX = gx;
460 mCurrentCellY = gy;
461 mStartCellX = gx;
462 mStartCellY = gy;
463 mNewItemPopup->popup( viewport()->mapToGlobal( me->pos() ) );
464 break;
465 } else {
466 blockNewEvent = false;
467 }
468 } else if (me->button() == RightButton && block ) {
463 if (object != viewport()) { 469 if (object != viewport()) {
464 mClickedItem = (KOAgendaItem *)object; 470 mClickedItem = (KOAgendaItem *)object;
465 if (mActionItem ) { 471 if (mActionItem ) {
@@ -489,9 +495,8 @@ bool KOAgenda::eventFilter_mouse(QObject *object, QMouseEvent *me)
489 return true; 495 return true;
490 } 496 }
491 endItemAction(); 497 endItemAction();
492 } else if ( mActionType == SELECT ) { 498 } else if ( mActionType == SELECT ) {
493 if (me->button() == RightButton ) { 499 if (me->button() == RightButton ) {
494
495 } else { 500 } else {
496 endSelectAction( !blockNewEvent ); 501 endSelectAction( !blockNewEvent );
497 } 502 }