0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 13:08:50 +02:00
Commit Graph

738 Commits

Author SHA1 Message Date
jp9000
7ef3350d50 UI: Do not open properties dialog for groups
On initial creation of an empty group, do not open a properties dialog
for groups.
2018-07-24 02:41:31 -07:00
jp9000
8dc2e6b5fb UI: Add signal for when theme has changed 2018-07-21 19:14:36 -07:00
jp9000
e1ab9a0fc4 UI: Add ability to parse OBSStyle from qss
Adds the ability to set the current palette for the program via adding
"OBSTheme" objects to the qss files.  The values for the OBSTheme object
are the values used by QPalette::ColorRole.

Modifying the global palette allows the ability to easily/quickly look
up application theme colors (especially if you would like to use them
for QML), as well as the ability to fix the hyperlink color issue.  (On
dark themes, links would still be dark blue, causing them to be
difficult to see)
2018-07-21 19:14:36 -07:00
jp9000
310c98e641 UI: Fix bug with advanced output service settings
When the user had advanced output mode selected and they created a new
profile, enforced service settings for advanced output mode would not be
applied because GetDataFromJsonFile would return a nullptr (because the
settings file did not yet exist).  Instead of returning nullptr, always
return a valid data object, and in addition, apply the defaults of the
encoder to pass to obs_service_apply_encoder_settings just to be safe.
2018-07-20 01:57:57 -07:00
jp9000
01ac60c760 UI: Allow alt-cropping on bounding box scene items
Allows the use of alt-cropping on scene items that have bounding box
enabled.  The crop will simply apply to the source within the bounding
box rather than try to do anything fancy.  A simple solution to an
annoying problem.
2018-07-18 22:04:32 -07:00
David Cooper
16e879ca51 libobs/UI: Allow Access To argc/argv
This paves the way for plugins to have access to the argc/argv used
when spawning OBS. Notably, this will allow a patch to obs-browser that
passes through command line arguments on macOS to CEF.
2018-07-18 10:39:39 -07:00
Jim
75d460b2e8
Merge pull request #1353 from cg2121/fix-checkable-buttons
UI: Fix stream button checkable state
2018-07-18 01:28:49 -07:00
Jim
955bc849e0
Merge pull request #1349 from Fenrirthviti/acri-fix
UI: Update Acri theme for disabled buttons
2018-07-18 01:26:51 -07:00
Jim
af596592db
Merge pull request #1326 from admshao/transition_rename_fire_event
UI: Add missing OBS_FRONTEND_EVENT_TRANSITION_LIST_CHANGED
2018-07-18 00:54:46 -07:00
jp9000
573d5719d8 UI: Fix signals for sub-items of groups
Because sub-items of groups can no longer reroute their signals to the
parent scenes of groups, delegates removal handling to SourceTreeItem
instead of OBSBasic.
2018-07-16 19:03:34 -07:00
jp9000
256b7b793d UI: Add OBSBasic::SavingDisabled() function 2018-07-16 19:03:34 -07:00
jp9000
b4f345680f UI: Allow copying/pasting of groups
Allows copying and pasting of groups.  The user can fully duplicate the
group, or create a reference of the group.  The user cannot paste a
reference of the group if it already exists within the same scene
however.
2018-07-16 19:03:34 -07:00
jp9000
5993834815 libobs: Change groups to actual public types
(This commit also modifies UI)

Changes groups to their own independent type, "group".  This allows them
to be used like other regular types, and allows the ability to reference
groups in multiple scenes.  Before, a group would always be linked to
the scene it was in.  This made it cumbersome for users to modify groups
if they had a similar group in multiple scenes (they would have to
modify each group in each scene).  Making groups like other source types
makes more sense to solve this issue so they can be referenced in
multiple scenes at once.  This also removes a significant amount of
group-specific handling code required for implementing groups in the
front-end.

One limitation however: due to the way sub-items of groups are
seamlessly modifiable and sortable as part of the whole scene, the user
cannot have multiple references to the same group within one scene.
2018-07-16 19:01:51 -07:00
jp9000
35704c4c04 libobs: Remove group_sceneitem from obs_scene struct
(This commit also modifies UI)

Removes obs_scene::group_sceneitem and replaces it with
obs_scene::is_group.  Changes a number of other functions related to
groups so that a group is not inherently tied to a specific scene, and
helps allow a single group to be referenced in multiple scenes if
desired.
2018-07-15 19:01:14 -07:00
Shaolin
0c43448ca2 UI: Fix OBS_FRONTEND_EVENT_TRANSITION_LIST_CHANGED
This event is fired during Add/Delete operations but was missing on
renaming a transition.
2018-07-09 19:08:42 -03:00
cg2121
cfa427c44f UI: Fix stream button checkable state
This fixes an issue where the stream button would still be
checked when clicking no on the stream confirmation dialog.
2018-06-27 23:11:10 -05:00
Joel Bethke
5f3464f9cc UI: Update Acri theme for disabled buttons 2018-06-27 19:04:49 -05:00
Colin Edwards
618a1c5faf UI: Add frontend event for when OBS finishes loading 2018-06-26 22:14:05 -05:00
jp9000
b760b24ff0 UI: Fix cramped source tree sub-widgets on macOS 2018-06-20 20:06:36 -07:00
jp9000
78d566916b UI: Fix bug where color property shows transparency
Technically, setting the transparency value via a color property isn't
currently supported.  However, some sources/filters will set their alpha
portion of their color value to 0, which would cause the color property
to have a transparent background.  Set the alpha value to 255 for now,
at least until we properly implement support for setting transparency
via the color property (if we ever do).
2018-06-20 19:21:52 -07:00
jp9000
085af8bb72 UI: Fix display bug with color property
With the recent change to fix showing color in the color property widget
when using different themes (b8f03791ea), a bug was introduced:  when
opening filters with a filter that has a color property, it would sort
of "bug out" and recreate over and over.  This is likely due to
something internally with Qt and the stacked layout.  The stacked layout
really is not necessary, so remove the stacked layout and just use the
color label directly.
2018-06-20 19:21:47 -07:00
Jim
d818377ccb
Merge pull request #1333 from SuslikV/patch-8
UI: If group's name exist, start it from 2
2018-06-19 18:06:38 -07:00
Jim
b8f03791ea
Merge pull request #1305 from JustinLove/use-selected-color-in-color-property-label
Use selected color in color property label
2018-06-17 23:01:25 -07:00
Jim
cd70c2e037
Merge pull request #1292 from pkviet/leaks
Fix several mem leaks
2018-06-17 20:54:10 -07:00
Jim
446dc9fd4b
Merge pull request #1310 from vokama/updated-hotkey-names
libobs, UI: reset hotkey description on target rename
2018-06-16 23:09:06 -07:00
SuslikV
488c087d69
UI: If group's name exist, start it from 2
Currently if you making a new group it named "Group 1" by default
instead of just "Group". This fixes it. The second group will be
named "Group 2".
2018-06-15 12:53:47 +02:00
Shaolin
d7fd29351f UI: Fix mixer dock widget minSize being too big
When the vertical volume meter was introduced it set in the OBSBasic.ui
mixer dock definition a min width/height that was valid for both
widgets. QStackedWidget hints the minimum size as the higher w/h
of its children so this workaround is necessary.
2018-06-12 23:25:38 -03:00
craftwar
b378261bdf UI: Fix mem leak in VolControl 2018-06-07 00:44:59 +02:00
pkviet
15a642291e UI: Fix mem leak with QCompleter 2018-06-07 00:44:29 +02:00
pkviet
7f3464c8ce UI: Fix mem leak with multiview projector menu 2018-06-07 00:44:28 +02:00
pkviet
340c2e5fb7 UI: Fix mem leak with tray menu 2018-06-07 00:44:28 +02:00
pkviet
732617251c UI: Fix mem leak with volume meter 2018-06-07 00:44:28 +02:00
craftwar
36d893db03 UI: Compact ClearVolumeControls()
Closes obsproject/obs-studio#1296
2018-06-05 14:46:02 -07:00
vokama
54ab27bda6 UI: Update hotkey label on quick transition rename 2018-06-05 01:38:19 +03:00
jp9000
88b6c63964 UI: Add grouping 2018-06-04 04:01:39 -07:00
jp9000
46cce067f0 UI: Fix missing newline at the end of a file 2018-06-03 15:04:40 -07:00
jp9000
196eed8e8f UI: Refactor DrawCircleAtPos 2018-06-03 15:04:40 -07:00
jp9000
c7897acddf UI: Use vector value for nudge callback 2018-06-03 15:04:39 -07:00
jp9000
4fd22f1316 UI: Move frontend API initialization to constructor 2018-06-03 15:04:39 -07:00
jp9000
b46fab87b2 UI: Fix a few unused lambda closure captures 2018-06-03 07:24:59 -07:00
Justin Love
a4b2b6f3bf Make alpha visible in property color
Show a light/dark pattern so alpha in the selected color is evident.
2018-05-26 09:23:05 -05:00
Justin Love
86b69b7d24 Use selected color in color property label
Originally wanted to do a separate color swatch, but was stymied by the
single widget reference in WidgetInfo. Using QPalette values achives
basic white/black text for contrast, though it is still possible to
select a color with poor contrast.
2018-05-23 11:50:41 -05:00
Shaolin
c145b129f3 UI: Add new Multiview Layout for up to 24 scenes
The variable name changes were done with the intent to ease the
abstraction of the scene, preview and program width/height size
so its not related with the canvas size but directly related with
our concept of scenes.
2018-05-20 23:20:52 -03:00
Shaolin
b3a4051530 UI: Move more fixed values to multiview update 2018-05-20 23:20:52 -03:00
Shaolin
5921558548 UI: Adjust the multiview num sources by the layout
The variable name changes were done with the intent to ease the
abstraction of the scene, preview and program width/height size
so its not related with the canvas size but directly related with
our concept of scenes.
2018-05-20 23:20:52 -03:00
Shaolin
abb929c0d1 UI: Calculate fixed values of the Multiview once 2018-05-20 23:20:52 -03:00
Shaolin
5b642c14de UI: Move multiview setting checks from draw path 2018-05-20 23:20:52 -03:00
Shaolin
b8966802ef UI: Add option to toggle multiview draw safe area 2018-05-20 23:20:52 -03:00
Shaolin
03de558af1 UI: Update multiview safe areas
Make the safe areas respect the EBU R 95 and Rec. ITU-R BT.1848-1
standards for 16:9 content.
Links: https://tech.ebu.ch/docs/r/r095rev1_March2016.pdf and
https://www.itu.int/dms_pubrec/itu-r/rec/bt/R-REC-BT.1848-1-201510-I!!PDF-E.pdf
2018-05-20 23:20:52 -03:00
Shaolin
4649783b1e UI: Add option to toggle multiview scene names 2018-05-20 23:20:52 -03:00
Shaolin
e0e2cc57a0 UI: Add option to toggle multiview mouse switching 2018-05-20 23:20:52 -03:00
Shaolin
2420d4d31d UI: Move multiview settings to its own groupbox 2018-05-20 23:20:52 -03:00
Shaolin
177ce13655 UI: Update multiview on scene list reorder 2018-05-20 23:20:52 -03:00
Shaolin
09135d6917 UI: Update multiview on resolution change 2018-05-20 23:20:52 -03:00
Shaolin
959bdda48c UI: Adjust multiview label size 2018-05-20 23:20:52 -03:00
Shaolin
b4d2d5d9c4 UI: Add proper source markers to multiview
This ensures the pixel correctness of the sources selection highlight
boxes when on a fullscreen projector.

When on a windowed projector due to the nature of int<->float
conversions and also due to the limited space, some source boxes
might be like 'off-by-one' and barely noticeable.
2018-05-20 23:20:52 -03:00
Shaolin
98839524f7 UI: Simplify multiview draw code 2018-05-20 23:20:52 -03:00
Shaolin
1b357d3b12 UI: Change multiview non-studio selection color
When not in studio mode the preview and program sources are the same
but the checks will be made against GetCurrentSceneSource which were
resulting in the multiview source highlight to give the previewColor
where in this case we want the programColor.
2018-05-20 23:20:52 -03:00
Shaolin
3d189484f9 UI: Remove the outerbox markers in multiview
The same effect is achieved by painting the whole canvas with
the outerColor
2018-05-20 23:20:52 -03:00
Shaolin
40f8d4cfb2 UI: Make the multiview lines use the same color 2018-05-20 23:20:52 -03:00
Shaolin
4ed9d02052 UI: Make the sources border color a little darker 2018-05-20 23:20:52 -03:00
Shaolin
32ee7ee4e2 UI: Clean up Projector Creation
The Init function were only called on projector creation so this isn't
needed to be on a separate function. Its clearer to read the code.
2018-05-20 23:20:52 -03:00
Shaolin
22a1887340 UI: Clean up projector's render regions creation 2018-05-20 23:20:52 -03:00
Shaolin
fc3e85a598 UI: Make multiview colors easier to manage 2018-05-20 23:20:52 -03:00
Shaolin
a142261edd UI: Clarify multiview layout names 2018-05-20 23:20:52 -03:00
Shaolin
b8a901c870 UI: Convert multiview layout string profiles to int
This commit series changes the ini user configuration multiview layout
so that string values were converted to int. In order to prevent past
user saves to break we verify if the ini still have string values and
convert that to int on obs init.

This will make the code easier to maintain in clearer to read the
multiview layout settings, also, makes the addition of new layouts
easier.
2018-05-20 23:20:52 -03:00
Shaolin
b0415621d6 UI: Use enum for multiview layout 2018-05-20 23:20:52 -03:00
Shaolin
c7c328dc83 UI: Add Vertical Mixer option 2018-05-19 00:17:58 -03:00
Shaolin
288339ceda UI: Simplify Volume Control draw logic 2018-05-19 00:12:15 -03:00
Shaolin
5aab9bfb3e UI: Avoid copies in Volume Control 2018-05-19 00:12:15 -03:00
Shaolin
04fa4c49d9 UI: Clean up includes and code-style 2018-05-19 00:12:15 -03:00
Richard Stanway
b0bb067ba8
Use obsproject.com for log file uploads 2018-05-18 15:33:53 +02:00
Jim
f1c1abce55
Merge pull request #1297 from Palakis/preview-scene-event-fix
UI: Fix OBS_FRONTEND_EVENT_PREVIEW_SCENE_CHANGED
2018-05-15 00:14:34 -07:00
jp9000
f81d106b2a UI: Fix OBS_FRONTEND_EVENT_PREVIEW_SCENE_CHANGED
OBS_FRONTEND_EVENT_PREVIEW_SCENE_CHANGED is supposed to be called
whenever the user changes the current preview scene -- it was almost
never being triggered.
2018-05-15 00:49:12 +02:00
jp9000
46f08af5e5 UI: Remove ENABLE_WIN_UPDATE cmake variable 2018-05-12 17:11:02 -07:00
jp9000
d0cc0cc60e UI: Always enable auto-updater for windows
Makes it so the auto-updater does not have to rely on a cmake variable
being set.  Fixes a bug where deployment could accidentally be built
without the auto-updater being enabled.
2018-05-12 17:02:34 -07:00
Alex Anderson
0accb9f865 UI: Fix memory leak when drag/dropping 2018-05-09 12:49:21 -07:00
jp9000
051c58eeb7 UI: Add opt. to enable/disable in-focus hotkey blocking
Adds an option to enable/disable blocking hotkeys when the window is in
focus which is normally used in order to prevent hotkey/shortcut
conflicts.  This does not apply to the settings window; the hotkey
behavior is unchanged with the settings window (in order to prevent
hotkeys from being used while setting hotkeys for example).

Closes obsproject/obs-studio#1267
2018-05-06 17:14:04 -07:00
Ilya Melamed
e265fc92ed UI: Block when calling obs_frontend_set_current_scene
Uses WaitConnection() when calling obs_frontend_set_current_scene to
ensure that the calling thread and the UI thread are synchronized when
setting the current scene via this function.

Closes obsproject/obs-studio#1234
2018-05-04 15:45:27 -07:00
Ilya Melamed
c768f703ad UI: Add obs_frontend_add_scene_collection API call
Allows the ability to add a new scene collection via the frontend API.
Blocks until the scene collection has been successfully added to ensure
synchronization between the calling thread and the UI thread.

(Jim: Added detailed description to commit message)

Closes obsproject/obs-studio#1232
2018-05-04 15:40:53 -07:00
Ilya Melamed
3eec139b2e UI: Use WaitConnection() when adding scenes
Instead of queuing AddScene to add the new scene to the list box,
ensures that the UI has added the new scene to the list box when the new
scene is added.  This ensures synchronization between the calling thread
and the UI thread in this particular case.

(Jim: Added detailed commit message description)

Closes obsproject/obs-studio#1226
2018-05-04 15:38:59 -07:00
jp9000
e7f2cc384d UI: Add WaitConnection() helper func
A helper function used with QMetaObject::invokeMethod which allows the
ability to use Qt::DirectConnection if on the Qt UI thread, or
Qt::BlockingQueuedConnection if on another thread to ensure that
regardless of what thread the invokeMethod is called from, that it will
wait until the invoked method has been called.
2018-05-04 15:30:40 -07:00
Ilya Melamed
2d9691fc23 UI: Use "source_create" to add scenes to listbox
Instead of manually having to call AddScene each time a scene needs to
be added, use the "source_create" global OBS signal to detect when a
scene has been created, and add the scene to the list automatically.
Allows the ability to add scenes to the main user interface via libobs
API.

Closes obsproject/obs-studio#1226
2018-05-04 11:47:54 -07:00
jp9000
72636ca976 UI: Don't defer load on non-macOS systems
Deferred load is used specifically for macOS systems to ensure that Qt
and CEF do not load at the same time.  This causes a slight bit of a
delay in loading the scene after the UI has loaded.  This is not
necessary for other operating systems, so revert to the older load code
in the case of different systems.
2018-05-01 12:01:11 -07:00
jp9000
e9d22bdbd6 UI: Also defer first scene collection load
Fixes a bug where it would try to save the scene before the scene had
been loaded on macOS.
2018-05-01 12:00:17 -07:00
Tjienta Vara
b0f94afaf2 libobs, UI: Add true peak measurements
Add a new algorithm to calculate the true-peak. It implements the
Whittaker- Shannon interpolation from four samples to create 4
intermediate samples (5 x oversampling) inbetween the middle two
samples.

With 4 samples and 4 intermediate samples the algorithm can be
implemented as a 4x4 vector-matrix cross product, which is ideal for
SSE.

I've also replaced the sample-peak algorithm using SSE as well to
improve performance.

Closes obsproject/obs-studio#1189
2018-04-30 03:53:26 -07:00
SuslikV
6e189c156b
UI: Fix no_space file naming for replays
Replays was ignoring user's settings when generating replays filenames.
2018-04-26 17:54:47 +02:00
Jim
76a5cc12a6
Merge pull request #1274 from computerquip-streamlabs/frontend-crash-handling
Separate crash handler from libobs startup
2018-04-25 14:02:49 -07:00
Zachary Lund
308b0add47 UI: Explicitly initialize the crash handler 2018-04-25 12:56:23 -07:00
Cephas Reis
ef41dc53e8 UI: Change remux dialog to be non-modal
Closes obsproject/obs-studio#1266
2018-04-25 06:30:00 -07:00
Jim
9a1c27accb
Merge pull request #1262 from Andersama/patch-12
UI: Disable paste filters unless a source is selected
2018-04-22 23:59:12 -07:00
Alex Anderson
22520c222c UI: Disable paste filters unless a source is selected
Fixes the paste filters right click option to behave like copy.

See: https://obsproject.com/mantis/view.php?id=1220
and #1261
2018-04-22 12:39:31 -07:00
Shaolin
f61090e1ea UI: Set OBS icon to projector and stats window
Closes obsproject/obs-studio#1259
2018-04-22 04:56:45 -07:00
Jim
0acf7e1a09
Merge pull request #1258 from VodBox/monitor-fix
UI: Change monitoring device on profile change
2018-04-22 04:53:53 -07:00
Igor Bochkariov
61839d8c94 UI: Sort audio controls by source name
Audio controls in OBS Mixer and Advanced Audio Properties window are not
sorted at all.  Every time OBS is restarted they get shuffled (Jim note:
This is due to json object hashing).  The order of these controls is
additionally not consistent between the mixer and the advanced audio
properties window.

Closes obsproject/obs-studio#1242
2018-04-20 19:49:26 -07:00
Jim
b4d6f1c996
Merge pull request #1238 from Chiitoo/qt-5.11
[Qt 5.11] Include 'QAction' in 'scripts.cpp' to fix a build failure.
2018-04-20 03:36:11 -07:00
Shaolin
234ed9512d UI: Clean up delete Source/Scene shortcut
The "Delete" shortcut is already set in the UI/forms so the old code
would only change shortcuts in macOS.

Closes obsproject/obs-studio#1212
2018-04-19 21:54:01 -07:00
Murnux
273f5e2bfe UI: Don't close windows for "Always on Top" (win32)
On windows, the "Always on top" state can safely be used without closing
dialogs.

Closes obsproject/obs-studio#1207
2018-04-19 20:47:30 -07:00
jp9000
0d4677f3bc UI: Hold the clip flash for at least one second
Holds the clipping flash for one second to better indicate that clipping
is occurring.

Closes obsproject/obs-studio#1201
2018-04-18 23:49:40 -07:00
Alex Anderson
e92b2560b6 UI: Add Selected and Hidden Array Values
Add Selected and Hidden Array Values

Let developers get and set whether items in an editable list are hidden
or selected. May be useful in when editable lists are modified and
handled in a callback. Especially when edit button callbacks are used.

Closes obsproject/obs-studio#1200
2018-04-18 21:06:16 -07:00
jp9000
4fcc2cccfe UI: Move OpenSavedProjecters call to OBSBasic::Load()
Due to the commit 34c14829b6, source loading is now deferred
to after OBSInit(), which would cause saved scene/source projectors to
no longer load on startup.  This fixes that issue by moving the
OpenSavedProjectors call to OBSBasic::Load().
2018-04-18 19:34:18 -07:00
Jim
7481f5b389
Merge pull request #1195 from admshao/fix-save-projectors-on-exit
Save Windowed Projectors on exit
2018-04-18 19:33:49 -07:00
Shaolin
7fc6ea6ccc UI: Do not generate "already active" logs
When an user launches a multiple instance of obs and don't use the -m
flag, wait until the confirmation to launch to create a new log file.
This avoids a short log with no information when using the Help ->
Update Last Log.

Closes obsproject/obs-studio#1164
2018-04-16 21:31:32 -07:00
jp9000
34c14829b6 UI: Defer startup OBSBasic::Load (macOS CEF workaround)
Adds an alternative means of isolating the CEF initialization process
from Qt's initialization process.  This is an unpleasant hack, but is
far more preferable than isolating the entire browser plugin to a
separate process and overly complexifying the browser plugin to the
point to where no one wants to touch the plugin or contribute to it.
2018-04-12 13:42:15 -07:00
VodBox
e122a07cdd UI: Change monitoring device on profile change 2018-04-11 23:59:34 +12:00
Ilya M
439b9e4d15 UI: Add frontend API to defer saving
Allows the ability to perform multiple actions that would normally save,
and defer the save until all of those actions are complete.

Closes obsproject/obs-studio#1231
2018-04-06 17:34:10 -07:00
jp9000
ceadde0838 UI/updater: Delete visual studio runtimes after execution 2018-03-18 11:12:14 -07:00
Shaolin
9211dba267 UI: Save windowed projectors on exit 2018-03-18 05:11:44 -03:00
Shaolin
3390be50ce UI: Remove a second call to OpenSavedProjectors
OpenSavedProjectors is already called from RefreshSceneCollections
earlier by OBSInit.
2018-03-18 05:11:44 -03:00
Shaolin
8b6641d1a8 UI: Clean up OBSProjector creation 2018-03-18 05:11:44 -03:00
Shaolin
372640ff35 UI: Update Projectors title on source name change 2018-03-18 05:11:44 -03:00
Shaolin
76af4ff36d UI: Clean up save and load projector code 2018-03-18 05:11:44 -03:00
Shaolin
8ec1f97d30 UI: Add helper functions to Projector 2018-03-18 05:11:44 -03:00
Shaolin
e6c00afeac UI: Add Scene to ProjectorType 2018-03-18 05:11:44 -03:00
Shaolin
3952fe2693 UI: Simplify Projector Init 2018-03-18 05:11:44 -03:00
Shaolin
7da90fa25f UI: Refactor Projector OBSRender source usage 2018-03-18 05:11:44 -03:00
Shaolin
abbcb6ae88 UI: Move ProjectorType enum to projector header 2018-03-18 05:11:44 -03:00
Shaolin
c605f74d3f UI: Make OpenSavedProjectors indentation clear 2018-03-18 05:11:44 -03:00
Shaolin
2d864590fe UI: Fix the Multiview window not using translation 2018-03-18 05:11:44 -03:00
Shaolin
cfc2c1373d UI: Check if source is valid earlier 2018-03-18 05:11:44 -03:00
Shaolin
d13b4d35a0 UI: Simplify the OpenProjector logic 2018-03-18 05:11:44 -03:00
Shaolin
dd5e3ef3fe UI: Only load projectors if SaveProjectors is true 2018-03-18 05:11:44 -03:00
Jimi Huotari
4fd06b9825
frontend-tools: Include 'QAction' to fix build against Qt 5.11
Some headers are no longer unconditionally included, leading to
build failures.

http://code.qt.io/cgit/qt/qtbase.git/commit/?id=748836dae80a7d11901f3f0630168829076d11a8
http://code.qt.io/cgit/qt/qtbase.git/commit/?id=000c76ada5cc21479fc479be16a7507fed6490f8
http://code.qt.io/cgit/qt/qtbase.git/commit/?id=058474884c2505a8a00d4c59b4922bfcd3597c2f
2018-03-17 18:38:27 +02:00
jp9000
3b64610717 UI: Add Help -> Crash Reports submenu
Adds the ability to upload crash reports, making it easier for users to
give us crash data.  This should be considered a temporarily solution,
as automated crash reporting should be the ideal solution as soon as
time permits.
2018-03-16 16:27:49 -07:00
jp9000
341bd9bcec UI: Add subdir param to OBSBasic::UploadLog
Allows the ability to get log files from other configuration
subdirectories (i.e. "%appdata%/obs-studio/crashes")
2018-03-16 16:22:37 -07:00
jp9000
d55589ef09 UI: Specify whether crash/profiler/logs have prefix
Adds a "has_prefix" parameter to delete_oldest_file and get_last_log in
order to determine whether the file has a prefix when parsing its
timestamp.  For example, crash logs are prefixed with "Crash", and thus
it was unable to get the timestamp because it couldn't parse the
filename correctly due to that fact.
2018-03-16 16:17:56 -07:00
jp9000
27e3ea5b5f UI: Specify subdir/variable to save to for get_last_log 2018-03-16 16:15:44 -07:00
Jim
89c81933d4
Merge pull request #1219 from cg2121/linux-delete-checkforupdates
UI: Remove check for updates on Linux
2018-03-15 17:43:13 -07:00
Jim
a960994ced
Merge pull request #1225 from admshao/refresh-projector-monitor-list
Refresh projector display list
2018-03-15 17:41:25 -07:00
Jim
ff011db3e2
Merge pull request #1209 from VodBox/log-swap
UI: Replace gist for log uploads
2018-03-15 15:35:55 -07:00
VodBox
840f9b7d3c UI: Replace gist with hastebin for log uploads 2018-03-16 11:19:03 +13:00
jp9000
b7e2247de2 UI/updater: Return false on integrity check failure 2018-03-15 12:11:46 -07:00
jp9000
052f395ebf UI/updater: Don't update modules of opposite arch
Saves a bit of bandwidth when the update module just updates binaries
for the specific architecture being updated.  Especially true when
libcef needs to be updated.
2018-03-15 12:06:06 -07:00
jp9000
aab6b3f55f UI/updater: Add automatic check/install for VS2017 redist
Allows users to seamlessly upgrade the version of OBS Studio to the
newer version which is built with VS2017 rather than VS2013.
2018-03-15 12:04:02 -07:00
jp9000
06d1f2768e UI/updater: Fix a few type size mismatch warnings 2018-03-15 12:04:02 -07:00
jp9000
efe67ad3fd UI/updater: Fix resource compiling bug
The afxres.h header file typically requires MFC to be installed, but
winres.h should be sufficient instead.
2018-03-15 12:04:02 -07:00
jp9000
5063644831 UI/updater: Fix bug with restrict keyword on VS2017 2018-03-15 12:04:02 -07:00
jp9000
588d74dee1 UI/updater: Set license of windows update module to ISC
This is just for the update module -- allows us the ability to
seamlessly update the program to VC2017 and seamlessly install Visual
C++ 2017 redistributables without potential issues that could be caused
by GPL usage for the update module.
2018-03-15 12:04:02 -07:00
jp9000
77da6158a4 UI/updater: Rewrite function 2018-03-15 12:04:02 -07:00
Gol-D-Ace
88282c168c Update translations from Crowdin 2018-03-15 09:00:28 +01:00
Shaolin
229feefbb9 UI: Refresh multiview projector menu per click 2018-03-15 04:24:20 -03:00
Shaolin
39a40764e6 UI: Refresh system tray projector menu per click 2018-03-14 21:41:15 -03:00
Shaolin
179cbd48f0 UI: Remove unnecessary casts 2018-03-14 21:41:15 -03:00
cg2121
4d478c5ca5 UI: Remove check for updates on Linux 2018-03-12 19:56:07 -05:00
Jim
c210f1042f
Merge pull request #1172 from Jack0r/master
UI: Allow nested docks
2018-02-27 05:47:02 -08:00
jamacanbacn
8a59d68e47 libobs: Fix property text typo
(This commit also modifies UI)

Closes jp9000/obs-studio#1204
2018-02-27 05:37:40 -08:00
Jim
acf7d12b7d
Merge pull request #1165 from admshao/audio-source-bounding-box
UI: Don't draw bounding boxes for sources without video flag
2018-02-27 02:46:12 -08:00
jp9000
d603ffc401 UI: Remove duplicate line 2018-02-22 15:01:31 -08:00
jp9000
f0f0d2c8f6 UI: Remove __FUNCTION__ usage
This code was originally tested with visual C, which supports using
__FUNCTION__ in this way.  These potential error cases shouldn't
technically happen anyway, so just remove __FUNCTION__.
2018-02-08 07:34:36 -08:00
Michel
32e60ba65f UI: Import scene collection with correct filename
OBS assumes the name of the imported json file is also the name
of the scene collection, if the filename is different this can result
in duplicate scene collections after importing.

Closes jp9000/obs-studio#1177
2018-02-08 07:20:53 -08:00
Colin Edwards
f53bd0ef11 UI: Link Qt5::MacExtras 2018-02-06 19:50:16 -06:00
Jim
b2d9c4f4e5
Merge pull request #1180 from OsirisNL/fix_sources_context_menu
UI: Fix grayed out Copy option in sources context menu
2018-02-06 05:01:34 -08:00
jp9000
a2ae16e98c deps/obs-scripting: Allow NULL script with script_log
(This commit also modifies the frontend-tools module)

Prevents a potential crash when script_log is called by a thread spawned
by a python library.
2018-01-31 16:20:45 -08:00
Michel
70fdd17287 UI: Fix grayed out Copy option in sources context menu
This fixes a problem introduced in #1050 where the Copy option would
be grayed out when rightclicking a source above the currently selected
source. This also retains the functionality of not having the Copy option
enabled when no source is selected.
2018-01-31 21:01:46 +01:00
Colin Edwards
3ea5e99d0f CI: Update python rpath on osx 2018-01-29 18:12:32 -06:00
Robin Hielscher
a7bb82acdb UI: Allow nested docks
This change enables the ability to use nested docks, with the dependency of Qt5.10 or later being used to build OBS. 

Similar to the Lock UI option we could add a toggle to the menu. Not sure if this is necessary, maybe you guys have some ideas.

Example screenshots of nesting OBS:
http://img.jack0r.com/Share/obs64_2018-01-29_01-03-34.png
http://img.jack0r.com/Share/obs64_2018-01-29_00-10-24.png
2018-01-29 01:12:59 +01:00
jp9000
dce311cf1a deps/obs-scripting: Make ENABLE_SCRIPTING a user variable
Makes it so that the scripting cmake variable ENABLE_SCRIPTING is a user
variable rather than a global internal cmake variable, and defers the
internal global cmake variable to SCRIPTING_ENABLED instead.
2018-01-23 20:57:48 -08:00
Warchamp7
0029bce7ae UI: Acri theme adjustments
Fixing a reference to Rachni theme folder, some minor tweaks and
reverting volume meter foreground colors to original brightness.

Closes jp9000/obs-studio#1169
2018-01-22 14:21:15 -08:00
jp9000
ee563f874f UI: Reduce size of "refresh" icons 2018-01-22 07:29:50 -08:00
Palakis
632596bb6b UI: fix Multiview labels readability 2018-01-22 14:00:41 +01:00
Gol-D-Ace
ae22886f67 Update translations from Crowdin 2018-01-22 04:55:52 +01:00
Shaolin
679a731964 UI: Don't draw bounding boxes for sources without video flag
Audio Input or Output, for instance, don't have the OBS_SOURCE_VIDEO
output flag so there is no need to draw the compositing helper bounding
boxes.
2018-01-22 00:41:09 -02:00
jp9000
bd0983a89e UI: Add simple output mode encoder fallback
Prevents simple output mode from getting stuck on an encoder that may
not be available suddenly for whatever reason (system device changes,
driver issues, etc).  If the encoder is no longer available, falls back
to x264 to ensure that the user can continue to use the program.
2018-01-20 13:58:02 -08:00
jp9000
f09f94b8a8 frontend-plugins: Only show script file names in script dialog
Showing the full directory path is sort of unnecessary and makes the
list look pretty unsightly.
2018-01-20 13:58:02 -08:00
Jim
f1d5d60435
Merge pull request #1151 from VodBox/command-line-args
UI: Add Command Line Arguments to log
2018-01-20 11:32:15 -08:00
VodBox
f6544dd802 UI: Add command line arguments to log 2018-01-20 15:12:57 +13:00
jp9000
f956203764 frontend-tools: Fix a few issues with the clock source script
Fix the image files not being freed, and remove the unused source
definition function 'update', which was additionally calling
image_source_load with the wrong number of parameters.
2018-01-19 11:28:44 -08:00
jp9000
a95a8723fb frontend-tools: Add script to update text source from URL
Adds a python example script which updates a text source to the text
retrieved from a specific URL that refreshes every specified interval.
2018-01-19 11:17:38 -08:00
Colin Edwards
1c3f18a75a frontend-tools: Add a lua script that draws an analog clock
Closes jp9000/obs-studio#1159
2018-01-19 08:27:55 -08:00
Shaolin
53d936c5dc UI: Add audio meter decay rate option
The decay rate of the audio meters can now be selected in the audio
settings.  The values are:

- "Fast"   (OBS default, 40 dB / 1.7s)
- "Medium" (Type I PPM,  20 dB / 1.7s)
- "Slow"   (Type II PPM, 24 dB / 2.8s)

Closes jp9000/obs-studio#1143
2018-01-19 05:49:21 -08:00
Richard Stanway
bba37a7069 UI: Optimize theme PNG images (smaller files) 2018-01-19 08:24:09 +00:00
jp9000
00e7a84050 frontend-tools: Add "Clear" button to script log window 2018-01-18 14:42:24 -08:00
jp9000
b1e6af319c frontend-tools: Warn if no active replay buffer w/ instant replay 2018-01-18 14:41:19 -08:00
jp9000
5982a8cd28 frontend-tools: Make instant replay script also save replay
With the "instant-replay.lua" script, it would only play the last replay
buffer saved, meaning the user would have to save a replay with the
replay buffer hotkey, and then press the "Play Last Replay" hotkey to
play the last replay buffer.

Instead, combine the two and make the script save the replay
automatically first, and then play it back as soon as it's available.
This makes it actually qualify as an "instant replay" script, as its
name implies.
2018-01-18 14:24:17 -08:00
jp9000
ba1a70c1a0 frontend-tools: Add "instant replay" script
A script that plays back the last replay buffer in the specified media
source.
2018-01-18 08:59:59 -08:00
Warchamp7
303ba1dfbd UI: Add Acri theme
Closes jp9000/obs-studio#1150
2018-01-18 01:45:49 -08:00
jp9000
3a1603d905 UI: Set max size for names in name dlg. to 256 2018-01-17 02:59:46 -08:00
jp9000
44f4f4366b UI: Use snprintf and std::string when creating profiles 2018-01-17 02:59:18 -08:00
Jim
47f42d025f
Merge pull request #1149 from Fenrirthviti/dark-theme-fix
UI: Fix tab bars for docked widgets in Dark theme
2018-01-16 05:48:37 -08:00
Jim
8d60404663
Merge pull request #1155 from DDRBoxman/scripting
deps/obs-scripting: Various scripting fixes
2018-01-16 05:24:26 -08:00
jp9000
17d2a17f9e UI: Put clip detection back in to volume meter
Before the new volume meters were implemented, the meter would flash red
if the audio was clipping.  This functionality was removed when the
meters were changed, whether intentionally or unintentionally, and this
patch puts that functionality back in.  If clipping occurs, the meters
will be fully colored with the foregroundErrorColor value while the
clipping is occurring.
2018-01-15 23:55:03 -08:00
Colin Edwards
c9224edbad UI: Set linker flags required for luajit on OSX 2018-01-15 20:39:01 -06:00
Joel Bethke
5c5f4033ff UI: Fix tab bars for docked widgets in Dark theme 2018-01-13 18:22:17 -06:00
jp9000
ba75dd6a70 UI: Disable Youtube bandwidth test (for now)
Due to reports that the bandwidth test is randomly causing community
strikes on Youtube (likely due to bad automatic detection), the
bandwidth test will be disabled for Youtube until the Youtube API is
implemented.
2018-01-10 22:13:01 -08:00
jp9000
9d4be5e575 UI: Fix warning 2018-01-10 21:41:07 -08:00
jp9000
0389ecf9f0 UI: Use GDI+ text for multiview on windows
Fixes an issue where text would not have language glyph fallback if
another language would used.  This problem still needs a solution on
linux/mac (and preferably a fix for language glyph fallbacks when using
freetype 2 in general).
2018-01-10 21:36:17 -08:00
Colin Edwards
ed917657eb UI: Fix qpushbutton menu icon
Closes jp9000/obs-studio#1141
2018-01-09 18:36:38 -08:00
Colin Edwards
3f5c28d631 UI: Style dock widgets in dark and rachni themes
Closes jp9000/obs-studio#1141
2018-01-09 18:36:31 -08:00
Shaolin
9872e4d525 UI: Add the "-60" volume control marker 2018-01-09 18:55:41 -02:00
jp9000
e038bd8e55 UI: Change default theme to dark for new users 2018-01-08 17:40:24 -08:00
jp9000
9b9d57a7ee frontend-plugins: Add "Description" string 2018-01-07 20:07:42 -08:00
jp9000
ba2c54f1fd frontend-plugins: Remove unused strings 2018-01-07 20:07:42 -08:00
Jim
e7aab8b4b8
Merge pull request #1128 from takev/volume-meters
UI: Rework volume-meters, adding more information
2018-01-07 13:57:21 -08:00
Jim
932ff14cd4
Merge pull request #1109 from MattMcNam/fix-double-confirm-dialog
ui: Fix unsaved changes dialog showing twice
2018-01-06 09:42:12 -08:00
Jim
09049bdbc0
Merge pull request #1118 from admshao/multiview-click-to-change
UI: Add Click capabilities and Multiple Layouts to Multiview
2018-01-05 22:52:29 -08:00
Matt Morrissette
5e741b8a5b UI: Add frontend API funcs for enabling/disable preview
Closes jp9000/obs-studio#1106
2018-01-05 14:57:53 -08:00
Jim
619618ac8d
Merge pull request #1129 from Fenrirthviti/help-menu
UI: Add help portal link to help menu
2018-01-05 14:08:35 -08:00
Shaolin
abc26b87fe UI: Add Multiview Layout Options 2018-01-05 19:26:30 -02:00
Shaolin
864caee16c UI: Add Single/Double click options to Multiview
The click to select scenes follows the same rules
as the main UI. The double click respects the option
under Settings -> General -> Studio -> Transition
to scene when Double Clicked.
2018-01-05 19:25:08 -02:00
Joel Bethke
2959b22bfb UI: Add help portal link to help menu 2018-01-05 15:20:39 -06:00