Add Platform::screenSizeFor(window), removes more asQWidget() usage

This commit is contained in:
Sergio Martins
2022-04-21 22:10:59 +01:00
parent 3f97845c9c
commit 8015e49bee
8 changed files with 32 additions and 23 deletions

View File

@@ -17,6 +17,7 @@
#include "views/ViewWrapper_qtwidgets.h"
#include "FrameworkWidgetFactory_qtwidgets.h"
#include <QScreen>
#include <QStyleFactory>
#include <QApplication>
@@ -94,6 +95,17 @@ int Platform_qtwidgets::screenNumberFor(View *view) const
return -1;
}
QSize Platform_qtwidgets::screenSizeFor(View *view) const
{
if (auto widget = qobject_cast<QWidget *>(view->asQObject())) {
if (QScreen *screen = widget->screen()) {
return screen->size();
}
}
return {};
}
#ifdef DOCKS_DEVELOPER_MODE
void Platform_qtwidgets::tests_initTests() const