mirror of
https://github.com/overte-org/overte.git
synced 2025-08-10 04:12:46 +02:00
better mirrored monitor support
This commit is contained in:
parent
59eeeb9006
commit
c580617921
1 changed files with 15 additions and 8 deletions
|
@ -73,7 +73,7 @@ QString HMDToolsDialog::getDebugDetails() const {
|
||||||
QString results;
|
QString results;
|
||||||
|
|
||||||
int hmdScreenNumber = OculusManager::getHMDScreen();
|
int hmdScreenNumber = OculusManager::getHMDScreen();
|
||||||
if (hmdScreenNumber > 0) {
|
if (hmdScreenNumber >= 0) {
|
||||||
results += "HMD Screen: " + QGuiApplication::screens()[hmdScreenNumber]->name() + "\n";
|
results += "HMD Screen: " + QGuiApplication::screens()[hmdScreenNumber]->name() + "\n";
|
||||||
} else {
|
} else {
|
||||||
results += "HMD Screen Name: Unknown\n";
|
results += "HMD Screen Name: Unknown\n";
|
||||||
|
@ -91,7 +91,10 @@ QString HMDToolsDialog::getDebugDetails() const {
|
||||||
}
|
}
|
||||||
|
|
||||||
void HMDToolsDialog::enterModeClicked(bool checked) {
|
void HMDToolsDialog::enterModeClicked(bool checked) {
|
||||||
|
_debugDetails->setText(getDebugDetails());
|
||||||
|
|
||||||
int hmdScreen = OculusManager::getHMDScreen();
|
int hmdScreen = OculusManager::getHMDScreen();
|
||||||
|
qDebug() << "enterModeClicked().... hmdScreen:" << hmdScreen;
|
||||||
|
|
||||||
if (hmdScreen >= 0) {
|
if (hmdScreen >= 0) {
|
||||||
QWindow* mainWindow = Application::getInstance()->getWindow()->windowHandle();
|
QWindow* mainWindow = Application::getInstance()->getWindow()->windowHandle();
|
||||||
|
@ -106,10 +109,14 @@ void HMDToolsDialog::enterModeClicked(bool checked) {
|
||||||
mainWindow->setGeometry(rect);
|
mainWindow->setGeometry(rect);
|
||||||
|
|
||||||
_wasMoved = true;
|
_wasMoved = true;
|
||||||
} else {
|
|
||||||
// if we're on a single screen setup, then hide our tools window when entering HMD mode
|
|
||||||
hide();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// if we're on a single screen setup, then hide our tools window when entering HMD mode
|
||||||
|
if (QApplication::desktop()->screenCount() == 1) {
|
||||||
|
close();
|
||||||
|
}
|
||||||
|
|
||||||
Application::getInstance()->setFullscreen(true);
|
Application::getInstance()->setFullscreen(true);
|
||||||
Application::getInstance()->setEnableVRMode(true);
|
Application::getInstance()->setEnableVRMode(true);
|
||||||
|
|
||||||
|
@ -126,6 +133,8 @@ void HMDToolsDialog::activateWindowAfterEnterMode() {
|
||||||
|
|
||||||
|
|
||||||
void HMDToolsDialog::leaveModeClicked(bool checked) {
|
void HMDToolsDialog::leaveModeClicked(bool checked) {
|
||||||
|
_debugDetails->setText(getDebugDetails());
|
||||||
|
|
||||||
Application::getInstance()->setFullscreen(false);
|
Application::getInstance()->setFullscreen(false);
|
||||||
Application::getInstance()->setEnableVRMode(false);
|
Application::getInstance()->setEnableVRMode(false);
|
||||||
Application::getInstance()->getWindow()->activateWindow();
|
Application::getInstance()->getWindow()->activateWindow();
|
||||||
|
@ -152,15 +161,13 @@ void HMDToolsDialog::moveWindowAfterLeaveMode() {
|
||||||
|
|
||||||
void HMDToolsDialog::reject() {
|
void HMDToolsDialog::reject() {
|
||||||
// Just regularly close upon ESC
|
// Just regularly close upon ESC
|
||||||
this->QDialog::close();
|
close();
|
||||||
}
|
}
|
||||||
|
|
||||||
void HMDToolsDialog::closeEvent(QCloseEvent* event) {
|
void HMDToolsDialog::closeEvent(QCloseEvent* event) {
|
||||||
|
// TODO: consider if we want to prevent closing of this window with event->ignore();
|
||||||
this->QDialog::closeEvent(event);
|
this->QDialog::closeEvent(event);
|
||||||
emit closed();
|
emit closed();
|
||||||
|
|
||||||
// TODO: consider if we want to prevent closing of this window
|
|
||||||
//event->ignore();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue