aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorSimjees Abraham <simjees.abraham@nokia.com>2012-06-01 11:49:21 +0200
committerQt by Nokia <qt-info@nokia.com>2012-06-05 15:34:21 +0200
commit16e2863793b69c8bb38dba52787372a58aa1e6a2 (patch)
treef33c6f7349043fa3633aa7d391d41c94e27c9de2 /src/plugins
parent9d9f1a936adb021cc732aed169538cbc3468ee9e (diff)
Changes for "App on Top"
Changes made such that the App is on Top at startup if the option was set in creator. Task-number: QTCREATORBUG-6295 Change-Id: I218a619805d9091049ba51ac6da2f64049d5185d Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/qmltooling/qmldbg_qtquick2/qquickviewinspector.cpp19
-rw-r--r--src/plugins/qmltooling/qmldbg_qtquick2/qquickviewinspector.h4
-rw-r--r--src/plugins/qmltooling/shared/abstractviewinspector.cpp11
-rw-r--r--src/plugins/qmltooling/shared/abstractviewinspector.h3
4 files changed, 24 insertions, 13 deletions
diff --git a/src/plugins/qmltooling/qmldbg_qtquick2/qquickviewinspector.cpp b/src/plugins/qmltooling/qmldbg_qtquick2/qquickviewinspector.cpp
index a42663eda0..37a8997927 100644
--- a/src/plugins/qmltooling/qmldbg_qtquick2/qquickviewinspector.cpp
+++ b/src/plugins/qmltooling/qmldbg_qtquick2/qquickviewinspector.cpp
@@ -339,6 +339,14 @@ void QQuickViewInspector::reloadQmlFile(const QHash<QString, QByteArray> &change
view()->setSource(view()->source());
}
+void QQuickViewInspector::setShowAppOnTop(bool appOnTop)
+{
+ m_appOnTop = appOnTop;
+ // Hack for QTCREATORBUG-6295.
+ // TODO: The root cause to be identified and fixed later.
+ QTimer::singleShot(100, this, SLOT(applyAppOnTop()));
+}
+
void QQuickViewInspector::onViewStatus(QQuickView::Status status)
{
bool success = false;
@@ -362,5 +370,16 @@ void QQuickViewInspector::onViewStatus(QQuickView::Status status)
}
}
+void QQuickViewInspector::applyAppOnTop()
+{
+ Qt::WindowFlags flags = windowFlags();
+ if (m_appOnTop)
+ flags |= Qt::WindowStaysOnTopHint;
+ else
+ flags &= ~Qt::WindowStaysOnTopHint;
+
+ setWindowFlags(flags);
+}
+
} // namespace QtQuick2
} // namespace QmlJSDebugger
diff --git a/src/plugins/qmltooling/qmldbg_qtquick2/qquickviewinspector.h b/src/plugins/qmltooling/qmldbg_qtquick2/qquickviewinspector.h
index d687d6ba0e..5d7880928d 100644
--- a/src/plugins/qmltooling/qmldbg_qtquick2/qquickviewinspector.h
+++ b/src/plugins/qmltooling/qmldbg_qtquick2/qquickviewinspector.h
@@ -91,9 +91,12 @@ protected:
bool mouseMoveEvent(QMouseEvent *);
+ void setShowAppOnTop(bool appOnTop);
+
private slots:
void removeFromSelectedItems(QObject *);
void onViewStatus(QQuickView::Status status);
+ void applyAppOnTop();
private:
bool syncSelectedItems(const QList<QQuickItem*> &items);
@@ -106,6 +109,7 @@ private:
QList<QPointer<QQuickItem> > m_selectedItems;
QHash<QQuickItem*, SelectionHighlight*> m_highlightItems;
bool m_sendQmlReloadedMessage;
+ bool m_appOnTop;
};
} // namespace QtQuick2
diff --git a/src/plugins/qmltooling/shared/abstractviewinspector.cpp b/src/plugins/qmltooling/shared/abstractviewinspector.cpp
index d4c41b5084..4c53243745 100644
--- a/src/plugins/qmltooling/shared/abstractviewinspector.cpp
+++ b/src/plugins/qmltooling/shared/abstractviewinspector.cpp
@@ -139,17 +139,6 @@ void AbstractViewInspector::setAnimationSpeed(qreal slowDownFactor)
QUnifiedTimer::instance()->setSlowdownFactor(slowDownFactor);
}
-void AbstractViewInspector::setShowAppOnTop(bool appOnTop)
-{
- Qt::WindowFlags flags = windowFlags();
- if (appOnTop)
- flags |= Qt::WindowStaysOnTopHint;
- else
- flags &= ~Qt::WindowStaysOnTopHint;
-
- setWindowFlags(flags);
-}
-
bool AbstractViewInspector::eventFilter(QObject *obj, QEvent *event)
{
if (!enabled())
diff --git a/src/plugins/qmltooling/shared/abstractviewinspector.h b/src/plugins/qmltooling/shared/abstractviewinspector.h
index 8eeb640e4e..b531ea193e 100644
--- a/src/plugins/qmltooling/shared/abstractviewinspector.h
+++ b/src/plugins/qmltooling/shared/abstractviewinspector.h
@@ -109,6 +109,7 @@ protected:
virtual bool mouseDoubleClickEvent(QMouseEvent *event);
virtual bool wheelEvent(QWheelEvent *event);
virtual bool touchEvent(QTouchEvent *event);
+ virtual void setShowAppOnTop(bool) = 0;
private slots:
void onQmlObjectDestroyed(QObject *object);
@@ -116,8 +117,6 @@ private slots:
private:
void setEnabled(bool value);
- void setShowAppOnTop(bool appOnTop);
-
void setAnimationSpeed(qreal factor);
bool m_enabled;