aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-06-08mobile: remove unneeded alias from mobile-resourcesGravatar jan Iversen
remove alias where alias == file rename *24px* icons and remove alias Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-08mobile: clean qml dir (move dive.jpg to icons)Gravatar jan Iversen
Cleanup qml dir by moving dive.jpg to the icon dir Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-08mobile: sort mobile-resources.qrcGravatar jan Iversen
Sort to make it easier to read. Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-08Provide correct cylinder pressures for bailout divesGravatar Willem Ferguson
Calculate the correct cylinder pressures for rebreather dives with bailout. Currently the cylinder pressures for a dive are calculated assuming a single dive mode for that dive. Bailout indroduces more than one dive mode for a single dive, i.e. transitions from CCR or PSCR to OC and back. Currently the start and end pressures for each cylinder are used to interpolate cylinder pressures while that cylinder is used. However, the different gas consumption rates for OC, PSCR and CCR are not taken into account in this interpolation and the cylinder pressure is indicated by an averaged interpolation accross the rebreather and OC legs of the dive. Consequently the increased drop in cylinder pressure during OC is not shown. This PR allows differentiation between CCR/PSCR legs of the dive and the OC bailout segments, showing realistic interpolation that indicate the increased rate of gas use during OC. Signed-off-by: Willem Ferguson <willemferguson@zoology.up.ac.za>
2018-06-07mobile: correct comboProduct if model changesGravatar jan Iversen
update onModelChanged in comboProduct to read the current index Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-07iOS: move get-dep-lib outside ARCH loopGravatar jan Iversen
Fetch all 3rd party libs before entering ARCH loop Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-07Dive pictures: remove cache_picture() call in dive_add_picture()Gravatar Berthold Stoeger
When adding a picture to a dive, cache_picture() was called, which calculated the hash of the picture in a background-thread. This made tests occasionally fail, because the tests depended on the filename-to-localfilename being overwritten in a call running in a different thread. Depending on which thread finished first, the test succeeded or failed. The easiest way to circumvent this problem is to remove the cache_picture() call. The hash will be calculated anyway with the thumbnails. And the only function of the hash is the "find moved images" function. Which is not an issue here, because the user just loaded the images from disk. Reported-by: Jan Iversen <jani@apache.org> Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-06-06Bugfix: Load PSC dive logsGravatar Willem Ferguson
The code changes to standardise the named of divemodes and to separate internal divemode names and UI divemode names introduced a bug that caused non-backward compatability with existing dive logs. The reason for this is the definition of the divemode_text strings in dive.c This change reverses that definition and brings about correct loading of PSCR dive logs as well as correct parsing of bailout events involving PSCR. Signed-off-by: Willem Ferguson <willemferguson@zoology.up.ac.za>
2018-06-05core: remove "static void copyPath" unusedGravatar jan Iversen
Remove copyPath since it is static and not called to avoid clang warning Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-04Dive picture: fix toggling of picture-visibilityGravatar Berthold Stoeger
In a recent commit, the profile widget was changed to reuse DivePictureItems. This made toggling of picture-visibility disfunctional, because the visibility was set in the constructor. Only on change of dive would the setting take effect. Therefore, move the setting of the visibility up to the ProfileWidget2::plotPictures() call. This is more consistent anyway, since at this level pixmap and fileUrl are set. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-06-04core: remove unused function getDetectedDeviceAddress()Gravatar jan Iversen
getDetectedDeviceAddress is not used in mobile or desktop version Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-04mobile: delay combobox selection for download.Gravatar jan Iversen
Set index of comboboxes in Download screen when the page becomes visible instead of when it is created. The pages is created before QBluetoothDeviceDiscoveryAgent on iOS and desktop, therefore combobox indexes cannot be set during page creation. Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-04Cleanup: fold core/helpers.h into core/qthelper.hGravatar Berthold Stoeger
helpers.h included qthelper.h and all functions declared in helpers.h were defined in qthelper.h. Therefore fold the former into the latter, since the split seems completely arbitrary. While doing so, change the return-type of get_dc_nichname from "const QString" to "QString". Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-06-04Cleanup: make copyPath() function of static linkageGravatar Berthold Stoeger
The function was only used in core/qthelper.cpp Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-06-04Profile: open pictures using local file pathGravatar Berthold Stoeger
Make the behavior of the profile-pictures consistent with the pictures in the photos-tab: Use the local file path to open the picture in the system viewer instead of the canonical filename (which might point to a non-existing location). Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-06-01user-manual: add note that some Grantlee variables need '|safe'Gravatar Lubomir I. Ivanov
Grantlee variables need the '|safe' extension, so that they can use HTML tags. Without it, tags like '<br>' would not be converted to line breaks - e.g. when exporting planned dive notes. Add a note about that in the user manual. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2018-05-31Desktop: Derive UserManual from QDialogGravatar Berthold Stoeger
In commit d21d42b69117aae04b68ecc9cc2139e034bde146 helpView was made a child-object of MainWindow, which is Qt's idiomatic way of having helpView deleted with MainWindow. As an unintended consequence, the helpView didn't show. The reason is that UserManual derives directly from QObject. In contrast, UserSurvey derives from QDialog and is correctly shown. Therefore also derive UserManual from QDialog. Reported-by: Willem Ferguson <willemferguson@zoology.up.ac.za> Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-05-31User Manual: add text for bailout using PSCRGravatar Willem Ferguson
As the title says. A few tiny other changes to the user manual as well. Corrected a some typos (Thanks, @neolit123). Signed-off-by: Willem Ferguson <willemferguson@zoology.up.ac.za>
2018-05-30mobile: add timer to measure startup.Gravatar jan Iversen
Subsurface-mobile has a long startup time; in order to isolate the problem(s) a timer is added to see where time is "lost". The collected startup times are added to the clipboard together with the other logs, allowing test users to report back. All this is only enabled when compiling with -DENABLE_STARTUP_TIMING Closes #1340 [Dirk Hohndel: collapsed multiple commits and minor white space cleanups, added missing QMutex variable] Signed-off-by: Jan Iversen <jani@apache.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-05-29desktop: use QElapsedTimer to measure timeGravatar jan Iversen
QElapsedTimer is the preferred timer for measuring time so lets use it. Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-28User manual: Add text for dive planning CCR with bailoutGravatar Willem Ferguson
Three images added as well as text. Signed-off-by: Willem Ferguson <willemferguson@zoology.up.ac.za>
2018-05-28Planner: Don't store a setpoint unless we are in CCR modeGravatar Robert C. Helling
Signed-off-by: Robert C. Helling <helling@atdotde.de>
2018-05-28Don't compute SAC if total gas use is unknownGravatar Robert C. Helling
If we breathe from a cylinder with invalid start or end pressures, we cannot reliably compute the total gas use and thus the SAC. So we should not pretend to do so. A better fix would compute the total SAC for only those segements that have valid start and end pressures. Reported-by: Stefan Fuchs <sfuchs@gmx.de> Signed-off-by: Robert C. Helling <helling@atdotde.de>
2018-05-28Rename confusing variable nameGravatar Robert C. Helling
This is a struct dive pointer not a divepoint. Signed-off-by: Robert C. Helling <helling@atdotde.de>
2018-05-28Distinguish between user and internal divemode namesGravatar Robert C. Helling
The former should be translated but not those that go to xml/git. ... and fix capitalization of pSCR. Suggested-by: Stefan Fuchs <sfuchs@gmx.de> Signed-off-by: Robert C. Helling <helling@atdotde.de>
2018-05-27mobile: make list action buttons appear againGravatar Murillo Bernardes
Dive list: on holding an item, the delete button was not showing the icon. Show GPS fixes: when swiping an item icons were not being shown. Partial for bug #1267 Signed-off-by: Murillo Bernardes <mfbernardes@gmail.com>
2018-05-27Remove unnecessary {}Gravatar Miika Turkia
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2018-05-27Shearwater import: avoid running atoi multiple timesGravatar Miika Turkia
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2018-05-27changelogGravatar Miika Turkia
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2018-05-27Shearwater import: support for DC reported ceilingGravatar Miika Turkia
This adds support for DC reported ceiling when importing the Shearwater Desktop database. Both AI and non-AI versions are tested, but not all possible paths. For non-AI the DC reported ceiling was from firstStopDepth and for the AI version it was from the decoCeiling field. I do not currently know when each of these fields are used, but at least this works on my test data. Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2018-05-27Shearwater import: add support for DC reported ceilingGravatar Miika Turkia
This adds stopdepth, stoptime and in_deco attributes on Shearwater XML import. The output from the XSLT is very verbose (these values are printed for each sample), but as Subsurface cleans things up, there is no need to do any more magic on XSLT side. Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2018-05-27Shearwater import: include NDL only if not zeroGravatar Miika Turkia
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2018-05-27Shearwater import: new format for DC infoGravatar Miika Turkia
Include the DC info into settings and refer to that in each dive. Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2018-05-27Dive pictures: automatically recalculate thumbnailsGravatar Berthold Stoeger
If a thumbnail and the original picture can be accessed and the modification date of the thumbnail is before the modification date of the picture, recalculate the thumbnail. This causes more disk access and might give strange effects for picture files with messed up file timestamps (i.e. lying in the future) or messed up computer clocks (i.e. running in the past). Therefore, add a preference option to disable the new behavior. Default is set to enabled. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-05-27Dive pictures: give user option to recalculate thumbnailsGravatar Berthold Stoeger
Even though hashes of image contents are calculated, the hashes are not compared to actual file contents in routine-operation. Therefore give the user the option to recalculate thumbnails, should they have edited the picture. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-05-27mobile: Adjust About.qml to fit small screens.Gravatar jan Iversen
Adjust size of image and text to ensure that the clipboard buttom is (nearly) always visible The buttom is not directly visible in landscape mode on a small device. Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-26core: qt-ble.cpp remove postEvent for all platformsGravatar jan Iversen
the postEvent is only called when downloading from a dc with bluetooth, so in most it does not have an effect on the deleteLater() in the code. there are no reason to do special cleanup while waiting for bluetooth QEvent::DeferredDelete is not supported on iOS. Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-26Dive pictures: Derive thumbnail file from picture filenameGravatar Berthold Stoeger
Since commit 6618c9ebfc6a7cebbef687fcb3aa74c70f504ff2, thumbnails are saved in individual files. The filename was simply the picture-hash. In a mailing-list discussion it turned out that in the future we might not hash images or change the hash. Therefore, derive the thumbnail filename from the image filename, using the SHA1 algorithm. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-05-26Cleanup: remove code related to pictures in the cloud-repositoryGravatar Berthold Stoeger
Storing pictures in the cloud never came to be, so remove the code. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-05-26Cleanup: remove deleteLater() in QMLProfileGravatar Berthold Stoeger
The actual profile object was destroyed with deleteLater() in the destructor of QMLProfile. This is ominous, because the subobject shouldn't survive the parent object. Therefore, automatically destroy the profile by using a QScopedPointer. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-05-26Cleanup: remove three instances of deleteLater() in mainwindow.cppGravatar Berthold Stoeger
deleteLater() can be dangerous. Remove where not necessary. Analysis: 1) `helpView` was a pointer which was initialized on demand. close() and deleteLater() were called on closure of the main window. Firstly, there's no point in calling deleteLater(), because no references to helpView are used later on. Secondly, the deletion (and closing) can be done automatically in the destructor, by passing `this` as parent object. 2) `survey`: pretty much the same situation. But here, `this` was already passed as parent object. 3) `progressDialog` is a global (not thread safe!) pointer. The object is deleted after use. There is no point in using deleteLater(), because the callers are not active after hideProgressBar(), which is the place were the deleteLater() call was found. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-05-26Cleanup: remove reply and request member variables in QMLManagerGravatar Berthold Stoeger
The reply member variable was used to access the reply in the handleSslErrors, handleError and retrieveUserid slots. This is a very scary proposition in the light of multi-threading. Instead, the reply can be accessed by using the QObject::sender() function. Thus, we can remove the member variable. The request member was just downright weird. This was only used locally to describe a network request. Since QNetworkAccessManager::get() copies the request, it can be destructed right away. Nevertheless, the data was kept as a subobject. Remove member and make it function-local. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-05-25build-system: added missing .git in get-dep-lib.shGravatar jan Iversen
For unknown reasons cloning from github is slower to start if .git is omitted. Add .git to all "git clone" statements Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-25build-system: update get-dep-lib to not check double on iOSGravatar jan Iversen
Only mobilecomponents.sh download breeze-icons and kirigami. This patch is merely to avoid confusion. Before get-dep-lib in ios/download would download those, and mobilecomponents would see that they were already downloaded. Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-25Add .mailmap to combine individual contributorsGravatar Miika Turkia
This will combine contributions to one identity even when using multiple email addresses (or differences in real name). I.e. Tomaz had two different identities in top 20 contributors list. Now "git shortlog -sne" will show them all under one contributor. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> --- Not that this would really matter, but since we do run git shortlog -sne to get stats we might as well get more correct results :D I am sure there are still some mistakes as I used exact realname matching in a longish shell one-liner, complemented with some manual tuning for Willem and Robert as I spotted them to have some variations on real name...
2018-05-25Cleanup: Don't defer deletion of oldModel in DiveListView::reload()Gravatar Berthold Stoeger
There seems to be no point in using deleteLater() of the previous model. Set the new model and delete the old one. This fixes a crash with Qt 5.11. Tested-by: Gaetan Bisson <bisson@archlinux.org> Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-05-24profile-widget: set printmode but allow events for ssrf-mobileGravatar jan Iversen
Reactivate printMode true for ssrf-mobile to avoid font problems, do not discard events if ssrf-mobile (even though printMode is true) Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-24iOS: updated launchscreen so it is more centered.Gravatar jan Iversen
The text and icon was so low, that the page started to scroll on an iPhone (at least on a model 6s). Anchored Text to top, and icon to text. Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-24core: replace (void) with UNUSED(x) and include ssrf.hGravatar jan Iversen
Unused parameters in C are "silenced" by adding UNUSED(x) Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-24core/ssrf.h: add #pragma to avoid clang warning "-Wmissing-field-initializers"Gravatar jan Iversen
Add a #pragma to avoid getting warning when a struct is only initialized with one 0 and not one pr struct member Signed-off-by: Jan Iversen <jani@apache.org>