2429 Commits

Author SHA1 Message Date
gxalpha
e840966968 UI: Remove old ComboBoxIgnoreScroll 2022-04-02 16:04:51 -07:00
gxalpha
e33b7d2dab UI: Disable wheel scrolling on QComboBoxes
Adds a new ProxyStyle, OBSIgnoreWheelProxyStyle, and applies it to the
entire program. This style sets a StyleHint to disable mouse wheel
scrolling on QComboBoxes.
The existing OBSProxyStyle, which is used only for the context bar, has
been renamed accordingly.
2022-04-02 16:04:51 -07:00
jpark37
f2b049c0e7 UI: Add support for nonlinear SRGB blending 2022-04-02 16:02:41 -07:00
Richard Stanway
a8ecf3c8f2
UI: Fix display affinity logic when re-applying
The old behavior toggled display affinity every time the window was
updated instead of applying it consistently.
2022-03-31 17:23:53 +02:00
PatTheMav
aae3a6a466 cmake: Fix diverging prefix padding for OBS status outputs
Status output related to OBS configuration is prefixed with the string
"OBS" and added padding for enabled and disabled features. This padding
was not aligned between platforms.

By moving the padding and prefix decoration into its own function,
both elements are controlled in a single place. CMake scripts were
changed to use this new function `obs_status` instead of using CMake's
`message` function directly.
2022-03-26 09:44:23 -04:00
gxalpha
ee781bfa24 UI: Remove unneeded QProxyStyle include 2022-03-26 17:57:14 +11:00
Exeldro
de1d806e83 UI: Add Copy/Paste for source visibility transitions 2022-03-24 23:51:10 -07:00
jp9000
e236a16715 libobs: Refactor hide/show transition functions
Having two separate functions for each hide/show transition action is
silly and makes code awful.
2022-03-24 22:32:41 -07:00
Richard Stanway
85addc3dac UI, file-updater, rtmp-services: Enable curl ALPN support
In the years since this code was added, ALPN is now widely supported,
and NPN is being removed entirely in the latest version of nginx. It's
time to start using ALPN!
2022-03-24 17:10:01 -07:00
Jim
8d15aea69d
Merge pull request #6146 from jpark37/hdr-main-preview
libobs, UI: Add support for color spaces
2022-03-24 16:56:59 -07:00
Monsteer
8c0603e991 UI: Add missing previousIcon in Rachni theme
The previous icon for the media icons set in the Rachni theme is missing
in the theme's .qss file.
2022-03-24 14:18:14 -04:00
jpark37
5748ab7e0d UI: Wire up WM_MOVE and WM_DISPLAYCHANGE events 2022-03-23 22:35:26 -07:00
jpark37
cd22df09c9 libobs, UI: Add SDR white nits option 2022-03-23 22:35:26 -07:00
tytan652
2a0e3c0c9b UI: Save custom browser docks with docks data
When saving custom browser docks, docks properties are used rather
than actions properties.
2022-03-22 22:24:23 -07:00
tytan652
b4b1b4c5d3 UI: Remove UUID from ExtraBrowsersModel
This attribute is completely unused.
2022-03-22 22:24:23 -07:00
tytan652
ed8ed0ce3f UI: Fix custom browser docks UUID
When those docks get updated, an empty string is applied to the UUID
property.
2022-03-22 22:24:23 -07:00
Matt Gajownik
923d427212 UI: Require Qt Creator's casing for cursorShape in XML validator
While Qt Designer doesn't care about casing, the XML schema spec does.
Due to Qt Creator automatically changing case on save, require the
uppercase variant in all situations, so that other devs don't have to
manually change the case after Qt Creator changes it.

NOTE: This introduces an adjustment to the spec, different from what
Qt provide from Qt Designer. If this file is changed in future, this
diff may need to be manually re-applied.
https://doc.qt.io/qt-5/designer-ui-file-format.html
2022-03-20 11:09:21 +11:00
Matt Gajownik
d066e89d56 UI: Fixup minor Qt Creator inconsistencies
Qt Creator automatically adjusts these files when opened. Rather than
contributors having to manually undo these changes, just apply them
directly into the repository.
2022-03-20 10:32:45 +11:00
PatTheMav
6d91c3512b UI: Fix UI file changes not being picked up by CMake
Due to how CMake and generated project files are structured, just using
AUTOUIC to pick up Qt `.ui` files will lead to a situation where
changing such a file doesn't trigger a regeneration of the associated
header files and thus a re-build of the target.

Upstream fix still requires `.ui` files to be added as target sources.

CMake issue: https://gitlab.kitware.com/cmake/cmake/-/issues/17959
2022-03-19 15:35:30 -07:00
gxalpha
dde2fe209a UI: Remove InitApplicationBundle() function 2022-03-19 15:13:00 -07:00
PatTheMav
1f0f2be15e
UI: Update CMakeLists.txt for main OBS app 2022-03-16 23:11:58 +01:00
jp9000
02e5410381 UI: Fix audio ids not being stored properly
Audio ids were being stored in a map with const char pointers, thus they
were destroyed when call_once finished. To fix this, store std::strings
instead.
2022-03-13 07:05:02 -07:00
gxalpha
358ef281c4 UI: Add webp to dropfiles 2022-03-12 15:43:57 -08:00
cg2121
66341c7568 UI: Fix handling of remove signal with projectors
Since the remove signal is coming from another thread,
QMetaObject::invokeMethod has to be used, or corruption
could possibly occur.
2022-03-10 12:15:30 -08:00
cg2121
65a360fa41 obs-frontend-api: Add function to get frontend translated string
Developers now can easily get a translated string from the frontend
instead of using their own translations.
2022-03-10 06:27:18 -08:00
Richard Stanway
da4d98d0e4
UI: Remove some globals in AAC bitrate population 2022-03-09 22:54:22 +01:00
jp9000
89881147c7 UI: Fix deferred source properties not updating 2022-03-09 13:12:17 -08:00
jp9000
e5f57a1e03 UI: Rename visual update callback variable
Having both a "callback" and "cb" doesn't make sense. One is
specifically for visual updates only, the other is for actual updates,
so use an appropriate name for both
2022-03-09 13:11:38 -08:00
gxalpha
45f737fb30 UI: Add undo/redo to dropfiles 2022-03-08 13:25:38 -08:00
cg2121
24e4cd1717 UI: Fix mixer hide toggle in studio mode
If the user would toggle hide in mixer in studio mode,
the source would show up in audio mixer, even if it
wasn't active.
2022-03-08 13:18:05 -08:00
Matt Gajownik
372b54ca7a UI: Display dock-relevant context menu on titlebar 2022-03-08 12:36:19 -08:00
cg2121
8c732d31a7 UI: Disable replay save button when paused
Another indicator to the user that replays can't be saved
when recordings are paused.
2022-03-08 12:32:27 -08:00
Exeldro
f8c2ccc2c3 UI: Add mulitiview layout options without program 2022-03-08 12:30:19 -08:00
Tim Cooper
bf09a70a09 UI: resolve .url, .lnk shortcuts during drag-and-drop
On applies to Windows.

Suggested here: https://ideas.obsproject.com/posts/1636
2022-03-08 11:58:55 -08:00
cg2121
748cf32a43 UI: Add events for renaming profiles/collections
The events make it more clear when profiles or scene
collections are renamed.
2022-03-08 11:17:59 -08:00
Misutaa Asriel
4afafaac6d UI: Fix unorthodox macOS Dock icon behavior
Fixes overriding of macOS dock icon behavior.

macOS sets the icon on launch based on:
- The Information PLIST
- A user provided icon by Finder

setWindowIcon overrides this behavior.

Therefore, this commit resolves this issue,
by doing nothing if target is macOS.
2022-03-08 08:50:34 -08:00
Kurt Kartaltepe
ec05e1ff57 UI: Avoid calling obs_source_update multiple times
When we added undo/redo in 86eb7aeb a distinction between Updates and
Visual updates was made, presumably for filters which need special
handling of the update case. These functions were also added to regular
source properties, but didnt use any special code instead calling
obs_source_update an additional time after a short time.

Instead lets remove the 2nd delayed call and only call obs_source_update
once per settings change.
2022-03-08 08:35:02 -08:00
jp9000
61cbfb3b9a UI: Use get_new_source_name instead of strprintf
Remove a bit of duplicated code, and fix non-Windows compilation. This
is a bit of a workaround to not have to modify cmake, but might as well
reuse a function that already exists anyway rather than duplicate the
code.
2022-03-08 01:27:20 -08:00
jp9000
6dd65c8d13 UI: Fix duplicated source names in audio settings
When you add an audio capture source and use the "use existing" feature
in the source selection dialog, and then recreate the same audio source
again in audio settings, it will result in two sources using identical
names, which although relatively harmless can cause issues when doing
things such as trying to find sources by their name.

Fixes obsproject/obs-studio#5621
Closes obsproject/obs-studio#5947
2022-03-08 01:05:27 -08:00
Devon Vitkovsky
3e9a3d995b UI: Change 'Last Log' to 'Previous Log' in order to disambiguate things 2022-03-05 16:01:09 -08:00
cg2121
1a2e5035c3 UI: Remove OBSSceneItem QDataStream
Since the source list is a custom list model, the
QDataStreams for OBSSceneItem are not needed.
2022-03-05 15:59:30 -08:00
gxalpha
6d86b58ed7 UI: Simplify multi-instance check 2022-03-05 15:21:11 -08:00
jpark37
f186b8c304 UI: Remove conflicting setlocale call
Qt already sets LC_ALL to "" for non-Windows. We set LC_NUMERIC to "C"
afterward for sanity, and we don't want that setting to get smashed.
2022-03-01 12:53:51 -08:00
jpark37
fa5a05f188 UI: Restore LC_NUMERIC to C locale on Mac/Linux
Recommended by QCoreApplication doc for Unix.

Fixes CUBE LUT load, and FFmpeg output args for foreign locales.
2022-03-01 12:53:51 -08:00
Kevin Degeling
139e6ed69e UI: Additional product details
Based on the product description from the main website
2022-02-27 13:30:25 -03:00
Matt Gajownik
f77ab0e199 UI: Fix rendering of spaces & tabs in Log Viewer
For some reason, the combination of QPlainTextEdit and a HTML block
seems to treat spaces as HTML shoult (only display one, no tabs, etc)
rather than how QTextEdit + HTML does, which is strange. As we don't
need HTML for existing log lines, insert them as plaintext, but for
new entries wrap non-error non-warning messages in a <font> tag and
format that with white-space: pre
2022-02-27 18:56:19 +11:00
gxalpha
90f1ebf4aa UI: Disable downscale filter setting for same resolutions
Disables the downscale filter dropdown menu when base and output
resolution are the same.
2022-02-27 14:42:17 +11:00
OldBaldGeek
6a5a5b4538 UI: Make volume meter tweakable by stylesheet
Replace fixed Arial, 7 px meter scale font with the font used
for VolumeMeter/QWidget. Add qproperties for meter bar thickness and
a scaling factor for the meter scale numbers. If not specified in a
QSS, defaults are 3 pixel bar width and 80% of base font size.
2022-02-27 13:17:59 +11:00
OldBaldGeek
c8a0dbff1e UI: Use selective repaint on volume meter scale
Fix for issue 3915 - reduce tick and font blur at 125% DPI.
Former use of paint cache resulted in blur when scaled.
2022-02-27 13:17:59 +11:00
gxalpha
dd564a2e8f UI: Move "Check For Updates" menu to app menu on macOS
For apps using sparkle, it's normal for the "Check For Updates" button
to be in the app menu instead of the help menu, so let's put it there.
2022-02-27 12:47:18 +11:00