Compare commits

...

2 Commits

Author SHA1 Message Date
Dirk Hohndel
7ad40b666a mobile: better scaling of profile items
With all the recent changes, some of the previous assumptions about the scale
of items seem to be no longer appropriate. Now that we are showing the icons in
the profile again on device it's quite obvious that they were way too big -
clearly we don't need the special scaling anymore.

Also implement a suggestion from Berthold to get slightly smaller fonts and
finer structures in the profile on mobile devices. This scaling of the DPR
seems to work well in my tests.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2022-03-12 16:37:41 -08:00
Dirk Hohndel
4047db682b build-system: move profile specific icons into separate QRC
This way they are available in both mobile and desktop version.
Without this, the icons weren't shown on iOS and Android.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2022-03-12 16:37:13 -08:00
6 changed files with 30 additions and 25 deletions

View File

@ -335,9 +335,9 @@ endif()
set(SUBSURFACE_LINK_LIBRARIES ${SUBSURFACE_LINK_LIBRARIES} ${LIBDIVECOMPUTER_LIBRARIES} ${LIBGIT2_LIBRARIES} ${LIBUSB_LIBRARIES} ${LIBMTP_LIBRARIES})
if (NOT SUBSURFACE_TARGET_EXECUTABLE MATCHES "DownloaderExecutable")
if(USINGQT6)
qt_add_resources(SUBSURFACE_RESOURCES subsurface.qrc stats/statsicons.qrc desktop-widgets/qml/statsview2.qrc)
qt_add_resources(SUBSURFACE_RESOURCES subsurface.qrc profile.qrc stats/statsicons.qrc desktop-widgets/qml/statsview2.qrc)
else()
qt5_add_resources(SUBSURFACE_RESOURCES subsurface.qrc stats/statsicons.qrc map-widget/qml/map-widget.qrc desktop-widgets/qml/statsview2.qrc)
qt5_add_resources(SUBSURFACE_RESOURCES subsurface.qrc profile.qrc stats/statsicons.qrc map-widget/qml/map-widget.qrc desktop-widgets/qml/statsview2.qrc)
set(SUBSURFACE_MAPWIDGET subsurface_mapwidget)
endif()
endif()
@ -388,10 +388,12 @@ if (SUBSURFACE_TARGET_EXECUTABLE MATCHES "MobileExecutable")
)
if(USINGQT6)
qt_add_resources(MOBILE_RESOURCES mobile-widgets/qml/mobile-resources.qrc)
qt_add_resources(MOBILE_RESOURCES profile.qrc)
qt_add_resources(MOBILE_RESOURCES mobile-widgets/3rdparty/icons.qrc)
qt_add_resources(MOBILE_RESOURCES mobile-widgets/3rdparty/kirigami/src/scenegraph/shaders/shaders.qrc)
else()
qt5_add_resources(MOBILE_RESOURCES mobile-widgets/qml/mobile-resources.qrc)
qt5_add_resources(MOBILE_RESOURCES profile.qrc)
qt5_add_resources(MOBILE_RESOURCES mobile-widgets/3rdparty/icons.qrc)
qt5_add_resources(MOBILE_RESOURCES mobile-widgets/3rdparty/kirigami/src/scenegraph/shaders/shaders.qrc)
endif()

View File

@ -338,7 +338,8 @@ HEADERS += \
RESOURCES += mobile-widgets/qml/mobile-resources.qrc \
mobile-widgets/3rdparty/icons.qrc \
map-widget/qml/map-widget.qrc \
stats/statsicons.qrc
stats/statsicons.qrc \
profile.qrc
android {
SOURCES += core/android.cpp \

View File

@ -20,13 +20,7 @@ DivePixmaps::DivePixmaps(int dpr) : dpr(dpr)
extern int verbose;
double dprf = dpr / 100.0;
const IconMetrics &metrics = defaultIconMetrics();
#ifndef SUBSURFACE_MOBILE
int sz_bigger = metrics.sz_med + metrics.sz_small; // ex 40px
#else
// SUBSURFACE_MOBILE, seems a little big from the code,
// but looks fine on device
int sz_bigger = metrics.sz_big + metrics.sz_med;
#endif
sz_bigger = lrint(sz_bigger * dprf);
int sz_pix = sz_bigger / 2; // ex 20px
if (verbose)

View File

@ -31,7 +31,7 @@ QMLProfile::~QMLProfile()
void QMLProfile::createProfileView()
{
m_profileWidget.reset(new ProfileScene(m_devicePixelRatio, false, false));
m_profileWidget.reset(new ProfileScene(m_devicePixelRatio * 0.8, false, false));
}
// we need this so we can connect update() to the scaleChanged() signal - which the connect above cannot do

23
profile.qrc Normal file
View File

@ -0,0 +1,23 @@
<RCC>
<qresource prefix="/">
<!-- ************ icons used in the profile ***************** -->
<file alias="status-warning-icon">icons/warning-icon.png</file>
<file alias="status-violation-icon">icons/violation-icon.png</file>
<file alias="status-info-icon">icons/info-icon.png</file>
<file alias="bailout-icon">icons/OC.png</file>
<file alias="onCCRLoop-icon">icons/CCR.png</file>
<file alias="dive-bookmark-icon">icons/flag.svg</file>
<file alias="gaschange-icon">icons/gaschange.png</file>
<file alias="gaschange-air-icon">icons/Air_change.png</file>
<file alias="gaschange-ean-icon">icons/Nx_change.png</file>
<file alias="gaschange-trimix-icon">icons/Tmx_change.png</file>
<file alias="gaschange-oxygen-icon">icons/Oxy_change.png</file>
<file alias="gaschange-air-ICD-icon">icons/Air_changeICD.png</file>
<file alias="gaschange-ean-ICD-icon">icons/Nx_changeICD.png</file>
<file alias="gaschange-trimix-ICD-icon">icons/Tmx_changeICD.png</file>
<file alias="gaschange-oxygen-ICD-icon">icons/Oxy_changeICD.png</file>
<file alias="list-add-icon">icons/plus.png</file>
<file alias="list-remove-icon">icons/trash.png</file>
<file alias="list-remove-disabled-icon">icons/trash-forbidden.png</file>
</qresource>
</RCC>

View File

@ -22,22 +22,7 @@
<file alias="value-minimum-icon">icons/minimum.png</file>
<file alias="value-maximum-icon">icons/maximum.png</file>
<file alias="value-average-icon">icons/average.png</file>
<file alias="status-warning-icon">icons/warning-icon.png</file>
<file alias="status-violation-icon">icons/violation-icon.png</file>
<file alias="status-info-icon">icons/info-icon.png</file>
<file alias="gaschange-icon">icons/gaschange.png</file>
<file alias="gaschange-air-icon">icons/Air_change.png</file>
<file alias="gaschange-ean-icon">icons/Nx_change.png</file>
<file alias="gaschange-trimix-icon">icons/Tmx_change.png</file>
<file alias="gaschange-oxygen-icon">icons/Oxy_change.png</file>
<file alias="gaschange-air-ICD-icon">icons/Air_changeICD.png</file>
<file alias="gaschange-ean-ICD-icon">icons/Nx_changeICD.png</file>
<file alias="gaschange-trimix-ICD-icon">icons/Tmx_changeICD.png</file>
<file alias="gaschange-oxygen-ICD-icon">icons/Oxy_changeICD.png</file>
<file alias="onCCRLoop-icon">icons/CCR.png</file>
<file alias="bailout-icon">icons/OC.png</file>
<file alias="salinity-warning-icon">icons/bluewarning.png</file>
<file alias="dive-bookmark-icon">icons/flag.svg</file>
<file alias="ruler-icon">icons/ruler.png</file>
<file alias="poster-icon">icons/poster.png</file>
<file>xslt/commonTemplates.xsl</file>