Adapte multi monitors

This commit is contained in:
halx99 2020-08-03 10:33:04 +08:00
parent f396ba9983
commit 6fd4d6e4ab
1 changed files with 4 additions and 8 deletions

View File

@ -649,13 +649,11 @@ void GLViewImpl::setFullscreen()
}
void GLViewImpl::setFullscreen(int w, int h, int refreshRate) {
if (this->isFullscreen())
return;
_monitor = glfwGetPrimaryMonitor();
if (nullptr == _monitor) {
auto monitor = glfwGetPrimaryMonitor();
if (nullptr == monitor || monitor == _monitor) {
return;
}
this->setFullscreen(_monitor, w, h, refreshRate);
this->setFullscreen(monitor, w, h, refreshRate);
}
void GLViewImpl::setFullscreen(int monitorIndex)
@ -664,15 +662,13 @@ void GLViewImpl::setFullscreen(int monitorIndex)
}
void GLViewImpl::setFullscreen(int monitorIndex, int w, int h, int refreshRate) {
if (this->isFullscreen())
return;
int count = 0;
GLFWmonitor** monitors = glfwGetMonitors(&count);
if (monitorIndex < 0 || monitorIndex >= count) {
return;
}
GLFWmonitor* monitor = monitors[monitorIndex];
if (nullptr == monitor) {
if (nullptr == monitor || _monitor == monitor) {
return;
}
this->setFullscreen(monitor, w, h, refreshRate);