This changes all of the icons from png to svg. With svgs, scaling is
unlimited. With the svgs, the issue of the @ symbols with the Windows
updater is no longer an issue.
I changed the colors of the icons to a light gray (#d2d2d2), in the
dark themes, because I thought they looked better with this color.
The mute, unmute, plus, minus, up, down and expand icons are from the
Feather Icons set. https://feathericons.com/
The visibility icon is from the Octicons set. https://octicons.github.com/
The locked and unlocked icons are from the Open Iconic set.
https://github.com/iconic/open-iconic
For the "ignore wheel" widgets, do not leave focus on mouse leave
events. This causes unintended side effects such as not being able to
type in edit boxes, and is very annoying.
This commit fixes a bug where the user would have to restart OBS when
certain types of devices are unplugged and plugged back in again
(particularly USB devices). A wait interval is required
(RECONNECT_INTERVAL) because Windows does not send any events to
IAudioCaptureClient on device invalidation.
This commit fixes the issue of being able to scroll through the mixer
with the mouse wheel without modifying the volume slider. This
functionality can be temporarily restored by holding a click on the
volume meter.
The line drawing functions previously assumed the upper-left 3x3 for
box_transform only held scale. The matrix can also hold rotation, so
pass in scale separately.
Fixes https://obsproject.com/mantis/view.php?id=1442
Property groups allow multiple properties to be combined into a single
visual group and thus can be used to reduce visual clutter and improve
user experience by giving additional context to a property. The name of
a child of a group is not affected by the group and thus all property
names must still be unique.
A new parent field has been added to obs_properties_t to ease the
tracking of existing properties. That way properties inside a group will
also be able to verify that they have a unique name.
Don't override the theme color settings for the Projector.
If required, the background color of the projector can be changed via
OBSProjector {qproperty-...}
record placed after "OBSQTDisplay {qproperty-...}" section in the theme
file (qss).
If custom theme for obs UI has no record about background custom
property in the qss file, then application can set random color per
display initialization. This fixes this issue.