Commit Graph

180 Commits

Author SHA1 Message Date
Martin Piatka
0a5657685c GUI: Use get_temp_dir() for preview 2022-09-13 13:54:24 +02:00
Martin Piatka
415be28119 GUI: Get random control socket port by binding to 0
This lowers the chance of getting an already used port. This is still
not perfect as the port could still be taken before ug starts, but
should be good enough until we invert the client-server relationship
between gui and ug for control-port.
2022-08-22 15:30:07 +02:00
Martin Piatka
d084b4d74e GUI: pick a random port for control port 2022-08-19 14:38:03 +02:00
Martin Piatka
11df451c58 GUI: vuMeter: Set port on each ug launch 2022-08-18 16:41:51 +02:00
Martin Piatka
4502da9c3c GUI: vuMeter: ability to set port 2022-08-18 16:41:48 +02:00
Martin Piatka
2a78639120 GUI: vuMeter: move connection deleter to cpp file 2022-08-18 16:40:36 +02:00
Martin Piatka
c26c99b299 GUI: vuMeter: move ctor/dtor to cpp file 2022-08-18 16:23:20 +02:00
Martin Piatka
072b96d602 GUI: vuMeter: Use delete functor for connection 2022-08-17 16:13:41 +02:00
Martin Piatka
571dace83b GUI: vuMeter: Improve reconnection logic 2022-08-17 16:13:40 +02:00
Martin Piatka
b33b64c923 GUI: vuMeter: Remove unused variable and includes 2022-08-17 16:10:50 +02:00
Martin Piatka
2e96274af7 GUI: Don't exit() on close event
Allows all destructors to run on exit. This was probably used to work
around a deadlock, but is perhaps not necessary anymore. There may still
be however a delay of a few seconds because of the vuMeters
connection loop.
2022-08-17 16:10:49 +02:00
Martin Piatka
f6100f1f66 GUI: workaround qmake not knowing about c++17 2022-08-16 10:32:55 +02:00
Martin Piatka
66a7a3058a GUI: settings: replace QRandomGenerator by std random 2022-08-16 10:32:55 +02:00
Martin Piatka
95d064d41a GUI: Use random key for preview sockets 2022-08-16 10:32:55 +02:00
Martin Piatka
80a2540c8b GUI: previewWidget: take key as string_view 2022-08-16 10:31:50 +02:00
Martin Piatka
7509ec4c9a GUI: settings: generate a random string as preview key 2022-08-16 10:31:50 +02:00
Martin Piatka
9f21eba57d GUI: Bump C++ version to c++17 2022-08-16 10:00:00 +02:00
Martin Piatka
09ba7d0dad GUI: Remove unnecessary spacer 2022-06-28 16:50:28 +02:00
Martin Piatka
9daac0b249 GUI: Adjust layout resizing behaviour
* Layout groupboxes directly in grid layout
* Disable combo boxes resizing based on contents (sizeAdjustPolicy)
* Reduce minimum combo box width to 8
2022-06-28 16:50:28 +02:00
Martin Piatka
25f528fd93 GUI: Fix blocking process termination 2022-06-24 13:40:24 +02:00
Martin Piatka
d201d382c3 GUI/preview: Fix loading non multiple of 4 width textures 2022-06-24 13:40:24 +02:00
Martin Piatka
e835a6b983 GUI/preview: Add "debug.hpp" include to satisfy assert 2022-06-24 13:40:24 +02:00
Martin Piatka
ca620bc6cc GUI: switch to unix socket based preview 2022-06-24 13:40:24 +02:00
Martin Piatka
4e0e35d3de GUI: Set default surface format before creating window
This fixes "OpenGL 3.3 needed" error on MacOS introduced in
33219c3687
2022-06-20 13:29:09 +02:00
Martin Piatka
7ac17735c0 GUI: Fix assert condition 2022-06-20 10:28:09 +02:00
Martin Piatka
060f31aa2f GUI: Fix preview not updating on input change on win32 2022-06-15 12:58:02 +02:00
Martin Piatka
14fdb7b395 GUI: processMngr: verify that process started 2022-06-10 14:33:34 +02:00
Martin Piatka
07c44d499a GUI: Add ASSERT_GUI macro with a QMessageBox 2022-06-10 14:33:33 +02:00
Martin Piatka
1c817b003c GUI: Do not treat ug exiting by itself as a crash 2022-06-10 14:33:33 +02:00
Martin Piatka
bb93f54614 GUI: Reduce preview launch timeout 2022-06-10 14:33:33 +02:00
Martin Piatka
6d6762c7e5 GUI: Add DEBUG_ASSERT 2022-06-10 14:33:32 +02:00
Martin Piatka
c987f17986 GUI: Stop ultragrid processes asynchronously
Blocking until the process is finished was not very robust - in some
cases it could cause a deadlock preventing graceful exit. For example,
if the ug process is communicating with GUI through a socket and uses
blocking send - ug will wait for GUI to receive the data and GUI will
block waiting for ug to terminate.

Using this approach also allows to ignore crashes on exit, which are not
really worth reporting.
2022-06-10 14:33:32 +02:00
Martin Piatka
cc3a28d095 GUI: When killing processes leave a message in log
When ug process doesn't respond to termination GUI needs to kill it.
This makes the return code equal to 9 and GUI complains about a crash.
Without a message in the log this could have been confusing.
2022-06-09 12:57:37 +02:00
Martin Piatka
1749ad4398 GUI: preview: don't needlessly repeat gl calls
*setting attrib ptrs needs to be done only once
*don't update the texture on every draw
2022-05-31 14:19:50 +02:00
Martin Piatka
dd37b3f1ee GUI/preview: Split frame loading into a function 2022-05-31 14:16:27 +02:00
Martin Piatka
597cd2bb8c GUI: preview: make gl context current before getting funcs 2022-05-31 14:16:27 +02:00
Martin Piatka
33219c3687 GUI: Open the window as soon as possible
With this change the window should appear immediately. It will still be
unusable and frozen until all capababilities are queried, but should at
least give the user some indication that something is happening.
2022-05-31 14:03:49 +02:00
Martin Piatka
ab5f025ef2 GUI/qmake: compile astat directly
A bit simpler and prevents needless recompilation if the files don't
change
2022-05-27 11:34:35 +02:00
Martin Pulec
d5e0ac7354 GUI: missing override warning fix 2022-05-23 10:13:12 +02:00
Martin Piatka
588ce18c52 GUI/vuMeter: Simplify a bit 2022-03-24 14:38:35 +01:00
Martin Piatka
243c7e112a GUI: Fix warnings about local helper functions 2022-03-24 14:38:35 +01:00
Martin Piatka
2f63651d6f GUI/preview: Properly free gl objects, fix coverity uninit warn 2022-03-24 14:38:34 +01:00
Martin Piatka
6008925116 Makefile: Make GUI compilation less verbose 2022-03-23 10:00:30 +01:00
Martin Piatka
4badf76d92 GUI: Fix direct OpenGL calls 2022-03-09 14:56:43 +01:00
Martin Pulec
bbcf9e3e87 Added NDI branding 2022-01-12 13:48:00 +01:00
Martin Pulec
dcbfdf3e82 Basic Qt6 compat 2021-04-08 13:57:45 +02:00
Martin Piatka
41775b81d4 GUI: Move the "Advanced" menu item to settings with better name
Probably all of the useful devices are now reported by capabilities, so
it's likely to be not even needed, so to avoid confusion it's moved into
the settings window and given a more descriptive name
2021-03-15 14:59:55 +01:00
Martin Piatka
cf357e516c GUI: Fix inconsistent formatting 2021-03-15 14:59:54 +01:00
Martin Piatka
152f8d95b0 GUI: Parse embedded audio support 2021-03-15 14:59:54 +01:00
Martin Piatka
15f5234b5f GUI: Remove unneeded video codec array 2021-03-12 13:48:04 +01:00