mirror of
https://github.com/obsproject/obs-studio.git
synced 2024-07-15 07:44:10 +00:00
Revert "UI: Various screen reader fixes"
This reverts commit b5843caa48
.
This breaks some hotkeys because the signals are tied to a signal which
is now triggered because "toggled" is used instead of "clicked", so just
revert it for now for the release and look at it later post-patch.
This commit is contained in:
parent
5287518044
commit
3064887ae2
|
@ -390,8 +390,8 @@ Deinterlacing.TopFieldFirst="Top Field First"
|
||||||
Deinterlacing.BottomFieldFirst="Bottom Field First"
|
Deinterlacing.BottomFieldFirst="Bottom Field First"
|
||||||
|
|
||||||
# volume control accessibility text
|
# volume control accessibility text
|
||||||
VolControl.SliderUnmuted="Volume slider for '%1':"
|
VolControl.SliderUnmuted="Volume slider for '%1': %2"
|
||||||
VolControl.SliderMuted="Volume slider for '%1': (currently muted)"
|
VolControl.SliderMuted="Volume slider for '%1': %2 (currently muted)"
|
||||||
VolControl.Mute="Mute '%1'"
|
VolControl.Mute="Mute '%1'"
|
||||||
VolControl.Properties="Properties for '%1'"
|
VolControl.Properties="Properties for '%1'"
|
||||||
|
|
||||||
|
@ -430,12 +430,6 @@ Basic.SourceSelect.CreateNew="Create new"
|
||||||
Basic.SourceSelect.AddExisting="Add Existing"
|
Basic.SourceSelect.AddExisting="Add Existing"
|
||||||
Basic.SourceSelect.AddVisible="Make source visible"
|
Basic.SourceSelect.AddVisible="Make source visible"
|
||||||
|
|
||||||
# source box
|
|
||||||
Basic.Main.Sources.Visibility="Visibility"
|
|
||||||
Basic.Main.Sources.VisibilityDescription="Controls the visibility of '%1' in the canvas"
|
|
||||||
Basic.Main.Sources.Lock="Lock"
|
|
||||||
Basic.Main.Sources.LockDescription="Locks the position and scale of '%1' in the canvas"
|
|
||||||
|
|
||||||
# properties window
|
# properties window
|
||||||
Basic.PropertiesWindow="Properties for '%1'"
|
Basic.PropertiesWindow="Properties for '%1'"
|
||||||
Basic.PropertiesWindow.AutoSelectFormat="%1 (autoselect: %2)"
|
Basic.PropertiesWindow.AutoSelectFormat="%1 (autoselect: %2)"
|
||||||
|
@ -739,7 +733,6 @@ Basic.Settings.Output.Adv.Audio.Track6="Track 6"
|
||||||
|
|
||||||
# basic mode 'output' settings - advanced section - recording subsection
|
# basic mode 'output' settings - advanced section - recording subsection
|
||||||
Basic.Settings.Output.Adv.Recording="Recording"
|
Basic.Settings.Output.Adv.Recording="Recording"
|
||||||
Basic.Settings.Output.Adv.Recording.RecType="Recording Type"
|
|
||||||
Basic.Settings.Output.Adv.Recording.Type="Type"
|
Basic.Settings.Output.Adv.Recording.Type="Type"
|
||||||
Basic.Settings.Output.Adv.Recording.Type.Standard="Standard"
|
Basic.Settings.Output.Adv.Recording.Type.Standard="Standard"
|
||||||
Basic.Settings.Output.Adv.Recording.Type.FFmpegOutput="Custom Output (FFmpeg)"
|
Basic.Settings.Output.Adv.Recording.Type.FFmpegOutput="Custom Output (FFmpeg)"
|
||||||
|
|
|
@ -371,13 +371,33 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0">
|
<item row="2" column="1">
|
||||||
<widget class="QLabel" name="label_9">
|
<widget class="QCheckBox" name="screenSnapping">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Basic.Settings.General.SnapDistance</string>
|
<string>Basic.Settings.General.ScreenSnapping</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="buddy">
|
<property name="checked">
|
||||||
<cstring>snapDistance</cstring>
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="4" column="1">
|
||||||
|
<widget class="QCheckBox" name="centerSnapping">
|
||||||
|
<property name="text">
|
||||||
|
<string>Basic.Settings.General.CenterSnapping</string>
|
||||||
|
</property>
|
||||||
|
<property name="checked">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="1">
|
||||||
|
<widget class="QCheckBox" name="sourceSnapping">
|
||||||
|
<property name="text">
|
||||||
|
<string>Basic.Settings.General.SourceSnapping</string>
|
||||||
|
</property>
|
||||||
|
<property name="checked">
|
||||||
|
<bool>true</bool>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
@ -394,13 +414,13 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="2" column="1">
|
<item row="1" column="0">
|
||||||
<widget class="QCheckBox" name="screenSnapping">
|
<widget class="QLabel" name="label_9">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Basic.Settings.General.ScreenSnapping</string>
|
<string>Basic.Settings.General.SnapDistance</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="checked">
|
<property name="buddy">
|
||||||
<bool>true</bool>
|
<cstring>snapDistance</cstring>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
@ -420,26 +440,6 @@
|
||||||
</property>
|
</property>
|
||||||
</spacer>
|
</spacer>
|
||||||
</item>
|
</item>
|
||||||
<item row="3" column="1">
|
|
||||||
<widget class="QCheckBox" name="sourceSnapping">
|
|
||||||
<property name="text">
|
|
||||||
<string>Basic.Settings.General.SourceSnapping</string>
|
|
||||||
</property>
|
|
||||||
<property name="checked">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="4" column="1">
|
|
||||||
<widget class="QCheckBox" name="centerSnapping">
|
|
||||||
<property name="text">
|
|
||||||
<string>Basic.Settings.General.CenterSnapping</string>
|
|
||||||
</property>
|
|
||||||
<property name="checked">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
@ -568,6 +568,13 @@
|
||||||
<property name="topMargin">
|
<property name="topMargin">
|
||||||
<number>2</number>
|
<number>2</number>
|
||||||
</property>
|
</property>
|
||||||
|
<item row="1" column="1">
|
||||||
|
<widget class="QCheckBox" name="overflowAlwaysVisible">
|
||||||
|
<property name="text">
|
||||||
|
<string>Basic.Settings.General.OverflowAlwaysVisible</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<spacer name="horizontalSpacer_25">
|
<spacer name="horizontalSpacer_25">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
|
@ -581,20 +588,6 @@
|
||||||
</property>
|
</property>
|
||||||
</spacer>
|
</spacer>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="1">
|
|
||||||
<widget class="QCheckBox" name="overflowHide">
|
|
||||||
<property name="text">
|
|
||||||
<string>Basic.Settings.General.OverflowHidden</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="1" column="1">
|
|
||||||
<widget class="QCheckBox" name="overflowAlwaysVisible">
|
|
||||||
<property name="text">
|
|
||||||
<string>Basic.Settings.General.OverflowAlwaysVisible</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="2" column="1">
|
<item row="2" column="1">
|
||||||
<widget class="QCheckBox" name="overflowSelectionHide">
|
<widget class="QCheckBox" name="overflowSelectionHide">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
|
@ -602,6 +595,13 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="0" column="1">
|
||||||
|
<widget class="QCheckBox" name="overflowHide">
|
||||||
|
<property name="text">
|
||||||
|
<string>Basic.Settings.General.OverflowHidden</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
@ -721,6 +721,9 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="3" column="1">
|
||||||
|
<widget class="QComboBox" name="multiviewLayout"/>
|
||||||
|
</item>
|
||||||
<item row="3" column="0">
|
<item row="3" column="0">
|
||||||
<widget class="QLabel" name="label_64">
|
<widget class="QLabel" name="label_64">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
|
@ -731,9 +734,6 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="3" column="1">
|
|
||||||
<widget class="QComboBox" name="multiviewLayout"/>
|
|
||||||
</item>
|
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
@ -4636,16 +4636,6 @@
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
<item row="3" column="0">
|
|
||||||
<widget class="QLabel" name="label_33">
|
|
||||||
<property name="text">
|
|
||||||
<string>Basic.Settings.Advanced.Video.ColorSpace</string>
|
|
||||||
</property>
|
|
||||||
<property name="buddy">
|
|
||||||
<cstring>colorSpace</cstring>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="3" column="1">
|
<item row="3" column="1">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_20">
|
<layout class="QHBoxLayout" name="horizontalLayout_20">
|
||||||
<property name="leftMargin">
|
<property name="leftMargin">
|
||||||
|
@ -4695,6 +4685,16 @@
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="3" column="0">
|
||||||
|
<widget class="QLabel" name="label_33">
|
||||||
|
<property name="text">
|
||||||
|
<string>Basic.Settings.Advanced.Video.ColorSpace</string>
|
||||||
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>colorSpace</cstring>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item row="4" column="0">
|
<item row="4" column="0">
|
||||||
<spacer name="horizontalSpacer_12">
|
<spacer name="horizontalSpacer_12">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
|
@ -4746,23 +4746,6 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="2" column="1">
|
|
||||||
<widget class="QCheckBox" name="autoRemux">
|
|
||||||
<property name="text">
|
|
||||||
<string>Basic.Settings.Advanced.AutoRemux</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="3" column="0">
|
|
||||||
<widget class="QLabel" name="label_57">
|
|
||||||
<property name="text">
|
|
||||||
<string>Basic.Settings.Output.ReplayBuffer.Prefix</string>
|
|
||||||
</property>
|
|
||||||
<property name="buddy">
|
|
||||||
<cstring>simpleRBPrefix</cstring>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="3" column="1">
|
<item row="3" column="1">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_14">
|
<layout class="QHBoxLayout" name="horizontalLayout_14">
|
||||||
<property name="leftMargin">
|
<property name="leftMargin">
|
||||||
|
@ -4795,6 +4778,16 @@
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="3" column="0">
|
||||||
|
<widget class="QLabel" name="label_57">
|
||||||
|
<property name="text">
|
||||||
|
<string>Basic.Settings.Output.ReplayBuffer.Prefix</string>
|
||||||
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>simpleRBPrefix</cstring>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item row="1" column="0">
|
<item row="1" column="0">
|
||||||
<spacer name="horizontalSpacer_10">
|
<spacer name="horizontalSpacer_10">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
|
@ -4808,6 +4801,13 @@
|
||||||
</property>
|
</property>
|
||||||
</spacer>
|
</spacer>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="2" column="1">
|
||||||
|
<widget class="QCheckBox" name="autoRemux">
|
||||||
|
<property name="text">
|
||||||
|
<string>Basic.Settings.Advanced.AutoRemux</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<spacer name="horizontalSpacer_16">
|
<spacer name="horizontalSpacer_16">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
|
@ -4839,16 +4839,6 @@
|
||||||
<property name="topMargin">
|
<property name="topMargin">
|
||||||
<number>2</number>
|
<number>2</number>
|
||||||
</property>
|
</property>
|
||||||
<item row="0" column="1">
|
|
||||||
<widget class="QCheckBox" name="streamDelayEnable">
|
|
||||||
<property name="text">
|
|
||||||
<string>Enable</string>
|
|
||||||
</property>
|
|
||||||
<property name="checked">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="1" column="0">
|
<item row="1" column="0">
|
||||||
<widget class="QLabel" name="label_56">
|
<widget class="QLabel" name="label_56">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
|
@ -4925,6 +4915,16 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="0" column="1">
|
||||||
|
<widget class="QCheckBox" name="streamDelayEnable">
|
||||||
|
<property name="text">
|
||||||
|
<string>Enable</string>
|
||||||
|
</property>
|
||||||
|
<property name="checked">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<spacer name="horizontalSpacer_9">
|
<spacer name="horizontalSpacer_9">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
|
@ -4966,16 +4966,6 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0">
|
|
||||||
<widget class="QLabel" name="label_17">
|
|
||||||
<property name="text">
|
|
||||||
<string>Basic.Settings.Output.RetryDelay</string>
|
|
||||||
</property>
|
|
||||||
<property name="buddy">
|
|
||||||
<cstring>reconnectRetryDelay</cstring>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="1" column="1">
|
<item row="1" column="1">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_19">
|
<layout class="QHBoxLayout" name="horizontalLayout_19">
|
||||||
<property name="leftMargin">
|
<property name="leftMargin">
|
||||||
|
@ -5028,6 +5018,16 @@
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="1" column="0">
|
||||||
|
<widget class="QLabel" name="label_17">
|
||||||
|
<property name="text">
|
||||||
|
<string>Basic.Settings.Output.RetryDelay</string>
|
||||||
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>reconnectRetryDelay</cstring>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<spacer name="horizontalSpacer_8">
|
<spacer name="horizontalSpacer_8">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
|
@ -5072,16 +5072,6 @@
|
||||||
<item row="0" column="1">
|
<item row="0" column="1">
|
||||||
<widget class="QComboBox" name="bindToIP"/>
|
<widget class="QComboBox" name="bindToIP"/>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="1">
|
|
||||||
<widget class="QCheckBox" name="dynBitrate">
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>Basic.Settings.Output.DynamicBitrate.TT</string>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Basic.Settings.Output.DynamicBitrate.Beta</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="2" column="1">
|
<item row="2" column="1">
|
||||||
<widget class="QCheckBox" name="enableNewSocketLoop">
|
<widget class="QCheckBox" name="enableNewSocketLoop">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
|
@ -5112,6 +5102,16 @@
|
||||||
</property>
|
</property>
|
||||||
</spacer>
|
</spacer>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="1" column="1">
|
||||||
|
<widget class="QCheckBox" name="dynBitrate">
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>Basic.Settings.Output.DynamicBitrate.TT</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Basic.Settings.Output.DynamicBitrate.Beta</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
|
|
@ -293,13 +293,11 @@ void OBSHotkeyWidget::AddEdit(obs_key_combination combo, int idx)
|
||||||
|
|
||||||
auto add = new QPushButton;
|
auto add = new QPushButton;
|
||||||
add->setProperty("themeID", "addIconSmall");
|
add->setProperty("themeID", "addIconSmall");
|
||||||
add->setToolTip(QTStr("Add"));
|
|
||||||
add->setFixedSize(24, 24);
|
add->setFixedSize(24, 24);
|
||||||
add->setFlat(true);
|
add->setFlat(true);
|
||||||
|
|
||||||
auto remove = new QPushButton;
|
auto remove = new QPushButton;
|
||||||
remove->setProperty("themeID", "removeIconSmall");
|
remove->setProperty("themeID", "removeIconSmall");
|
||||||
remove->setToolTip(QTStr("Remove"));
|
|
||||||
remove->setEnabled(removeButtons.size() > 0);
|
remove->setEnabled(removeButtons.size() > 0);
|
||||||
remove->setFixedSize(24, 24);
|
remove->setFixedSize(24, 24);
|
||||||
remove->setFlat(true);
|
remove->setFlat(true);
|
||||||
|
|
|
@ -34,11 +34,9 @@
|
||||||
#include <QGuiApplication>
|
#include <QGuiApplication>
|
||||||
#include <QProxyStyle>
|
#include <QProxyStyle>
|
||||||
#include <QScreen>
|
#include <QScreen>
|
||||||
#include <QAccessible>
|
|
||||||
|
|
||||||
#include "qt-wrappers.hpp"
|
#include "qt-wrappers.hpp"
|
||||||
#include "obs-app.hpp"
|
#include "obs-app.hpp"
|
||||||
#include "slider-ignorewheel.hpp"
|
|
||||||
#include "window-basic-main.hpp"
|
#include "window-basic-main.hpp"
|
||||||
#include "window-basic-settings.hpp"
|
#include "window-basic-settings.hpp"
|
||||||
#include "crash-report.hpp"
|
#include "crash-report.hpp"
|
||||||
|
@ -1722,17 +1720,6 @@ static auto ProfilerFree = [](void *) {
|
||||||
profiler_free();
|
profiler_free();
|
||||||
};
|
};
|
||||||
|
|
||||||
QAccessibleInterface *accessibleFactory(const QString &classname,
|
|
||||||
QObject *object)
|
|
||||||
{
|
|
||||||
if (classname == QLatin1String("VolumeSlider") && object &&
|
|
||||||
object->isWidgetType())
|
|
||||||
return new VolumeAccessibleInterface(
|
|
||||||
static_cast<QWidget *>(object));
|
|
||||||
|
|
||||||
return nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
static const char *run_program_init = "run_program_init";
|
static const char *run_program_init = "run_program_init";
|
||||||
static int run_program(fstream &logFile, int argc, char *argv[])
|
static int run_program(fstream &logFile, int argc, char *argv[])
|
||||||
{
|
{
|
||||||
|
@ -1756,8 +1743,6 @@ static int run_program(fstream &logFile, int argc, char *argv[])
|
||||||
|
|
||||||
OBSApp program(argc, argv, profilerNameStore.get());
|
OBSApp program(argc, argv, profilerNameStore.get());
|
||||||
try {
|
try {
|
||||||
QAccessible::installFactory(accessibleFactory);
|
|
||||||
|
|
||||||
bool created_log = false;
|
bool created_log = false;
|
||||||
|
|
||||||
program.AppInit();
|
program.AppInit();
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
#include "slider-ignorewheel.hpp"
|
#include "slider-ignorewheel.hpp"
|
||||||
#include "volume-control.hpp"
|
|
||||||
|
|
||||||
SliderIgnoreScroll::SliderIgnoreScroll(QWidget *parent) : QSlider(parent)
|
SliderIgnoreScroll::SliderIgnoreScroll(QWidget *parent) : QSlider(parent)
|
||||||
{
|
{
|
||||||
|
@ -21,82 +20,3 @@ void SliderIgnoreScroll::wheelEvent(QWheelEvent *event)
|
||||||
else
|
else
|
||||||
QSlider::wheelEvent(event);
|
QSlider::wheelEvent(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
VolumeSlider::VolumeSlider(obs_fader_t *fader, QWidget *parent)
|
|
||||||
: SliderIgnoreScroll(parent)
|
|
||||||
{
|
|
||||||
fad = fader;
|
|
||||||
}
|
|
||||||
|
|
||||||
VolumeSlider::VolumeSlider(obs_fader_t *fader, Qt::Orientation orientation,
|
|
||||||
QWidget *parent)
|
|
||||||
: SliderIgnoreScroll(orientation, parent)
|
|
||||||
{
|
|
||||||
fad = fader;
|
|
||||||
}
|
|
||||||
|
|
||||||
VolumeAccessibleInterface::VolumeAccessibleInterface(QWidget *w)
|
|
||||||
: QAccessibleWidget(w)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
VolumeSlider *VolumeAccessibleInterface::slider() const
|
|
||||||
{
|
|
||||||
return qobject_cast<VolumeSlider *>(object());
|
|
||||||
}
|
|
||||||
|
|
||||||
QString VolumeAccessibleInterface::text(QAccessible::Text t) const
|
|
||||||
{
|
|
||||||
if (slider()->isVisible()) {
|
|
||||||
switch (t) {
|
|
||||||
case QAccessible::Text::Value:
|
|
||||||
return currentValue().toString();
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return QAccessibleWidget::text(t);
|
|
||||||
}
|
|
||||||
|
|
||||||
QVariant VolumeAccessibleInterface::currentValue() const
|
|
||||||
{
|
|
||||||
QString text;
|
|
||||||
float db = obs_fader_get_db(slider()->fad);
|
|
||||||
|
|
||||||
if (db < -96.0f)
|
|
||||||
text = "-inf dB";
|
|
||||||
else
|
|
||||||
text = QString::number(db, 'f', 1).append(" dB");
|
|
||||||
|
|
||||||
return text;
|
|
||||||
}
|
|
||||||
|
|
||||||
void VolumeAccessibleInterface::setCurrentValue(const QVariant &value)
|
|
||||||
{
|
|
||||||
slider()->setValue(value.toInt());
|
|
||||||
}
|
|
||||||
|
|
||||||
QVariant VolumeAccessibleInterface::maximumValue() const
|
|
||||||
{
|
|
||||||
return slider()->maximum();
|
|
||||||
}
|
|
||||||
|
|
||||||
QVariant VolumeAccessibleInterface::minimumValue() const
|
|
||||||
{
|
|
||||||
return slider()->minimum();
|
|
||||||
}
|
|
||||||
|
|
||||||
QVariant VolumeAccessibleInterface::minimumStepSize() const
|
|
||||||
{
|
|
||||||
return slider()->singleStep();
|
|
||||||
}
|
|
||||||
|
|
||||||
QAccessible::Role VolumeAccessibleInterface::role() const
|
|
||||||
{
|
|
||||||
return QAccessible::Role::Slider;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**QAccessible::State VolumeAccessibleInterface::state() const
|
|
||||||
{
|
|
||||||
return QAccessible::State::
|
|
||||||
}**/
|
|
||||||
|
|
|
@ -1,10 +1,8 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "obs.hpp"
|
|
||||||
#include <QSlider>
|
#include <QSlider>
|
||||||
#include <QInputEvent>
|
#include <QInputEvent>
|
||||||
#include <QtCore/QObject>
|
#include <QtCore/QObject>
|
||||||
#include <QAccessibleWidget>
|
|
||||||
|
|
||||||
class SliderIgnoreScroll : public QSlider {
|
class SliderIgnoreScroll : public QSlider {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
@ -17,35 +15,3 @@ public:
|
||||||
protected:
|
protected:
|
||||||
virtual void wheelEvent(QWheelEvent *event) override;
|
virtual void wheelEvent(QWheelEvent *event) override;
|
||||||
};
|
};
|
||||||
|
|
||||||
class VolumeSlider : public SliderIgnoreScroll {
|
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
|
||||||
obs_fader_t *fad;
|
|
||||||
|
|
||||||
VolumeSlider(obs_fader_t *fader, QWidget *parent = nullptr);
|
|
||||||
VolumeSlider(obs_fader_t *fader, Qt::Orientation orientation,
|
|
||||||
QWidget *parent = nullptr);
|
|
||||||
};
|
|
||||||
|
|
||||||
class VolumeAccessibleInterface : public QAccessibleWidget {
|
|
||||||
|
|
||||||
public:
|
|
||||||
VolumeAccessibleInterface(QWidget *w);
|
|
||||||
|
|
||||||
QVariant currentValue() const;
|
|
||||||
void setCurrentValue(const QVariant &value);
|
|
||||||
|
|
||||||
QVariant maximumValue() const;
|
|
||||||
QVariant minimumValue() const;
|
|
||||||
|
|
||||||
QVariant minimumStepSize() const;
|
|
||||||
|
|
||||||
private:
|
|
||||||
VolumeSlider *slider() const;
|
|
||||||
|
|
||||||
protected:
|
|
||||||
virtual QAccessible::Role role() const override;
|
|
||||||
virtual QString text(QAccessible::Text t) const override;
|
|
||||||
};
|
|
||||||
|
|
|
@ -62,18 +62,12 @@ SourceTreeItem::SourceTreeItem(SourceTree *tree_, OBSSceneItem sceneitem_)
|
||||||
vis->setFixedSize(16, 16);
|
vis->setFixedSize(16, 16);
|
||||||
vis->setChecked(obs_sceneitem_visible(sceneitem));
|
vis->setChecked(obs_sceneitem_visible(sceneitem));
|
||||||
vis->setStyleSheet("background: none");
|
vis->setStyleSheet("background: none");
|
||||||
vis->setAccessibleName(QTStr("Basic.Main.Sources.Visibility"));
|
|
||||||
vis->setAccessibleDescription(
|
|
||||||
QTStr("Basic.Main.Sources.VisibilityDescription").arg(name));
|
|
||||||
|
|
||||||
lock = new LockedCheckBox();
|
lock = new LockedCheckBox();
|
||||||
lock->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
|
lock->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
|
||||||
lock->setFixedSize(16, 16);
|
lock->setFixedSize(16, 16);
|
||||||
lock->setChecked(obs_sceneitem_locked(sceneitem));
|
lock->setChecked(obs_sceneitem_locked(sceneitem));
|
||||||
lock->setStyleSheet("background: none");
|
lock->setStyleSheet("background: none");
|
||||||
lock->setAccessibleName(QTStr("Basic.Main.Sources.Lock"));
|
|
||||||
lock->setAccessibleDescription(
|
|
||||||
QTStr("Basic.Main.Sources.LockDescription").arg(name));
|
|
||||||
|
|
||||||
label = new QLabel(QT_UTF8(name));
|
label = new QLabel(QT_UTF8(name));
|
||||||
label->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
|
label->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
|
||||||
|
@ -113,8 +107,8 @@ SourceTreeItem::SourceTreeItem(SourceTree *tree_, OBSSceneItem sceneitem_)
|
||||||
obs_sceneitem_set_locked(sceneitem, checked);
|
obs_sceneitem_set_locked(sceneitem, checked);
|
||||||
};
|
};
|
||||||
|
|
||||||
connect(vis, &QAbstractButton::toggled, setItemVisible);
|
connect(vis, &QAbstractButton::clicked, setItemVisible);
|
||||||
connect(lock, &QAbstractButton::toggled, setItemLocked);
|
connect(lock, &QAbstractButton::clicked, setItemLocked);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SourceTreeItem::paintEvent(QPaintEvent *event)
|
void SourceTreeItem::paintEvent(QPaintEvent *event)
|
||||||
|
|
|
@ -89,7 +89,7 @@ void VolControl::updateText()
|
||||||
: "VolControl.SliderUnmuted";
|
: "VolControl.SliderUnmuted";
|
||||||
|
|
||||||
QString sourceName = obs_source_get_name(source);
|
QString sourceName = obs_source_get_name(source);
|
||||||
QString accText = QTStr(accTextLookup).arg(sourceName);
|
QString accText = QTStr(accTextLookup).arg(sourceName, db);
|
||||||
|
|
||||||
slider->setAccessibleName(accText);
|
slider->setAccessibleName(accText);
|
||||||
}
|
}
|
||||||
|
@ -161,7 +161,7 @@ VolControl::VolControl(OBSSource source_, bool showConfig, bool vertical)
|
||||||
QHBoxLayout *meterLayout = new QHBoxLayout;
|
QHBoxLayout *meterLayout = new QHBoxLayout;
|
||||||
|
|
||||||
volMeter = new VolumeMeter(nullptr, obs_volmeter, true);
|
volMeter = new VolumeMeter(nullptr, obs_volmeter, true);
|
||||||
slider = new VolumeSlider(obs_fader, Qt::Vertical);
|
slider = new SliderIgnoreScroll(Qt::Vertical);
|
||||||
|
|
||||||
nameLayout->setAlignment(Qt::AlignCenter);
|
nameLayout->setAlignment(Qt::AlignCenter);
|
||||||
meterLayout->setAlignment(Qt::AlignCenter);
|
meterLayout->setAlignment(Qt::AlignCenter);
|
||||||
|
@ -205,7 +205,7 @@ VolControl::VolControl(OBSSource source_, bool showConfig, bool vertical)
|
||||||
QHBoxLayout *botLayout = new QHBoxLayout;
|
QHBoxLayout *botLayout = new QHBoxLayout;
|
||||||
|
|
||||||
volMeter = new VolumeMeter(nullptr, obs_volmeter, false);
|
volMeter = new VolumeMeter(nullptr, obs_volmeter, false);
|
||||||
slider = new VolumeSlider(obs_fader, Qt::Horizontal);
|
slider = new SliderIgnoreScroll(Qt::Horizontal);
|
||||||
|
|
||||||
textLayout->setContentsMargins(0, 0, 0, 0);
|
textLayout->setContentsMargins(0, 0, 0, 0);
|
||||||
textLayout->addWidget(nameLabel);
|
textLayout->addWidget(nameLabel);
|
||||||
|
@ -254,7 +254,7 @@ VolControl::VolControl(OBSSource source_, bool showConfig, bool vertical)
|
||||||
|
|
||||||
QWidget::connect(slider, SIGNAL(valueChanged(int)), this,
|
QWidget::connect(slider, SIGNAL(valueChanged(int)), this,
|
||||||
SLOT(SliderChanged(int)));
|
SLOT(SliderChanged(int)));
|
||||||
QWidget::connect(mute, SIGNAL(toggled(bool)), this,
|
QWidget::connect(mute, SIGNAL(clicked(bool)), this,
|
||||||
SLOT(SetMuted(bool)));
|
SLOT(SetMuted(bool)));
|
||||||
|
|
||||||
obs_fader_attach_source(obs_fader, source);
|
obs_fader_attach_source(obs_fader, source);
|
||||||
|
|
|
@ -1486,7 +1486,7 @@ void OBSBasic::ResetOutputs()
|
||||||
QTStr("Basic.Main.StartReplayBuffer"), this);
|
QTStr("Basic.Main.StartReplayBuffer"), this);
|
||||||
replayBufferButton->setCheckable(true);
|
replayBufferButton->setCheckable(true);
|
||||||
connect(replayBufferButton.data(),
|
connect(replayBufferButton.data(),
|
||||||
&QPushButton::toggled, this,
|
&QPushButton::clicked, this,
|
||||||
&OBSBasic::ReplayBufferClicked);
|
&OBSBasic::ReplayBufferClicked);
|
||||||
|
|
||||||
replayBufferButton->setProperty("themeID",
|
replayBufferButton->setProperty("themeID",
|
||||||
|
@ -7510,7 +7510,7 @@ void OBSBasic::UpdatePause(bool activate)
|
||||||
pause->setChecked(false);
|
pause->setChecked(false);
|
||||||
pause->setProperty("themeID",
|
pause->setProperty("themeID",
|
||||||
QVariant(QStringLiteral("pauseIconSmall")));
|
QVariant(QStringLiteral("pauseIconSmall")));
|
||||||
connect(pause.data(), &QAbstractButton::toggled, this,
|
connect(pause.data(), &QAbstractButton::clicked, this,
|
||||||
&OBSBasic::PauseToggled);
|
&OBSBasic::PauseToggled);
|
||||||
ui->recordingLayout->addWidget(pause.data());
|
ui->recordingLayout->addWidget(pause.data());
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -260,9 +260,10 @@ void OBSBasicSettings::HookWidget(QWidget *widget, const char *signal,
|
||||||
#define COMBO_CHANGED SIGNAL(currentIndexChanged(int))
|
#define COMBO_CHANGED SIGNAL(currentIndexChanged(int))
|
||||||
#define EDIT_CHANGED SIGNAL(textChanged(const QString &))
|
#define EDIT_CHANGED SIGNAL(textChanged(const QString &))
|
||||||
#define CBEDIT_CHANGED SIGNAL(editTextChanged(const QString &))
|
#define CBEDIT_CHANGED SIGNAL(editTextChanged(const QString &))
|
||||||
#define CHECK_CHANGED SIGNAL(toggled(bool))
|
#define CHECK_CHANGED SIGNAL(clicked(bool))
|
||||||
#define SCROLL_CHANGED SIGNAL(valueChanged(int))
|
#define SCROLL_CHANGED SIGNAL(valueChanged(int))
|
||||||
#define DSCROLL_CHANGED SIGNAL(valueChanged(double))
|
#define DSCROLL_CHANGED SIGNAL(valueChanged(double))
|
||||||
|
#define TOGGLE_CHANGED SIGNAL(toggled(bool))
|
||||||
|
|
||||||
#define GENERAL_CHANGED SLOT(GeneralChanged())
|
#define GENERAL_CHANGED SLOT(GeneralChanged())
|
||||||
#define STREAM1_CHANGED SLOT(Stream1Changed())
|
#define STREAM1_CHANGED SLOT(Stream1Changed())
|
||||||
|
@ -725,68 +726,18 @@ OBSBasicSettings::OBSBasicSettings(QWidget *parent)
|
||||||
InitStreamPage();
|
InitStreamPage();
|
||||||
LoadSettings(false);
|
LoadSettings(false);
|
||||||
|
|
||||||
ui->advOutTrack1->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track1"));
|
|
||||||
ui->advOutTrack2->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track2"));
|
|
||||||
ui->advOutTrack3->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track3"));
|
|
||||||
ui->advOutTrack4->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track4"));
|
|
||||||
ui->advOutTrack5->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track5"));
|
|
||||||
ui->advOutTrack6->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track6"));
|
|
||||||
|
|
||||||
ui->advOutRecTrack1->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track1"));
|
|
||||||
ui->advOutRecTrack2->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track2"));
|
|
||||||
ui->advOutRecTrack3->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track3"));
|
|
||||||
ui->advOutRecTrack4->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track4"));
|
|
||||||
ui->advOutRecTrack5->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track5"));
|
|
||||||
ui->advOutRecTrack6->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track6"));
|
|
||||||
|
|
||||||
ui->advOutFFTrack1->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track1"));
|
|
||||||
ui->advOutFFTrack2->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track2"));
|
|
||||||
ui->advOutFFTrack3->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track3"));
|
|
||||||
ui->advOutFFTrack4->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track4"));
|
|
||||||
ui->advOutFFTrack5->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track5"));
|
|
||||||
ui->advOutFFTrack6->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Audio.Track6"));
|
|
||||||
|
|
||||||
ui->snappingEnabled->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.General.Snapping"));
|
|
||||||
ui->systemTrayEnabled->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.General.SysTray"));
|
|
||||||
ui->label_31->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Adv.Recording.RecType"));
|
|
||||||
ui->streamDelayEnable->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Advanced.StreamDelay"));
|
|
||||||
ui->reconnectEnable->setAccessibleName(
|
|
||||||
QTStr("Basic.Settings.Output.Reconnect"));
|
|
||||||
|
|
||||||
// Add warning checks to advanced output recording section controls
|
// Add warning checks to advanced output recording section controls
|
||||||
connect(ui->advOutRecTrack1, SIGNAL(toggled()), this,
|
connect(ui->advOutRecTrack1, SIGNAL(clicked()), this,
|
||||||
SLOT(AdvOutRecCheckWarnings()));
|
SLOT(AdvOutRecCheckWarnings()));
|
||||||
connect(ui->advOutRecTrack2, SIGNAL(toggled()), this,
|
connect(ui->advOutRecTrack2, SIGNAL(clicked()), this,
|
||||||
SLOT(AdvOutRecCheckWarnings()));
|
SLOT(AdvOutRecCheckWarnings()));
|
||||||
connect(ui->advOutRecTrack3, SIGNAL(toggled()), this,
|
connect(ui->advOutRecTrack3, SIGNAL(clicked()), this,
|
||||||
SLOT(AdvOutRecCheckWarnings()));
|
SLOT(AdvOutRecCheckWarnings()));
|
||||||
connect(ui->advOutRecTrack4, SIGNAL(toggled()), this,
|
connect(ui->advOutRecTrack4, SIGNAL(clicked()), this,
|
||||||
SLOT(AdvOutRecCheckWarnings()));
|
SLOT(AdvOutRecCheckWarnings()));
|
||||||
connect(ui->advOutRecTrack5, SIGNAL(toggled()), this,
|
connect(ui->advOutRecTrack5, SIGNAL(clicked()), this,
|
||||||
SLOT(AdvOutRecCheckWarnings()));
|
SLOT(AdvOutRecCheckWarnings()));
|
||||||
connect(ui->advOutRecTrack6, SIGNAL(toggled()), this,
|
connect(ui->advOutRecTrack6, SIGNAL(clicked()), this,
|
||||||
SLOT(AdvOutRecCheckWarnings()));
|
SLOT(AdvOutRecCheckWarnings()));
|
||||||
connect(ui->advOutRecFormat, SIGNAL(currentIndexChanged(int)), this,
|
connect(ui->advOutRecFormat, SIGNAL(currentIndexChanged(int)), this,
|
||||||
SLOT(AdvOutRecCheckWarnings()));
|
SLOT(AdvOutRecCheckWarnings()));
|
||||||
|
|
Loading…
Reference in a new issue