aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2017-10-07Fix divinglog import temperature truncationGravatar Linus Torvalds
The code incorrectly divided the temperature by 10 as an integer, causing unnecessary precision loss due to truncation. Fix it, and update the test results for the now improved temperature import. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-07Fix divinglog import limit checkingGravatar Linus Torvalds
The divinglog import did horrible things with the strings returned from the sqlite queries, and ended up using uninitialized values at the end of the secondary profile data strings. This rewrites the import logic to track the length of the strings properly when importing the divinglog data. We should run 'valgrind' a whole lot more than we do, I suspect. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-07Tab order for location information dialogGravatar Stefan Fuchs
Fixed the tab order and excluded "notes" and "dive sites with same coordinates" from accessability via tab key. Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-10-07Update translation source stringsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-07Add connectionlistmodel.cpp/h to iOS qmake fileGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-07Make compile succeed without BT_SUPPORTGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-07Move ConnectionListModel into its own source fileGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-07Remove disfunctional asc. rate signals and add disable keyboardTrackingGravatar Robert C. Helling
The connection wasn't working anyway since the signal comes without value while the slot wanted a value and thus only created a runtime warning. Turning of keyboard tracking means that when typing the number 123 the value change signal is not fired three times (with values 1, 12, and 123) but is only fired upon pressing enter or the spin box losing focus. We should add a similar setting to the depth, duration and runtime columns of the DivePlannerPointsModel but i have no clue how to do that. Signed-off-by: Robert C. Helling <helling@atdotde.de>
2017-10-07Safeguards for Liquivision importGravatar Miika Turkia
I have received one sample log where after parsing a bunch of dives properly, the sample count hits zero, and after that it is astronomical. In case of zero, the only data we have is dive date and time of a duplicate dive that we already parsed with proper dive profile. So preventing a crash with this hack without properly understanding the weird file format. Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2017-10-07Warn if we edit non-existant dive siteGravatar Dirk Hohndel
And try to add it to the dive - bubt we really shouldn't get here. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-07Fix two bugs in taxonomy_set_countryGravatar Dirk Hohndel
The random coincidence that this code actually ended up working in my tests is weird. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-07LocationInformationWidget: make sure to clean out fieldsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-07Disable editDiveSiteButton without dive site nameGravatar Dirk Hohndel
Entering a name first creates and hooks up a dive site which we can then use in the edit dive site dialog to store modifications. This doesn't really fix these two bugs, but it might impact whether they can still be recreated See #633 See #636 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-07map-widget: don't crash if the map QML failed to loadGravatar Lubomir I. Ivanov
If the QML modules for QtLocation and QtPositioning are missing the QML in mapwidget.cpp will fail to load, which can lead to crashes. To solve the issue check if the QML has loaded and set a flag 'isReady' to true. If the loading has failed load another QML which is for showing a red error text in the lines of `MapWidget.qml failed to load!`. If the map QML has failed, use a macro in all relevant MapWidget members to turn them into a NOP. This approach leaves the rest of the codebase intact - e.g. no checks in classes which connect to the MapWidget class. Fixes #596 Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2017-10-07QML UI: open v2 user manualGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-06Revert "QML UIL: go back to older Kirigami"Gravatar Dirk Hohndel
This reverts commit 893ff019dbabf356a477da0bdf7d954123759018. Thanks to the amazing support from Marco Martin the theming issue in Kirigami master has been fixed. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-05Merge pull request #642 from Subsurface-divelog/editStartsOnTopGravatar Subsurface
Edit starts on top
2017-10-05Merge pull request #641 from Subsurface-divelog/taxonomyCrashFixGravatar Subsurface
Taxonomy crash fix
2017-10-05QML UIL: go back to older KirigamiGravatar Dirk Hohndel
This brings back correct theming. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-05Prevent crash when adding country to dive siteGravatar Dirk Hohndel
We need to make sure that the taxonomy information has been allocated before assigning values to it... Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-05WhitespaceGravatar Dirk Hohndel
This commit is empty when shown with '-w' - it just updates the indentation after commit c00804eff6 ("QML UI: always start edit at top of page"). Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-05QML UI: always start edit at top of pageGravatar Dirk Hohndel
When starting to edit / add a dive, the Flickable needs to be positioned at the top of the page, not the last position shown. For clarity I'll do the re-indentation in the next commit. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-05divesite.c: use NULL instead of 0 for char* buffersGravatar Lubomir I. Ivanov
Makes it clearer that these are buffers and not integers like `ds->uuid`. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2017-10-05divesite.c: prevent double free()Gravatar Lubomir I. Ivanov
Reported-by: Benjamin Fogel <nystire@gmail.com> Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2017-10-05Explicitly copy a cylinder which was marked as "unused" in the plannerGravatar Stefan Fuchs
When planning a new dive (not replan!!!) based on an existing (planned) dive, the cylinders from the existing selected dive are copied. This patch guarantees that cylinders which had been marked as "unused" are indeed copied as well. Sounds strange at the first moment but makes sense because if one marks a cylinder explicitly as "unused" in the planner instead of deleting it that does mean that one wants to keep this cylinder to have it available and be able to reenable it later-on. Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-10-05QML UI: add transition when switching to edit modeGravatar Dirk Hohndel
The hard switch was not ideal. This isn't perfect, yet, but a step in the right direction. The 'transitions' to change the visibility properties are a bit odd, but that's how it's done in the examples as well. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04QML UI: download icon in main menuGravatar Dirk Hohndel
We need a white path drawn on the dark action button, but a black path drawn for the main menu. (looks like a white space change snuck in here) Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04QML UI: hide all buttons when keyboard is visibleGravatar Dirk Hohndel
This extends the hack in commit 2e057bc29a ("QML UI: hide action button when keyboard is visible") to the left and right button as well. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04QML UI: make edit page scrollableGravatar Dirk Hohndel
And have a tiny bit of space around it. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04QML UI: change the dive edit to not be an overlayGravatar Dirk Hohndel
This way the accidental closing of the edit (and loss of data) should no longer happen. See: #495 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04QML UI: top padding for dive detailsGravatar Dirk Hohndel
This used to work without manually adding space here. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04QML UI: avoid warning before currentTheme is setGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04QML UI: adjust icon namesGravatar Dirk Hohndel
These changed in Kirigami. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04Switch back to latest KirigamiGravatar Dirk Hohndel
And fix the build issue. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04White space and clarifying bracesGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04Add satellite icon to qrc fileGravatar Dirk Hohndel
Otherwise it's not shown on the divesite edit page. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04Whitespace changeGravatar Dirk Hohndel
This is just the indentation change for the code that was inside the loop before. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04Simplify the geo reverse lookup functionGravatar Dirk Hohndel
We never actually create a list of dive sites for which we call the reverse lookup service, it's always just displayed_dive_site. So make this all much simpler and just go straight for that. This commit removes a loop, but doesn't change the indentation of the code inside the loop to make it easier to see what was changed. That whitespace change will be in my next commit. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04Remove bogus signalsGravatar Dirk Hohndel
One isn't connected to anything, the other one makes us overwrite the changes to displayed_dive_site. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04Change the signature of constructLocationTagsGravatar Dirk Hohndel
We actually want to be able to pass a specific divesite structure and not have it look that up by uuid. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04fixup taxonomy typeGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04Don't add separate country field, use taxonomyGravatar Dirk Hohndel
The more I looked at the code that added the country to the dive site, the more it seemed redundant given what we have with the taxonomy. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04Add taxonomy copy helper functionGravatar Dirk Hohndel
We don't want to just be able to copy all of a dive site. Sometimes we might want to be able to copy just the taxonomy. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04Add taxonomy helper functionsGravatar Dirk Hohndel
Right now we just want direct access to the country, I assume we'll add more like this in the future. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-04When finding deepest ceiling, do not round to multiples of 3mGravatar Robert C. Helling
Fixes #630 Signed-off-by: Robert C. Helling <helling@atdotde.de>
2017-10-04Planner minimum gas calculation: Print delta pressure in resultsGravatar Stefan Fuchs
Print the delta between the required minimum gas result and the cylinder pressure at last bottom datapoint in results. Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-10-04Planner settings ascend and descende rate: Wire up UI elements correctlyGravatar Stefan Fuchs
Wire up the UI elements (QSpinBoxes) for ascend rates (4x) and descend rate (1x) correctly so that the profile and calculation is updated immediately after the value is changed (e.g. increased/decresed by 1) by clicking the QSpinBox arrows. Until now one had to click into the profile or change another planner preference first before the change became effective. Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-10-03dive-list: maintain a single instance of DiveTripModelGravatar Lubomir I. Ivanov
A weird crash occurs if DiveListView creates another local instance of DiveTripModel inside reload(). Re-use the member variable tripModel and assign it a new instance of DiveTripModel. Reported-by: Gaetan Bisson <bisson@archlinux.org> Tested-by: Gaetan Bisson <bisson@archlinux.org> Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2017-10-03divelist: prevent a crash for missing column widthGravatar Lubomir I. Ivanov
The `static int defaultWidth[]` definition in divelistview.cpp could potentially end up missing an element which can later result in out-of-bounds access when iterating through the list of columns and updating their widths. Add a couple of methods in DiveTripModel for setting and getting the widths and use those. The default values are now pre-set in a QVector in the DiveTripModel() constructor. Throw warnings if out-of-bounds columns are requested. Reported-by: Gaetan Bisson <bisson@archlinux.org> Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2017-10-03current Kirigami master fails to buildGravatar Dirk Hohndel
Go back to v2.2.0. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>