Diffstat (limited to 'noncore/comm/keypebble/krfbcanvas.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/comm/keypebble/krfbcanvas.cpp | 40 |
1 files changed, 37 insertions, 3 deletions
diff --git a/noncore/comm/keypebble/krfbcanvas.cpp b/noncore/comm/keypebble/krfbcanvas.cpp index 918ce8b..049bbd4 100644 --- a/noncore/comm/keypebble/krfbcanvas.cpp +++ b/noncore/comm/keypebble/krfbcanvas.cpp | |||
@@ -11,4 +11,5 @@ | |||
11 | #include <qaction.h> | 11 | #include <qaction.h> |
12 | #include <qpixmap.h> | 12 | #include <qpixmap.h> |
13 | #include <qpoint.h> | ||
13 | #include <qapplication.h> | 14 | #include <qapplication.h> |
14 | #include <qmainwindow.h> | 15 | #include <qmainwindow.h> |
@@ -28,4 +29,7 @@ KRFBCanvas::KRFBCanvas( QWidget *parent, const char *name ) | |||
28 | viewport()->setFocusPolicy( QWidget::StrongFocus ); | 29 | viewport()->setFocusPolicy( QWidget::StrongFocus ); |
29 | viewport()->setFocus(); | 30 | viewport()->setFocus(); |
31 | |||
32 | nextRightClick=0; | ||
33 | nextDoubleClick=0; | ||
30 | } | 34 | } |
31 | 35 | ||
@@ -125,12 +129,33 @@ void KRFBCanvas::viewportUpdate( int x, int y, int w, int h ) | |||
125 | void KRFBCanvas::contentsMousePressEvent( QMouseEvent *e ) | 129 | void KRFBCanvas::contentsMousePressEvent( QMouseEvent *e ) |
126 | { | 130 | { |
127 | if ( loggedIn_ ) | 131 | |
132 | if (nextDoubleClick) { | ||
133 | connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonPress, e->pos(),LeftButton,LeftButton)); | ||
134 | connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonRelease, e->pos(),LeftButton,0)); | ||
135 | connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonRelease, e->pos(),LeftButton,0)); | ||
136 | connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonPress, e->pos(),NoButton,NoButton)); | ||
137 | connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonRelease, e->pos(),NoButton,0)); | ||
138 | } if (nextRightClick) { | ||
139 | connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonPress, e->pos(),RightButton,RightButton)); | ||
140 | connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonRelease, e->pos(),RightButton,0)); | ||
141 | connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonPress, e->pos(),NoButton,NoButton)); | ||
142 | connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonRelease, e->pos(),NoButton,0)); | ||
143 | } else if ( loggedIn_ ) | ||
128 | connection_->buffer()->mouseEvent( e ); | 144 | connection_->buffer()->mouseEvent( e ); |
145 | |||
146 | qDebug("Press"); | ||
147 | qDebug(QString::number(e->type()==QEvent::MouseButtonPress)); | ||
129 | } | 148 | } |
130 | 149 | ||
131 | void KRFBCanvas::contentsMouseReleaseEvent( QMouseEvent *e ) | 150 | void KRFBCanvas::contentsMouseReleaseEvent( QMouseEvent *e ) |
132 | { | 151 | { |
133 | if ( loggedIn_ ) | 152 | if ( loggedIn_ && !nextRightClick && !nextDoubleClick) { |
134 | connection_->buffer()->mouseEvent( e ); | 153 | connection_->buffer()->mouseEvent( e ); |
154 | } | ||
155 | |||
156 | nextRightClick=0; | ||
157 | nextDoubleClick=0; | ||
158 | qDebug("Release"); | ||
159 | qDebug(QString::number(e->button())); | ||
135 | } | 160 | } |
136 | 161 | ||
@@ -168,5 +193,4 @@ void KRFBCanvas::sendCtlAltDel( void) | |||
168 | { | 193 | { |
169 | 194 | ||
170 | qDebug("Here"); | ||
171 | if ( loggedIn_ ) { | 195 | if ( loggedIn_ ) { |
172 | connection_->buffer()->keyPressEvent( &QKeyEvent(QEvent::KeyPress,Qt::Key_Control, 0,0)); | 196 | connection_->buffer()->keyPressEvent( &QKeyEvent(QEvent::KeyPress,Qt::Key_Control, 0,0)); |
@@ -178,2 +202,12 @@ void KRFBCanvas::sendCtlAltDel( void) | |||
178 | } | 202 | } |
179 | } | 203 | } |
204 | |||
205 | void KRFBCanvas::markDoubleClick( void) | ||
206 | { | ||
207 | nextRightClick=1; | ||
208 | } | ||
209 | |||
210 | void KRFBCanvas::markRightClick( void) | ||
211 | { | ||
212 | nextRightClick=1; | ||
213 | } | ||