Weirdly, this function was declared in dive.h and defined in
subsurface-startup.c. Let's move declaration and definition to
more appropriate places, viz. subsurface-time.h and time.c.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This function was not used anywhere. Moreover, remove a few
unused includes from qthelper.h. Surprisingly, a number of users
of qthelper.h depend on these, so readd them at the appropriate
places.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Arguably, the number of filtered dives is a matter of the divefilter.
Let's move it there.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
When removing dives, the UndoCommands would keep track of the
shown dives. When adding, they were calling into the filter
instead. Let's remove this asymmetry.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
The shown_dives variable was reset by the dive_list code. Arguably,
the filter should keep track of the number of shown dives, so move
the resetting there. This means adding a new "reset()" member function
to the filter and call that instead of "updateAll()" when the core
data is reset.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This appears to be needed only for Android with Qt 5.15. Which means
that this commit creates odd breakage in case someone were to try to
build for Android with an older Qt version - but given that the current
build process only works with Qt 5.14 or 5.15, I think this is an
acceptable flaw.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This seems more intuitive. For editable combo boxes you need to tap on
the indicator, but for non-editable (readonly) ones, you can tap
anywhere and the dropdown is shown.
The code feels a bit clumsy, but seems to work in all cases.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
They always have a 10% darker background, and show a border if the combo
box has focus. This seems to look reasonably well in all situation we
use them.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Getting the visual right is really hard. The anchors seem to mostly work,
but it still doesn't look exactly right, IMHO.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
I was convinced that I had fixed this while working on this set of patches,
but apparently I didn't. This simply hardcodes good colors.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This never ever worked to trigger a profile update. The code is
nonsensical as we cannot access the QMLProfile in a model delegate this
way from outside the delegate.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
If a dive changes, we should simply redraw the profile. This could be
improved by checking for the fields that might impact the profile at
all, but this is definitely a step in the right direction.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
The weird 'Component.onCompleted' always felt like the wrong way to do
this. Setting this directly from the model seems like the much cleaner
solution.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This actually created a recursive dependency - I didn't see any negative
visual effect, but lots of annoying warnings.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
In reality I should make our TemplateComboBox capable of handling the
modifications needed here without yet another reimplementation. Maybe
I'll do that next. This at least makes things look right.
A couple of odd whitespace changes snuck in at the end.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Recently (674c20227b), the call to ProfileWidget::clearHandlers()
was moved from PlannerWidgets::replanDive() to ProfileWidget2.
This cause a crash, because the code assumes that the number
of elements in the handles-vector the divepointplanner model
is the same.
Clearing the handles violates this assumption. It turns out
that the clearHandlers() function is broken anyway: it clear
the handles-vector, but not the gases-vector, which should
likewise have the same number of elements. It appears that
the clearHandlers() function is an artifact and it is
mysterious how this has worked so far. Remove.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Again, the fact that you basically need to completely reimplement the
ComboBox in order to change some colors is frustrating.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This is needed for the Export page.
And may I say for the record that it's rather surprising that in order
to change the color of one of those elements one ends up having to
completely re-implement them.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
While the text name is 'light primary color' it really has to be a dark
blueish color to fit with the theme.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This requires more changes to Kirigami, but with this we get dark
drawers (the menus that slide in from the side) in the dark theme.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
We do theming very differently from what Kirigami intended. Mostly
that's because our code predates theirs. But also because Kirigami wants
and app to simply use an OS theme - whereas we want to be able to
provide different looks, independent from the OS theme.
Ideally we'd still use the existing methods to change the colors and
sizes of Kirigami UI elements, but for now this hack helps improve
readability of the title bar.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
In the dive list the rendering of the line ended up being subject to
rounding errors. With this change we ensure that the thin line is always
shown.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This is kind of a random choice - I don't see much value to build this
everywhere, but it's kinda neat to use this to test that the -all option works
correctly and does the right thing with WebKit now. And it will also ensure
that the downloader build isn't broken.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>