aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2017-09-29mobile: add helper function cancelCredentialsPinSetup()Gravatar Jan Mulder
As written in 8d9ad3cfea7e4c0875, the user needs to be able to exit the PIN entry UI, in case no PIN can be received due to a wrong email address. The simplest way seems to just clear the cloud credential data, and let the user try again. Obviously, we could argue if the exact previous state of the 1st credentials screen could be restored, but as it is only 2 simple fields, of which it is higly likely that the email adress is misspelled (and the password hidden), it seems overly complex to implement. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-09-29mobile: propagate "still PIN required status"Gravatar Jan Mulder
Makes sure that the CS_NEED_TO_VERIFY status is carried forward and sets the showPin flag that triggers the 2 different states in de QML UI. The new credential UI will have one page for username/passwd, used for setting up an account or switchting to a different account, and a second page to enter a PIN only. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-09-29mobile: do not go to NO_CLOUD status from UNKNOWNGravatar Jan Mulder
In case the credential status is UNKNOWN, and the cloud username and password are empty, do not go automatically to NO_CLOUD status. This is (again) preparation for future work on credential management. For example, the user entered an email address with a spelling error, so does not receive a PIN code email. This user needs a way out, so there needs to be a <cancel> button on the PIN code screen. And the most logic was of cancelling is emptying the entered username/passwd and let the user try again. Without this change, the user immediately gets into the (somewhat) final NO_CLOUD state, which will result in (very) confused users. With this change, there is exacly one way (left) to get into a NO_CLOUD setup: hitting the proper button, so a deliberate user action. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-09-29mobile: initialize credential data in one placeGravatar Jan Mulder
It appears that the onCompleted of the StartPage item is triggered before the onCompleted of the rootItem. This is logical as the Startpage is a child of the rootItem. And, yes, this does matter. As the divelist also contains the logic for initial cloud registration (and is the default page shown in a state where the cloud credentials are valid (CS_VERIFIED state)), we need to know the correct credential state at start of the app. The move of this one line of code makes sure of that, in addition to setting the credential state from the preferences. Now, the setupActions function can reference correct credential data. This is further preparation for a better cloud creation process from mobile. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-09-29Paragraph in manual about off-gassingGravatar Robert C. Helling
The VPM-B model assumes off-gassing only happens during ascent which for us are that part of the dive where dp->entered is false. This is wrong for dives with manually entered waypoints in the ascent, as discussed in See #601. Signed-off-by: Robert C. Helling <helling@atdotde.de>
2017-09-28Save Subsurface version to libdivecomputer logfileGravatar Miika Turkia
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2017-09-28Planner prefs: set all ascent rates to 9m/minGravatar Rick Walsh
9m/min (or 10m/min) is the ascent rate assumed by Buhlmann and navy tables, and the default of most other planning software and dive computers. Setting the default to 9m/min allows the default behaviour to be consistent with "expected" behaviour, but does not prevent the user from changing the preference. There is disagreement between some users whether the final ascent ascent duration should be considered when determining the length of the final stop. This change does not alter that at all, but at 9m/min, the difference is <1min. See #592 Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
2017-09-26Update translation source stringsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-26Change Facebook upload description to eliminate confusionGravatar Federico Masias
Signed-off-by: Federico Masias <fede@masias.net> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-26Add Contributing fileGravatar Dirk Hohndel
We already had this on our website, but GitHub suggests to have this in the repo as well. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-26github: add templates for pull requests and issue reportsGravatar Lubomir I. Ivanov
.github/ISSUE_TEMPLATE.md will be used when the Github users create new issues. .github/PULL_REQUEST_TEMPLATE.md will be used when the Github users create new pull requests. The markdown supports HTML comments (<!-- comment -->), which can instruct the Github user how to create a detailed PR or issue report. Most big Github projects use such templates and these can help the collaborators to examine the PRs and ISSUES faster. Fixes #598 Reviewed-by: Dirk Hohndel <dirk@hohndel.org> Reviewed-by: Jan Mulder <jlmulder@xs4all.nl> Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2017-09-24Windows NSI installer: Remove qml folder on uninstallGravatar Stefan Fuchs
Do remove also the (new) qml folder on uninstall. Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-09-24Support gas changes on Shearwater XML importGravatar Miika Turkia
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2017-09-23Add required qml modules to Ubuntu packagingGravatar Miika Turkia
Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-22BLE: big writes to connected DC (OSTC firmware)Gravatar Jan Mulder
Most writes to a connected DC are small, typically some command bytes to get DC in download mode, or to set some parameter. All this just worked over BLE, however, sending a full firmware update (on an OSTC device) failed, as the underlying BLE interface can only handle small 20 byte BLE packets at once. So, send max ble->packet_size chuncks at once. Tested for the following cases (linux desktop with OSTC3 over BLE): 1) normal download of dive data. 2) read and write settings from configure UI 3) update firmware (from 2.15 to 2.15) And to my surprise, no flow control credit administration is required here. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-09-20BLE support: simplify write functionGravatar Dirk Hohndel
It seems clearer to bail when list is empty... Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-20DC download: fix 'no new dives' messageGravatar Dirk Hohndel
Stupidly, commit 731d9dc9bdf ("DC download: tell user when no new dives were found") was missing the conditional when to show that messages. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-20Updated French documentationGravatar Philippe Massart
This is a manually created single commit to incorporate the changes in https://github.com/Subsurface-divelog/subsurface/pull/502 Closes #502 [Dirk Hohndel:] I was able to manually merge that branch but it created a complete mess out of the tree and brought several dozen commits in a second time, so I gave up and instead created this single commit. Signed-off-by: Philippe Massart <philippe@philmassart.net> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-20Remove option to apply GFlow at maxdepthGravatar Robert C. Helling
This option should have never been there. This is not how gradient factors are supposed to work. It would only trick users to use the wrong value.. Signed-off-by: Robert C. Helling <helling@atdotde.de>
2017-09-20Add a checkbox to turn off plan variationsGravatar Robert C. Helling
... as those come with a performance penalty Signed-off-by: Robert C. Helling <helling@atdotde.de>
2017-09-20mapwidgethelper: support Qt 5.5.xGravatar Lubomir I. Ivanov
MapWidgetHelper::calculateSmallCircleRadius() uses the second argument (boolean) of QDeclarativeGeoMap::toCoordinate() and QDeclarativeGeoMap::fromCoordinate(), which isn't supported in Qt 5.5.x and errors will be thrown on runtime. This argument usage is redundant for the calculateSmallCircleRadius() use case. If the argument is set to "false" it tells the map to avoid clipping the viewport and always return a valid QPointF/QGeoCoordinate. Given that calculateSmallCircleRadius() only works with the map center - i.e it's called like so in MapWidget.qml: onZoomLevelChanged: mapHelper.calculateSmallCircleRadius(map.center) The only way for the radius estimation to fail is if the map widget width is smaller than SMALL_CIRCLE_RADIUS_PX * 2 = 52px, which is not possible as the MainWindow splitter prevents it. If the map widget becomes that small it would be hardly usable, yet no errors should be thrown related to this change. Tested-by: Stefan Fuchs <sfuchs@gmx.de> Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2017-09-20Correct comment for deco subsurface_conservatism_factorGravatar Stefan Fuchs
This adapts the comment according to the change done in bd89e33e765d73aa2b48419031d6922b8bf5eb37 Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-09-17BLE on non-Apple OSs: switch back to using BT addressGravatar Dirk Hohndel
While this interface is deprecated, too much in our existing code depends on being able to create the QLowEnergyController with just the address. Additionally, createCentral() is new in Qt 5.7 and therefor this broke builds on Linux distros that are still on 5.6. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-17Merge branch 'macBLE' of github.com:Subsurface-divelog/subsurfaceGravatar Dirk Hohndel
2017-09-17DC download: show info messages on MacGravatar Dirk Hohndel
For some reason the progress bar on macOS doesn't show the progress text. This creates a label below the progress bar and shows the text there instead. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-17DC download: better message at beginning of downloadGravatar Dirk Hohndel
Especially on BT/BLE devices, where there is a longer negotiation phase at the beginning of the download, this seems more user friendly. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-17DC download: don't clear message if no dives downloadedGravatar Dirk Hohndel
Otherwise the text telling the user that no new dives were found will be deleted right away. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-17DC download: tell user when no new dives were foundGravatar Dirk Hohndel
Otherwise it almost looks like something went wrong with the download. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-17BLE: try to pick the correct descriptor to write toGravatar Dirk Hohndel
The ordering on Mac appears to be random, but after looking through the various successful logs of BLE downloads, it seems we always wrote to the ClientCharacteristicConfiguration descriptor. So try to find that one first, and only grab the first descriptor in the list if we didn't find a ClientCharacteristicConfiguration descriptor. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-17BLE: create controller from QBtDeviceInfoGravatar Dirk Hohndel
Creating it from an address is a) deprecated and b) impossible on Mac or iOS. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-17BLE: helper function to get QBtDeviceInfo from UUIDGravatar Dirk Hohndel
Right now this will only work if you scan for your BLE dive computer every time. Ideally we should simply initiate a scan and look for that address if it's not found in the hash. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-17BLE: on Mac/iOS use UUID instead of addressGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-17BLE: if there's no address, use the UUID insteadGravatar Dirk Hohndel
This is not just for IOS, the same applies on a Mac. But I see no issue with enabling that for all OSs. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-17cmake: enable BLE on MacsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-17Mac packaging: add option to make bundle without creating DMGGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-16Don't comput plan variations when not in the plannerGravatar Robert C. Helling
Fixes #565 Signed-off-by: Robert C. Helling <helling@atdotde.de>
2017-09-16Correct incorrect variable qt_version instead of QT_VERSION in build.shGravatar Stefan Fuchs
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-09-16Remove some very small marble leftoversGravatar Stefan Fuchs
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-09-16mapwidgetcontextmenu: use a QtQuick 2.0 importGravatar Lubomir I. Ivanov
Following on beb0d5703a0e, the context menu seems to work fine with a much older QtQuick import - version 2.0. The 2.7 import is technically a development leftover and a minimal version should have been considered earlier. On older Qt setups (e.g. 5.5.x) this might throw a: 'module "QtQuick" version 2.6 is not installed' Reported-by: Stefan Fuchs <sfuchs@gmx.de> Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2017-09-15latest translationsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-15Update translation source stringsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-15End tankbar at the correct end of the dive plotGravatar Stefan Fuchs
Go back to the old startegy of retrieving the correct end of the dive plot by looking at the plot data instead of looking at dc->duration. Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-09-15MXE build script: Mention googlemaps plugin in commentsGravatar Stefan Fuchs
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-09-15MXE build script: Remove hint to use old MXE versionGravatar Stefan Fuchs
Meanwhile (after removing marble) it seems to be a good choice to use latest MXE version with currently Qt 5.9.1. Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-09-15Use dive ID instead of dive number when importing from Shearwater dbGravatar Seppo Takalo
Dive IDs are unique but same dive number can appear multiple times within the same database. This can happen for example when user changes the "next log number" from his computer. Signed-off-by: Seppo Takalo <seppo.takalo@iki.fi>
2017-09-15Convert usage of atof() to strtod_flags()Gravatar Seppo Takalo
The provided strod_flags(str, 0, 0) should work as a drop in replacement for atof() but does not care about locales which may cause atof() to fail. strtod_flags() would allow checking of conversion result, but I did not change the existing logic. This was just regexp search&replace change to get rid of atof(). I use flags 0 to get more relaxed conversion. Fixes #574 Signed-off-by: Seppo Takalo <seppo.takalo@iki.fi>
2017-09-15First stab at ReleaseNotes for the next versionGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-15Properly clear sensor pressure data for synthetic plotinfo entriesGravatar Linus Torvalds
We only cleared the first sensor data when we created new synthetic plot info entries, because we only used to have one (well, we had the o2 data, but apparently nobody ever noticed that it didn't get properly interpolated, probably because people who have CCR dives with o2 pressures are few, and the pressure drops are gradual anyway). Clear all the pressure data, so that the interpolation code doesn't think we have some existing real sensor data for the plot info entries in between proper sample entries. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-15xml: save the right sensor pressure when we have multiple sensor readingsGravatar Linus Torvalds
The XML saving code got the multi-sensor case completely wrong, because it still had one place where it would always save the first pressure, rather than the pressure from the right sensor. This was hidden by the fact that old data would be saved using the legacy model that only ever used the first sensor slot. Only if you actually had multiple sensor slots used would the bug trigger. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-14Refine cylinder usage testsGravatar Miika Turkia
Consider cylinder used also if the first and last sample pressure differ enough Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>