Commit Graph

198 Commits

Author SHA1 Message Date
Lars Toenning
1d4aa96e9b Add warning about expire and redesign warning/error popup
Fixes Github Issue #38
2020-06-29 17:22:09 +01:00
Klaus Basan
cb78453e7c Make sure contexts are "gracefulShutdown"
The shutdown was NOT called as it was canceled because of being in shutdown mode
2020-06-12 18:42:42 +01:00
Mat Sutcliffe
2f1e3f47f9 Track worker construction and destruction
Added debug log messages in case a worker still exists when the `qApp` is destroyed.
This would mean that a `quitAndWait` is missing or is being skipped somewhere.
2020-06-12 18:42:41 +01:00
Klaus Basan
0ee522426a Create "shutdown" message to find how far we get if swift hangs during shutdown 2020-06-12 18:42:41 +01:00
Klaus Basan
76e42cc16e Minor fixes related to the SSL lib issue
https://discordapp.com/channels/539048679160676382/539925070550794240/691469857891418202
2020-06-12 18:42:39 +01:00
Klaus Basan
4378b6c959 Detect if running with DBus (core + GUI) or just "standalone" (no swift DBus) 2020-01-22 19:46:14 +01:00
Klaus Basan
5150fb4e86 [AFV] Ref T739, cmd.line args for "no audio" 2020-01-07 19:05:42 +00:00
Klaus Basan
383352f79c [AFV] Ref T739, remove implementation details from IContextAudio to keep the DBus interface "pure"
* This was an approach to avoid registration of "local signals"
* that part DID NOT work as planned, as all object's signals are registered
* the refactoring itself nevertheless is NOT a bad idea and has been kept
* as the audio context has this special "concept" and CAfvClient can run on both sides (proxy AND impl.side)
2019-10-18 10:36:23 +02:00
Klaus Basan
6cbd2d9486 [AFV] Ref T739 remove unused old coreaudio arguments 2019-10-18 10:36:15 +02:00
Mat Sutcliffe
ec0a20b1d1 [AFV] Fixed context unittest that was broken by audio context changes 2019-10-11 19:00:40 +01:00
Klaus Basan
ff6b7f8deb Ref T730, added deleteResourceFromNetwork and modified CSlot (directly accept object witb std::function) 2019-10-11 19:00:34 +01:00
Roland Rossgotterer
acf540be34 Long live FsdClient 2019-09-18 13:49:37 +02:00
Klaus Basan
33cd96c2e3 Allow to test an ASSERT (like the crashdump test) 2019-09-16 22:40:54 +01:00
Klaus Basan
235508ec98 Ref T673, incognito flag/menu 2019-09-16 22:39:57 +01:00
Roland Rossgotterer
a7509669f9 Refactor crashpad initialization
Crashpad handler was initialized quite late since we were waiting for settings. However the settings in crashpad are persistent itself, hence we can start it at the earliest possible time and change the upload settings independently later. The only prerequisite is to have QCoreApplication constructed in order for the application name to be available.
ref T652
2019-05-13 11:21:05 +02:00
Klaus Basan
0d0e093330 Download related:
* Info which URL failed
* log redirects
* disabled CNetworkUtils::setSwiftClientSslCertificate(copiedReques
2019-04-11 22:12:05 +01:00
Roland Rossgotterer
04787bbf39 Fix MinGW build failure 2019-04-11 22:11:49 +01:00
Klaus Basan
94513951e1 Added backtrace attributes for Qt version and platform 2019-04-11 22:11:38 +01:00
Klaus Basan
f080f0bb86 Cmd.line arg --skipsa to skip "single application check". Allows to run multiple clients on one machine. 2019-04-11 22:11:37 +01:00
Klaus Basan
60b3c16120 Ref T401, crash simulation improvements
* sub-directory paths in directory utils
* no UI simulated crash in release builds
* no upload rate in local developer builds
2019-04-11 22:11:31 +01:00
Mat Sutcliffe
e9a4c49d68 Ref T547 Update license masthead in all source code files. 2019-02-22 20:36:43 +00:00
Klaus Basan
16dd6d7451 Ref T401, crash handling in application
* function to simulate crash
* init crash info so file is written + add arguments for handler
* enable / disable uploads
2019-02-22 20:36:31 +00:00
Roland Rossgotterer
50e82c26c6 Add current log file as file attachment to crash dump
ref T401
2019-02-22 20:36:24 +00:00
Klaus Basan
ddd44edebd Ref T528, test if simulator interface can be used (only possible in local UI, not in remote UI) 2019-02-22 20:36:08 +00:00
Klaus Basan
1b7f1b1662 Minor reader formatting/comments 2019-02-22 20:36:07 +00:00
Mat Sutcliffe
077fd8c35a Ref T525 Avoid directly calling getLogCategories. 2019-02-22 20:35:52 +00:00
Mat Sutcliffe
fe7a45afcf Ref T516 Update CStatusMessage call sites to use new syntax. 2019-02-22 20:35:51 +00:00
Klaus Basan
8c3faa4ca9 Ref T489, support download progress in our readers
* signal for download progress per entity (DB reader)
* ProgressSlot
* changed signatures for ProgressSlot
2019-02-22 20:35:00 +00:00
Klaus Basan
5c785643c7 Ref T484, string improvements 2019-02-22 20:35:00 +00:00
Mat Sutcliffe
225ff81252 Ref T485 Adjust CLogMessage and CStatusMessage call sites to use the new API. 2019-02-22 20:34:55 +00:00
Mat Sutcliffe
d6b5dca6b2 Return a default-constructed QString instead of implicitly converting an empty string literal. 2019-02-22 20:23:49 +00:00
Mat Sutcliffe
6c05c5249d When calling arg() on a QString constructed from a literal, use QStringLiteral. 2019-02-22 20:23:47 +00:00
Klaus Basan
a09d7191f3 Ref T456, user statistics monitored at backend
* values for simulator/network
* changed concept a bit so crash handler values are used for statistics as well
2018-12-16 00:22:33 +01:00
Roland Rossgotterer
686f8a478e Update crashpad
crashpad is now also supported on Linux. Therefore build it everywhere except under Windows MinGW.
2018-12-16 00:22:00 +01:00
Roland Rossgotterer
08558a0803 Change crashreport url to to backtrace.io
From now on, all crashreports will be submitted to backtrace.io url. Backtrace.io also requires a different set of annotations.
2018-12-11 17:42:49 +01:00
Klaus Basan
42af510342 Check for minimum mapping version
* check functions in gui application/application
* check for instance mapping wizard
* check on mapping tool's stashing component
2018-12-05 04:03:59 +01:00
Klaus Basan
3c20590293 Allow a forced update of the setup reader
When the network is down it can happen the bootstrap file request is not yet timed out but we use our own time out.
In that case we check the cached data upfront by faking a failed web read.
2018-12-05 04:03:43 +01:00
Mat Sutcliffe
df563d5b29 Fixes needed to compile swift with MSVC with the /permissive- switch
which enables more C++ standard conformance.
2018-11-16 02:49:55 +01:00
Klaus Basan
dfd33e40c1 Detect emulated driver before casting to avoid crashs 2018-11-16 02:49:51 +01:00
Klaus Basan
17382a0019 Ref T401, update functions for crashpad info in CApplication 2018-11-04 17:43:06 +01:00
Klaus Basan
d7380966de Style 2018-11-04 17:42:44 +01:00
Klaus Basan
4a82621a1d Ref T400, swift needs to start even without network connection, especially for mapping tool
* count errors and call "manageSetupAvailability" to update cache availability
* minor adjustments
2018-11-04 17:42:43 +01:00
Roland Winklmeier
f6ea2a9107 Move CInputManager from singleton to CApplication member
The main reason why CInputManager was singleton is the easy access across
the code. That had the negative side effect that time of destruction was
at a very late stage of the shutdown and could not be controlled by us.
My moving it to CApplication, the access is equally easy (using sApp) and
allows to be cleaned up properly during graceful shutdown.

ref T391
2018-11-04 17:42:42 +01:00
Klaus Basan
705a56b1cb Ref T401, adjusted settings used in components 2018-11-04 17:42:42 +01:00
Klaus Basan
fe99eb261b Ref T367, Ref T400 signal and read handling
* connect this->setupHandlingCompleted directly with reader + renaming
* do not waitForSetup if request already failed
2018-11-04 17:42:41 +01:00
Roland Winklmeier
832082c5bc Delay creating input devices to when required
Every first call to CInputManager::instance() was automatically creating
the low level input devices. This was not always desired and therefore
creation is now explicit via function.
Unit tests do not need the devices created. In contrast, Windows unit tests
failed since Windows didn't like the Jenkins service childs to allocate
DInput devices.

T391
2018-10-07 16:17:28 +02:00
Roland Winklmeier
c42900f959 Release input devices when application is shutdown
If they are released with the deallocation of CInputManager, we might
run into global deallocation hell.
Also on Windows release all DirectX devices before COM library is closed.

ref T391
2018-10-07 16:17:26 +02:00
Mat Sutcliffe
f42d42487d Ref T314 Change CApplication::m_networkWatchDog from a smart pointer to a raw pointer.
Attempting to manage a worker's lifetime with a smart pointer is a mistake.
It can lead to double-delete or premature-delete bugs, and race conditions.
Workers self-manage their own lifetimes.
2018-10-05 17:39:56 +02:00
Klaus Basan
4406174668 Ref T341, crash prevention as seen in https://crashreports.swift-project.org/crashreports/81 2018-09-09 02:53:36 +02:00
Klaus Basan
09ab653cf9 Reduced number of (unnecessary) network status messages 2018-09-08 15:36:21 +02:00