Commit Graph

2808 Commits

Author SHA1 Message Date
cg2121
7a838e877f UI: Fix scene item edit drag & drop bug
If an user exits the source tree edit mode, without changing the name,
the scene item would become undraggable until the scene is refreshed.
We were setting the focus to just the label, not the whole widget.
2023-02-12 02:46:12 -08:00
gxalpha
3e4bbe85c8 UI: Remove workaround for current scene being deselectable on Qt 6.4.3+
Qt 6.2 introduced an issue where SingleSelection item views would
deselect the current item if the user clicked on empty area in the
widget.
This was very confusing in the scene tree as it was now possible to
unselect the current scene. A workaround for this in OBS was added in
08e4ee6 and expanded on in dc30cf0, but being quite hacky it never was
the perfect solution.
I since dug into Qt and fixed the issue upstream in qt/qtbase@f11e5435c7
for Qt 6.4.3 and newer, so we can remove the workaround when using those
versions (with the long term goal of removing the code altogether).
2023-02-11 16:01:27 -08:00
derrod
5bdf492f8a UI: Avoid excessive config reads when drawing preview 2023-02-11 15:58:40 -08:00
Ilya Melamed
213ce75328 UI: Add check for null widgetForAction result
In some cases, `QToolbar::widgetForAction` may return `nullptr`. This
causes a crash on affected system.

To mitigate this, we check for `widgetForAction` result and skip
operating on a NULL widget.
2023-02-11 15:56:19 -08:00
derrod
a0b5c1b3f5 UI: Fix properties widget being cut off until resize 2023-02-10 12:04:47 +01:00
cg2121
26725fa2d5 UI: Disable properties button in source toolbar
If a scene or group is selected, disable the properties button in the
source toolbar. This also does a refactor of the function to enable/disable
the toolbar buttons.
2023-02-04 16:02:04 -08:00
Exeldro
2d3013ccdc UI: Add obs_frontend_add_undo_redo_action 2023-02-04 15:30:07 -08:00
bin
945deec266 UI: Use input validator on resolution line edit in adv tab 2023-02-04 15:25:59 -08:00
Exeldro
46da073aa5 UI: Add obs_frontend_open_sceneitem_edit_transform() 2023-02-04 15:23:26 -08:00
Richard Stanway
e9a401d898 UI: Remove unsupported Windows versions from manifest 2023-02-01 23:00:50 +01:00
gxalpha
11e9291800 UI: Set macOS appearance on theme change
Makes macOS aware that we're using either light or dark theme to adjust
native dialog colors accordingly.

Co-Authored-By: Patrick Heyer <PatTheMav@users.noreply.github.com>
2023-01-31 18:50:56 +01:00
gxalpha
2272efc91f UI: Use native combobox popup on macOS
As recommended by Qt on QTBUG-106162, this fixes QComboBox popups not
working with VoiceOver.
2023-01-31 18:50:56 +01:00
derrod
cd78ecae50 updater: Deduplicate delta patch downloads 2023-01-29 02:24:55 -08:00
derrod
cbe3ef7e57 Revert "UI/updater: Fix files with similar hashes clashing"
This reverts commit 7396c211be.
2023-01-29 02:24:55 -08:00
cg2121
52045316b3 UI: Hide menu items if source is only audio
Hides the following items if source is only audio:
- Transform menu
- Resize output (size of source)
- Scale filter menu
- Blending mode menus
- Projector menus
- Screenshots
- Interact
2023-01-29 00:02:40 -08:00
Norihiro Kamae
cf2a9461a8 Remove OBSBasicSettings::VideoChangedRestart
The function `OBSBasicSettings::VideoChangedRestart` was never called,
hence remove it.
2023-01-28 19:03:55 -08:00
Norihiro Kamae
c2f157470b UI: Remove unused macros
Also removes a translation string that was referred from the removed
macro.
2023-01-28 19:03:55 -08:00
tytan652
10880d6b21 UI: Unblock encoder comboboxes signals before change
Signals are blocked while encoder is enforced, those need to be
unblocked before setting the new encoder.
2023-01-28 15:50:41 -08:00
gxalpha
b5b293fe72 UI: Re-raise properties window after picking files on macOS 2023-01-28 15:09:49 -08:00
derrod
778cf5a96a updater: Pass AppData path to elevated process 2023-01-25 12:32:41 -05:00
derrod
ffd7202168 updater: Add additional status messages 2023-01-24 20:14:40 -08:00
derrod
3dcf68f8ed UI: Work around Qt dock restore crash 2023-01-24 18:43:38 -08:00
WarmUpTill
7d26721be5 frontend-tools: Fix crash on non X11 windowing systems 2023-01-24 16:43:52 -03:00
cg2121
d08ede33cd UI: Disable screenshot action if item has no video
This disables the source screenshot action in the context menu
if the source has no video.
2023-01-23 18:10:59 -03:00
derrod
edcb80ae8b updater: Hash files with multiple threads 2023-01-22 23:58:56 +01:00
cg2121
610a2171a2 UI: Don't open properties dialog if item is scene
This disables opening of the properties dialog if a scene is double
clicked in the source tree.
2023-01-22 10:45:25 +11:00
tytan652
6dd99e3a9f UI: Fix implicit conversion warning on Linux with Clang 2023-01-19 13:08:46 -05:00
tytan652
77a174ddac aja,aja-output-ui: Calm deprecation warnings on Clang and GCC 2023-01-19 13:08:46 -05:00
tytan652
90c49c7af1 UI: Fix shadow-ivar warning on macOS 2023-01-19 13:08:46 -05:00
tt2468
5a68d3aaf5 UI: Remove extra encoder function calls
The audio_t and video_t objects are already applied in the parent
functions already.
2023-01-18 12:17:35 -06:00
tt2468
8f0e5a72d6 UI: Fix logging of output ID when start fails + code cleanup
Previously, an output that does not implement `info.get_output_type`
would result in these log messages saying `(null)`. This uses the actual
ID directly from the output itself instead.

Also removes two extra calls to `obs_encoder_set_video()` as they are
redundant and unnecessary.
2023-01-18 12:17:35 -06:00
tytan652
8fad36868e UI: Refactor Windows taskbar switch 2023-01-16 11:52:26 +01:00
tytan652
cf5c68b773 UI,libobs,libobs-opengl,obs-ffmpeg: Remove unneeded cast in switches
Those casts were usually used to workaround switch warnings.

Also adds default to OBS frontend event switches that had this
workaround.
2023-01-16 11:52:26 +01:00
derrod
143877c8ff updater: Fix portable OBS not being relaunched correctly 2023-01-14 15:30:58 -08:00
gxalpha
2133f47658 UI: Reintroduce spacing to YouTube dialog buttons 2023-01-13 10:50:36 -08:00
derrod
807c0c386d updater: Deduplicate Downloads 2023-01-12 11:37:26 -08:00
Translation Updater
783bd52197 Update translations from Crowdin 2023-01-08 04:10:37 +00:00
Richard Stanway
930c65e7c3 UI: Prevent negative "disk full in" calculation when no output
If the output is paused the average bitrate will be zero, resulting in
infinite time until disk is full and int overflows. Similarly, if no data
has been collected yet, the result will be NaN and undefined behavior.
2023-01-07 15:49:13 -08:00
Kurt Kartaltepe
124ebedbdb UI: Disable qt5ct when compiled with qt6
Qt is not smart enough to disable qt5 platform plugins when users
blindly ask for them, which causes users to be unable to start OBS.
Instead lets kindly disable broken platforms on their behalf.
2023-01-07 15:17:05 -08:00
Matt Gajownik
08a04d2cf0 UI: Lock volume meter sliders to LTR
Fixes #5447 where sliders would work in reverse.
2023-01-03 18:24:41 -05:00
tytan652
852d53723c UI: Use stream encoder when resetting encoders
It actually use the recording encoder while restoring the stream encoder.
2023-01-03 17:34:44 -05:00
Kurt Kartaltepe
1b8a695571 UI: Restrict GNOME wayland override
Some wayland compositors exclusively use xwayland such as gamescope.
This allows us to fallback to the platform determined by Qt, which will
detect these exotic compositors and handle them correctly when not
overidden by this envvar.

Qt preserves this undesired behavior until 6.3. With ubuntu 22 on 6.2
this workaround needs to be preserved.

fixes #6386
2022-12-23 10:00:03 -03:00
Ryan Foster
436643c3b9 UI: Fix Qt AutoUic warning
Currently, Qt's User Interface Compiler (UIC) emits a warning about the
tabstop assignment for horizontalLayout_sdrPaperWhite, which is a
QLayout rather than a QWidget. Remove the tabstop assignment to fix the
warning.
2022-12-10 15:02:38 -08:00
gxalpha
53caee8ceb UI: Guard GetMonitorName behind Qt < 6.4
d27cda1 made this unnecessary on other Qt versions
2022-12-03 15:30:28 -08:00
cg2121
a18f07d49c UI: Fix slide counter with no slides
When a slideshow is created with no slides, the slide counter
shows value of "1 / 0". Now it shows "- / -".
2022-12-03 15:26:34 -08:00
derrod
9c2cccfbc7 updater: Bump to version 2.2 2022-12-03 15:03:28 -08:00
gxalpha
dab5ff813a UI: Hide "Update Channel" label on macOS 2022-11-26 11:34:09 +01:00
tytan652
bc51e15553 UI: Guard AutoBetaOptIn as Windows-only 2022-11-26 11:34:03 +01:00
derrod
4681ec732b UI: Delay timed update check until branch migration 2022-11-26 11:33:27 +01:00
Matt Gajownik
d27cda1fa2 UI: Fix monitor name for projectors on Windows
From Qt 6.4 release notes:
QScreen::name() now returns the user friendly name instead of the GDI
device name on Windows. This is consistent with other platforms and also
obeys the documentation.

--

Additionally, this scraps the visual indexing on monitors as the
numbering is not guaranteed to match any other GUI or API. A similar
change was recently made in the Display Capture source on Windows.
2022-11-24 18:16:30 +11:00