Commit Graph

14714 Commits

Author SHA1 Message Date
PatTheMav 7f04039afe CI: Update macOS workflows to macOS 15 runners with Xcode 16.1 2025-01-23 16:43:37 -05:00
Ryan Foster 0014f9fa18 libobs: Update version to 31.0.1 2025-01-17 18:40:47 -05:00
PatTheMav 1baa4619e4 frontend: Use filename stem as fallback value on empty collection name
If - for some reason - the name in a scene collection is empty (or
the key doesn't even exist), use the filename stem as a fallback name.

This ensures that the scene collection entry in the cache has a valid
non-empty name.

Using an std::string allows the use of its "empty" method to check for
this otherwise invalid state of the collection data.
2025-01-17 17:32:20 -05:00
PatTheMav 552c19cab2 frontend: Prevent creation of scene collections with empty name
Empty names for scene collections are not allowed, but this constraint
is only enforced by UI code during text input.

Thus frontend API users are able to create valid scene collections with
empty names which will lead to later possible crashes as the scene
collection is malformed.

As the frontend API uses the related function CreateNewSceneCollection
which handles exceptions by this method, no crashes should occur when
an empty string is provided by an API caller.
2025-01-17 17:32:20 -05:00
gxalpha 79f5ba0e1d cmake: Turn off camera reaction by default on macOS 14.4 and later
The reaction effects that macOS adds by default are confusing to users
as they're turned on by default and users don't know where they come
from or where to turn them off. Setting this flag in the apps Info.plist
prevents them from being turned on by default. The macOS UI makes it
very obvious to the user where they can turn them on should they wish to
do so.
2025-01-16 16:33:59 -05:00
Kurt Kartaltepe 22f222600a libobs: Fix underlinking by adding libx11
We directly depend on libx11 for various operations in obs-nix-x11.c,
not just xcb. So be sure to link it in too.

fixes #11667
2025-01-16 15:43:48 -05:00
derrod 41a38f742c image-source: Fix slideshow stopping on last file in random mode 2025-01-16 15:13:50 -05:00
derrod 223015bd54 obs-nvenc: Abort encoder init if custom options are invalid 2025-01-16 14:50:54 -05:00
derrod 7a04980213 obs-nvenc: Fix translation string for 4:4:4 unsupported error 2025-01-16 14:27:46 -05:00
Ryan Foster a8de12cc82 Merge pull request #11622 from PatTheMav/frontend-refactor
UI: Reorganize and refactor entire frontend codebase
2025-01-16 14:04:12 -05:00
PatTheMav 1c4b60057e frontend: Finalize merge of OBSBasic Sources with module sources 2025-01-08 17:35:16 +01:00
PatTheMav 9b8517003b frontend: Merge main OBSBasic source with module sources 2025-01-08 17:34:46 +01:00
PatTheMav 4752be4b95 CI: Update actions and build scripts to use new frontend directory 2025-01-08 17:33:14 +01:00
PatTheMav 49e23e184c build-aux: Replace UI directory with frontend directory for formatters 2025-01-08 17:33:14 +01:00
PatTheMav 7db4a75913 cmake: Update main CMakeLists file to use refactored frontend 2025-01-08 17:33:13 +01:00
PatTheMav 47613a0927 frontend: Migrate frontend plugins 2025-01-08 17:33:13 +01:00
PatTheMav e6430ab1d8 frontend: Migrate Qt UI files 2025-01-08 17:33:13 +01:00
PatTheMav 5abfc7c565 frontend: Migrate OBS Studio data directory 2025-01-08 17:33:13 +01:00
PatTheMav 076efedc82 frontend: Migrate obs-frontend-api 2025-01-08 17:33:13 +01:00
PatTheMav 08a2eb304b frontend: Migrate CMake files 2025-01-08 17:33:13 +01:00
PatTheMav ff3b62422e frontend: Migrate Windows updater 2025-01-08 17:33:13 +01:00
PatTheMav 2be464a21f frontend: Split main application implementation into single files 2025-01-08 17:33:13 +01:00
PatTheMav bcc6880183 frontend: Prepare main application implementation for splits 2025-01-08 17:33:13 +01:00
PatTheMav e1fade1fc6 frontend: Split Qt UI autoconfig implementations into single files 2025-01-08 17:33:13 +01:00
PatTheMav c792be35a1 frontend: Prepare Qt UI autoconfig wizards for splits 2025-01-08 17:33:13 +01:00
PatTheMav 654ddcd409 frontend: Split Qt UI Widget implementations into single files per class 2025-01-08 17:33:13 +01:00
PatTheMav 9f887c76d3 frontend: Prepare Qt UI Widgets for splits 2025-01-08 17:33:13 +01:00
PatTheMav f813121bb9 frontend: Add renamed Qt UI Widgets 2025-01-08 17:33:12 +01:00
PatTheMav a1ba3247c6 frontend: Split UI utility implementation into single files per class 2025-01-08 17:33:12 +01:00
PatTheMav a0668682b7 frontend: Prepare UI utility files for splits 2025-01-08 17:33:12 +01:00
PatTheMav d846b0ba0a frontend: Add renamed UI utility classes and functions 2025-01-08 17:33:12 +01:00
PatTheMav 664a719421 frontend: Prepare sources for merge with OBSBasic modules 2025-01-08 15:37:22 +01:00
PatTheMav 1ff68267a3 frontend: Split Settings implementation into single files per C++ class 2025-01-08 15:36:55 +01:00
PatTheMav 00fc9035a4 frontend: Add renamed Qt UI dialogs 2025-01-08 15:36:55 +01:00
PatTheMav 9876882e0b frontend: Prepare Qt Settings UI files for splits 2025-01-08 15:36:55 +01:00
PatTheMav 7f6bee603b frontend: Add renamed Qt Settings UI implementation 2025-01-08 15:36:55 +01:00
PatTheMav 75ac9a29d3 frontend: Split OAuth implementation into single files per C++ class 2025-01-08 15:36:55 +01:00
PatTheMav f80b591a72 frontend: Prepare OAuth implementation for splits 2025-01-08 15:36:55 +01:00
PatTheMav 8e4ee1d3fc frontend: Add renamed OAuth implementation 2025-01-08 15:36:55 +01:00
PatTheMav 09ebf7ddfc frontend: Split OBSImporter into single files per C++ class 2025-01-08 15:36:55 +01:00
PatTheMav e0469b00d6 frontend: Add OBSImporter and importer implementations 2025-01-08 15:36:55 +01:00
PatTheMav a959ecadaf frontend: Add renamed Qt UI docks 2025-01-08 15:36:55 +01:00
PatTheMav 085c6245b0 frontend: Split Qt UI dialogs into single files per C++ class 2025-01-08 15:36:55 +01:00
PatTheMav e4a43f6555 frontend: Prepare Qt UI dialogs for splits 2025-01-08 15:36:55 +01:00
PatTheMav f4fe30a5b3 frontend: Split Qt UI component into single file per C++ class 2025-01-08 15:36:54 +01:00
PatTheMav 819850c0f6 frontend: Prepare Qt UI components for splits 2025-01-08 15:36:54 +01:00
PatTheMav 3bbda4803e frontend: Add renamed Qt UI components
This commit only contains Qt UI components that are self-contained,
i.e. the translation units only contain code for a single class or
interface and don't mix implementations.
2025-01-08 15:36:54 +01:00
PatTheMav 3e32a9fcbf frontend: Add new frontend directory to gitignore file 2025-01-08 15:36:54 +01:00
izwb003 48dad45ed5 libobs: Fix deadlock on macOS input method change 2025-01-04 12:23:21 +01:00
tytan652 a0e4e37341 libobs-opengl: Avoid trying to allocate 0 byte on Linux 2024-12-20 16:23:10 -05:00