summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-04-03Latest translationsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-02mapwidget-mobile: initialize the map to [0,0]Gravatar Lubomir I. Ivanov
Instead of showing the map zoomed over London by default, initialize the center at [0,0] and show the whole globe. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2018-04-02mapwidget-mobile: do not animate the first selectionGravatar Lubomir I. Ivanov
centerOnLocationHard() is added in MapPage.qml so that on `firstRun` the map is hard panned to the desired location without animation. This affects the selection of a new "Dive details" -> "Map it" or when opening a GPS location in the map. The idea behind this change is to avoid starting the map animation from an arbitrary location such as [0,0] or London. Also, to not start the map zoomed out completely and then zoom in on a selected dive. For this change to work, add the helper getCoordinatesForUUID() to qmlmapwidgethelper.cpp/.h and use it to obtain the QGeoCoordinates for a dive site UUID. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2018-04-02Android: add Atomics Aquatics Cobalt as deviceGravatar Dirk Hohndel
This way plugging in a Cobalt should pop up a question if the user wants to open Subsurface-mobile. Unfortunately, this, too, fails on my Android devices, so I can't test it. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-02Update list of supported dive computersGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-02Update translation source stringsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-01Update libdivecomputer submoduleGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-01Dive pictures: extract timestamp from MP4 and related formatsGravatar Berthold Stoeger
Parse MP4s and related video files and extract the creation timestamp from the "mdhd" (media header) atom. Introduce helper function templates to extract arbitrary-length unsigned integers in big-endian format from file or memory. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-04-01Dive pictures: use get_metadata() in dive_create_picture()Gravatar Berthold Stoeger
Thus, metadata has to be only read once and the picture_load_exif_data() function can be removed. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-04-01Dive pictures: Move metadata functions into own translation unitGravatar Berthold Stoeger
Move all metadata function into new core/metadata.cpp file. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-04-01Debug: Error reporting for SHashedImage loadingGravatar Berthold Stoeger
Overwrite QImage::load() in SHashedImage so that we can perform better error reporting. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-04-01Debug: sprinkle debug messages in thumbnailing codeGravatar Berthold Stoeger
To ease trouble-shooting of the picture thumbnailer add a number of debug- and info-messages. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at> Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2018-03-31Update libdivecomputer submoduleGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-26MXE Windows build script: Chance MXE make call in commentGravatar Stefan Fuchs
In the comment/instruction how to build MXE add "libssh2" and "curl" to the make call. This seems to be needed in newer versions of MXE. Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-03-26MXE Windows build script: Do right build flavor also for googlemapsGravatar Stefan Fuchs
Do the right build flavor also for the googlemaps plugin. Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-03-22Travis: test build against Qt 5.5Gravatar Dirk Hohndel
We do this in a docker environment to make things fast and easy. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-22Use older API to remove dependency on Qt 5.8 or newerGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-22iOS: add MapLocationModel and corresponding helperGravatar Dirk Hohndel
Thanks to Murillo Bernardes for reminding me to add the .h files as well. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-22iOS: build googlemapsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-22cmake: move maplocationmodel to generic modelsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-22iOS: build fixGravatar Dirk Hohndel
Otherwise the moc build fails. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-19Profile heatmap/heartrate: Only enable max one of these at same timeGravatar Stefan Fuchs
Only allow to enable maximum one of both items tissue heatmap or heartrate in profile. This is done by always switching off the other one at the moment you turn on one of the two items (heatmap or heartrate). Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-03-19Profile heartrate: Nicer min/max values and tic distanceGravatar Stefan Fuchs
Correct a bug in finding the minimum heartrate. Use the minimum and maximum heartrate value to set min/max and tic distance for the heartrate axis in the profile. Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-03-19Fix non-interactive Qt installation for AndroidGravatar Dirk Hohndel
We need to wait before clicking Next on the WelcomePage. We really only want the Android armv7 packages. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-19Update CHANGELOG.mdGravatar Berthold Stoeger
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-19Dive pictures: If EXIF data couldn't be parsed, use creation dateGravatar Berthold Stoeger
This is a preparation for supporting videos. Some video formats may not possess such meta data, or we may not yet be able to parse them. In such a case, use the file creation date. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-19Dive pictures: Don't read whole file for parsing EXIF dataGravatar Berthold Stoeger
This is a preparation for video support. We don't want to read a whole potentially multi-GB file into memory just to detect that it isn't a JPEG. Especially since at the moment EXIF metadata are parsed twice, once for GPS, once for timestamp. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-19Android build: switch to Qt 5.10.1Gravatar Dirk Hohndel
That's what we now use for the official binaries as well. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-19Android/iOS build: get libxml2 and libxslt from GitHubGravatar Dirk Hohndel
The xmlsoft.org links sometimes time out. Sadly, GitHub API gives us an oddly named top level directory in the tar file, so lets strip that and replace it with the "usual" name. Also, for the "raw" tar files from GitHub we need to run autoreconf ourselves. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-19QML UI: Fix checkbox colorGravatar Joakim Bygdell
The background color in our own checkbox should match the page background. Also includes some whitespace cleanup. Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-03-19QML UI: drop focus when selecting a locationGravatar Joakim Bygdell
Make sure to drop focus both for typing and when selecting an entry from the list. Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-03-19Mobile: change location combobox idGravatar Joakim Bygdell
Change the id of the location combobox to math the naming scheme of the other comboboxes. Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-03-19Mobile: Fix location comboboxGravatar Joakim Bygdell
In the initial move to comboboxes the correct location model was not used. This uses the correct model and makes it behave like the other comboboxes. Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-03-19Mobile: for multiple buddies pick index of firstGravatar Joakim Bygdell
When a dive has multiple buddies, pick the index of the first to prevent the user from hanving to scroll through the entire list when editing. Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-03-19QML UI: drop focus on editGravatar Joakim Bygdell
Drop focus on editable comboboxes when pressing enter. Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-03-19Moblie: remove comparison when savingGravatar Joakim Bygdell
Removing the comparison of currentText vs editText when saving buddies fixes the issue of data loss when dive has more than one buddy. Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-03-19QML UI: drop focus when ComboBox element is pickedGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-19QML UI: cylinders aren't editableGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-19QML UI: switch editing back to comboBoxGravatar Joakim Bygdell
The HintsTextEdit just doesn't feel natural and intuitive. Edit, fixed rebase issues. Signed-off-by: Dirk Hohndel <dirk@hohndel.org> Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-03-19CSV export: CHANGELOG entryGravatar Stefan Fuchs
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-03-19CSV export: Remove erroneous printed dive site notes from exportGravatar Stefan Fuchs
Remove erroneous printed dive site notes from dive profile export. Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-03-19CSV import/export: Sort parameter list and add commentGravatar Stefan Fuchs
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-03-19CSV export: Correct numeric format for depthGravatar Stefan Fuchs
Add two missing format-number functions for mean depth in dive list export and depth in dive profile export. Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-03-19CSV export: Modify format of dive list and dive profile exportGravatar Stefan Fuchs
In dive list CSV export: - Move unit "min" from duration field to header - Move unit "%" from O2 and He fields to header In dive profile CSV export: - Add "min" to sample time header - Add column for sample heart rate Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-03-19Cleanup: Initialize variable MainTab::lastSelectedDiveGravatar Berthold Stoeger
This variable was read before being set. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-03-15CHANGELOG.md: add latest map-widget changesGravatar Lubomir I. Ivanov
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2018-03-15MapWidgetContextMenu.qml: improve the action textGravatar Lubomir I. Ivanov
The first 3 actions in the map widget context menu are about the current map widget center and not about the selected dive site / marker. Avoid using the word "location" for these, use "coordinates" for the second and third entry. Suggested-by: Willem Ferguson <willemferguson@zoology.up.ac.za> Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2018-03-15MapWidget.qml: try to preserve zoom when opening Google MapsGravatar Lubomir I. Ivanov
Extend openLocationInGoogleMaps() so that the current map widget zoom level is roughly mapped to the Google Maps zoom level. The two zoom scales are quite different. Google Maps uses meters directly, while the QML map uses a scale from ~1 - 21. The approximation is done via exponential regression over a small data set gathered from experiment. Add a console.log() call so that the URL is logged. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2018-03-15MapWidget.qml: use a new URL format for Google MapsGravatar Lubomir I. Ivanov
Make the map widget use a new URL format for Google Maps in openLocationInGoogleMaps(). The new URL format does not show a marker once the location is open in Google Maps as this might confuse some users. Suggested-by: Willem Ferguson <willemferguson@zoology.up.ac.za> Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2018-03-14Cleanup: consistently use toUtf8() instead of toLocal8Bit()Gravatar Berthold Stoeger
These do the same, since the text-codex is set to UTF-8 on startup. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>