summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | | processlauncher: Fix crashing on destruction with running appsHolger Hans Peter Freyther2017-11-092-4/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The democompositor would crash because the QProcess will be deleted from within ~QObject and then emit a signal which will access the partially destructed WaylandProcessLauncher. Iterate through the list and disconnect the slots and then delete the QProcess before the ~QObject is ran. An alternative would be to iterate the m_appStates and just block the signals of the QProcess. This might be more future proof (e.g. another signal being connected) but can impact other signal/slot connections as well. Change-Id: Id6c19dbe0c3070a131b28365584f06fb7c6014b3 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | democompositor: Add a mandatory "Id" to the app specificationHolger Hans Peter Freyther2017-11-0911-6/+31
| | | | | | | | | | | | | | | | | | | | | | | | Add a manodatory appId, expose it to QML, add a simple find by id method and update the testcases. Change-Id: I4f80a97e5f31e972694dd61eff0166f9de2f5d51 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | democompositor: Allow arbitrary extensions inside the app mapHolger Hans Peter Freyther2017-10-246-3/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | Allow extensions and let them begin with X-. Briefly document it, add some extensions as an example and briefly test that the right values are parsed. Change-Id: I7a9ae6b2f365802fcce6dce56fa7795f76d83421 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | democompositor: Move images and apps to resources/ folderHolger Hans Peter Freyther2017-10-2422-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | The apps were hard to be discovered inside apps/files and other projects here seem to use a resources/ folder. Move the apps and the images in it. Change-Id: If2e9127ea6e941e1a97465b2de5e9f9af3660ea3 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | democompositor: Remove deleted files from the modelHolger Hans Peter Freyther2017-10-243-6/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the previous code review Paul discovered the fact that files would never be removed. Implement finding deleted files and emit a signal per removed file. Consume the signal in QML and use the new API to kill the process (one could close the wayland display connection as well). Emit the removed signals _after_ the model has been updated to provide the QML code with an updated model during the signal handling. Change-Id: Ib3bb1bd953bfbf09d25c5e5822756a53b08fd797 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Merge remote-tracking branch 'origin/5.10' into devMikko Gronoff2017-10-1173-1111/+1534
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * origin/5.10: iot-sensortag: Add Uuid fallback for device id iot-sensortag: Use double-click to select connection iot-sensortag: Add logging window iot-sensortag: Do not enable MQTT by default Merge remote-tracking branch 'origin/5.9' into 5.10 iot-sensortag: Disable dateview in portrait mode iot-sensortag: Show fullscreen on Android iot-sensortag: Align font sizes iot-sensortag: Add support for MQTT iot-sensortag: Redesign of example Fix typo Doc: Bump version to 5.10.0 Doc: Bump version to 5.9.2 Change-Id: Id006d6911a42db2a493f7b3f0eb891c791a5879c
| * | iot-sensortag: Add Uuid fallback for device idMaurice Kalinowski2017-10-041-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | All Android test devices report localhost as hostname. That causes the remote display to not show any other android device, but also have multiple localhost devices report data. Change-Id: I144800d876faf35bc9ff8e526be31d9c322032dc Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * | iot-sensortag: Use double-click to select connectionMaurice Kalinowski2017-10-041-23/+29
| | | | | | | | | | | | | | | Change-Id: I46c3860799018e51f74df8d24dd54eccab02db7a Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * | iot-sensortag: Add logging windowMaurice Kalinowski2017-10-043-0/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is most useful in the embedded use-case. Usually there is no debug connection and initialization of a bluetooth connection can take very long. Change-Id: If5b6e8a6e684d2340d6a52b8b21bec25630d6874 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * | iot-sensortag: Do not enable MQTT by defaultMaurice Kalinowski2017-09-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This was agreed in a previous patch set for bb226a8dc9b6508c8d72c67b5260b9a733f7fca1. However, it slipped in due to wrong rebasing. Change-Id: I2725ae54da6573a9bc2dc5f965b8e9c0c65997a0 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * | Merge remote-tracking branch 'origin/5.9' into 5.10Mikko Gronoff2017-09-271-1/+1
| |\| | | | | | | | | | | | | | | | | | | * origin/5.9: Fix typo Change-Id: I5367b62788d24f21590a0ece4851aa42d522c607
| | * Fix typoMaurice Kalinowski2017-09-121-1/+1
| | | | | | | | | | | | | | | Change-Id: If772e4855b8ded33c3ca06207e3cfb38420e96af Reviewed-by: Kimmo Ollila <kimmo.ollila@qt.io>
| * | iot-sensortag: Disable dateview in portrait modeMaurice Kalinowski2017-09-271-0/+1
| | | | | | | | | | | | | | | Change-Id: Ic57220e63398f2e7a8745aaa4bcbd341a2b02010 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
| * | iot-sensortag: Show fullscreen on AndroidMaurice Kalinowski2017-09-271-9/+9
| | | | | | | | | | | | | | | Change-Id: I14a2e55adea3072c23cd25b27d5f65c08a176857 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
| * | iot-sensortag: Align font sizesMaurice Kalinowski2017-09-277-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | 26 is used on some, but not all locations. That had the side effect, that text had different sizes on different platforms causing layouting issues. Change-Id: I057010fdf2aa562c188bd2376829d065a5eeff93 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
| * | iot-sensortag: Add support for MQTTMaurice Kalinowski2017-09-277-49/+891
| | | | | | | | | | | | | | | | | | | | | | | | Using MQTT a sensor can send its data to a broker as well as display data from a remote MQTT broker. Change-Id: I01f961e89b2c6d028498ce61e4087a47742b8b82 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
| * | iot-sensortag: Redesign of exampleMaurice Kalinowski2017-09-2761-1055/+569
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The updated version switches the focus from having multiple sensors locally towards showing one sensor from a list. This list can display local or remote sensors and switch on runtime. Also incorporated many style fixes and cleanups. Change-Id: If7b8acbb2a784ebba95d467176e76728721c82f7 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * | Doc: Bump version to 5.10.0Mikko Gronoff2017-08-312-6/+6
| |/ | | | | | | | | Change-Id: Iadb2f4acbee719c2799c154f64969d913b7865c9 Reviewed-by: Tarja Sundqvist <tarja.sundqvist@qt.io>
| * Doc: Bump version to 5.9.2Mikko Gronoff2017-08-282-6/+6
| | | | | | | | | | Change-Id: Ic4a86efa1b90abaabba5f91d6cdfe452837d732d Reviewed-by: Tarja Sundqvist <tarja.sundqvist@qt.io>
* | democompositor: Make font name, font size and scene configurableHolger Hans Peter Freyther2017-09-121-2/+29
| | | | | | | | | | | | | | | | Make it easy to launch another scene. Use the QCommandLineParser to parse the font name, font size and the qml scene. Change-Id: Ib2489f81bc6119ff92da01b6f36035d5266bfacf Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Forward client application outputHolger Hans Peter Freyther2017-09-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | In the long run we could do line based reading and associate the line with the AppState/AppEntry but for now it is better to see some log messages at all (I was debugging an issue that with QT_WAYLAND_DISABLE_WINDOWDECORATION set the surface would remain black). Log output didn't help in the end but it was a start and the issue is still open. Change-Id: Icd4e041a4004c6a76e685906d63704c2cbf51f63 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Provide an example to detect unknown appsHolger Hans Peter Freyther2017-09-124-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When a new wlShellSurface is created we can check the identity of the client and if it is belongs to an application launched by the democompositor. In the future such apps might be killed and their surface not displayed. Introduce appStateForPid to find the AppState and return it as a QVariant to easily use it in QML. Use int as type as one can not easily use Q_PID in QML. Change-Id: Ibb9ac004a8016bd76f61679f5c837c99783fa7e8 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Keep track of running apps and enforce singletonHolger Hans Peter Freyther2017-09-123-11/+76
| | | | | | | | | | | | | | | | | | | | Modify the ProcessLauncher to keep track of running apps in the m_appStates vector. Answer if an AppEntry has a AppState associated and use it to not launch a second instance of the application. In the future this could be an attribute of the .apps file. Change-Id: I19ed2840e0a64eb7f35fba0cb171e1c7fd722b06 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Log process related eventsHolger Hans Peter Freyther2017-09-121-2/+15
| | | | | | | | | | | | | | | | Use some lambda/closures to keep the process (which would be the sender()) and the appentry around. Change-Id: I2993d31e421a5e03c3b48abd8c1fe4026c4b2899 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Give up on having AppEntry with only const membersHolger Hans Peter Freyther2017-09-123-26/+18
| | | | | | | | | | | | | | | | | | | | | | | | When building gadgets that include instances of AppEntry that will expose these member variables a Q_PROPERTY we will end trying to do a std::move (even if the AppEntry is not movable). Remove the const from the member variables, leave the CONSTANT in the property to not generate a write function and let's keep the discipline to not assign to an existing AppEntry. Change-Id: I742a9d091e7e6eac6cc3cb84a48b7b8812a24247 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Move to start by AppEntryHolger Hans Peter Freyther2017-09-124-8/+22
| | | | | | | | | | | | | | | | The AppEntry contains the executable name and the $PATH to use. Store a copy of the AppEntry and pass it to the processlauncher. Change-Id: I15792cc7ce651beed2006841c100b31d3252d9d1 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Expose the AppListModel and use to display appsHolger Hans Peter Freyther2017-09-122-39/+24
| | | | | | | | | | | | | | | | | | | | | | | | Replace the static configuration of the launch buttons with a Repeater and the instantiated appModel. Use Component.onCompleted to parse the app files. Maybe we can make this a property to ease starting it? It is hardcoding the install directory for the *.app files but I am not sure how to do it differently. Change-Id: I5ef1d78a472f6e0f1dc1c0a3b050179949e6d818 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Add method to scan and watch a directoryHolger Hans Peter Freyther2017-09-122-0/+20
| | | | | | | | | | | | | | | | | | This will add files of a given directory and use a QFileSystemWatcher to check for changes and then re-scan it. It will return if the watching has started. Change-Id: I4d5021430fa400c648167fea37c45d7472ceb322 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Add method to scan entire directory for filesHolger Hans Peter Freyther2017-09-122-0/+14
| | | | | | | | | | | | | | | | Make this and the addFile a public slot to be more easily. Take all files from the directory and ignore the suffix. Change-Id: I8017c3a873a962ab0b4e7e5c9946403f1ee0ffcd Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Introduce a project file that builds the testsHolger Hans Peter Freyther2017-09-122-0/+6
| | | | | | | | | | | | | | | | Integrate and build the tests when democompositor_all.pro is used. This makes make check run the tests for the apps handling. Change-Id: I911ad2b2645beeaa879e1e0f30e6453bc9f3e32a Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Add .gitignore to ignore build and generated filesHolger Hans Peter Freyther2017-09-121-0/+10
| | | | | | | | | | Change-Id: I8959aa22a984730f057ca83c1ddf018e42816519 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Introduce an AppListModel to expose appsHolger Hans Peter Freyther2017-09-1212-8/+378
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Turn the AppEntry into a gadget and store the filename of where the entry came from. Update the existing test to deal with it. Introduce AppListModel as a QAbstractItemModel and expose the raw AppEntry and its fields as role. Have some slow O(n) code to check if an entry has already been added. The goal is to use a directory watcher to automatically update this list. Store the AppEntry as a pointer so we don't have to remove the const from the field. The next steps are to fully populate the AppListModel by scanning and watching a directory and then replacing the LaunchButton code with a Repeater on the application model. After starting of apps will be done by passing the AppEntry to a launcher. Application state should be stored outside the AppEntry and maybe in a different model as well. Change-Id: Ia933a09942ea8bb88eae5c101d13a30564d8c639 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Add parsing of entries and testcodeHolger Hans Peter Freyther2017-09-1210-0/+558
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement parsing of the json definition. Initially be strict to parse the file correctly. Add some basic tests for checking how data and file parsing is working and feed some invalid input into the parser and check the result. Use macro for checking the JSON type and doing the conversion to allow an early return and to avoid having to write the same code over and over again. Change-Id: I8c4301bac1b6226f94c8fc0004a313487b73c21a Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | democompositor: Describe applications using a JSON fileHolger Hans Peter Freyther2017-09-126-1/+57
| | | | | | | | | | | | | | | | | | | | | | | | Inspired by the freedesktop.org specification define a simple JSON format and add files for the existing demo applications using this specifcation. Install them into the QStandardPaths::DataLocation/apps direcyory. Change-Id: If5bbec8ec3a1b375f1e58f8534545b89507cc1a8 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | Add Altitude to mock data providerMaurice Kalinowski2017-09-071-1/+1
| | | | | | | | | | Change-Id: Ib0377874db5767034109b3446614c4bf56b40a62 Reviewed-by: Titta Heikkala <titta.heikkala@qt.io>
* | democompositor: QFont takes only int as parameters. Pass oneHolger Hans Peter Freyther2017-09-011-1/+1
|/ | | | | | | | | There is no constructor that takes a qreal/double and we were truncating the double to int. Just pass 12 to it. The alternative is to use the setPointSizeF to set a qreal as point size. Change-Id: Id6f11f45d648a60b2968a7e8bed0e2ae338e7b34 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Doc: Bump version to 5.9.0Topi Reinio2017-04-042-6/+6
| | | | | Change-Id: Id58aedec456b6256cc4f331a4699be2c00ab11d2 Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
* iot-sensortag: Add IP displayMaurice Kalinowski2017-03-083-1/+16
| | | | | | | | | | | When the app automatically runs on startup, we need to have a way to identify the device's IP address to deploy updates, for instance new MAC filter addresses. When clicking on the date string, it switches to show the IP addresses available. Change-Id: Ie3b10f2b701674ee07f1a8c7a3b064e67d8f6373 Reviewed-by: Risto Avila <risto.avila@qt.io>
* Remove superfluous functionMaurice Kalinowski2017-03-032-7/+0
| | | | | | | | Uses base class variable in any case. In addition setTageType is not virtual. Change-Id: Iaa7b5bb65f07966b193f7ce2c142284325cd9bb9 Reviewed-by: Titta Heikkala <titta.heikkala@qt.io>
* iot-sensortag: Fix Sensor Settings font sizeTitta Heikkala2017-03-031-0/+2
| | | | | | | | The size of the font for provided data in Sensor Settings fixed so that it's readable also with Nexus 7. Change-Id: I0dd0935be36442e39c83c83c8879ba932aa6a1cb Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* Initialize member variablesMaurice Kalinowski2017-03-031-0/+5
| | | | | | | | Otherwise isDeviceReady() returns random results, causing the initialization of the whole connection to stop. Change-Id: I777c5eeaf342a30821f45afb076a826cda9896b9 Reviewed-by: Titta Heikkala <titta.heikkala@qt.io>
* iot-sensortag: Reduce waiting time for service scanTitta Heikkala2017-03-024-10/+22
| | | | | | | | | | Unnecessary 1s delay to start service scan removed. If all service details have been discovered there's no need to start the 5s service details timer. Change-Id: I6c8c89455fb3cfdbc1a28198234e95a4ed0b7e8b Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* iot-sensortag: Assign sensor types arbitrarily to available sensor tagsKari Hautamäki2017-02-282-32/+29
| | | | | | | | In the demo setup, assign all sensor types to the set of available sensor types. Change-Id: If07674ccc40f7668e96e41df62d3b2745e6c9cb4 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* iot-sensortag: Allow reconnect after a failed connection attemptKari Hautamäki2017-02-2822-178/+561
| | | | | | | | | | | | | | | | | | A disconnected sensor tag can be tried to be reconnected by clicking on the chart area or starting rescan from the Sensor settings menu. During a (re)connection process a progress indicator is shown to the user. The user has a possibility to disconnect (and reconnect) a currently connect SensorDataProvider A new state, 'NotFound' is added in SensorTagDataProvider to distinguish between states when a Sensor Tag has not been discovered at all, and when it has already been discovered but is has been disconnected. Change-Id: I54eea72d8c92a67a5ccbb3bc192ac8f33ada1c39 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* iot-sensortag: NumberAnimation in LightChartKari Hautamäki2017-02-281-7/+1
| | | | | | | In LightChart, replace NumberAnimation with OpacityAnimator Change-Id: I52c15a5fee3cc7d4fedde51b7011ba7c3a269a32 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* iot-sensortag: Update Gyro imagesTitta Heikkala2017-02-285-0/+0
| | | | | | | Images for RotationPage gyro updated. Change-Id: I4678bd51d0334e4d57980309fe0d9e3e67e718ad Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* iot-sensortag: RotationAnimator in RotationPageKari Hautamäki2017-02-271-7/+7
| | | | | | | In RotationPage, replace RotationAnimation with RotationAnimator Change-Id: I7344a836319213a3a62f766ec4731af3c800fb5b Reviewed-by: Titta Heikkala <titta.heikkala@qt.io>
* iot-sensortag: Remove transparent image from object temperatureTitta Heikkala2017-02-241-36/+5
| | | | | | | The transparent image is not needed for object temperature cauge. Change-Id: I8880f0ef3c84a382a7bfc9cdaf867e901fbf6219 Reviewed-by: Kari Hautamäki <kari.hautamaki@qt.io>
* iot-sensortag: Remove Glow effectTitta Heikkala2017-02-243-25/+7
| | | | | | | Glow effect removed from ChartView elements. Change-Id: I4a020c783c715c45c8d10663c8f2828d7f10bdd5 Reviewed-by: Kari Hautamäki <kari.hautamaki@qt.io>
* iot-sensortag: Remove unused SensorTag.qmlKari Hautamäki2017-02-242-253/+0
| | | | | | | Remove the unused file Change-Id: I1822fb06885cbe26a2506860ad27dbfffb18c3b7 Reviewed-by: Titta Heikkala <titta.heikkala@qt.io>