Commit graph

14361 commits

Author SHA1 Message Date
Stefan Fuchs
7b6f67881c Update CHANGELOG.md
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-07-13 11:26:28 -07:00
Stefan Fuchs
c6db1b12f8 Fix dive mode drop-down in planner for re-planned dive
Also populate the DiveTypeSelectionModel with values for re-planned dive.

Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-07-13 11:26:28 -07:00
Stefan Fuchs
daab13eba9 Code cleanup in diveplanner.cpp
Move a variable declaration and added some initialization.
Added missing spaces.

Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-07-13 11:26:28 -07:00
Stefan Fuchs
24c915e97c In planner notes don't show dive mode for first data point
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-07-13 11:26:28 -07:00
Stefan Fuchs
9883b9f10e Add three missing translations for divemode_text_ui in plannernotes.c
Added three missing translations which were forgotten here:
fcf6b819d9

Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-07-13 11:26:28 -07:00
Linus Torvalds
b34a4063be Make sure our libdivecomputer custom IO interfaces have sleep functions
When I switched over from our own custom IO implementation to the new
upstream custom IO model in libdivecomputer, I completely missed the
fact that the libdivecomputer custom IO model also does a custom _sleep_
function.

I'm not entirely sure what the point was, and it broke things even in
libdivecopmputer itself when some of the new sleep functions were
broken.

Anyway, we didn't export any sleep functions at all for the bluetooth,
BLE and FTDI cases, the the libdivecomputer code didn't fall back to any
sane default sleep implementation either, so the end result was no
sleeping at all.

Which didn't matter for most divecomputers.

But it seems like at least some OSTC dive computers did care, at least
in certain situations, and both Miika and Anton had trouble downloading
with their OSTC Sport dive computers.  Using the serial line protocol
and the legacy /dev/rfcomm model worked fine, because then it used the
sleeping functions in the POSIX serial code inside libdivecomputer.

This just adds trivial sleeping functions for the affected download
protocols.  Maybe I should have just made libdivecomputer have a sane
default instead, but this wasn't hard either (the hard part was trying
to figure out why the downloads worked for some people and not for
others).

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2018-07-13 11:25:38 -07:00
Anton Lundin
4c2e1529c0 Fix configure bluetooth ostc's
When we introduced the whole check for supported transports code, no one
noticed that it broke configuring all ostc's over bluetooth.

The configure code just used a placeholder model of OSTC 3 to get the
right backend code. With the new supported transports model it errored
out if you where trying to connect to a bluetooth enabled device, just
because the original OSTC 3's wasn't bluetooth enabled.

This switches the placeholder model over to a OSTC Plus which is both
bluetooth, serial and ble capable, so the code works again.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2018-07-13 09:44:33 -07:00
Dirk Hohndel
c25f03d440 Derek: enable label and milestone management
Allow Derek to modify labels and milestones and add a few more of our
contributors to the list of people allowed to give Derek commands.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-13 09:34:03 -07:00
Salvador Cuñat
3c1b6d9ec1 [user-manual] Update SmartTrak import information
The information on how to build smtk2ssrf was pretty outdated.
Update this information and point to subsurface downloads repo for
windows installer and linux appimage.

Signed-off-by: Salvador Cuñat <salvador.cunat@gmail.com>
2018-07-13 16:18:31 +03:00
Lubomir I. Ivanov
f1ed8748b1 map-widget: fix chronology of QML class registration
The QML types needs to be registered before the MainWindow
instance is created on the desktop version, otherwise
the MapWidget instance will be created and it will fail
with a missing QML namespace.

In subsurface-helper.cpp, move register_qml_types() from run_ui()
to init_ui(), as later in init_ui(), MainWindow is instantiated
for the first time in the desktop version.

Ref #1500

Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2018-07-13 15:18:21 +03:00
jan Iversen
f63217495d tests: add qPrefAnimations qml testcases
add test of qml C++ interface

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 22:36:04 +02:00
jan Iversen
33949735f2 tests: add qPrefAnimations testcases
add test cases to secure struct preferences and qPrefAnimations work together

remove animation tests from testpreferences

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 22:35:36 +02:00
jan Iversen
d4e76dac9e core: remove Animations from SettingsObjectWrapper and activate qPrefAnimations
remove Animations from SettingsObjectWrapper and reference qPrefAnimations
update files using SettingsObjectWrapper/Animations to user qPrefAnimations

this activated qPrefAnimations

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 22:34:35 +02:00
jan Iversen
3a314c3dec core: copy Animations from SettingsObjectWrapper to qPref as its own class
Update set/get functions to follow common name scheme:
- get function have same name as in struct preferences
- set function have set_<name in struct preferences>
- signal function have <name in struct preferences>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way SettingsObjectWrapper
handles it) secures the same storage name is used. Having the set/get/load/sync
functions grouped together makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production
Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 19:07:49 +02:00
jan Iversen
859b2dcfa4 core: qPrefDisplay update CHANGELOG.md
added note about "show developer" menu being stored on disk

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 19:07:49 +02:00
jan Iversen
6c1aa701d6 tests: make qprefdisplay test file
Remove display tests from testpreferences and make a new file

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 19:07:49 +02:00
jan Iversen
aa0a918082 core: qPrefDisplay update CHANGELOG.md
added note about "show developer" menu being stored on disk

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 19:01:31 +02:00
jan Iversen
b41fa07efa tests: add qPrefDisplay qml testcases
add test of qml C++ interface

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 19:01:31 +02:00
jan Iversen
1ef3f61cc9 tests: add qPrefDisplay testcases
remove test macro, split in functions and add test cases

the existing test macro does not work because
sync() does not save these variables to disk (set* does)

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 19:01:21 +02:00
jan Iversen
8f7f1cacd6 tests: make qprefdisplay test file
Remove display tests from testpreferences and make a new file

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 18:44:31 +02:00
jan Iversen
928fc1ee79 core: move load of display variables to qPrefDisplay from SettingsObjectWrapper
ensure SettingsObjectWrapper load() loads all display variables.

Copy font setting code from SettingsObjectWrapper to qPrefDisplay

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 18:44:31 +02:00
jan Iversen
9732194bf8 core: sync display variables from struct preferences when ssrf terminates
Add qPrefDisplay sync to sync in SettingsObjectWrapper.

If a program part change display variables in struct preferences, they would
not be saved on disk.

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 18:44:31 +02:00
jan Iversen
da61c1714f core: activate qPrefDisplay in SettingsObjectWrapper
add the prepared class qPrefDisplay to SettingsObjectWrapper and thereby making it active.

As a consequence of the uniform naming standard desktop-widgets/preferences_defaults.cpp and
tests/testpreferences.cpp have been updated.

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 18:44:31 +02:00
jan Iversen
d7fed0bcb7 tests: update testqml to use shared register_qml_types()
add subsurface-helper.cpp to TestQML target
remove local qmlRegisterType() and add register_qml_types() instead

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 18:34:54 +02:00
jan Iversen
f354592050 ssrf: prepare subsurface_helper.cpp to be used by testqml
add test for SUBSURFACE_TEST_DATA to exclude functions not used when testing

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 18:34:49 +02:00
jan Iversen
35eecaa82a tests: add .gitignore to ignore qmlc files
With Qt 5.11 the qml compiler is included and qmlc files created in the same
directory as the qml file (at least for the qml test harness).

ignore *.qmlc

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 17:12:56 +02:00
jan Iversen
b05e4c7b5f tests: make qml test harness
build a qml test runner that includes ssrf interface

The qml test runner allows having qml test files.

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 17:12:56 +02:00
jan Iversen
55f0b3b1f8 ssrf: add QuickTest to test libraries.
QuickTest enables QML TestCase which are used for qml testing

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 17:12:56 +02:00
jan Iversen
fe38a768f2 ssrf: move functions from mobile-helper to mobile-main
Move few mobile only functions from mobile-helper to mobile-main

remove subsurface-mobile-helper

file structure is now subsurface-*-main.cpp + subsurface-helper.cpp

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 08:08:00 -07:00
jan Iversen
2c402b0fcf ssrf: combine subsurface-*-helper into subsurface-helper
combine shared functions like init_ui and run_ui in one file

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 08:08:00 -07:00
jan Iversen
ab05fe3cf8 desktop-widget: move qmlRegister from mapwidget to shared helper
Remove qmlRegister in desktop-widgets/mapwidget in order to have a shared
registration in subsurface-helper.cpp

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 08:08:00 -07:00
jan Iversen
8cc0b6dbc1 ssrf: add shared helper file
add subsurface-helper.cpp to share functions between mobile and desktop

move mobile qml registrations to a shared function (avoiding differences in registrations)

Target is to replace current subsurface-desktop-main + subsurface-desktop-helper and
subsurface-mobile-main + subsurface-mobile-helper with
subsurface-*-main + subsurface-helper

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 08:08:00 -07:00
Jocke
a56a7c51f6 Add comment to get-dep-lib.sh
Add a comment so we remember to change the version number in versions.sh also.

Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-07-12 07:58:08 -07:00
Jocke
8106e533ef Match openssl versions
The versions for openSSL in variables.sh and get-dep-lib.sh needs to match or we end up recloning the repo on every build.

Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-07-12 07:58:08 -07:00
Jocke
2fa7d3566b Add comment to variables.sh
Add a comment to the variables.sh file so we don't forget to update
qt version in the qt-installer-nontineractive file as well.

Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-07-12 07:58:08 -07:00
Jocke
feb256f61e Update non-interactive qt installation
With commit c62ce43 the Qt version where updated to 5.11.1,
this updates the qt install script to match the versions of the Qt parts we want.

Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-07-12 07:58:08 -07:00
Jocke
59465b85f6 Don't show decimals on pressures
As per discussion in #1460 there is no point in showing decimal values
for pressures in the equipment tab on desktop or in the dive edit view on 
mobile.

Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-07-12 17:15:05 +03:00
Berthold Stoeger
a8bfa5f053 Dive media: add ".mov" to list of known video extensions
This was an oversight in b28dba6087.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-07-12 02:18:09 +03:00
Dirk Hohndel
45c19fd11e Travis: add Qt 5.9 testing
This is done via Fedora 27 which seemed the easiest way to get a 5.9 based
distro.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-11 13:49:25 -07:00
Dirk Hohndel
8fa9eabb47 Travis: add Qt 5.7 testing
This is done via Fedora 26 which seemed the easiest way to get a 5.7 based
distro.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-11 13:49:25 -07:00
Dirk Hohndel
6a9a185ffc Update mailmap
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-11 12:22:02 -07:00
jan Iversen
b15f6f3d4a core: remove clang warning in divesite.c
Add () in complex condition to avoid clang warning.

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-11 12:59:33 +02:00
Dirk Hohndel
0a4dcd59b0 Travis: add Qt 5.6 testing
This is done via OpenSUSE Leap/42.3 which seemed the easiest way to
get a 5.6 based distro.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-10 19:41:43 -07:00
Dirk Hohndel
3b8c576d95 build-system: we always require QtQuick and QtLocation
No point in listing them twice as extra components.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-10 15:44:27 -07:00
jan Iversen
4a4bc1c8f3 core: add version variables to qPref and make it qml loadable
add canonical_version and mobile_version to qPref

Having a property in qPref, allows the use in qml, and prepare the
interface for qml testing.

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-10 10:30:50 -07:00
jan Iversen
06593bd642 ssrf: mobile-helper, check return code from qmlRegisterType
add check for return code in qmlRegisterType calls, and log a
message if failed

There are a lot of name restrictions (e.g. must start with a capital letter).

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-10 10:30:50 -07:00
jan Iversen
8d66633fe7 core: make qPref::cloud_status the only version of the enum
add enum to qPref and remove elsewhere
update source core to reference qPref.

the enum cannot be in pref.h because it is to be used in qml and Q_ENUM
need the enum to be defined as part of the class

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-10 10:30:50 -07:00
Miika Turkia
7103f36c7c UDDF import: add support for decimal comma for depth
Depth values might apparently contain decimal comma instead of decimal
point with some locale settings. Thus add support for both of them.

Fixes #1485

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2018-07-10 10:21:13 -07:00
Dirk Hohndel
dc2f0f8e48 Travis: build Android against Qt 5.11.1
Instead of dealing with the challenges of downloading and installing the
official package (which really prefers to be run interactively and
frequently caused Travis failures) we get the pre-packed bits from our
cache instead.  Less data to transfer, quicker install.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-09 22:20:18 -07:00
Dirk Hohndel
c62ce43ecf Android: update to use Qt5.11.1
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-09 16:01:29 -07:00