summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Set the initial size of the InProcessSurfaceItemv2.0_QtASDominik Holland2018-02-221-0/+2
| | | | | | | | | The InProcessSurfaceItem didn't had an initial size before and wasn't displayed correctly out of the box. Task-number: QTAUTO-790 Change-Id: I94fef26308f79db0d8855fb76dcdacc5ddadf361 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Update monitor example imageBernd Weimer2018-02-221-2/+2
| | | | | | | | This reflects a minor UI change in a previous commit (ca784dc). Also fixed a minor spelling error in the documentation. Change-Id: I8d03be3a2674af85bed368ffe515d578b6ecbdde Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fix smaps parsingBernd Weimer2018-02-211-21/+49
| | | | | | | | | We cannot rely on a fixed position of Size, Rss and Pss tags in smaps files. Task-number: QTAUTO-785 Change-Id: I12da5b5d21da0846ad57252b176fa204db18704f Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Preserve the PID of apps when they crash for better error outputRobert Griebl2018-02-202-2/+7
| | | | | | Task-number: QTAUTO-515 Change-Id: I039199d6bc3cd4964c692dd3448c6d17b3c29998 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fix FakeApplicationManagerWindow color updateBernd Weimer2018-02-201-3/+6
| | | | | | | | | This allows to update the color of an ApplicationManagerWindow in single-process mode. Change-Id: I4ea4d5e1de5733899bd12fe4cc7b9901866dbd72 Reviewed-by: Thomas Senyk <thomas.senyk@pelagicore.com> Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fix crash when trying to install an app while its runtime is not availableRobert Griebl2018-02-141-2/+3
| | | | | | Task-number: QTAUTO-784 Change-Id: I8e511b4311001c2da1aa3684b1e1d87d5a36ba06 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Update Pelagicore copyright headers to 2018Robert Griebl2018-02-07191-191/+191
| | | | | Change-Id: I8d9278053ccdef5a57e51753aa6157941ebcee52 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Remove support for Qt 5.6, 5.7 and 5.8Robert Griebl2018-02-079-245/+12
| | | | | | | | | | | We supported these old version as long as they wouldn't break new features, but that is happening now: Qt < 5.9 does not support including enums of unrelated C++ classes into the QML scope of another exported C++ class. At least this will get rid of nearly all the ugly QT_VERSION #ifdefs we had. Change-Id: I1bc4e9289e685eedb0af7b20e928ed550569196b Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* SystemMonitor: add cpuLoad and memoryUsed propertiesDaniel d'Andrada2018-02-022-6/+46
| | | | | | | | | | | If application code is interested only in the latest readings it currently has to deal with signals from SystemMonitor. But it's way more convenient and natural for QML code to manipulate properties than signals as the former leads to declarative code. Change-Id: I8cd2f8ee6410ac2620f7a1d6ee3d4bed759e91c2 Reviewed-by: Vladimir Minenko <vladimir.minenko@pelagicore.com> Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Extend and improve QML auto testsBernd Weimer2018-02-021-1/+73
| | | | | | | | | | | Exposed a new type to QML auto tests that allows to ignore logging messages. In addition assets of QML tests will be copied to the build folder and instead of running the tests in the source folder, they will be run in the build folder again. Change-Id: Ief9d34aed1f74e28f15bd5435723bb6afee7d531 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Add bash command completion fileBernd Weimer2018-01-232-0/+4
| | | | | | | It provides command completion for appman-controller and appman-packager. Change-Id: Ic8853c55c8a484fa7fb498f822727f167ad4b2e9 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Overload virtual contains function againBernd Weimer2018-01-172-2/+11
| | | | | | | This basically reverts commit 5e854f43cec14960a189db58fcb8a0d78ddff2c0. Change-Id: I7856f62b6fdbf8966979e237df65d79fa4c464ad Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Make installation task state an enumerationBernd Weimer2018-01-155-57/+56
| | | | | | | | | Changed installation task state from string to enumeration. On the DBus interface it is still a string. This brakes backwards compatibility. Change-Id: I2ed9bfcef24d3b578ce84c2eefb7c1d180ccf7de Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Add monitoring auto testsBernd Weimer2018-01-112-8/+10
| | | | | | | | Added tests for ProcessMonitor memory (smaps file) parsing and basic QML tests for SystemMonitor. Change-Id: If80a48734ecc1785f7564b668cd5ccc433869010 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Allow to enable Wayland ping-pong againBernd Weimer2018-01-111-4/+3
| | | | | | | Added auto test, as well. Change-Id: I459e94ac399776d9d12c86106a029e322516c222 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* TouchEmulationX11: leave XI2 event intact after processing itDaniel d'Andrada2018-01-112-27/+61
| | | | | | | | | Otherwise the XCB QPA will get a modified event once it processes it after this native filter Change-Id: Idc27edb7d0925ac03f53a7fc8fcdba96be5d89ca Reviewed-by: Lukáš Tinkl <ltinkl@luxoft.com> Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Fix clang handling of virtual overridesRobert Griebl2018-01-092-2/+2
| | | | | Change-Id: Ia709946efb7c776b194dc9a90b6a8d10601a6bf5 Reviewed-by: Thomas Senyk <thomas.senyk@pelagicore.com>
* Fix Qt 5.6 build on Win and MacRobert Griebl2018-01-092-3/+3
| | | | | Change-Id: Icb326103325d749b9ac1622fce4a488b30dad840 Reviewed-by: Thomas Senyk <thomas.senyk@pelagicore.com>
* Fix shared_main_lib dependencyRobert Griebl2018-01-091-4/+4
| | | | | Change-Id: Ibddf30189637494f54e27caa9ef23782fd16636b Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Add installation state auto testBernd Weimer2017-12-202-6/+6
| | | | | | | Also added argument to stateChanged signal. Change-Id: I5f4ce72acf022dbca803b9c4491d9e554d805464 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Improve documentationBernd Weimer2017-12-195-9/+9
| | | | | | | | * Added reference to ProcessMonitor documentation * Consistently used term "System-UI" Change-Id: Ibd41dd38c2140abba85676f98a5e09a25ca706a1 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Refactor the interface between the AM and runtime launchersRobert Griebl2017-12-1533-435/+880
| | | | | | | | | | | | | * A lot of shared code was moved to the new shared-main library, making it easier to write custom runtime launchers * Simplified the qml runtime launcher * The new OpenGL versioning was extended to apps using the QML runtime * Settings are communicated to the apps as plain text YAML documents now, which makes it very easy to verify and extended this interface. Task-number: AUTOSUITE-162 Change-Id: I0c1be3ac2e38ab492e69182058098cf31d34484b Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Expose installation state to QMLBernd Weimer2017-12-083-0/+21
| | | | | | Task-number: AUTOSUITE-135 Change-Id: Ide64d7681f66a3f3c0a521b13854431c07266652 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Fix the version comparison for enabling the dlt lazy initDominik Holland2017-11-301-1/+1
| | | | | | | | | | | | | | | | | | With Qt version 5.9 no MAJOR_, MINOR_ and PATCH_VERSION variables are generated for the modules anymore. Because of that the lazy initialization of the DLT categories were never enabled, which caused appman to only register the Categories which are used for logging instead of all of them. A generic qmake test function is now used for the version comparison of the VERSION string. In newer Qt version (5.10.0) qmake provides a builtin function Task-number: AUTOSUITE-169 Change-Id: I76b40320167835b10b159ec221a100f3b1276f88 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Move the MouseTouchAdaptor from neptune to the application-managerRobert Griebl2017-11-299-1/+540
| | | | | | | | This way we can (a) re-use the functionality in other system-uis and (b) easily disable it when e.g. testing with Squish. Change-Id: Icbfb3dfac5283eebe1cf4855386e27c6d1a430dc Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Hide more properties in FakeApplicationManagerWindowBernd Weimer2017-11-282-5/+95
| | | | | | | | | | | | A decission had to be made whether the logging output (warnings) should closely resemble the ones in multi-process mode or whether the termination on error behavior should be the same. The latter has been favored. For instance binding a none-existent property leads to an abort, whereas assignment doesn't. Task-number: AUTOSUITE-143 Change-Id: Id7b0f6eea77236855066281835ec6293ccc4850c Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Improve in-process window mappingBernd Weimer2017-11-281-2/+8
| | | | | | | | | | | | | | | WindowManager signal emission is done more aligned with the multi- process case, windowClosing and windowLost signals will be emitted. Changing the surface container's visible state on the systemUI side will not be propagated to the application (e.g. no second windowReady signal when the surface container changes from invisible to visible). Also set clipping in FakeApplicationManagerWindow to true, since real windows also do clip. Task-number: AUTOSUITE-131 Change-Id: I789ed4f7b308c828b9b0cb8cb8fd754d8c9c5b9a Reviewed-by: Thomas Senyk <thomas.senyk@pelagicore.com> Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Hide properties in FakeApplicationManagerWindowBernd Weimer2017-11-2713-117/+395
| | | | | | | | | | | | | | | | | To mitigate the difference between single- and multi-process mode, properties and signals in FakeApplicationManagerWindow (Item) will be hidden, that are not available in ApplicationManagerWindow (Window). The same warnings will be printed and applications will not start, which use such properties. This patch only hides "parent" - it provides a base for further properties that will be hidden. To achieve this an InProcessSurfaceItem has been introduced that is actually exposed to the systemUI and serves as an item parent for FakeApplicationManagerWindows. Also changed the lifetime of the application's object hierarchy. Task-number: AUTOSUITE-143 Change-Id: Ib4881ec39267907fb24bebbd167796270661ab8c Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Fix passing a relative path of the main qml file to appman by command lineDominik Holland2017-11-271-1/+1
| | | | | Change-Id: Ib410852cdd8ab5bc682e3687f746316374ddb42e Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Improve launcher binary detectionRobert Griebl2017-11-211-6/+16
| | | | | | | | In addition to the already checked paths, also look in $PATH. On error, output where the AM was looking for. Change-Id: I64d1511540a1d9b4e5cc9386f7470d83c0fc330b Reviewed-by: Thomas Senyk <thomas.senyk@pelagicore.com>
* Add support for OpenGL version and profile selectionRobert Griebl2017-11-1411-38/+203
| | | | | | | | | Also cleaned up the pre-QApplication constructor setup functionality by moving a lot of low-level technical details from the main function into the Main class - this helps a lot with keeping e.g. neptune in sync. Change-Id: I869a6d029749b5a994ed09577490beb0ef419178 Reviewed-by: Thomas Senyk <thomas.senyk@pelagicore.com>
* Fix stopAllApplications()Bernd Weimer2017-11-141-3/+5
| | | | | | | Call stop() method only once for each runtime. Change-Id: Ib7c6b6d0e7504792327f4f532fbf5e01e49e38f5 Reviewed-by: Gordan Markus <gordan.markus@pelagicore.com>
* Fix headless buildRobert Griebl2017-11-039-30/+64
| | | | | Change-Id: I415450e454707a0074fbdc32024d3bf1df6a0d79 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fix qdoc issuesRobert Griebl2017-11-031-1/+1
| | | | | Change-Id: I60f4bbbc257af399633b14cfbd86ad776cb2f7b4 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fix single-process race condition when emitting windowReadyRobert Griebl2017-11-033-3/+38
| | | | | | | | | | | Make sure that the WindowManager::windowReady signal is only emitted after all QML Component.onCompleted handlers having been dealt with. Since Qt does not provide a suitable API for this, we need to hook into the low-level signal emission. Task-number: AUTOSUITE-134 Change-Id: I5ec4260aca7b4a505b48892dbc255f224e3559d7 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Add option to enable support for Qt widgets in System UIJacques GUILLOU2017-11-033-1/+5
| | | | | | | | Support for Qt widgets can be useful for some development tools for example. Change-Id: Ie77e42730f692413485899ed63073fd81f709abe Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Remove obsolete deployer scriptRobert Griebl2017-10-243-31/+0
| | | | | Change-Id: I49585ef7bf9d318f8342a558a6dae95c8643127d Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Support Q_FALLTHROUGH on Qt 5.6 and 5.7Robert Griebl2017-10-191-0/+8
| | | | | Change-Id: Idb120cc6af74991873940d54c6306ea4dae0aff1 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Add Q_FALLTHROUGH()s for newer compilersRobert Griebl2017-10-181-2/+5
| | | | | Change-Id: I70595962404806395f88856ea6fce80f0d9f3bd8 Reviewed-by: Thomas Senyk <thomas.senyk@pelagicore.com>
* Add Application::activated() signalDaniel d'Andrada2017-10-124-2/+16
| | | | | | | | | | | Saves AppMan users from writing a demux for applicationWasActivated themselves when they have code that is interested in the activation of an specific application (eg. a delegate instance in a *View whose model is ApplicationManager). And, in any case, this is a more object-oriented approach. Change-Id: Id2b7f30fadd9c0b3ced8653d883da9e4aad1ac1e Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Suppress bogus QCommandlineParser warning in custom executablesRobert Griebl2017-10-121-1/+1
| | | | | Change-Id: I64af269efe13bfc00a7296f82a0176467c367b2b Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Make the AM quit in single-app mode, if the app quitsRobert Griebl2017-10-103-10/+21
| | | | | Change-Id: Ida57267106ca81cc4bbd6e541d9c74986da67297 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* First shot at an introduction documentRobert Griebl2017-10-091-1/+1
| | | | | | | | (Still missing the IPC part and links to the technical documentation - this will came in a second commit) Change-Id: Ic22b15329f5acd9b29f81c4133bf98c351a14d47 Reviewed-by: Bernd Weimer <bernd.weimer@pelagicore.com>
* Allow to show root window in single-process modeBernd Weimer2017-10-091-1/+1
| | | | | | | | | | | | | | | In single-process mode, if the initial visible property of a FakeApplicationManagerWindow root objects has been false, changing it later would not cause it to appear (no windowReady signal is emitted). The reason was that the root FakeApplicationManagerWindow has no QObject parent. The check for a parent has been removed now. Also added an auto-test for that and a test that reveals more differences between single- and multi-process mode. Task-number: AUTOSUITE-131 Change-Id: Icec4c5f4ebe1c0ccf76e11fcb0ac3a82ff1ec335 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Add ContainerInterface plugin documentationRobert Griebl2017-09-282-1/+263
| | | | | Change-Id: I89a1dc371b0548abd8eb4da9b7266a5805018817 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Prevent using debug-wrappers on single-process applicationsRobert Griebl2017-09-281-7/+9
| | | | | | Task-number: AUTOSUITE-144 Change-Id: I725a5e70b4d3beca3c1a015b6c5c89974e338eca Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Don't show invisible root elementsBernd Weimer2017-09-273-18/+20
| | | | | | | | | | | | | | | | | In multi-process mode, the initial visible property of root elements has been ignored, because show() was always called. Now the visible state is adhered to. The default value is true (except for Window) This has some implications: * Window visible property needs to be set to true explicitly to make it appear. * For client applications the StartupInterface: - beforeWindowShow might be called with nullptr window argument - afterWindowShow might not be called at all Task-number: AUTOSUITE-131 Change-Id: Iacff5d6feaebd0a938d4d206d114cc7f85722881 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Better error output for failed certificate validations on WindowsRobert Griebl2017-09-201-2/+5
| | | | | Change-Id: Iae6495049fd607a81d2ae479b2008973c8933132 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Pass slowAnimations down to client applicationsDaniel d'Andrada2017-09-2012-9/+85
| | | | | | | | And ensure they are kept in sync with appman Task-number: QTAUTO-430 Change-Id: I97d5cfaaa84df70d8877e1af42908c3a5ca3c115 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Make it possible to switch slowAnimations at runtimeDaniel d'Andrada2017-09-203-21/+46
| | | | | | | | | You can now set the WindowManager.slowAnimations property from the QML as it was made writable. Task-number: QTAUTO-429 Change-Id: I833d16cc8faa91a3a76203e56af2f3c9c65fc52c Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>