Commit Graph

910 Commits (a345b509660b80800765759ce5a3e6ab4cbb3f0a)

Author SHA1 Message Date
jp9000 24bcfacea5 UI: Improve/refactor autoconfig/settings service UI
Makes it so that services can have custom handling on a per-service
basis.  The bottom part of the service pane is now a stacked widget
which can now be customized for different types of services
(particularly OAuth services).
2019-02-07 14:47:02 -08:00
jp9000 dcf48e8ffc UI: Add function for adding extra docks to main window 2019-02-07 14:47:02 -08:00
jp9000 412520c5d0 UI: Make assignDockToggle an actual function
Allows using it outside of the constructor.
2019-02-07 14:47:02 -08:00
jp9000 b89c2b76d3 UI: Add function to get main window more easily
Adds OBSBasic::Get() to just quickly return the main window.
2019-02-07 14:47:01 -08:00
jp9000 a0eab1a2ad UI: Add functions for executing funcs without blocking
Adds functions for executing functions within separate threads without
blocking the user interface, or by blocking the user interface with a
dialog box.
2019-02-07 14:47:01 -08:00
jp9000 74cda9a2cc UI: Add CreateQThread helper function
Allows creating a QThread via an std::function.  A backward-compatible
alternative to QThread::create for Qt versions older than 5.10 (when it
became available in Qt).
2019-02-07 14:47:01 -08:00
jp9000 58f4a6390f UI: Unlock UI by default 2019-02-07 14:47:01 -08:00
jp9000 08e6dcd516 UI: Add alternate constructor for RemoteTextThread
Allows specifying extra headers.
2019-02-07 14:47:00 -08:00
jp9000 44834bbf04 UI: Add timeout parameter to RemoteTextThread
Allows specifying a timeout for the operation.
2019-02-07 14:47:00 -08:00
jp9000 4ba48484ae UI: Only def. BROWSER_AVAILABLE for WIN32 (for now)
Currently, browser panel is only supported on windows.  So rather than
have to check for _WIN32 in the code everywhere, just move the WIN32
check to cmake, that way we don't have to have _WIN32 checks in the code
everywhere the browser panel code is used, and do not have to remove a
whole bunch of unnecessary _WIN32 #ifdefs for other operating systems
when browser panel support is added for them.
2019-02-05 19:20:59 -08:00
jp9000 c482f463e0 UI: Remove "service type" from auto-config stream page
The "Custom" service has been moved, and is now an item called "Custom"
in the "Services" combo box.  This simplifies the stream page of
auto-configuration and removes an unnecessary widget.  Overall a minor
but nice slimline/improvement on user experience.
2019-02-05 18:45:05 -08:00
Kevin Ross a5fac7d78c UI: Enable high DPI scaling, for Qt >= 5.11
Closes obsproject/obs-studio#1602
2019-02-04 21:36:17 -06:00
Luke Granger-Brown 0c69f457a1 UI: Use Next button for GPL license page in windows installer
The GPL is not an EULA and thus it doesn't need to be agreed to.

See also:
https://github.com/HandBrake/HandBrake/pull/1776
c07d721462

Closes obsproject/obs-studio#1597
2019-02-04 21:21:17 -06:00
VodBox 86ce0e9652 frontend-tools: Call modified prop callbacks on script load/reload
This change means that the modified callback for a scripts properties is
always called when first loaded or on a reload. This behavior matches
the properties view for sources, where all modified callbacks are called
when the window opens. This change therefore treats reloading as
equivalent to reopening.
2019-02-04 19:49:34 +13:00
Stéphane L a8944d0a34 UI: add a default black background to the PGM output of the multiview 2019-02-02 15:42:12 +01:00
Matt Gajownik 4b9d050b33 UI: Automatically generate Windows file description
This defines the main OBS Windows executable with a resource file,
including a version number accessible externally and a File
description which appears in Windows Task Manager.
2019-02-02 11:22:31 +11:00
Colin Edwards b5e656828f
Merge pull request #1615 from restreamio/restream_auto_config
UI: Add support for Restream "Auto" server in auto-config
2019-02-01 18:12:19 -06:00
ty2570 a20aeb8362 UI: Clear out previous projectors when loading saved projectors
Closes obsproject/obs-studio#1544
2019-01-31 21:46:32 -06:00
pkv 1f5dd38a40 UI: Fix audio recording for lossless simple (#1616)
The first audio track was not recorded following the API changes for
 custom ffmpeg recording (adding multi-track support).
 This fixes the issue (spotted by EposVox, thanks to him for the report).
2019-01-30 22:58:22 -06:00
pkv 62fa2b0086 UI: Fix a series of mem leaks (#1614)
* UI: Fix mem leak with projectors

* UI: Fix mem leak with ScaleFilteringMenu

* UI: Fix mem leak with sourceProjector

* UI: Fix leak with preview projector in Source menu and Preview

* UI: Fix mem leaks with background color menu

* UI: Fix leak with deinterlace Menu

* UI: Fix leak with scene transition override menu

* UI: Fix leak with scene projector menu

* UI: Fix leak with filter shortcut in Main

* UI: Fix leak with filter shortcut in stats
2019-01-30 20:33:15 -06:00
jp9000 8f52179912 UI: Fix accessibility/narration text on sources list
Fixes the narration reading (for the blind) for items in the sources
list; previously they would not be read due to the new custom model.
This issue is solved by returning the name of item in the form of a
QVariant of a QString returned from the QAbstractItemModel::data virtual
function when the Qt::AccessibleTextRole role is used.
2019-01-20 00:55:56 -08:00
SoftArch 88c10380e5 UI: Add support for Restream "Auto" server in auto-config
Uses the "Auto" server automatically for Restream rather than doing a region-based test on multiple servers.
2019-01-19 22:24:01 +02:00
jp9000 87ca80deac UI: Fix infinitely incrementing showing ref 2019-01-13 21:00:46 -08:00
jp9000 8dc7e4a558 UI: Set minimum negative sync offset to -950
Prevents audio from cutting out below the -1000 offset (approximate)
threshold.
2019-01-12 18:12:53 -08:00
jp9000 8f106dc3c1 libobs, UI: Do not log redundant warnings
Reduces log file clutter by not logging certain warning messages that
were already safe/normal/expected failures.
2019-01-12 16:50:55 -08:00
jp9000 455187e6e4 UI: Add date/time to log file
Although log files are saved with the date in the name of the log file,
it's also nice to be able to see it inside the log file itself,
especially when uploaded to a text service.
2019-01-12 16:35:43 -08:00
Jim 3225359e6c
Merge pull request #1587 from VodBox/sc-export-save
UI: Save scene collection before export
2019-01-05 10:47:29 -08:00
bth 12265ac449 UI: Fix Defaults button not triggering UI update
Update all UI at default values when clicks "Defaults" button in the
source Properties.

This fixes mantis issue 1242.

Closes obsproject/obs-studio#1592
2019-01-05 07:12:02 -08:00
Jim 06f0203b22
Merge pull request #1581 from rkfg/dev
UI: Support fractional scaling
2019-01-04 16:05:50 -08:00
VodBox ab6c3e0f4b UI: Save scene collection before export 2018-12-21 11:26:13 +13:00
rkfg 4e9e692a69 UI: Support fractional scaling
On Linux the preview widget scaling uses only the integer part of the
scale. This results in a partially non-repainting window that looks
buggy and annoying.
2018-12-20 19:34:40 +03:00
pkviet d5fbb97990 UI: Revert default tab in Settings > Output: Advanced to Stream tab
Commit 2fedcab987 changed the default index for widget "advOutTabs"
in OBSBasicSettings.ui; revert to index 0 (stream tab).
2018-12-20 03:27:21 +01:00
probonopd f1b9f6b3ce UI: Show "OBS Studio" in linux desktop link
Closes obsproject/obs-studio#1563
2018-12-07 12:51:09 -08:00
pkviet 736b7f0d35 UI: Fix display of mono source with surround output
A mono input with surround output is upmixed by swresampler by routing
it to FC (front center) by default which corresponds to third channel
for 3.0, 4.0, 4.1, 5.0, 5.1, 7.1. (The other channels are muted.)
But the volume meters are set to show the first channel for mono sources.
Therefore although audio is processed, it would not show on the meter.
This fixes this display issue.

Closes obsproject/obs-studio#1540
2018-12-07 12:38:17 -08:00
Olivier Humbert 711230e627 UI: Add French to UI/dist/obs.desktop
Closes obsproject/obs-studio#1551
2018-12-06 05:43:17 -08:00
jp9000 2168458601 UI: Add /LARGEADDRESSAWARE for MSVC x86 executable
Use /LARGEADDRESSAWARE linker option when compiling 32bit executables on
Windows.

Closes obsproject/obs-studio#1546
2018-12-04 08:56:58 -08:00
Jim 884e61f078
Merge pull request #1538 from cg2121/fix-batch-remux-warning
UI: Fix batch remux compiler warning
2018-12-03 14:41:12 -08:00
Jim 64104e6e35
Merge pull request #1531 from SuslikV/patch-8
UI: Remove scrollbar line controls for Dark theme
2018-12-03 06:13:51 -08:00
Jim 4f706a1b78
Merge pull request #1523 from cg2121/fix-saved-projectors-bug
UI: Fix bug when loading saved projectors
2018-12-03 05:28:14 -08:00
Jim 1db398ad8c
Merge pull request #1518 from fredemmott/stopping-on-delay-stop
ui: Emit STREAMING_STOPPING when stop queued
2018-12-03 04:27:18 -08:00
Clayton Groeneveld 92f44fe080 UI: Fix batch remux compiler warning 2018-11-06 06:52:01 -06:00
SuslikV 7656ee95db
UI: Remove scrollbar line controls for Dark theme
Fixes an issue when it's hard to perform drag-by-mouse move of the
scrollbar while handle is at corner and has minimum size.

Info: the handle minimum size styled as 20px, while add/sub-line is
14px, thus only 6px left for mouse drag when handle resides at corner.
While handle styled to cover whole bar including, subcontrol elements,
it is better to remove the hidden subcontrols completely.
2018-10-26 18:46:24 +02:00
Colin Edwards 22fdda311d Decklink: add UI to control output 2018-10-23 18:57:17 -05:00
Clayton Groeneveld 271322bf65 UI: Fix bug when loading saved projectors
This fixes a bug on Linux where fullscreen projectors wouldn't
quite be fullscreen when loaded on start.
2018-10-22 00:32:57 -05:00
Fred Emmott bab9d6e96d
UI: Emit STREAMING_STOPPING event immediately
If there's a delay, it will *also* be ommitted after the appropriate
number of seconds.

I was originally going to add a new event for this, however this is
consistent with STREAMING_STARTING, which is emitted at the start
of the delay, not the end.
2018-10-17 18:52:20 -07:00
pkviet 047e586eaf UI: Add multi-track FFmpeg output support 2018-10-04 20:32:35 -07:00
Terje Gundersen 8b98568bbc UI: Don't transition if already transitioning (studio mode)
Closes obsproject/obs-studio#1304
2018-10-01 19:37:33 -07:00
Clayton Groeneveld e8687b0965 UI: Fix typo with resize output text 2018-09-27 18:46:41 -05:00
Jim 94e44e698e
Merge pull request #1497 from cg2121/fix-autoremux-warning
UI: Fix auto remux warning
2018-09-25 15:05:54 -07:00
Clayton Groeneveld c74e70ce49 UI: Fix auto remux warning
This fixes the QAbstractItemModel invalid index warning.
2018-09-25 14:19:50 -05:00
Clayton Groeneveld b85f9236d8 UI: Change resize output text
The text for resizing the output based on source is inaccurate
because base and canvas are the same thing.
2018-09-23 20:42:05 -05:00
Jim e08e3c9c29
Merge pull request #1441 from cg2121/auto-remux-refactor
UI: Add option to auto remux
2018-09-21 15:47:46 -07:00
Jim b4d179461e
Merge pull request #1458 from cg2121/dynamic-output-size
UI: Add ability to resize output based on source size
2018-09-19 15:56:42 -07:00
cg2121 7f9109091d UI: Add ability to resize output based on source size 2018-09-18 23:13:12 -05:00
cg2121 2fedcab987 UI: Add option to auto remux 2018-09-18 20:55:12 -05:00
jp9000 977a21b684 UI: Remove '?' from remux title bar 2018-09-18 17:00:01 -07:00
jp9000 cb4d2ff7fa cmake: Find Qt first before going to subdirectories 2018-09-18 10:03:07 -07:00
Jim f23c19fd14
Merge pull request #1492 from Dmitry-Me/properSizeComputation
UI: Fix array length computation
2018-09-18 09:00:20 -07:00
jp9000 8b936a1575 cmake: Fix UI being dependent on browser plugin files
The UI currently is dependent on browser source files being present,
when in actuality the files may not have been fetched (i.e. not fetching
submodules).  This fixes that by using a macro to detect whether it's
available or not.

Closes obsproject/obs-studio#1490
2018-09-18 08:56:34 -07:00
Dmitry-Me 5b92cee48f UI: Fix array length computation 2018-09-18 16:27:23 +03:00
SuslikV a6c8cdec00
UI: Fix scrollbar misalignment for Acri theme
Fixes an issue with horizontal scrollbar when it was hard to drag it by
mouse in Acri theme, because active area was thinner than the visible
scroll handle.
2018-09-17 14:41:46 +02:00
SuslikV ac783946d0
UI: Fix scrollbar handle alignment for Dark theme
Fixes an issue when it was hard to drag by mouse the scroll handle in
Dark theme if scroll handle size is close to full size
(https://obsproject.com/mantis/view.php?id=466) or close to minimal
size.

Also, the mouse pointer was misaligned to the scroll handle when
moving: the scroll handle always moves faster than mouse pointer itself
and finishes first.
2018-09-17 14:29:29 +02:00
Shaolin 823c34f848 UI: Fix system tray context menu creation
On KDE and Unity some QT events aren't triggered as explicit stated
by QT doc.  This is needed to at least show a fixed Context Menu.

Closes obsproject/obs-studio#1252
2018-09-16 16:25:17 -07:00
Shaolin e650162608 UI: Organize unused/duplicate includes 2018-09-16 16:25:17 -07:00
jp9000 e51adb0fdf UI: Undo/fix stats dock changes to main window
The stats dock was incorrectly added to the .ui file, causing the stats
dock to show by default on startup, and just generally causing a bad
default startup UI appearance.  This fixes that by adding the stats dock
programmatically/dynamically instead of modifying the .ui file.
2018-09-16 12:47:21 -07:00
Marvin Scholz 8c4b496ea0 UI: Add 4th aux audio input device
Closes obsproject/obs-studio#1343
2018-09-15 12:34:53 -07:00
jp9000 7bbdace1a9 frontend-tools: Increase instant replay playback retry interval 2018-09-15 12:05:45 -07:00
Exeldro 79ff554f90 frontend-tools: Add VLC support to instant replay script
Add support for using the VLC source to play instant replays.

Closes obsproject/obs-studio#1334
2018-09-15 12:04:25 -07:00
nleseul 797b3dc121 UI: Batch remux and drag/drop support on remux dialog
This changes the remux dialog to support a collection of input/output
pairs, presented as a QTableView.  Standard Qt icons are used to
indicate the state of each entry during a remux operation.  Drag/drop
support is added to populate the list quickly.  Both Dark and Rachni
themes are updated to make QTableView look reasonable.

Relevant text is added in the localization files.

Closes obsproject/obs-studio#1153
2018-09-14 02:04:28 -07:00
Jim 4659efc791
Merge pull request #1486 from cg2121/about-dialog-styling
UI: Change about dialog bottom color (light theme)
2018-09-13 19:53:03 -07:00
Clayton Groeneveld 11cd83edf5 UI: Change about dialog bottom color (light theme)
This changes the bottom area color for the about dialog
for the light theme. This color makes it more consistent
for the theme.
2018-09-13 19:46:11 -05:00
Jim 179239b471
Merge pull request #1450 from WizardCM/dark-theme-updates
UI: Dark theme padding and alignment fixes
2018-09-13 01:09:50 -07:00
jp9000 b3ef46d986 cmake: Make static VC runtime libraries consistent
Makes Visual C runtime libraries consistent across
Debug/MinSizeRel/Release/RelWithDebInfo, rather than just changing those
flags for RelWithDebInfo.  Also adds /Zl for statically linked
libraries.

Closes obsproject/obs-studio#1421
2018-09-12 07:49:13 -07:00
cg2121 0ae8a7c0ac UI: Add ability to style preview background color 2018-09-10 04:55:15 -05:00
Matt Gajownik 643b2538d7 UI: Dark theme padding and alignment fixes 2018-09-10 19:03:14 +10:00
Jim 8e53932afd
Merge pull request #1406 from VodBox/hotkey-search
UI: Add Search to Hotkeys settings menu
2018-09-10 01:08:38 -07:00
VodBox 22f6d3fea5 UI: Add Filter to Hotkeys settings menu
This commit adds a filter bar to the top of the hotkeys settings menu,
with it set to look for matches anywhere in the string label for that
hotkey.
2018-09-10 09:31:04 +12:00
cg2121 79aaa32ba2 UI: Set about dialog as non-resizable 2018-09-08 13:28:56 -05:00
Jim 78d940e0f4
Merge pull request #1346 from dtcooper/master
libobs/UI: Allow Access To argc/argv
2018-09-08 01:29:43 -07:00
Jim 413e8e6a7b
Merge pull request #1442 from cg2121/stereo-audio-balancing
UI: Implement stereo balancing
2018-09-07 21:28:56 -07:00
cg2121 11f1442a3c UI: Add ability to reset sliders when double clicked 2018-09-07 09:27:20 -05:00
cg2121 a4a7deeed6 UI: Implement stereo balancing 2018-09-07 09:27:14 -05:00
cg2121 8882cfc484 UI: Remove license agreement dialog 2018-09-07 06:08:31 -05:00
cg2121 36b0ef5b7e UI: Add about dialog 2018-09-07 06:08:31 -05:00
Jim 06488a55ce
Merge pull request #1416 from admshao/cleanup-macro-declaration
Cleanup Compilation warnings
2018-09-07 00:51:58 -07:00
Shaolin b5ee8a9a5d UI: Prevent format-truncation compiler warning
Variables path and dir with the same declared size triggers a compiler
warning about possible truncation. Although, depending on the path
where profiles are stored, its still possible to go beyong the declared
size and the path will be invalid. This will not trigger any
compilation warning and all invalid paths will be cought by the already
check in the os_glob function.
2018-09-06 22:10:29 -03:00
Jim f1b3fcee0d
Merge pull request #1429 from SuslikV/patch-8
UI: Use themeID for red message in settings view
2018-09-05 21:59:26 -07:00
Jim e299946b41
Merge pull request #1454 from Andersama/dockable-stats
UI: Make stats dockable
2018-09-05 21:04:19 -07:00
Shaolin f8dfa4cb70 UI: Fix not all projectors using ProjectorAlwaysOnTop 2018-09-04 23:29:37 -03:00
Jim e9141de841
Merge pull request #1444 from DungFu/retina-icons
UI: Add retina support and updated icons
2018-09-01 21:50:34 -07:00
Jim 270709bec1
Merge pull request #1445 from Dmitry-Me/unifyParametersNames
UI: Name parameters in definition same as in declaration
2018-09-01 21:24:07 -07:00
Jim 0738035275
Merge pull request #1455 from Andersama/delete-shortcut-filters
UI: Add various shortcuts for filters window
2018-09-01 19:45:37 -07:00
DungFu d70352a6ce UI: Add retina support and updated icons
OBS Studio currently does not support retina rendering for any of the
images in the app. This adds support for retina pixmap rendering as
well as adding higher resolution versions of each icon that was not
a high enough resolution to support 2x. The icons work when switching
themes and will only render the 2x versions when the device pixel
ratio is greater than or equal to 2.

I also added credits to the readme for images that were already being
used that require credit to the author. If the OBS community has
paid for these images already, I can remove the credits from the
readme. The credit is for the invisible, visible, and gear icons.
2018-08-31 23:00:23 -07:00
Shaolin 6c17c10e77 UI: Add rename scene/source shortcut
This creates a hidden QAction in sceneDocks and sourceDocks so we can
assign a shortcut to perform the renaming action.
2018-08-31 22:08:53 -03:00
jp9000 11b84a5d85 UI/updater: Fix update bug for 32bit/64bit installs
It would only check whether it should download a package if the 32bit
version existed.  This would cause it to not download all files
correctly to update 64bit installs (post 22.0.1).
2018-08-31 03:05:15 -07:00
jp9000 62cd0e8759 Revert "UI: Do not fire load events until program loaded"
This reverts commit 2ce4696541.
2018-08-29 16:05:29 -07:00
jp9000 da40615132 Revert "UI: Reset sources list manually on first load"
This reverts commit fba2ff8b2c.
2018-08-29 16:05:25 -07:00
jp9000 4b534a0583 UI: Always show filter preview if video source 2018-08-29 15:52:59 -07:00
jp9000 fba2ff8b2c UI: Reset sources list manually on first load 2018-08-29 13:06:12 -07:00
jp9000 76a050ee04 UI: Remove "Beta" from auto-config tools menu text 2018-08-29 10:04:03 -07:00
jp9000 f239740d7b UI: Make sure quick transition hotkey is not zeroed
Fixes a bug where removing quick transitions with no hotkey would
unintentionally remove the "start streaming" hotkey.  Hotkeys must be
initialized to OBS_INVALID_HOTKEY_ID (-1) instead of 0.  Hotkeys should
really be one-based rather than zero-based.
2018-08-29 09:36:19 -07:00
jp9000 2ce4696541 UI: Do not fire load events until program loaded 2018-08-29 09:36:19 -07:00
Jim 86b7b0b6d5
Merge pull request #1457 from admshao/fix-projectors-always-on-top
UI: Use AlwaysOnTop option for windowed projectors
2018-08-29 09:08:59 -07:00
Shaolin 1ccbc3c68e UI: Use AlwaysOnTop option for windowed projectors 2018-08-29 02:17:11 -03:00
Jim 37f861396e
Merge pull request #1456 from admshao/multiview-click-crash-fix
UI: Fix a rare multiview crash when clicked
2018-08-28 21:40:24 -07:00
Shaolin 4264361469 UI: Fix a rare multiview crash when clicked
This was triggered by openning a fullscreen projector and trying to alt
tab. The projector was still on top but the first click on a KDE system
was returning a NULL activeWindow.
2018-08-29 00:51:45 -03:00
jp9000 4e97b1bb30 UI: Fix macOS bug (scrollbar blocking lock icons)
Normally on macOS, scrollbars are supposed to appear/disappear as you
scroll, but they would be on top of the content you're scrolling.
However, Qt has a bug where if you apply a custom theme to scroll bars,
they no longer disappear.  This causes things under the scrollbar (such
as the lock icons in the sources list) to disappear under the scrollbar,
because macOS normally expects those scrollbars to face out.  This fixes
that issue by adding a space to the end of the sources list box items to
allow space for the scrollbar.
2018-08-28 20:38:31 -07:00
Alex Anderson 975722f472 UI: Add ctrl+up/down shorcuts to move filters around
Adds the same shortcuts in order to move filters around like sources
2018-08-28 20:34:09 -07:00
Alex Anderson 05e06b9af1 UI: Add delete as shortcut for removing filters
Delete key now should prompt to remove filters
2018-08-28 20:12:08 -07:00
Alex Anderson 4df790a471 UI: Make stats dockable
Adds a new dock out of the stats widget.
2018-08-28 14:40:31 -07:00
jp9000 1f1120f4a4 UI: Remove beta warning from auto-config wizard 2018-08-28 12:31:57 -07:00
jp9000 864e3698e8 UI: Fix filter layout issue
In commit 57f8c5e3, a stretch spacer was put in to the filter window UI,
which was meant to be used when there's no video for the source.
However, it was always put in, and would stretch the layout even when
there was video.  This fixes that issue by only inserting a stretch
spacer when there's no video for the source.
2018-08-27 17:49:04 -07:00
Richard Stanway 2fd15b0357
UI/updater: Add missing header 2018-08-27 15:07:16 +02:00
jp9000 02bdccc6ad UI: Select item that user adds
When a user adds an item (either by adding or copying an item), select
it.  Fixes a bug with copying and pasting sources where the pasted
source will not have the copied transform applied to it.
2018-08-26 22:02:11 -07:00
jp9000 1c2f6fafee UI: Set browser hwaccel def. to false if winver <=7
Due to reports of issues with Windows 7, if the user is on windows
version 7 or below, set the default for "Browser Source Hardware
Acceleration" to false instead of true.  This ensures optimal user
experience and still allows those who had it working to continue using
it if they so choose.

Exact cause for this issue on Windows 7 is currently unknown.
2018-08-26 12:26:31 -07:00
Richard Stanway 5ed235306e
UI: Close remux output before showing dialog 2018-08-26 19:34:38 +02:00
Jim 1e4c3516af
Merge pull request #1443 from DDRBoxman/fontpicker
UI: Use QT font picker on OSX
2018-08-23 15:55:12 -07:00
Dmitry-Me 31e8377b30 UI: Name parameters in definition same as in declaration 2018-08-23 16:46:17 +03:00
Colin Edwards 6f71afd527 UI: Use QT font picker on OSX 2018-08-22 21:23:00 -05:00
pkviet fdb622a069 UI: Fix path for File > Show Recordings
In main menu, File > Show Recordings does not show the path for ffmpeg
custom output when it is selected in Settings.
This fixes the issue.
2018-08-20 01:36:23 +02:00
Shaolin f452c09f82 UI: Fix mixer context menu toggling layout on kde
This is a weird one. On KDE just clicking in the options or right
clicking the empty space areas of the mixer dock would trigger a layout
change.

This fixes mantis #1256
2018-08-19 04:57:16 -03:00
jp9000 b7e1ace3bb UI: Fix snapping of group sub-items
Sub-items would incorrectly calculate as having bounds of {0,0} - {0,0}
because it did not enumerate group sub-items, so group sub-items would
not snap correctly.  This fixes group sub-item snapping so that bounds
of group sub-items are calculated, transformed by their group, and added
to the snapping boundary.  Bounds of group sub-items will now snap as
though they were normal items.
2018-08-18 04:32:17 -07:00
Ryan Foster e7a961e0c3 UI: Remove warning when using separate QSV encoders
The ability to use multiple separate QSV encoders was added in Pull
Request #1341 (commit 3a08e858a6).
This error message was left in place, so let's remove it now.
2018-08-17 23:35:31 -04:00
Gol-D-Ace 415b8a3197 Update translations from Crowdin
Missed one string.
2018-08-18 04:34:06 +02:00
Gol-D-Ace a79aaa28ab Update translations from Crowdin 2018-08-18 04:16:35 +02:00
Richard Stanway 7a9a1fa2c9
updater: Prepare for transition to Fastly CDN 2018-08-18 01:32:36 +02:00
Jim d6699ed85d
Merge pull request #1411 from RytoEX/update-log-bitness
UI: Make OBS bitness more specific in title bar and log
2018-08-17 14:59:45 -07:00
Jim 2f33988aea
Merge pull request #1427 from Fenrirthviti/theme-fixes
UI: Theme fixes
2018-08-17 10:36:29 -07:00
DungFu 5cbc78b0a9 UI: Hide Dock Icon on Mac OSX when minimizing to tray
This hides the dock icon when minimizing OBS to the tray on OSX. This
also fixes the bugs with minimizing on startup (and hides the dock icon
correctly in that case as well).

Closes obsproject/obs-studio#1430
2018-08-17 10:34:11 -07:00
Joel Bethke b58f5c7d4b UI: Update Acri theme 2018-08-17 12:16:20 -05:00
Andreas Reischuck 71d2e870bb UI: Fix multiview hang
This could cause an infinite recursion if "show_in_multiview" was false
for a scene.

Closes obsproject/obs-studio#1426
2018-08-17 09:22:32 -07:00
jp9000 8208a54df0 Revert "UI: Use qss themeID for red labels in properties view"
This reverts commit 10022a41a9.
2018-08-17 08:19:41 -07:00
SuslikV 31debcbcd5
UI: Use themeID for red message in settings view 2018-08-17 08:17:38 +02:00
Joel Bethke 98b9f7036d UI: Fix dark theme link color 2018-08-16 16:46:22 -05:00
Joel Bethke 0cdd8fab32 UI: Update Rachni theme
Fixes a few small issues with the new SourceTree, warning/error
labels, and properties view colors.
2018-08-16 16:46:13 -05:00
jp9000 10022a41a9 UI: Use qss themeID for red labels in properties view 2018-08-16 13:19:15 -07:00
jp9000 fb4a29a751 UI: Use theme for red message in audio settings 2018-08-16 13:15:43 -07:00
jp9000 90327563e8 UI: Allow centering/stretching for groups items 2018-08-16 12:42:23 -07:00
jp9000 448399d5ea UI: Fix group sub-item selection bug
If a group's sub-item is selected in the list box and you select the
group via the preview, the sub-item would be deselected, but that
deselection would not be applied to the sub-item in the list box despite
being deselected.
2018-08-16 12:40:45 -07:00
jp9000 62d08fe38f UI: Fix flip/rotate transform menu with group items
Fixes an issue where the user could not perform a horizontal/vertical
flip, or rotate group sub-items via the transform context menu.
2018-08-16 08:44:42 -07:00
jp9000 b5022385d1 UI: Fix bug grabbing handles of group sub-items
When a group's transform was scaled down, that scale would not apply to
grabbing the handles of sub-items, so the "handle radius" would
incorrectly be miscalculated (the handle radius calculation for the
sub-item would be scaled down by the parent's scaling, making it too
small to grab).  Instead of calculating relative to the current parent,
this fixes the issue by operating in screen space at all times.
2018-08-16 04:49:21 -07:00
Jim 2541be5b11
Merge pull request #1352 from cg2121/replay-buffer-button-checkable
UI: Set replay buffer button as checkable
2018-08-15 11:35:33 -07:00
cg2121 b0b6f1f0e2 UI: Set replay buffer button as checkable 2018-08-15 12:27:32 -05:00
jp9000 07813e2bd0 UI: Allow resetting transform of group sub-items 2018-08-15 10:01:48 -07:00
jp9000 7bc3c87163 UI: Allow the transform dialog for group sub-sources 2018-08-14 13:05:34 -07:00
jp9000 fb58bcf75f UI: If users renames a source, only revert on Esc
Fixes a design flaw where if renaming a source, the source's name would
revert if you de-focused (clicked away) from the rename edit widget.
Instead, the functionality for revert should really only just be when
the user presses the Escape key.
2018-08-14 13:03:07 -07:00
jp9000 ee513000dc UI: Protect GUID generation in mutex
GUID can be generated/retrieved by both the updater thread and the main
thread, so make sure it's guarded by a mutex.
2018-08-13 01:19:23 -07:00
jp9000 e189082439 UI: Make the information dialog a big wider
Fixes an issue where the web page could have both horizontal and
vertical scrollbars, making the information dialog page look a bit
unsightly.
2018-08-13 01:19:23 -07:00
jp9000 fc9393324c UI: Add release candidate checking to info dialog
Allows the ability to specify release candidate versions in the
whatsnew.json in order to allow startup information dialogs to be
displayed to the user which are specific to release candidates.
2018-08-13 01:19:23 -07:00
jp9000 4d38e054e3 UI: Add adv. settings checkbox for browser HW accel
Adds a checkbox to advanced settings that allows the user to
enable/disable browser source hardware acceleration on windows.
2018-08-10 06:33:41 -07:00
jp9000 c7a2a674bc UI: Use NVIDIA laptop GPU hint
Changes the default "preferred" GPU to the NVIDIA GPU when running the
program on NVIDIA laptops.
2018-08-10 06:09:23 -07:00
Ryan Foster 5fd8ebd14c UI: Make OBS bitness more specific in title bar and log
This commit explicitly puts "32-bit" in the title bar and OBS log for
32-bit versions of OBS. It also changes "64bit" to "64-bit" to match the
string used for Windows version info.
2018-08-07 01:15:03 -04:00
Richard Stanway 4e07ac17d9
Merge pull request #1401 from Dmitry-Me/addMissingVaEnd02
UI: Add missing va_end() call
2018-08-05 22:15:10 +02:00
Ryan Foster 3f7458fe51 UI: Remove QNetworkReply from window-basic-main.hpp
QNetworkReply was added here in commit
5ba8b09c9c. Qt5Network was replaced in
commits 13bed1a448 and
39d1cda4e9, but this one line referring to
QNetworkReply remained. Let's finally remove it.
2018-08-05 01:44:12 -04:00
jp9000 5b091ce06d UI: Use obsproject.com URL for discord invite 2018-08-03 00:33:06 -07:00
Dmitry-Me 440baa3147 UI: Add missing va_end() call 2018-08-02 15:57:35 +03:00
Jim 9565f9cd0c
Merge pull request #1332 from Andersama/patch-21
UI: Hide preview for sources and filters where possible
2018-08-01 23:05:45 -07:00
jp9000 16ead25dd3 UI: Add ability to join discord server from help menu 2018-08-01 18:41:57 -07:00
VodBox 0dca4318b2 UI: Add Color Coding to Source Tree Widget
This commit adds the ability to select a background color for a
scene-item, whether it's a custom color or one of eight presets.

As this is an initial implementation, it lacks theme customizability,
and it also lacks the ability for the user to set their own preset
colors, so only the hard-coded 8 are available.
2018-08-02 08:23:12 +12:00
Dmitry-Me a5eb2b8e7e UI: Add missing return statement 2018-08-01 11:04:25 +03:00
Jim 6905b22c5f
Merge pull request #1391 from Dmitry-Me/fixPotentialNullDeref01
UI: Check pointer before the first dereference
2018-07-31 22:37:12 -07:00
cg2121 2e18745c37 UI: Uncheck record/replay buffer buttons if fail
Closes obsproject/obs-studio#1375
2018-07-31 21:35:06 -07:00
jp9000 b6665f9cc0 UI: Use QScopedPointer (not QPointer) where applicable
Contrary to what the name would have you believe, QPointer<> is not used
to delete a pointer when it leaves its specific scope.  Instead, it's
used to check to see if the pointer is still valid.  For most
QWidget-based objects, this is actually fine because QWidgets that are
assigned to layouts or other widgets will automatically be destroyed --
however, for non-widget objects, this can cause a memory leak.

This patch replaces QPointer with QScopedPointer where applicable to
prevent memory leaks.

Closes obsproject/obs-studio#1367
2018-07-31 21:14:52 -07:00
Alex Anderson 57f8c5e328 UI: Hide preview for sources and filters where possible
Hides the preview window for audio sources in the properties menu and
contextually in the filters menu to save on gui space.
2018-07-31 13:14:32 -07:00
Ryan Foster b5e0544c2b UI: Fix disabled items in Dark theme being too light
In the Dark theme, disabled UI elements had text that was too close in
color to enabled UI elements. This commit switches them to use the
"light" palette color instead of the "lighter" palette color.
2018-07-31 12:10:13 -04:00
cg2121 8f4edede4a UI: Add confirmation dialog if there are no sources
This adds a confirmation dialog for streaming or recording if
there are no sources.

Closes obsproject/obs-studio#1344
2018-07-31 04:28:43 -07:00
Dmitry-Me 69f217003b UI: Check pointer before the first dereference 2018-07-30 15:11:41 +03:00
jp9000 a032bcc798 UI: Add intro startup page (windows)
Allows the ability to show a web page via CEF to the users on startup to
present and announce new features.
2018-07-29 23:32:23 -07:00
Richard Stanway 2d60c89a02
UI: Only allow stream/record hotkeys if the UI buttons are enabled
Currently the only thing preventing a user from trying to start multiple
streams or recordings is the UI buttons being disabled. The hotkey code
allowed the user to bypass that, which for streaming resulted in lots of
rtmp output connect threads spawning, which stomped all over each
other's data structures and resulted in crashes.
2018-07-28 15:27:49 +02:00
Jim 324fcbcd92
Merge pull request #1386 from RytoEX/qt-511
CI: Update to Qt 5.11.1
2018-07-27 21:21:24 -07:00
Ryan Foster 2129d12143 frontend-tools: Add QAction explicitly for Qt 5.11 compatibility 2018-07-25 11:59:58 -04:00
Shaolin be8189b0f8 UI: Fix start up crash with saved projectors
This fixes a crash in case the user selected the option to save
projectors on exit and had multiple monitors at that time. Later on,
when obs is started again if the monitor list is lower now the open
projector code will return null when trying to create the saved
projector.

Just check if the returned projector pointer is valid before trying
to restore the saved geometry.
2018-07-24 17:43:58 -03:00
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