If a preview projector was created in normal mode, it would become a
studio projector in studio mode. The window title of the window
projector would reflect that it was in fact a preview projector and not
a program projector.
X11BypassWindowManagerHint Bypass the window
manager completely. This results in a borderless window
that is not managed at all (i.e., no keyboard input unless
you call QWidget::activateWindow() manually).
This allows the Esc key to close the projector on X11
Prevents the program from unintentionally quitting if the program is
minimized to the task tray and the user closes all projectors
Closesjp9000/obs-studio#737
QScreen::availableGeometry() does not return the full screen size on X11
if areas of the screen are reserved by the window manager. In this case
the full screen projector does not cover the whole screen. Using
QScreen::geometry() instead fixes this issue.
All of the monitor discovery logic can be implemented with Qt. This
change removes all the x11 implementations in favor of Qt and removes a
fair amount of platform specific code.