aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2020-11-03cleanup: random small whitespace cleanupGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-11-03desktop: offer different colors for info tab titlesGravatar willemferguson
Add a preference option to set the color of the text on the information tab to either MediumBlue, LightBlue or Black. The last two of these colors are meant to enable areadable font contrast on displays with dark mode. The choice is saved with the other preferences. [Dirk Hohndel: this isn't really about dark mode, so changed many of the types and variable names, changed the user visible texts, and addressed some whitespace issues] Signed-off-by: willemferguson <willemferguson@zoology.up.ac.za> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-11-01smtk-import: Add support for new devices modelGravatar Salvador Cuñat
Include devices Ids in the DC data. Ensure we always set a DC model string for manual dives or unsupported devices. Signed-off-by: Salvador Cuñat <salvador.cunat@gmail.com>
2020-11-01build-systsem: move back to Xcode 11Gravatar Dirk Hohndel
It appears that Xcode 12 applies some rather self defeating logic when picking build architectures in release builds for the simulator. It adds aarch64 by default and I can't find a way to turn that off from the command line. At the same time, you can't link against the simulator if you have build with aarch64 as the aarch64 simulator doesn't exist, yet. Since I couldn't get any of the claimed workarounds to work, I'm forcing Xcode 11 to be used in the Action. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-11-01parser: don't crash when parsing <weight> tagsGravatar Berthold Stoeger
When encountering a <weight> tag, we would parse into the last weightsystem. However, we only create weightsystems when encountering <weightsystem> tag. Therefore, this code would either crash or overwrite the previous weightsystem. Instead, create a new weightsystem for each <weight> tag. Moreover, make sure that inside a <weightsystem> tag a weightsystem actually exists. This should be the case, but who knows...? Reported-by: Nihal Gabr <gabr.nihal@gmail.com> Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2020-10-31core: on import remove merged dives from trip/divesiteGravatar Berthold Stoeger
When dives were merged on import, they were not unregistered from their dive site and trip before being deleted. Thus, these tables had stale pointers, which would ultimate lead to crashes. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2020-10-31build-system: build libmtp for macOS if requestedGravatar Dirk Hohndel
If we are building our own dependencies (usually only for release builds), we now also need to build libmtp. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-31cleanup: fix stupid hack for MXE build scriptGravatar Dirk Hohndel
This is much easier. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-31Update libdivecomputerGravatar Dirk Hohndel
Fix two Coverity issues. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30Update CHANGELOGGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30Update to latest libdivecomputerGravatar Dirk Hohndel
- Garmin Descent Mk2i: add initial support for parsing cylinder pressure data Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: enable both 32 & 64 bit Windows buildsGravatar Dirk Hohndel
The 32bit build won't include libmtp and therefore won't support the Garmin Descent Mk2/Mk2i. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: switch to the 32/64bit MXE build containerGravatar Dirk Hohndel
This doesn't actually build 32 bit binaries, yet. One step at a time. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: create an MXE docker container for both 32 & 64 bitGravatar Dirk Hohndel
This should allow us to then do both 32 and 64 bit Windows builds in our CI/CD and of course for our releases. In order to still be able to use this container in a GitHub action, aggressively remove things that we won't need during the build. Since we use the experimental -squash argument during docker build, this should get us a much smaller container image in the end. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: switch GitHub Action Windows build to 64 bitGravatar Dirk Hohndel
This is using the new build container with a 64bit MXE system. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: Docker build for 64bit MXEGravatar Dirk Hohndel
We previously tried to build the MXE Docker container on GitHub using an Action, but that really didn't work well and was a lot more trouble than it was worth. So this goes back to an offline build mechanism where I simply create an updated Docker image when needed and push that to Docker Hub. But this nearly hides the most interesting change here - we are finally switching to using 64bit binaries on Windows. It's 2020 and fewer than 1% of our users use 32bit Windows machines. We'll need to expand this to be able to have both a 32bit and a 64bit version of Subsurface for Windows. But for now, this solves the problem for 99% of our users. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: adapt the smtk2ssrf script for 64bit WindowsGravatar Dirk Hohndel
Quite analogous to the Subsurface Windows build script. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: first steps towards a 64bit Windows buildGravatar Dirk Hohndel
This is barely scratching the surface (no put intended), and of course the container needs to be updated, first, to have a 64bit version of MXE installed, but this seems to help make libmtp build correctly. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: add libmtp for our Windows buildsGravatar Dirk Hohndel
This uses latest master (as that's the only one that has the explicit Descent Mk2i support in it). Right now, unfortunately the MXE build fails. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: add libmtp for Linux and macOSGravatar Dirk Hohndel
Since MXE doesn't offer libmtp I'll need to add code to manually build libmtp there. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30add initial support for the Garmin Descent Mk2iGravatar Dirk Hohndel
This brings in the needed libdivecomputer updates and builds Subsurface against libmtp in order to support downloading dive data via MTP (since the Mk2/Mk2i no longer provide a FAT filesystem via USB). In order for this to work you need to have libmtp installed on your system. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-29desktop: make edit icon non-transparentGravatar Doug Junkins
Switched the edit icon to one that has the pencil color set to white instead of transparent so that it remains visible when switching to Mac OSX dark mode. Signed-off-by: Doug Junkins <junkins@foghead.com>
2020-10-29desktop: add label to dive computer tableGravatar Doug Junkins
There was no "title" property on the dive computer table which was causing an default label of "GroupBox" to appear above the table. Added a title property to clean up the UI. Signed-off-by: Doug Junkins <junkins@foghead.com>
2020-10-29desktop: use default colors for dive info labelsGravatar Doug Junkins
Removed the style change to force a style change for the labels on the dive information page to Medium Blue. This makes labels more readable in MacOSX dark mode since the default style changes colors when the mode is shifted from light to dark or vice versa. Signed-off-by: Doug Junkins <junkins@foghead.com>
2020-10-28cleanup: remove unnecessary includes from maintabGravatar Berthold Stoeger
These are artifacts from when the maintab contained more stuff. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2020-10-27cleanup: refactor subsurfacesysinfo.cppGravatar Berthold Stoeger
This used to be a copy of QSysInfo. However, once the requirement was raised to Qt5.4, this was replaced by a subclass of the original QSysInfo - which made the whole file mostly obsolete. Just use QSysInfo directly where needed. Only for windows.c, which can't call directly into Qt, keep the isWin7Or8() helper function. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2020-10-26desktop: move MinMaxAvgWidget to TabDiveStatisticsGravatar Berthold Stoeger
This is its only user and the widget is scheduled for removal. Let's move it there temporarilly. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2020-10-26cleanup: remove dive.h include in simplewidgets.hGravatar Berthold Stoeger
Let's simply forward declare the needed structures. Also removes removes two more unnecessary includes. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2020-10-26tests: don't fail if TestGitStorage can reach the serverGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26build-system: use openSUSE Tumbleweed latestGravatar Dirk Hohndel
Without a distro update, Leap 15.2 appears to only give us Qt 5.12. Since the upgrade takes forever and causes problems as it requests a senseless 'reboot' of the container, let's try using Tumbleweed instead. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26documentation: remove mention of Grantlee in INSTALL fileGravatar Dirk Hohndel
We don't use Grantlee anymore. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: fix deprecated QVector constructorGravatar Dirk Hohndel
Annoyingly, the replacement has only been available since Qt 5.14. To make the code less messy, implement our own stdToQt conversion helper. Suggested-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: remove struct/class confusionGravatar Dirk Hohndel
DiveSiteChange is defined as a struct, not as a class. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: move variable declaration closer to useGravatar Dirk Hohndel
This way we avoid an unused variable warning on mobile builds. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: remove reference to deprecated enum valueGravatar Dirk Hohndel
This had been deprecated for quite a while. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: remove unnecessary call to qsrandGravatar Dirk Hohndel
We actually don't use random numbers anywhere outside TestGitStorage. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: replace deprecated swap() usageGravatar Dirk Hohndel
Instead of using the two different ways Qt supports swap, depending on the Qt version in use, let's simply use std::swap() Suggested-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: replace deprecated pos() memberGravatar Dirk Hohndel
Again, replacement was just recently added. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: remove unused function argumentGravatar Dirk Hohndel
Also, only compile the static function where it is used. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: replace long obsolete delta() memberGravatar Dirk Hohndel
This has been deprecated for years. The delta() member dealt with the old style mouse wheel that is associated with a vertical scroll - so we need the y-component. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: don't initialize flags with just an integerGravatar Dirk Hohndel
This is slightly different from the previous cleanup around QFlag use as this one is related to QtWebKit flags. But the logic is the same. Just syntax to avoid a warning. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: replace deprecated signalGravatar Dirk Hohndel
Again, the replacement was only implemented in Qt 5.14, so more conditional code. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: SkipEmptyParts syntax has changedGravatar Dirk Hohndel
Sadly, the new enum has only been available since Qt 5.14, so this is a rather ugly replacement. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: model isn't used in the lambdaGravatar Dirk Hohndel
Simply cleaning up a warning. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: replace deprecated sprintf()/vsprintf() callsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: remove obsolete connectionsGravatar Dirk Hohndel
Not sure how this even ended up in this .ui file. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: fix deprecated roleGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: replace deprecated use of child memberGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: fix deprecated form of QProcess::startGravatar Dirk Hohndel
You are now required to always provide a list of arguments. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26cleanup: fix deprecated QFlags useGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>