It appears that one some Android devices there is an interaction between
Qt and the GL implementation that results in black squares instead of
icons being shown on the screen.
Disabling the GammaAdjust avoids running the shader and fixes this
problem.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Now the message should make more sense. First it tells you that it's looking
for dives. Then you get some progress during the git download, and error
messages if things failed.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
So this has a lot of caveats:
- right now it only works for buddy, divemaster and suit
- you have to actually exit the field with your cursor or the change
doesn't take - that's ridiculous, there must be a far more clever way to
do this
- because I use the onEditingFinished handler I can't do this for the
Notes (so here's another reason why I KNOW that this is the wrong way to
do this)
But it shows in principle how this could be done and once someone who
actually knows what they are doing gets their hands on the code I'm
optimistic that this can be morphed into something much more useful.
It does tie together the changes made in the previous commits so that both
clicking around on the dive list gives the expected results and synching
the data back to the cloud actually works.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
File is unused, apparently a left-over from a rename. It's not included
in the qrc and referenced nowhere, so it's safe to delete.
Signed-off-by: Sebastian Kügler <sebas@kde.org>
- page margins are gridUnit / 2, consistent with other pages
- Simplify layout: we don't need to nest that much here, saves two
objects and simplifies code a bit
Signed-off-by: Sebastian Kügler <sebas@kde.org>
This patch creates the following menu structure in the application menu
as discussed on irc:
Cloud credentials
Preferences
Manage dives
Download from computer
Add dive manually
Refresh dives
Upload to cloud
GPS
Add GPS tags to dives
Upload GPS data
Clear GPS cache
Advanced (hidden by default)
App log
Theme Information
"Save" moves out of the context menu, since it's a global thing (syncs
to server).
Signed-off-by: Sebastian Kügler <sebas@kde.org>
Spacing around pages is half a grid unit, as consistent with (some of
the) other pages. For the dive list, it's slightly more complicated:
We want the list items to reach the edges on both side as to increase
the interactive area. We have to apply the spacing left and right inside
the listitems. This patch does that.
Another consistency fix with other pages is that we're now adding a
header at the top of the dive list, which scrolles with the list view.
Signed-off-by: Sebastian Kügler <sebas@kde.org>
Apparently, the width setting got lost in the previous change. This sets
the width of the log text explicitely to the grandparent's width. It
fixes text clipping in the log window.
Signed-off-by: Sebastian Kügler <sebas@kde.org>
This change cleans up the layout optimized for viewing dive details. The
top part contains brief and essential dive info (location, depth,
duration, dive no.), then the profile, then a table with more details,
and finally the notes.
The goal here is to present the dive's data more efficiently and
attractively now that the edit part is factored out.
Signed-off-by: Sebastian Kügler <sebas@kde.org>
Icons for document-edit, document-save and view-readermode are added
from the light breeze variant. They're usd in the dive's contextual
actions.
Signed-off-by: Sebastian Kügler <sebas@kde.org>
Option to switch between view and edit and to save the changes are now
in the context drawer. Let's see how this works out.
If it turns out to be badly discoverable (which is what I'm worried
about), this needs to be fixed at component level.
This item can be dragged in from the right hand side and provides
contextual actions for a page. It will be used in the dive details edit.
If there are actions, the floating button on the bottom shows an arrow
indicating that one can drag it in from the right hand side to the left.
Also clean up a bit of a noisy print that's not needed anymore.
Signed-off-by: Sebastian Kügler <sebas@kde.org>
This splits the dive detail page into two modes: view and edit
- The edit part loses the profile (it's not editable anyway)
- The view part gets a new layout, friendlier for viewing
- Properties for diveNumber, duration, depth and weight are added
Signed-off-by: Sebastian Kügler <sebas@kde.org>
This is the first part of splitting the dive details into edit/view
modes.
- introduce a state machine to switch between view and edit mode
- factor out the editor into its own component
Both components are almost the same, but we can change them individually
now.
Signed-off-by: Sebastian Kügler <sebas@kde.org>
- Fixes interactivity in context drawer.
- These are mostly cleanups that have been done pre-merge of these
components. This now is the state of master in plasma-mobile.
- makes navigation a bit more intuitive
Signed-off-by: Sebastian Kügler <sebas@kde.org>
Bit nicer layout so my eyes don't insta-bleed when checking this page.
Also add information about the size of the rootItem, that's really
useful to know what kind of constraints we're dealing with.
Signed-off-by: Sebastian Kügler <sebas@kde.org>
For consistency. Still not sure what the best scheme is. QtCreator wants to be
pretty aggressive with how far things are indented. Not sure I'm in love with
that.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
We only need this once and having it at the bottom of the menu with the
indicator whether it's on or not is much nicer.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
I hoped that this would show the "email keyboard" on Android that includes the
'@' sign without having to switch layers but that didn't seem to work. I'll
leave this here, anyway, as it seems like the right thing to do since this
input field is indeed for an email address.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
We really need to verify that the credentials are valid before trying to access
our backend resources. Trying to do so in a clean manner caused quite a bit of
changes to how we retrieve the webservice userid and how we load the dive list
from cloud storage.
So instead of accessing the network resources directly, this adds a handler
function that first checks the validity of the credentials (by using the
rederict handler on the cloud server), and only calls the function that does
the actual work (looks up the web service userid, loads the dives) if that
succeeds.
Right now there is no good user feedback mechanism - this just gets logged on
the log page. But this is a massive improvement if there are issues with
network connectivity or if the user mistyped their credentials.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Throughout Subsurface we try to only capitalize the first word of every menu or
window text (unless there are other reasons to capitalize the word, of course).
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This gets us consistent look and feel as otherwise the labels aren't styled the
same as for the rest of the application.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This makes the cloud credential entry page much simpler, separate page. It also
removes the two colums and uses the label of the check box instead of having a
separate label item.
The preferences page of course also gets simpler by doing this. Here I kept the
two columns, though.
Finally the code for the old context menu was removed - not sure why this was
still here.
Next I need to fix the savePreferences() call to do the right thing in each
case.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
The button to hide the dive profile serves no purpose anymore.
Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This fixes spacing around the icon in the left drawer, the stretched-out
icons in the navigation menu, the unnecessary scrolling in the same
menu, and a few other things.
Signed-off-by: Sebastian Kügler <sebas@kde.org>
- Use the component's heading for more consistency
- spacing between items: largeSpacing above, half of that below, this
makes the title visually connect to the widgets it refers to.
Signed-off-by: Sebastian Kügler <sebas@kde.org>
Using a normal checkbox, we get black text, not our styled Label. Since,
short of doing a style, this is the only way to get the label the right
color, and thus not screw up the visual appearance of the drawer, we
hand-roll it.
This is a bit clunky, but I prefer visual continuity here over code
complexity concerns.
Signed-off-by: Sebastian Kügler <sebas@kde.org>
Add a checkbox in the global drawer which allows quick access enabling
and disabling the location service. This is something the user wants to
keep an eye on, quickly enable it before a trip, so it makes sense to
give it some prominence. It also helps reminding that the user switched
the device into battery-monster-mode.
Signed-off-by: Sebastian Kügler <sebas@kde.org>