Age | Commit message (Collapse) | Author |
|
put the margins only around the fullscreen delegate of the listview,
making the listview go all trough the screen edges.
This because the cutted effect when the list view is half scrolled
looks quite ugly. Making the ListView reach the borders
also moves the scroll indicator at the screen edge
where it conventionally is.
Signed-off-by: Marco Martin <notmart@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This makes sure that if the user switches to offline mode they don't get
incorrect notifications that tell them that they are accessing cloud
storage.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
If you switch back to the dive list by swiping horizontally you stay in
edit/add mode and then can't select a dive on the dive list. This way you
have to discard or save the edit, first.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
The TextButton was what we used for actions very early on, and the TopBar
has now been replaced by the Kirigami header bar.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
The icon isn't great, though.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
In commit 50ebdd020e3c of the Kirigami project the syntax with which
actions are added to pages has changed. This commit tracks that, adds the
new file that was added in Kirigami and also removes the now obsolete
context menus (since we have a working back button on iOS now)
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This should help understand some of the issues with git storage and GPS
fixes better.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
If there is no GPS source or if permission to use it was denied, don't
offer to run the GPS service or to detect the current location when
adding or editing dives.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This exposes a locationServiceAvailable property to QML and keeps it in
sync with the corresponding state in the GpsLocation widget.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Make sure you save first, though.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
I couldn't figure out how to break this down into small, useful commits.
Part of the problem is that I kept going while working on this and as you
can see from looking at the commit, diff tries so hard to find small code
fragments that moved around, that the diff overall becomes quite
unreadable and it seemed impossible to recreate the sequence of steps
after the fact.
It all started with adding the parsing for the GPS coordinates. But while
testing that code I found several issues with the rest of the function.
Most importantly it seemed ridiculous that we carefully tried to match the
texts that the DiveObjectHelper would create for the various fields,
instead of just using the DiveObjectHelper to do just that. And once I had
converted that I once again realized just how long and hard to understand
that function was getting and decided to break out some of the more
complex parts into their own helper functions.
But of course all this didn't happen in this logical, structured, ordered
way. Instead I did all of these things at the same time, testing,
rearranging, etc.
So in the end I went with one BIG commit that does all of this in one fell
swoop.
This adds four helper functions to deal with start time/date, duration,
location and gps coordinates, and depth of the dive.
To avoid mistakes when dealing with the GPS coordinates, there's another
helper to encapsulate the creation of the dive site and we switched to a
current GPS location.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This isn't hooked up, yet, but provides the UI
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
There were several logical flaws here. Ugh.
Don't save things if there are no unsaved changes, if we haven't
initialized this repository from the cloud or if we are already saving
things.
Then, once we decide that we should save, first always save to the local
cache and then check if we should save to the cloud and do so if
requested.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
I can't remember why we started doing this, but at this point I find it
just weird.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Let's not discard our GPS location when editing site name on mobile.
Fixes #1051
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
If no timestamp is available, just start at dive 0.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Commit 339411cca69b in Kirigami master tries to reparent the OverlaySheet
to the page that it is related to. Unfortunately the heuristic used there
to find the right object assumes that every page has a contentItem
property, which our DiveDetails page doesn't have.
As a hack to work around this issue (until this is fixed upstream in
Kirigami) we simply create such a property. This commit should be
reverted once Kirigami upstream has been fixed.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
The manager can now directly update the index of the selected dive, and
the UI tells the manager the timestamp of the currently selected dive.
This allows the manager to pick the best possible dive as selected dive
if things change (for example if the dive list gets reloaded because it
changed in cloud storage).
Fixes #1009
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
If the automatic sync is turned off we could be stuck in a state where we
always thought that we were already in the middle of a save.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Before it had the next dive still selected.
Fixes #1053
Signed-off-by: Robert C. Helling <helling@atdotde.de>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
On Android we can save locally right away, but we don't want to make the user
wait for a network sync. Sadly, on Android currently the saving in the
background doesn't work and the save will run when the user comes back.
Definitely not ideal.
On iOS the situation is different - a save to the local git cache takes
surprisingly long. Must be the shitty file system they use or something.
Because of that we only mark the dive list changed and instead save the next
time the app is not in the foreground (which works on iOS but not on Android -
go figure).
On all the other OSs (I guess that would be desktop builds of
Subsurface-mobile? But there may be other mobile OSs that people might want to
build it on) we save both locally and to the cloud right away.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
So when the user taps on the manual cloud sync, we always force access to
the cloud server. Otherwise we only access the cloud server if
git_local_only isn't set.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This is silly - it should be set up so it wraps by itself...
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Remove the border and make them look more like labels. This adds a
StyledTextField for that purpose. And while we are at it, we can make that
StyledTextField a little prettier.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This makes the start page look a bit more natural
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Fixes #1049
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This makes the code much cleaner and easier to understand and should allow
us to then switch back to doing at least the local save right after we make
any changes to the data.
This commit also tries to make sure that the accessingCloud status stays
correct and consistent throughout all the various success and error paths.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Having a short delay before the menu closes looks bad.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
We rely on the filename being valid elsewhere in the code.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
If the user is on the credentials page, doesn't change the credentials
but simply taps on save, they now get back to the dive list.
Fixes #1047
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This way the user gets to see the git notifications.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
I gave up on the magic numbers and instead report simply linear progress.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
We first check the sha to see if we want to load at all. But at that
point we already have the repository and the branch and we have synced
with the remote. So when we decide that we need to reload from storage,
we don't need to repeat those steps, instead we can go directly to the
git load.
For that to work we need to pass the repository pointer and the branch
name back to the caller so that we can directly call git_load_dives().
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
We first want to save any exiting unsaved changes to the local repository
(and ONLY to the local repository). After that we want to make sure that
we are syncing remotely, fetch the remote and then (possibly after a
merge) push the changes to the remote. In the end we reset the previous
"local git only" preference which we overwrote for this manual forced
sync.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
We had a redundant check of the server reply hidden in there, and the
logic which values were set where didn't really make much sense. This
seems clearer to me.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
And don't waste quite as much time on updating the UI.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Most of the time we are adding all the dives, so do this in a single model
operation. This makes the case when adding a single dive (in the undo delete
function) slightly more complicated, but that seems totally worth it for the
speedup in the common case.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
The fonts on my Nexus 6p are way too big (especially when compared
to the fonts of the same build on an iPhone 6plus that has very
similar screen size). Simply trying to get more data...
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|