51 Commits
Author SHA1 Message Date
Warchamp7andRyan Foster dc1e75b9cb frontend: Improve spin box UX 2026-08-24 15:46:37 -04:00
Warchamp7andRyan Foster 0043697fc5 frontend: Remove native widget property 2026-08-20 19:22:01 -04:00
Warchamp7andRyan Foster 14e3dae77f frontend: Fix spacer in permissions dialog 2026-08-10 17:48:54 -04:00
Warchamp7andRyan Foster f5b6d8da12 frontend: Update forms to fully qualified enums 2026-08-10 17:48:54 -04:00
Warchamp7andRyan Foster f730063da3 frontend: Adjustments to Add Source window 2026-07-16 14:33:56 -04:00
Warchamp7andRyan Foster 6750a6e9f5 frontend: Change source window button label 2026-07-16 14:33:56 -04:00
Warchamp7andRyan Foster 85e54825e9 frontend: Fix duplicate layout name 2026-06-19 18:52:08 -04:00
12597e9484 frontend: Replace add source dropdown with dialog
Co-Authored-By: Lain <134130700+Lain-B@users.noreply.github.com>
2026-05-07 15:31:10 -04:00
Warchamp7andRyan Foster bffd5f5980 frontend: Improve plugin manager safe mode behavior 2026-02-25 19:44:39 -05:00
Warchamp7andRyan Foster acd4c97873 frontend: Fix duplicated layout name 2026-02-20 16:35:30 -05:00
Warchamp7andRyan Foster 694680e8c0 frontend: Revert Add Source dialog update
This reverts commit 5fc2476913.
2026-01-28 12:13:20 -05:00
shiina424andRyan Foster 00f220a6dc frontend: Make Add Existing Button translatable 2026-01-17 14:28:20 -05:00
Warchamp7andRyan Foster d05c8cba25 frontend: Remove unused audio mixer widgets 2026-01-15 12:53:30 -05:00
5fc2476913 frontend: Replace add source dropdown with dialog
Co-Authored-By: Lain <134130700+Lain-B@users.noreply.github.com>
2026-01-14 14:49:38 -05:00
Warchamp7andRyan Foster a42a6c4c5f frontend: Refactor and update Audio Mixer 2026-01-13 16:34:33 -05:00
Warchamp7andRyan Foster 6fa1a35ad4 frontend: Update transform dialog 2026-01-08 21:12:30 -05:00
Warchamp7andRyan Foster 92a83e4c4c frontend: Sync Preview/Program size and positioning 2026-01-08 19:58:07 -05:00
Warchamp7andRyan Foster 13a132b486 frontend: Disable dock animations 2026-01-06 07:36:49 -05:00
ExeldroandRyan Foster dc7c8cfb48 frontend: Move transition preview button to button box 2026-01-06 07:02:52 -05:00
Warchamp7andRyan Foster 407944a27c frontend: Rearrange default dock positions 2025-12-19 14:43:44 -05:00
Sean DuBoisandRyan Foster cd4d624ec3 obs-webrtc: Add Simulcast Support 2025-12-17 13:41:59 -05:00
Warchamp7andRyan Foster 9a3fe95211 frontend: Update Plugin Manager v1 UI 2025-09-12 14:18:27 -04:00
FiniteSingularityandRyan Foster 23b67268e7 frontend: Provide UI for phase 1 of plugin manager
For phase 1 of the plugin manager, the ability to toggle off/on plugins
to be loaded at launch is provided.

This commit adds a new Plugin Manager dialog which can be accessed from
the Tools menu, which shows a list of all installed 3rd party plugins
with a checkbox to toggle them off or on.  If a change is made, the user
is prompted to restart OBS. To allow this, the plugin manager uses a
json based config file stored in the OBS config directory. Additionally
for sources in the source tree, a sample UI has been provided that
indicates any sources whose parent module is disabled, by turning its
title red.
2025-08-28 14:29:10 -04:00
Sebastian BeckmannandRyan Foster de9fcd6b42 frontend: Unify naming of Idian Playground
It's called Idian Playground in some places and Widget Playground in
others. Idian Playground is more precise so let's use that.
2025-08-22 16:21:52 -04:00
e8f6143769 frontend: Add new Idian widgets
Co-Authored-By: derrod <rodney@rodney.io>
2025-08-22 16:21:52 -04:00
PatTheMavandRyan Foster de997b1e2f frontend: Update crash handling and log upload functionality
Updates include:

* Use of CrashHandler to provide automatic uploads of the most recent
crash log if an unclean shutdown was detected and it has not been
uploaded yet.
* Detection and handling of unclean shutdowns is delegated entirely to
the CrashHandler class
* Use of OBSLogReply has been replaced with the LogUploadDialog, which
asks for confirmation before new uploads of log files (confirmation is
skipped for files with available upload URLs already - only available
for crash logs with this change)

Architectural changes:
* OBSApp is the layer responsible for application launch and shutdown
states, as well as crash logs and application logs
* The actual handling is delegated to purpose-made classes which OBSApp
owns instances of
* OBSBasic in turn refers to OBSApp for all this functionality, and can
subscribe/connect to appropriate events exposed by OBSApp to this
purpose
* Implementation details (like the existence of the CrashHandler class)
are not exposed to OBSBasic or the LogUploadDialog

The amount of changes for normal log file upload have been purposefully
limited. A proper refactoring of the application log file handling will
move this code out of OBSBasic as well.
2025-08-22 15:38:12 -04:00
PatTheMavandRyan Foster e4e3035661 frontend: Add LogUploadDialog class 2025-08-22 15:38:12 -04:00
Sebastian BeckmannandRyan Foster 268e30a52b frontend: Remove unused macOS window icons
Commit [1] originally made a differentiation between the operating
systems for the window icon. However, on macOS the window icon is only
respected for the main window (and used for the entire app, as windows
themselves don't have icons), and that got removed in [2]. This means
that this code doesn't actually do anything anymore, and thus should be
removed.

[1] 9ac92f61be
[2] 4afafaac6d
2025-08-19 14:48:06 -04:00
shiina424andRyan Foster bd68d33b0d frontend: Fix preview zoom buttons translation string 2025-06-16 13:31:20 -04:00
shiina424andRyan Foster 6a01aab641 frontend/forms: Fix text cut off in multitrack video info 2025-06-04 13:26:33 -04:00
Sebastian BeckmannandRyan Foster cabe65cb98 frontend/forms: Fix duplicate UI element name warning
horizontalLayout_5 was already used further up.
2025-06-04 13:03:35 -04:00
Warchamp7andRyan Foster a3884d1375 frontend: Update Dock toolbar styling 2025-05-28 12:22:41 -04:00
Ryan Foster b9cd9f30b1 frontend: Make profile export menu item translatable 2025-05-22 16:55:49 -04:00
Warchamp7andRyan Foster 32f1b93d72 frontend: Swap preview zoom buttons 2025-05-22 14:21:08 -04:00
shiina424andRyan Foster ae61432c8e frontend: Add missing translations 2025-05-22 13:21:41 -04:00
Warchamp7andRyan Foster b46e5bb1c0 frontend: Fix dock title button sizes 2025-05-20 14:40:38 -04:00
shiina424andRyan Foster 91ad044e68 frontend: Add close icon 2025-05-14 13:18:37 -04:00
Dennis SädtlerandRyan Foster 0552062390 frontend: Allow selecting additional canvases for multitrack 2025-05-05 17:17:20 -04:00
Warchamp7andRyan Foster 36e3489d86 frontend: Adjust missing files dialog 2025-04-25 14:01:23 -04:00
gxalphaandRyan Foster 76e1818866 frontend: Highlight control dock buttons using style class
Checkable buttons are troublesome because QAccessible interprets them as
checkboxes, and doesn't pass the "clicked" signal to them (see
QTBUG-110737). Instead, we only get the "toggled" signal, which also
gets triggered by things other than user input (i.e., the button getting
changed by the program).

Making them uncheckable means that they behave like normal buttons
again. To style them, we can just add a class and address them that way.
Note that uncheckable here means *actually* not checkable - unlike the
cursed NonCheckableButton class previously used that makes a button
that *is* checkable ignore the user input (and only allow check state
changes via code, effectively making it solely a styling tool).
2025-04-24 15:37:50 -04:00
Warchamp7andRyan Foster 13b3c8d033 frontend: Clean up various strings 2025-04-23 14:46:51 -04:00
Warchamp7andRyan Foster c0c77071b5 frontend: Add new appearance options 2025-04-22 15:04:49 -04:00
Warchamp7andRyan Foster 69ecfcd9f6 frontend: Reorganize Preview/Source context menu 2025-04-15 15:00:43 -07:00
Sebastian BeckmannandWarchamp7 902b3e6976 frontend: Re-set list spacing of source and scene tree to 0
This is needed due to QTBUG-106395. With spacing, drag-and-drop would
cause items to go to the bottom of the list if they are dropped in the
spacing.

Effectively reverts 5fa4ea44d0.
See also #7321 and 860b309db8.
2025-04-09 16:09:26 -07:00
Warchamp7andRyan Foster cd6bb523ae frontend: Adjust scene collection importer 2025-04-03 13:49:58 -04:00
cg2121andRyan Foster 86f7475f14 frontend: Add preview zoom controls 2025-04-01 17:31:09 -04:00
cg2121andRyan Foster 5fa4ea44d0 frontend: Make list spacing consistent
This makes all list widget spacing set to 1.
2025-04-01 16:39:53 -04:00
Warchamp7andGitHub ca762b9460 frontend: Remove Exit button (#11887) 2025-03-24 17:57:44 -04:00
gxalphaandRyan Foster a562b8bf52 frontend: Add Input Monitoring to permissions dialog
The previous commit switched global hotkeys from requiring Accessibility
to just Input Monitoring permissions. This adds the matching changes to
the permissions dialog, also accounting for the fact that Accessibility
includes Input Monitoring.
2025-02-05 14:33:06 -05:00
cg2121andWarchamp7 449755ee6d frontend: Move media control dynamic properties to ui file
This moves the dynamic properties for the media control buttons
from the cpp file to the ui file.
2025-01-27 16:36:08 -05:00