Skip to content

Remove Qt5Compat effects#4382

Open
Withalion wants to merge 5 commits intomasterfrom
refactor/qt5compat-effects
Open

Remove Qt5Compat effects#4382
Withalion wants to merge 5 commits intomasterfrom
refactor/qt5compat-effects

Conversation

@Withalion
Copy link
Contributor

This PR removes Qt5Compat effects and replaces them with MultiEffect or some other approach. From the crash reports looks like they trigger quite a lot of crashes for users.

Only one reference to qt5compat has been left in MMPhoto, which should be refactored in #4317

@Withalion Withalion added this to the 2026.2.0 milestone Mar 10, 2026
@Withalion Withalion self-assigned this Mar 10, 2026
@github-actions
Copy link

📦 Build Artifacts Ready

OS Status Build Info Workflow run
macOS Build 📬 Mergin Maps 64981 dmg Expires: 08/06/2026 #6498
linux Build 📭 Build not yet complete or failed.
win64 Build 📬 Mergin Maps 56931 win64 Expires: 08/06/2026 #5693
Android Build 📬 Mergin Maps 780811 APK [armeabi-v7a] Expires: 08/06/2026 #7808
Android Build 📬 Mergin Maps 780851 APK [arm64-v8a] Expires: 08/06/2026 #7808
iOS Build 📭 Build not yet complete or failed.

@Withalion Withalion force-pushed the refactor/qt5compat-effects branch from 79d6f20 to fff3cde Compare March 11, 2026 07:37
@github-actions
Copy link

📦 Build Artifacts Ready

OS Status Build Info Workflow run
macOS Build 📬 Mergin Maps 64991 dmg Expires: 09/06/2026 #6499
linux Build 📭 Build not yet complete or failed.
win64 Build 📬 Mergin Maps 56941 win64 Expires: 09/06/2026 #5694
Android Build 📬 Mergin Maps 780911 APK [armeabi-v7a] Expires: 09/06/2026 #7809
Android Build 📬 Mergin Maps 780951 APK [arm64-v8a] Expires: 09/06/2026 #7809
iOS Build 📬 Build number: 26.03.875011 #8750

@Withalion Withalion added the performance Tickets related to performance issues in loading, rendering maps, syncing, etc label Mar 12, 2026
Copy link
Contributor

@gabriel-bolbotina gabriel-bolbotina left a comment

Choose a reason for hiding this comment

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

Looks good overall, just a few things to clarify

QColor photoSketchingPinkColor() const {return QColor::fromString( "#FF8F93" );}

QColor shadowColor() const {return QColor::fromString( "#66777777" );}
QColor shadowColor() const {return QColor::fromString( "#4D000000" );}
Copy link
Contributor

Choose a reason for hiding this comment

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

Why did you change the shadow color?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Because the old one didn't produce shadow at all with the new approach. For the new approach only alpha channel is important and this color looked the most similar to the old one.


// IconImage is not part of QML's public API, so this can break on Qt version change.
// However, if we don't want to use shaders, this is the most straightforward way.
IconImage {
Copy link
Contributor

Choose a reason for hiding this comment

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

Is there a way to implement this so that it would work with a Qt version change?

Copy link
Contributor Author

@Withalion Withalion Mar 23, 2026

Choose a reason for hiding this comment

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

Well we can always use shaders to do that, but this might break. It doesn't mean it will break every Qt release.

@Withalion Withalion linked an issue Mar 23, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement performance Tickets related to performance issues in loading, rendering maps, syncing, etc

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Remove Qt5Compat lib

2 participants