16
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-07-23 00:29:19 +02:00

display python windows only with assigned monitor or explicit "window"

This commit is contained in:
milek7
2019-09-20 14:54:48 +02:00
parent 5d193b40ff
commit ccb2179d5e

View File

@@ -21,8 +21,13 @@ python_screen_viewer::python_screen_viewer(std::shared_ptr<python_rt> rt, std::s
conf->size = viewport.size; conf->size = viewport.size;
conf->offset = viewport.offset; conf->offset = viewport.offset;
conf->scale = viewport.scale; conf->scale = viewport.scale;
GLFWmonitor *monitor = Application.find_monitor(viewport.monitor);
if (!monitor && viewport.monitor != "window")
continue;
conf->window = Application.window(-1, true, conf->size.x, conf->size.y, conf->window = Application.window(-1, true, conf->size.x, conf->size.y,
Application.find_monitor(viewport.monitor), false, Global.python_sharectx); monitor, false, Global.python_sharectx);
glfwSetWindowUserPointer(conf->window, this); glfwSetWindowUserPointer(conf->window, this);
glfwSetFramebufferSizeCallback(conf->window, texture_window_fb_resize); glfwSetFramebufferSizeCallback(conf->window, texture_window_fb_resize);
@@ -31,12 +36,14 @@ python_screen_viewer::python_screen_viewer(std::shared_ptr<python_rt> rt, std::s
} }
} }
if (!m_windows.empty())
m_renderthread = std::make_unique<std::thread>(&python_screen_viewer::threadfunc, this); m_renderthread = std::make_unique<std::thread>(&python_screen_viewer::threadfunc, this);
} }
python_screen_viewer::~python_screen_viewer() python_screen_viewer::~python_screen_viewer()
{ {
m_exit = true; m_exit = true;
if (m_renderthread)
m_renderthread->join(); m_renderthread->join();
} }