Cameron Gutman
d1ccd19fcc
Make StreamingPreferences a proper singleton
...
This removes the need for several hacks in SettingsView to force updates and improves performance by not reloading preferences all over the place.
2024-04-14 13:01:30 -05:00
Cameron Gutman
74d452bf35
Limit mDNS resolution retry count
2024-04-06 12:40:32 -05:00
Cameron Gutman
49e0679864
Synchronize with possible concurrent writers to the NvComputer object
2023-10-01 17:46:27 -05:00
Cameron Gutman
0976bc39b3
Only reserialize hosts if a serializable attribute changed
2023-10-01 17:28:06 -05:00
Cameron Gutman
facd6e4e56
Revert "Batch delayed flushes to improve performance on macOS"
...
This reverts commit aa74e6930b
.
2023-10-01 16:33:14 -05:00
Cameron Gutman
aa74e6930b
Batch delayed flushes to improve performance on macOS
2023-10-01 15:26:28 -05:00
Cameron Gutman
2252abefbf
Fix build break on Qt 5.10 and earlier
2023-07-16 00:13:09 -05:00
Cameron Gutman
ef988cc8af
Destroy the QMdnsEngine Server and Cache when not polling
...
These set background timers to refresh state, rebind sockets,
and refresh the cache. This is all stuff that we don't want to
be doing while streaming.
2023-06-21 00:54:11 -05:00
Cameron Gutman
5bfe56472f
Fix build
2022-10-25 02:08:46 -05:00
Cameron Gutman
16a9ed682e
Use a single flush thread for ComputerManager
...
Some QSettings backends don't like concurrent writes and using a
single thread improves write batching behavior.
2022-10-25 02:07:16 -05:00
Cameron Gutman
cebd3bf751
Save hosts on a separate thread
...
QSettings on macOS Ventura performs horribly when saving a lot of values
(like several hosts or a host with a large app list). This change considerably
improves UI performance by moving the long operation off the main thread.
2022-10-25 00:07:07 -05:00
Cameron Gutman
692942e5be
Move PIN generation into ComputerManager to be shared with CLI pairing
2022-08-24 00:21:25 -05:00
Cameron Gutman
f4acd629a1
Save hosts immediately after pairing concludes to ensure the server cert is persisted
2022-08-24 00:20:22 -05:00
Cameron Gutman
fa3f822cf1
Rework handling of addresses to allow alternate HTTP ports
2021-07-02 23:34:54 -05:00
Cameron Gutman
2fbb320539
Refuse to stream if Moonlight is known incompatible with the host GFE version
2021-04-30 20:05:49 -05:00
Cameron Gutman
1ebb5fefb1
Address Clazy warnings
2021-03-02 18:14:15 -06:00
Cameron Gutman
ad08440023
Test for blocked ports when adding a PC fails
2020-08-08 18:11:25 -07:00
Cameron Gutman
539bf0cb30
Add support for hiding games
...
Fixes #255
2020-08-01 21:06:01 -07:00
Cameron Gutman
b75f662c41
Add the ability to rename PCs
2020-05-01 18:34:15 -07:00
Cameron Gutman
1640bed7a5
Improve reliability of mDNS discovery
2019-08-04 18:04:33 -07:00
Cameron Gutman
6f9c3fbc38
Add support for zero configuration IPv6 streaming
2019-07-14 17:56:57 -07:00
Cameron Gutman
2354a0a640
Fix unresponsive GUI on quit if a polling operation is in progress
2019-04-06 13:11:36 -07:00
Cameron Gutman
75f631599c
Ensure all polling threads are dead before destroying hosts, even ones that have been detached by stopPollingAsync()
2019-01-19 19:18:50 -08:00
Cameron Gutman
5029c855f0
Simplify app quitting implementation a bit
2018-12-05 19:49:06 -08:00
Janne Hakonen
0ab07303c9
Add quit cli command and app quit option after stream session. Fixes #92 ( #138 )
...
* Add quit cli command and app quit option after stream session. Fixes #92
* Code review fixes.
2018-12-05 18:45:28 -08:00
Cameron Gutman
ba7dd31035
Refactor ComputerManager and BoxArtManager to get code out of headers and split NvComputer into its own file
2018-09-29 02:19:44 -07:00
Cameron Gutman
7ac108f495
Reduce delay for PCs appearing online
2018-09-15 13:43:02 -07:00
Cameron Gutman
8a8b624f47
Add logging for adding a PC and offline/online state transitions
2018-08-30 23:15:06 -04:00
Cameron Gutman
45ebf2ca7d
Add log messages for server GPU, bitrate, and slices
2018-08-05 13:32:04 -07:00
Cameron Gutman
56277af5d1
Fix quit error message when another PC started the streaming session
2018-08-01 22:43:20 -07:00
Cameron Gutman
608db6a3e5
Implement support for quitting apps
2018-08-01 22:32:21 -07:00
Cameron Gutman
3ed5f9edf7
Implement C++ functions for quitting apps and querying running apps
2018-07-31 22:21:39 -07:00
Cameron Gutman
186579266c
Fix Online -> Offline computer transition
2018-07-29 19:08:29 -07:00
Cameron Gutman
5ee1358712
Implement a proper destructor for ComputerManager to prevent polling threads from living beyond QGuiApplication
2018-07-18 21:27:43 -07:00
Cameron Gutman
af503a9147
Fix spurious "Failed to connect to PC" dialogs for mDNS-discovered hosts
2018-07-13 22:38:58 -07:00
Cameron Gutman
a47f59d1a4
Properly manage the lifetime of polling in the AppView and PcView
2018-07-08 22:07:20 -07:00
Cameron Gutman
5a04a256e0
Add additional serverinfo attributes and check for 4K compatibility
2018-07-08 20:53:24 -07:00
Cameron Gutman
272aa6896e
Fix unused member warning on Clang
2018-07-07 22:26:12 -07:00
Cameron Gutman
60ad95bb7b
Start work on launching a stream from QML and rip out remaining QtWidgets
2018-07-07 16:30:26 -07:00
Cameron Gutman
ecebf75b88
Implement manually adding PCs
2018-07-06 00:34:16 -07:00
Cameron Gutman
6687936e2f
Implement pairing via GUI
2018-07-05 23:12:55 -07:00
Cameron Gutman
1b1ad86271
Keep a singleton ComputerManager outside of the Models
2018-07-05 22:08:55 -07:00
Cameron Gutman
bd986bfb21
Sort the app list in alphabetical order
2018-07-05 20:54:31 -07:00
Cameron Gutman
04c9a3a2eb
Implement Wake-on-LAN
2018-07-03 22:11:21 -07:00
Cameron Gutman
5729f65138
Implement mDNS PC discovery
2018-06-30 23:07:31 -07:00
Cameron Gutman
4c75456aee
Fix improper handling of polling thread termination
2018-06-28 03:52:42 -07:00
Cameron Gutman
0821c66d8c
Rewrite streaming code to C++ and forklift most of the setup out of the GUI code
2018-06-28 01:44:43 -07:00
Cameron Gutman
6fa4faa285
Rename http folder to backend to better align with the classes inside
2018-06-27 22:30:33 -07:00