subsurface/desktop-widgets
Berthold Stoeger 1ed2f1681a desktop: remove the view-state
There was the "application state", which decided what to show
in the "quadrants" and the "view state" which decided which
quadrant to show. These interacted in a hard-to-grasp way.

The "view state" is used to show the map or dive list in
full screen.

I simply couldn't get these two orthogonal states to interact
properly. Moreover the thing was buggy: If a quadrant was hidden,
the user could still show it, by dragging from the side of the
window, at least under KDE.

To solve these woes, merge the two states into a single
application state. If the widget of a quadrant is set to null,
don't show it. So the four "view states" are now "application
states" where three of the four quadrants are not shown.

This also changes the memory management of the widgets:
widgets that are not shown are now removed from the QSplitter
objects. This makes it possible that the same widget is
shown in *different* quadrants.

While writing this, I stumbled upon a Qt bug, which is known
since 2014:
https://forum.qt.io/topic/43176/qsplitter-sizes-return-0

When restoring the quadrant sizes there was a test whether
the quadrant size is 0. If that was the case, a default size
was set. This seems not to work if the widgets were recently
added. Since this test now always fails, make the quadrants
non-collapsible and thus guarantee that 0 is never saved as
a size.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2021-02-06 10:00:39 -08:00
..
css
preferences mobile: add GF fields for ceiling calculation 2021-01-19 12:34:46 -08:00
qml statistics: convert chart to QQuickItem 2021-01-10 15:16:52 -08:00
statistics cleanup: remove empty files in desktop-widgets/statistics 2020-09-12 08:36:10 -07:00
tab-widgets profile: remove ProfileWidget2::dateTimeChanged() 2021-01-10 15:57:39 -08:00
about.cpp cleanup: fix deprecated QFlags use 2020-10-26 19:27:03 -07:00
about.h cleanup: fix deprecated QFlags use 2020-10-26 19:27:03 -07:00
about.ui
addfilterpreset.ui filter: create a primitive "create filter preset" dialog 2020-09-29 16:13:03 -07:00
btdeviceselectiondialog.cpp desktop: minor tweak for dark modes 2020-11-07 15:23:53 -08:00
btdeviceselectiondialog.h cleanup: remove QPointer instances 2020-12-17 13:03:56 -08:00
btdeviceselectiondialog.ui Desktop: add checkbox to show all BT devices 2019-02-14 09:05:58 -08:00
CMakeLists.txt desktop: add statistics widget dummy and application state 2021-01-03 13:41:15 -08:00
configuredivecomputerdialog.cpp cleanup: use safe connect() in ConfigureDiveComputerDialog 2020-10-06 10:38:45 -07:00
configuredivecomputerdialog.h cleanup: use safe connect() in ConfigureDiveComputerDialog 2020-10-06 10:38:45 -07:00
configuredivecomputerdialog.ui
divecomponentselection.ui Add various enhancements to profile export and dive data copy 2019-02-07 16:06:43 +01:00
divelistview.cpp cleanup: remove "GpsLocation *locationProvider" from MainWindow 2021-01-01 12:38:50 -08:00
divelistview.h desktop: init dive list header actions in constructor 2020-12-12 15:52:40 -08:00
divelogexportdialog.cpp Increase event icon size in print mode 2020-09-03 11:46:18 -07:00
divelogexportdialog.h desktop-widgets: move export functions to shared class 2019-12-03 21:30:39 -08:00
divelogexportdialog.ui Reorganise and reword divelog export panel 2020-04-18 12:08:48 -07:00
divelogimportdialog.cpp cleanup: fix deprecated role 2020-10-26 19:27:03 -07:00
divelogimportdialog.h parser: replace params[] code by new xml_params struct 2020-10-23 18:17:02 -07:00
divelogimportdialog.ui
divepicturewidget.cpp cleanup: remove unnecessary includes from divepicturewidget.cpp 2020-12-03 10:32:20 -08:00
divepicturewidget.h Cleanup: remove DivePictureThumbnailThread 2020-05-06 13:58:09 -07:00
diveplanner.cpp planner: remove DivePlannerPointsModel::startTimeChanged signal 2021-01-20 10:01:50 -08:00
diveplanner.h profile: move DiveHandler to profile-widget folder 2020-12-12 15:52:40 -08:00
diveplanner.ui
diveshareexportdialog.cpp desktop-widgets: diveDiveShareExportDialog add signal handling 2019-12-11 11:08:51 -05:00
diveshareexportdialog.h desktop-widgets: diveDiveShareExportDialog add signal handling 2019-12-11 11:08:51 -05:00
diveshareexportdialog.ui
divesiteimportdialog.cpp code cleanup: add empty table structures 2020-01-10 02:37:03 +09:00
divesiteimportdialog.h Create DivesiteImportDialog to select sites to import 2019-05-06 10:48:44 +02:00
divesiteimportdialog.ui Create DivesiteImportDialog to select sites to import 2019-05-06 10:48:44 +02:00
downloadfromdivecomputer.cpp cleanup: fix deprecated QFlags use 2020-10-26 19:27:03 -07:00
downloadfromdivecomputer.h cleanup: fix deprecated QFlags use 2020-10-26 19:27:03 -07:00
downloadfromdivecomputer.ui
filterconstraintwidget.cpp preferences: create global settingsChanged signal 2020-12-12 15:52:40 -08:00
filterconstraintwidget.h filter: add a filter constraint widget 2020-09-29 16:13:03 -07:00
filterwidget.cpp filter: don't escape '&' in filter-preset menu 2020-11-07 14:08:39 -08:00
filterwidget.h cleanup: rename FilterWidget2 to FilterWidget 2020-09-29 16:14:31 -07:00
filterwidget.ui cleanup: rename FilterWidget2 to FilterWidget 2020-09-29 16:14:31 -07:00
findmovedimagesdialog.cpp media: move picture function from dive.c to picture.c 2020-04-10 10:53:03 -07:00
findmovedimagesdialog.h
findmovedimagesdialog.ui
groupedlineedit.cpp desktop: avoid crashes on drag&drop in GroupedLineEdit 2020-10-24 09:49:36 -07:00
groupedlineedit.h
importgps.cpp cleanup: move declaration of utc_mk* functions to new subsurface-time.h header 2020-05-01 09:42:31 -07:00
importgps.h core: move GPX parsing into core 2020-01-24 09:51:02 -08:00
importgps.ui Typo: UCT to UTC 2020-03-19 08:37:59 -07:00
kmessagewidget.cpp
kmessagewidget.h
listfilter.ui
locationinformation.cpp [Bug #2934] Geo Lookup - support for remote dive sites 2020-09-05 17:34:15 +02:00
locationinformation.h cleanup: fix compiler warning 2020-08-24 08:31:38 -07:00
locationinformation.ui Desktop: Import dive coordinates directly from GPS 2020-01-24 09:51:02 -08:00
mainwindow.cpp desktop: remove the view-state 2021-02-06 10:00:39 -08:00
mainwindow.h desktop: remove the view-state 2021-02-06 10:00:39 -08:00
mainwindow.ui desktop: remove the view-state 2021-02-06 10:00:39 -08:00
mapwidget.cpp cleanup: invert control-flow when resetting the core structures 2020-05-07 08:43:27 -07:00
mapwidget.h Cleanup: lower-case filenames in core/subsurface-qt/ 2020-02-04 02:16:46 +01:00
modeldelegates.cpp core: remove the "no-name" tank info 2020-12-13 11:49:59 -08:00
modeldelegates.h cleanup: use pointer-to-member style connect for ComboBoxDelegate 2020-05-16 10:09:35 -07:00
notificationwidget.cpp
notificationwidget.h
plannerDetails.ui
plannerSettings.ui Planner: Add option to treat O2 as narcotic 2019-10-31 00:30:38 -07:00
printdialog.cpp printing: move #includes from headers to source files 2020-12-17 13:03:56 -08:00
printdialog.h printing: move #includes from headers to source files 2020-12-17 13:03:56 -08:00
printer.cpp cleanup: remove QPointer instances 2020-12-17 13:03:56 -08:00
printer.h cleanup: remove QPointer instances 2020-12-17 13:03:56 -08:00
printoptions.cpp printing: move #includes from headers to source files 2020-12-17 13:03:56 -08:00
printoptions.h cleanup: make templateOptions and printOptions reference types 2020-12-17 13:03:56 -08:00
printoptions.ui Set printer resolution 2020-09-03 11:46:16 -07:00
qtwaitingspinner.cpp
qtwaitingspinner.h
renumber.ui
searchbar.ui
setpoint.ui
shiftimagetimes.ui
shifttimes.ui
simplewidgets.cpp undo: remove invalidate_dive_cache call from MainTab 2021-01-11 08:42:17 -08:00
simplewidgets.h desktop: move MinMaxAvgWidget to TabDiveStatistics 2020-10-26 20:56:56 -07:00
starwidget.cpp cleanup: remove reference to deprecated enum value 2020-10-26 19:27:03 -07:00
starwidget.h cleanup: fix deprecated QFlags use 2020-10-26 19:27:03 -07:00
statswidget.cpp statistics: don't replot chart when changing features 2021-01-20 08:47:18 +01:00
statswidget.h statistics: turn ChartGrid into QSGNodes 2021-01-20 08:47:18 +01:00
statswidget.ui statistics: convert chart to QQuickItem 2021-01-10 15:16:52 -08:00
subsurfacewebservices.cpp cleanup: fix deprecated QFlags use 2020-10-26 19:27:03 -07:00
subsurfacewebservices.h cleanup: fix deprecated QFlags use 2020-10-26 19:27:03 -07:00
tableview.cpp desktop: fix saving of column-widths of device and site tables 2020-11-07 11:37:51 -08:00
tableview.h Desktop: don't connect to remove() slot of model from TableModel 2019-12-05 10:14:25 -08:00
tableview.ui
tagwidget.cpp cleanup: SkipEmptyParts syntax has changed 2020-10-26 19:27:03 -07:00
tagwidget.h cleanup: remove TagWidget::fixPopupPosition() 2020-10-24 09:50:39 -07:00
templateedit.cpp printing: move #includes from headers to source files 2020-12-17 13:03:56 -08:00
templateedit.h printing: move #includes from headers to source files 2020-12-17 13:03:56 -08:00
templateedit.ui
templatelayout.cpp cleanup: remove getDivesInTrip() in qthelper.cpp 2020-12-29 08:34:09 -08:00
templatelayout.h printing: remove CylinderObjectHelper 2020-12-17 13:03:56 -08:00
textedit.cpp Desktop: create new custom TextEdit widget for notes-field 2019-04-12 18:19:07 +03:00
textedit.h Desktop: create new custom TextEdit widget for notes-field 2019-04-12 18:19:07 +03:00
tripselectiondialog.cpp desktop: add trip selection dialog 2020-10-03 10:01:13 -07:00
tripselectiondialog.h desktop: add trip selection dialog 2020-10-03 10:01:13 -07:00
tripselectiondialog.ui desktop: add trip selection dialog 2020-10-03 10:01:13 -07:00
updatemanager.cpp desktop/update-check: fix logic when to ask about update check 2021-01-06 10:18:23 -08:00
updatemanager.h
urldialog.ui
usermanual.cpp cleanup: don't initialize flags with just an integer 2020-10-26 19:27:03 -07:00
usermanual.h Remove partial support for QWebEngine 2019-03-20 08:45:02 -07:00
webservices.ui