77 Commits

Author SHA1 Message Date
Clayton Groeneveld
afd58a78e5 UI: Add option to draw safe areas in preview 2021-08-20 15:20:59 -07:00
Delta
a64328da56
UI: Add "18 Scenes" multiview option
Adds a "18 Scenes" multiview option. The 18 scene view leaves the
preview and program sized to the upper half of the window

Settings index in combobox may not match up with enum index. Settings
in the dropdown can now be ordered separately from the enum order.
2021-07-20 17:16:44 +12:00
PatTheMav
9ac92f61be
UI: Use macOS app icon for Qt app on macOS 2020-11-13 17:17:45 +01:00
Clayton Groeneveld
1eba0827b7 UI: Fix projector not working on secondary monitors
This fixes a bug where the projector wouldn't work on secondary
monitors on Windows.
2020-08-24 02:02:07 -05:00
Clayton Groeneveld
846c3d5acc UI: Delete projector when monitor is disconnected 2020-07-08 07:40:51 -07:00
Bennik2000
d8c215df0e UI: Add always on top checkbox to projector context menu
This checkbox overrides the global always on top setting
2020-06-26 05:59:17 -07:00
Scratch
5421851526 UI: Add window projector option "fit to content"
Adds an option to the context menu of a windowed projector to allow
resizing the aspect ratio of the client area of the window to the
contents of what's being projected (so that there's no extra space).
2020-06-24 13:18:52 -07:00
Jim
dd12488700
Merge pull request #3066 from cg2121/fix-always-on-top
UI: Fix projector always on top not working on Linux
2020-06-21 05:50:08 -07:00
Clayton Groeneveld
777d9eb787 UI: Auto update projector settings 2020-06-13 21:00:55 -05:00
Clayton Groeneveld
87965dff59 UI: Fix projector always on top not working on Linux 2020-06-13 20:10:38 -05:00
Ed Maste
7325eace24 UI: Fix projector on other than primary display
Calling showFullScreen after setGeometry puts the projector on the
expected monitor.  Previously (on FreeBSD, at least) it opened on the
primary display.
2020-04-12 18:43:23 -04:00
Richard Stanway
dca5f2fcdb UI: Properly apply hide cursor on fullscreen projectors
If a projector was created fullscreen, the isFullScreen() call would
fail since the window hasn't been displayed by Qt yet, resulting in the
cursor hiding choice not being applied. This moves the cursor hiding
into the SetMonitor call which is used for all code paths creating a
fullscreen projector, ensuring the setting is applied.

Fixes https://github.com/obsproject/obs-studio/issues/2687
2020-04-10 00:32:09 +02:00
VodBox
62c7eb489d UI: Set correct window title for fullscreen projector
Before this change, opening up a fullscreen projector would have the
wrong window title (Windowed Projector). This was because the call to
update the window title was called before a monitor is set, and the
title is determined by whether a monitor is set.

This change moves the update title call to after the geometry or monitor
gets set, ensuring the window title is correct.
2020-03-22 22:59:27 +13:00
Matt Gajownik
f302a98f8d UI: Fix windowed multiview title 2020-03-09 14:23:09 +11:00
Clayton Groeneveld
e832b42f07 UI: Add ability to change projector type 2019-10-21 23:48:58 -05:00
Jim
7ed8f05f21
Merge pull request #2106 from cg2121/fix-preview-bug
UI: Fix issue with preview projector
2019-10-15 22:16:11 -07:00
luz.paz
d124e6402c docs/sphinx: Fix various typos
(This modifies UI, libobs, deps/obs-scripting, various cmake files)

Found using:
`codespell -q 3 -S *.ini,./UI/data/locale,./deps/w32-pthreads -L aci,dur,iff,mut,numer,uint`
2019-10-14 17:19:38 -07:00
Clayton Groeneveld
15129b5751 UI: Fix issue with preview projector 2019-10-09 02:43:48 -05:00
jp9000
f53df7da64 clang-format: Apply formatting
Code submissions have continually suffered from formatting
inconsistencies that constantly have to be addressed.  Using
clang-format simplifies this by making code formatting more consistent,
and allows automation of the code formatting so that maintainers can
focus more on the code itself instead of code formatting.
2019-06-23 23:49:10 -07:00
jp9000
74cd1da656 Revert "UI: Use theme colors setting for Projectors too"
This reverts commit 8a22889e3d732532141db6b79b438f01c9cefc98.

After further usage, result is undesirable.  We don't need the theme
applied to projectors.
2019-06-16 17:43:55 -07:00
James Park
37bf66b9dc UI: Remove unused helper function renderVB
Lambda replacement was added, but old function was left behind.
2019-05-18 22:09:19 -07:00
SuslikV
8a22889e3d UI: Use theme colors setting for Projectors too
Don't override the theme color settings for the Projector.
If required, the background color of the projector can be changed via

OBSProjector {qproperty-...}

record placed after "OBSQTDisplay {qproperty-...}" section in the theme
file (qss).
2019-04-17 07:10:12 -07:00
Clayton Groeneveld
4d908e31d3 UI: Don't hide cursor over multiview
I considered making this an option, but I decided against it because
I felt it wasn't necessary and would make the settings more complex.
Opinions are welcome.
2019-04-09 11:51:41 -05:00
Clayton Groeneveld
2080051b9f UI: Use icons from theme on Linux 2019-03-16 05:41:12 -05:00
Stéphane L
a8944d0a34 UI: add a default black background to the PGM output of the multiview 2019-02-02 15:42:12 +01:00
jp9000
87ca80deac UI: Fix infinitely incrementing showing ref 2019-01-13 21:00:46 -08:00
Shaolin
f8dfa4cb70 UI: Fix not all projectors using ProjectorAlwaysOnTop 2018-09-04 23:29:37 -03:00
Jim
86b7b0b6d5
Merge pull request #1457 from admshao/fix-projectors-always-on-top
UI: Use AlwaysOnTop option for windowed projectors
2018-08-29 09:08:59 -07:00
Shaolin
1ccbc3c68e UI: Use AlwaysOnTop option for windowed projectors 2018-08-29 02:17:11 -03:00
Shaolin
4264361469 UI: Fix a rare multiview crash when clicked
This was triggered by openning a fullscreen projector and trying to alt
tab. The projector was still on top but the first click on a KDE system
was returning a NULL activeWindow.
2018-08-29 00:51:45 -03:00
Andreas Reischuck
71d2e870bb UI: Fix multiview hang
This could cause an infinite recursion if "show_in_multiview" was false
for a scene.

Closes obsproject/obs-studio#1426
2018-08-17 09:22:32 -07:00
Shaolin
c145b129f3 UI: Add new Multiview Layout for up to 24 scenes
The variable name changes were done with the intent to ease the
abstraction of the scene, preview and program width/height size
so its not related with the canvas size but directly related with
our concept of scenes.
2018-05-20 23:20:52 -03:00
Shaolin
b3a4051530 UI: Move more fixed values to multiview update 2018-05-20 23:20:52 -03:00
Shaolin
5921558548 UI: Adjust the multiview num sources by the layout
The variable name changes were done with the intent to ease the
abstraction of the scene, preview and program width/height size
so its not related with the canvas size but directly related with
our concept of scenes.
2018-05-20 23:20:52 -03:00
Shaolin
abb929c0d1 UI: Calculate fixed values of the Multiview once 2018-05-20 23:20:52 -03:00
Shaolin
5b642c14de UI: Move multiview setting checks from draw path 2018-05-20 23:20:52 -03:00
Shaolin
b8966802ef UI: Add option to toggle multiview draw safe area 2018-05-20 23:20:52 -03:00
Shaolin
03de558af1 UI: Update multiview safe areas
Make the safe areas respect the EBU R 95 and Rec. ITU-R BT.1848-1
standards for 16:9 content.
Links: https://tech.ebu.ch/docs/r/r095rev1_March2016.pdf and
https://www.itu.int/dms_pubrec/itu-r/rec/bt/R-REC-BT.1848-1-201510-I!!PDF-E.pdf
2018-05-20 23:20:52 -03:00
Shaolin
4649783b1e UI: Add option to toggle multiview scene names 2018-05-20 23:20:52 -03:00
Shaolin
e0e2cc57a0 UI: Add option to toggle multiview mouse switching 2018-05-20 23:20:52 -03:00
Shaolin
959bdda48c UI: Adjust multiview label size 2018-05-20 23:20:52 -03:00
Shaolin
b4d2d5d9c4 UI: Add proper source markers to multiview
This ensures the pixel correctness of the sources selection highlight
boxes when on a fullscreen projector.

When on a windowed projector due to the nature of int<->float
conversions and also due to the limited space, some source boxes
might be like 'off-by-one' and barely noticeable.
2018-05-20 23:20:52 -03:00
Shaolin
98839524f7 UI: Simplify multiview draw code 2018-05-20 23:20:52 -03:00
Shaolin
1b357d3b12 UI: Change multiview non-studio selection color
When not in studio mode the preview and program sources are the same
but the checks will be made against GetCurrentSceneSource which were
resulting in the multiview source highlight to give the previewColor
where in this case we want the programColor.
2018-05-20 23:20:52 -03:00
Shaolin
3d189484f9 UI: Remove the outerbox markers in multiview
The same effect is achieved by painting the whole canvas with
the outerColor
2018-05-20 23:20:52 -03:00
Shaolin
40f8d4cfb2 UI: Make the multiview lines use the same color 2018-05-20 23:20:52 -03:00
Shaolin
32ee7ee4e2 UI: Clean up Projector Creation
The Init function were only called on projector creation so this isn't
needed to be on a separate function. Its clearer to read the code.
2018-05-20 23:20:52 -03:00
Shaolin
22a1887340 UI: Clean up projector's render regions creation 2018-05-20 23:20:52 -03:00
Shaolin
fc3e85a598 UI: Make multiview colors easier to manage 2018-05-20 23:20:52 -03:00
Shaolin
a142261edd UI: Clarify multiview layout names 2018-05-20 23:20:52 -03:00