mirror of
https://github.com/overte-org/overte.git
synced 2025-08-08 20:56:52 +02:00
Added setGeometry script command.
This commit is contained in:
parent
70c0addc3f
commit
51272d8fec
4 changed files with 32 additions and 0 deletions
|
@ -3636,6 +3636,12 @@ void Application::onPresent(quint32 frameCount) {
|
||||||
if (_renderEventHandler && !isAboutToQuit() && _pendingRenderEvent.compare_exchange_strong(expected, true)) {
|
if (_renderEventHandler && !isAboutToQuit() && _pendingRenderEvent.compare_exchange_strong(expected, true)) {
|
||||||
postEvent(_renderEventHandler, new QEvent((QEvent::Type)ApplicationEvent::Render));
|
postEvent(_renderEventHandler, new QEvent((QEvent::Type)ApplicationEvent::Render));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// This is done here so it won't be during a resize/move event
|
||||||
|
if (_setGeometryRequested) {
|
||||||
|
_setGeometryRequested = false;
|
||||||
|
_window->setGeometry(requestedGeometry);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline bool isKeyEvent(QEvent::Type type) {
|
static inline bool isKeyEvent(QEvent::Type type) {
|
||||||
|
@ -8578,6 +8584,12 @@ void Application::copyToClipboard(const QString& text) {
|
||||||
QApplication::clipboard()->setText(text);
|
QApplication::clipboard()->setText(text);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Application::setGeometry(int x, int y, int width, int height) {
|
||||||
|
// Note that calling setGeometry inside resizeEvent() or moveEvent() can cause infinite recursion
|
||||||
|
requestedGeometry = QRect(x, y, width, height);
|
||||||
|
_setGeometryRequested = true;
|
||||||
|
}
|
||||||
|
|
||||||
#if defined(Q_OS_ANDROID)
|
#if defined(Q_OS_ANDROID)
|
||||||
void Application::beforeEnterBackground() {
|
void Application::beforeEnterBackground() {
|
||||||
auto nodeList = DependencyManager::get<NodeList>();
|
auto nodeList = DependencyManager::get<NodeList>();
|
||||||
|
|
|
@ -315,6 +315,8 @@ public:
|
||||||
|
|
||||||
Q_INVOKABLE void copyToClipboard(const QString& text);
|
Q_INVOKABLE void copyToClipboard(const QString& text);
|
||||||
|
|
||||||
|
void setGeometry(int x, int y, int width, int height);
|
||||||
|
|
||||||
int getOtherAvatarsReplicaCount() { return DependencyManager::get<AvatarHashMap>()->getReplicaCount(); }
|
int getOtherAvatarsReplicaCount() { return DependencyManager::get<AvatarHashMap>()->getReplicaCount(); }
|
||||||
void setOtherAvatarsReplicaCount(int count) { DependencyManager::get<AvatarHashMap>()->setReplicaCount(count); }
|
void setOtherAvatarsReplicaCount(int count) { DependencyManager::get<AvatarHashMap>()->setReplicaCount(count); }
|
||||||
|
|
||||||
|
@ -784,5 +786,9 @@ private:
|
||||||
|
|
||||||
bool _showTrackedObjects { false };
|
bool _showTrackedObjects { false };
|
||||||
bool _prevShowTrackedObjects { false };
|
bool _prevShowTrackedObjects { false };
|
||||||
|
|
||||||
|
// Data for the setGeometry script command
|
||||||
|
bool _setGeometryRequested{ false };
|
||||||
|
QRect requestedGeometry;
|
||||||
};
|
};
|
||||||
#endif // hifi_Application_h
|
#endif // hifi_Application_h
|
||||||
|
|
|
@ -209,3 +209,7 @@ QString TestScriptingInterface::getOperatingSystemType() {
|
||||||
return "UNKNOWN";
|
return "UNKNOWN";
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TestScriptingInterface::setGeometry(int x, int y, int width, int height) {
|
||||||
|
qApp->setGeometry(x, y, width, height);
|
||||||
|
}
|
|
@ -170,6 +170,16 @@ public slots:
|
||||||
*/
|
*/
|
||||||
QString getOperatingSystemType();
|
QString getOperatingSystemType();
|
||||||
|
|
||||||
|
/**jsdoc
|
||||||
|
* Sets the position and size of the window on desktop. All units are pixels
|
||||||
|
* @function Test.setGeometry
|
||||||
|
* @param {int} x - Distance of window from left edge
|
||||||
|
* @param {int} y - Distance of window from top edge
|
||||||
|
* @param {int} width - Width of window
|
||||||
|
* @param {int} height - Height of window
|
||||||
|
*/
|
||||||
|
void setGeometry(int x, int y, int width, int height);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
bool waitForCondition(qint64 maxWaitMs, std::function<bool()> condition);
|
bool waitForCondition(qint64 maxWaitMs, std::function<bool()> condition);
|
||||||
QString _testResultsLocation;
|
QString _testResultsLocation;
|
||||||
|
|
Loading…
Reference in a new issue