[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdebase/workspace/krunner
From: Aaron J. Seigo <aseigo () kde ! org>
Date: 2010-09-06 18:56:23
Message-ID: 20100906185623.C0B62AC884 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1172223 by aseigo:
fix resize for floating mode
BUG:242516
M +22 -17 krunnerdialog.cpp
--- trunk/KDE/kdebase/workspace/krunner/krunnerdialog.cpp #1172222:1172223
@@ -398,15 +398,16 @@
void KRunnerDialog::mousePressEvent(QMouseEvent *e)
{
if (e->button() == Qt::LeftButton) {
+ m_lastPressPos = -1;
+
+ if (m_floating) {
m_vertResize = e->y() > height() - qMax(5, m_bottomBorderHeight);
- m_rightResize = e->x() > width() - qMax(5, m_rightBorderWidth);
- const bool leftResize = e->x() < qMax(5, m_leftBorderWidth);
- if (!m_floating && (leftResize || m_rightResize || m_vertResize)) {
- // let's do a resize! :)
- m_lastPressPos = m_vertResize ? e->globalY() : e->globalX();
+ kDebug() << m_vertResize << e->y() << height() << qMax(5, m_bottomBorderHeight);
+ if (m_vertResize) {
+ m_lastPressPos = e->globalY();
+ m_resizing = true;
grabMouse();
- m_resizing = true;
- } else if (m_floating) {
+ } else {
#ifdef Q_WS_X11
// We have to release the mouse grab before initiating the move operation.
// Ideally we would call releaseMouse() to do this, but when we only have an
@@ -416,12 +417,20 @@
// Ask the window manager to start an interactive move operation.
NETRootInfo rootInfo(x11Info().display(), NET::WMMoveResize);
rootInfo.moveResizeRequest(winId(), e->globalX(), e->globalY(), NET::Move);
-
#endif
+ }
} else {
+ m_vertResize = e->y() > height() - qMax(5, m_bottomBorderHeight);
+ m_rightResize = e->x() > width() - qMax(5, m_rightBorderWidth);
+ const bool leftResize = e->x() < qMax(5, m_leftBorderWidth);
+ m_lastPressPos = m_vertResize ? e->globalY() : e->globalX();
+
+ if (leftResize || m_rightResize || m_vertResize) {
+ // let's do a resize! :)
grabMouse();
- m_lastPressPos = e->globalX();
+ m_resizing = true;
}
+ }
e->accept();
}
@@ -429,7 +438,7 @@
void KRunnerDialog::mouseReleaseEvent(QMouseEvent *)
{
- if (!m_floating) {
+ if (m_lastPressPos != -1) {
releaseMouse();
unsetCursor();
m_lastPressPos = -1;
@@ -469,11 +478,9 @@
void KRunnerDialog::mouseMoveEvent(QMouseEvent *e)
{
//kDebug() << e->x() << m_leftBorderWidth << width() << m_rightBorderWidth;
- if (m_floating) {
- return;
- }
-
- if (m_lastPressPos != -1) {
+ if (m_lastPressPos == -1) {
+ checkCursor(e->pos());
+ } else {
if (m_resizing) {
if (m_vertResize) {
const int deltaY = e->globalY() - m_lastPressPos;
@@ -511,8 +518,6 @@
move(newX, y());
checkBorders(r);
}
- } else {
- checkCursor(e->pos());
}
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic