Skip to content

WIP fixed safe area rendering on iOS and cmake configuration for android - #4472

Merged
Withalion merged 3 commits into
dev/qt-6.10.2from
fix-safearea-and-android-configuration
May 12, 2026
Merged

WIP fixed safe area rendering on iOS and cmake configuration for android#4472
Withalion merged 3 commits into
dev/qt-6.10.2from
fix-safearea-and-android-configuration

Conversation

@gabriel-bolbotina

@gabriel-bolbotina gabriel-bolbotina commented Apr 24, 2026

Copy link
Copy Markdown
Contributor

Did the following:

  • Removed safe area platform-specific functions, relied on how Qt already calculates it
  • Used
  • Formatted code

UI:

ScreenRecording_04-24-2026.18-18-51_1.MP4

Remaining issues:

  • some elements using mmHighlight are not rendering the highlight at all or delayed. For example, there is a delayed rendering for Map sketches which are not in real time, only after finishing up the sketch and when selecting point features on the map. Lines seem to get the highlight.

TODOs:

  • Fix MMHighlight to render map sketches in real time and to highlight selected features on the map. currently it does not work
  • Patch the vcpkg android ports to properly configure and build the project
  • check if we should refactor how safe area is handled in QML components, we can keep it as it is, or maybe there is a better way to do it

@tomasMizera tomasMizera left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good! :)

Comment thread app/main.cpp
Comment on lines +881 to +883
auto applyMargins = [style, quickWindow]()
{
const QMargins m = quickWindow->safeAreaMargins();

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we even need to read and store these if it is automatically handled by Qt?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are QML components that still use safe area values from MM style for calculating padding or heights/widths.
It is feasible to take them out completely, but I think we should do that after we have all the builds set up, because it needs comprehensive testing on all platforms. In this case, I would keep it as it is right now

@gabriel-bolbotina
gabriel-bolbotina marked this pull request as ready for review May 6, 2026 10:29
@github-actions

Copy link
Copy Markdown

📦 Build Artifacts Ready

OS Status Build Info Workflow run
macOS Build 📬 Mergin Maps 68291 dmg Expires: 10/08/2026 #6829
linux Build Build failed or not found. #6847
win64 Build Build failed or not found. #6022
Android Build Build failed or not found. #8139
iOS Build Build failed or not found. #9081

gabriel-bolbotina and others added 2 commits May 12, 2026 14:24
Apply the api safearea to style property
Formatted code
This reverts commit 5f89ef4. Mainly it
removes all changes done to vcpkg ports, which were changed already in
dev/qt-6.10.2
@Withalion
Withalion force-pushed the fix-safearea-and-android-configuration branch from 4f08df7 to 9ffaab4 Compare May 12, 2026 12:39
@Withalion

Copy link
Copy Markdown
Collaborator

Let's merge and we can hammer out those missing things later

@Withalion
Withalion merged commit d339f5f into dev/qt-6.10.2 May 12, 2026
1 of 6 checks passed
@Withalion
Withalion deleted the fix-safearea-and-android-configuration branch May 12, 2026 12:44
Withalion added a commit that referenced this pull request Jun 2, 2026
* Initial build for macos and ios

* Fix Bluetooth model syntax

* Update QGIS to 3.44.10

* Format cmake files

* Fix failing Linux build

* Add log to Linux CI

* Install mono on linux CI

* Remove mono from deleted packages

* Remove debug output from Linux CI

* Update Geodiff to 2.2.0

* Fix nuget for Linux CI again

* Reintroduce Geodiff warning flag

* Update runner versions and cmake minor version

* Update xCode version to 26.4.1

* Remove deployment target for apple builds

* Fix dep install on Linux CI

* Update or remove manual versions of Qt in CI

* Remove unused env var in Gallery CI

* Fix missing mono package on newer Ubuntu

* Return xvfb package on Linux CI

* Wrap geodiff compilation flag to apple only

* Add package for libxcrypt

* Update signing certs for iOS

* Another try to fix iOS certs

* Fix iOS signing cert

* Format geodiff port

* Update QtDeclarative to 6.10.3

* Remove QtKeychain overlay port

* Update cmake info in INSTALL.md

* Remove QtMultimedia overlay port, use VCPKG default

* Update QtPositioning to 6.10.3

* Remove GStreamer overlay port and use VCPKG default

* Remove libb2 overlay port, vcpkg bug should be fixed now

* Update libiconv overlay port to match VCPKG port

* Add LibSpatialIndex port info to README

* Remove unused qca patches, update README

* Remove libspatialindex overlay port & pin version in vcpkg.json

* Remove qtbase overlay port in place of VCPKG default port

* Add wayland support for linux build

* Update xcode in Android CI

* Update cmake version in CI to match used by VCPKG

* Add wayland packages for linux build

* Add pcre2 port to fix android linker error

* Update android CI

* Update Android setup based on Qt 6.10

* Fix Android build issues

* Format cmake

* Fix Android ARMv7 build

* WIP fixed safe area rendering on iOS and cmake configuration for android (#4472)

* Add libpq port for iOS

* Fix another libpq issue on iOS

* Fix iOS build arg for make in VCPKG

* Remove libiconv port

* Fix qtpositioning patches for windows

* Fix qgis patches for Windows

* Add fix for windows build failing on lazperf

* Amend last windows fix to target only windows

* Fix local ios VCPKG build failing on race condition

* Fix qtmultimedia build on iOS

* Fix windows QGIS again

* Fix windows packager

* Fix ios Spatialite build

* Fix missing symbols for ios

* Format cmake

* Upload AABs to Google play

* Fix failing maptools tests

QGIS 3.44 started enforcing constness, where we relied on semi-constness

* Fix lcov

* Polish linux CI file

* Mitigate coveralls breaking CI

* Fix Linux install

* Fixed the top and bottom overpadding for feature list page drawer (#4510)

* Update Linux cleanup action

* Fix windows gallery CI

* Fix missing highlight for Qt 6.10 (#4511)

* Fix linux build

* Explore Linux CI mirror list

* Explore Linux CI debug info

* Remove broken enzu mirror

* Remove unnecessary step

* Fix permission problem

---------

Co-authored-by: Matej Bagar <matej.bagar@lutraconsulting.co.uk>
Co-authored-by: Gabriel Bolbotina <80618569+gabriel-bolbotina@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants