Commit graph

3433 commits

Author SHA1 Message Date
gxalpha f402f7a091
UI: Actually copy-paste filters instead of remembering the source
The current behavior makes OBS remember the source that filters should
get copied from and then clones that source's filters to the source that
filters are pasted to. This means however that if the original source
has filters added or removed after the copy-operation, that will still
effect the paste-operation, so filters that were added after copying
would still get pasted.
This commit changes this to something similar to the source clipboard.
Now, we're actually copying the filters, so if the original source has
filters added to afterwards we don't copy those as well.
2024-06-07 22:12:27 +02:00
gxalpha 6ea1520318
UI: Move filter copying into its own function
Preparation for a larger change that reworks filter copying
2024-06-07 22:12:26 +02:00
derrod c1fdbf064f UI: Simplify multitrack encoder availability check 2024-06-07 16:00:42 -04:00
derrod e223e7b5ca UI: Add config option to use MP4 for debug recording 2024-06-07 15:50:34 -04:00
derrod 5db2ff9413 UI: Remove dead code from multitrack output 2024-06-07 14:53:53 -04:00
jcm bd36daa395 UI: Address logging buffer size discrepancies 2024-06-07 17:38:06 +02:00
Translation Updater 8999d9fef9 Update translations from Crowdin 2024-06-07 09:47:58 +00:00
Ruwen Hahn f9d86aeac8 UI: Enable custom server entry for Amazon IVS 2024-06-06 16:09:24 -04:00
Ryan Foster deee0e331f UI: Remove redundant assignments
Detected by PVS-Studio.
2024-06-06 14:21:16 -04:00
Ryan Foster ae5c034acc UI: Fix incompatible settings message when streaming Multitrack Video
When streaming with Multitrack Video (Enhanced Broadcasting) and
incompatible settings, the warning message was missing parts of the
string due to incorrect translation string keys.

Additionally, use Unicode arrows to direct users through UI elements.
2024-06-06 14:21:02 -04:00
Ryan Foster d6b7f7ed4f UI: Remove GPU LUID from system info for Multitrack Video
After further review, this is not needed.
2024-06-06 14:02:21 -04:00
Ryan Foster da8fc0d516 UI: Disable Multitrack Video by default 2024-06-06 14:00:34 -04:00
Richard Stanway ffdf541672 UI: Fix crash when entering settings
We refer to VOD tracks as 1-6 but internally the array is 0-5 so there's
an off-by-one error here.
2024-06-05 19:23:40 -04:00
tytan652 116107bc86 UI: Fix Qt platform override in CMake 3
This override is still needed until Qt minimum version requirement is
increased to at least 6.3.0.

ui-config.h.in and CMake 2 are modified to avoid USE_XDG redefinition in
CMake 3.
2024-06-05 18:33:47 -04:00
tytan652 1d8c377240 cmake,UI: Fix SOVERSION on Linux 2024-06-05 18:16:45 -04:00
Warchamp7 a2785b7c40 UI: Add icons to Controls form buttons 2024-06-05 17:39:54 -04:00
tytan652 3840ea0275 UI: Remove replayBufferButton and vcamButton theme IDs
Those IDs were used on buttons that were programatically added to the
controls dock, now those buttons are always present inside the UI
file with their own object name.

The use of theme IDs can be replaced by their object names.
2024-06-05 17:39:54 -04:00
tytan652 511385891c UI: Separate controls dock from the main window 2024-06-05 17:39:54 -04:00
tytan652 eed5578e4c UI: Remove setStreamText lambda
Avoid tangling controls dock stream button to OBSBasic with a lambda.
2024-06-05 17:39:54 -04:00
tytan652 178205257e UI: Set system tray text explicitly
Avoid using controls dock buttons as a source for text for system tray
elements.
2024-06-05 17:39:54 -04:00
tytan652 d23b65a2bf UI: Track streaming state in OBSBasic
Avoid using controls dock buttons for streaming state. Use signals and
OBSBasic member variables instead.
2024-06-05 17:39:54 -04:00
tytan652 9093275336 UI: Track recording state in OBSBasic
Avoid using controls dock buttons for recording states. Use signals and
OBSBasic member variables instead.
2024-06-05 17:39:54 -04:00
tytan652 cb024a0696 UI: Use connection with modeSwitch button 2024-06-05 17:39:54 -04:00
derrod 29994afe7f UI: Retain existing last output resolution 2024-06-05 13:44:24 -07:00
Ruwen Hahn 1aa81117d6 UI: Add output settings indicators for eRTMP multitrack video 2024-06-04 20:50:46 -04:00
Ruwen Hahn 42a3f903a9 UI: Add OBSPropertiesView::SetDisabled
Disables all children of the properties view.
2024-06-04 20:50:46 -04:00
Ruwen Hahn 2007b4b844 UI: Add Multitrack Video support for auto config 2024-06-04 20:50:46 -04:00
Ruwen Hahn 3f1362f7e7 UI: Add Multitrack Video settings 2024-06-04 20:50:46 -04:00
Ruwen Hahn c8950900c3 UI: Add eRTMP Multitrack Video Output 2024-06-04 20:50:46 -04:00
Ruwen Hahn 43a1b30994 UI: Increase size of log buffer
Dumping config json from nlohmann requires more than 4096 bytes
2024-06-04 18:49:05 -04:00
Ruwen Hahn 976b200254 UI: Add custom server support for Twitch 2024-06-04 18:49:05 -04:00
Warchamp7 52ae5fc4bd UI: Update volume meter appearance 2024-06-03 17:20:21 -04:00
cg2121 17d654fcfc UI: Make status bar record output a weak ref
This changes the status bar record output from a strong reference
to a weak one.
2024-06-03 17:00:12 -04:00
Lain f71a67cd3a
Merge pull request #10608 from derrod/obs-mp4-muxer
Native Hybrid MP4 Muxer
2024-05-28 21:55:58 -07:00
gxalpha 9eca7b7525 UI: Fix Qt 6.7 checkbox signal deprecations
qt/qtbase@3512fb1ec5 deprecated the
stateChanged signal of QCheckBoxes in favor of a new checkStateChanged
signal. The signals are the same, except that now the enum type is
passed explicitly (before the enum was passed as an argument but defined
as an int).
2024-05-28 16:29:26 -04:00
Tunghohin 51fd7fbaff UI: Removed unused friend classes 2024-05-28 15:04:05 -04:00
derrod 8ac8118b7f UI: Add chapter frontend API and hotkey 2024-05-26 23:11:48 +02:00
derrod 4503f0a056 UI: Add Hybrid MP4 to format selection 2024-05-26 23:11:48 +02:00
gxalpha 175b0cbc83 UI: Update edit menu on source filter changes
Currently, when adding a filter to a source and then right-clicking it
or using the menu bar edit menu, it's not possible to copy the source's
filters. This is because the edit menu does not update on filter
changes.
Listening to the new global filters add/remove signal and updating the
edit menu will enable the copy option if a filter get added or disable
the option if the last filter gets removed.
2024-05-25 17:08:42 -07:00
gxalpha 4cf18a9abf UI: Add undo/redo to Paste Filters on audio mixer and scenes
Copy-Pasting filters on a scene or on a source via the audio mixer
context menu would not add an undo/redo action. This commit factors the
undo/redo logic out into a generic paste filters function that can be
used for pasting filters everywhere.
2024-05-25 17:06:21 -07:00
gxalpha 8184fa10a3 UI: Inline OBSBasic::ThemeChanged()
The majority of this method got removed in a prior commit [1]. Let's
inline the rest.

[1] 8dcfae9a39
2024-05-25 17:04:58 -07:00
tytan652 34d577d748 UI: Enforce completely Fusion Qt style on Linux
As of 8dcfae9a39, indicating the base
style to the proxy is completely functional.

It also bypasses QT_STYLE_OVERRIDE and -style, but since the system
theme is no longer available on Linux this is a non-issue.
2024-05-25 16:58:26 -07:00
Warchamp7 76bde59e22 UI: Adjust multiview border size 2024-05-25 16:55:02 -07:00
Warchamp7 40885b6b19 UI: Calculate label position using height and border 2024-05-25 16:55:02 -07:00
Warchamp7 8500515d27 UI: Adjust appearance of multiview labels 2024-05-25 16:55:02 -07:00
cg2121 5eeae2d8b2 UI: Change how the status bar gets weak stream output
The changes obs_output_get_weak_output to OBSGetWeakRef to be
consistent with the other UI code.
2024-05-25 16:21:10 -07:00
Ryan Foster cffdc15aac UI: Fix Grid Mode not persisting from View Menu
When clicking Grid Mode or List Mode from the context menu within the
Scenes list, whether or not Grid Mode is enabled persists between OBS
sessions. When clicking Grid or List from the View Menu, the setting
does not persist between OBS sessions. This seems to be a regression
from fc8c428521.

Previously, SceneTree's SetGridMode would set this config value. If the
intent is to not have SetGridMode directly set the config value, then
any function that calls SetGridMode other than the OBSBasic constructor
must instead set the config value.
2024-05-25 16:12:39 -07:00
Warchamp7 8dcfae9a39 UI: Remove unnecessary ProxyStyle usage 2024-05-23 18:55:43 -04:00
Warchamp7 c54393335d UI: Rename MediaSlider to AbsoluteSlider 2024-05-23 18:55:43 -04:00
Warchamp7 aba600cec0 UI: Move VolumeSlider widget to volume control 2024-05-23 18:55:43 -04:00