OlivierLDff / Qaterial

🧩 Collection of Material Components based on QtQuickControls2.
https://olivierldff.github.io/Qaterial/
MIT License
300 stars 57 forks source link

Qt6 support #111

Closed moodyhunter closed 1 month ago

moodyhunter commented 3 years ago

😢 I tried my best but cannot make Qaterial support both Qt5 and 6 at the same time In this case, a new branch is needed, to continue working with both 5 and 6. Since WASM is still under heavy development, I think this PR can be delayed until they stabilize everything in Qt 6.2

See: https://bugreports.qt.io/browse/QTBUG-78647

Changes:

TODOs:

OlivierLDff commented 3 years ago

Yes i think we really need 6.2 to merge into master.

Thanks for preliminary work.

Maybe some stuff can already premerged:

OlivierLDff commented 3 years ago

I'm putting back discord of Qaterial here if you are interested : https://discord.gg/Bb5SeCD7

moodyhunter commented 3 years ago

Thanks anyway, but I rarely use Discord, so sorry about that.

BTW I will split those commits up into smaller changesets later today so that parts of this PR can be merged separately.

moodyhunter commented 3 years ago

just rearranged the commits, probably https://github.com/OlivierLDff/Qaterial/pull/111/commits/0d1b5bb2dd59e451af61550e04a21b2e5b675901 https://github.com/OlivierLDff/Qaterial/pull/111/commits/7e2e4b9fb097c4d58064f620470553559c56b881 https://github.com/OlivierLDff/Qaterial/pull/111/commits/3181e66980a15201650b0c5d981be650085db3dc and https://github.com/OlivierLDff/Qaterial/pull/111/commits/b63b7cc452130cbecb6d4b8a0f28426fd8ba0b06 can be merged now.

moodyhunter commented 3 years ago

Hi, the commit https://github.com/OlivierLDff/Qaterial/pull/111/commits/88209d5225b2cc9fcf5d051e0289b979027e284c removes the need for 5compat module, a self-built Qt6 dev branch can be found here

Tested under Windows, Linux and WASM platform, the new QtGraphicalEffects is fully compatible out-of-box and there's no need for "porting" or "migration".


For now I'll mark this PR ready-to-review but I think it's better to be cherry-picked (as some changes are already merged)

Milerius commented 3 years ago

Hi, the commit 88209d5 removes the need for 5compat module, a self-built Qt6 dev branch can be found here

Tested under Windows, Linux and WASM platform, the new QtGraphicalEffects is fully compatible out-of-box and there's no need for "porting" or "migration".

For now I'll mark this PR ready-to-review but I think it's better to be cherry-picked (as some changes are already merged)

Thanks for this work, i'm looking forward, once Qt 6.2 is out we will also upgrade https://github.com/KomodoPlatform/atomicDEX-Desktop to the last Qaterial !

OlivierLDff commented 3 years ago

Thanks a lot, I will wait for 6.2 before moving Qaterial to Qt6 too!

Milerius commented 3 years ago

Hi, the commit 88209d5 removes the need for 5compat module, a self-built Qt6 dev branch can be found here

Tested under Windows, Linux and WASM platform, the new QtGraphicalEffects is fully compatible out-of-box and there's no need for "porting" or "migration".

For now I'll mark this PR ready-to-review but I think it's better to be cherry-picked (as some changes are already merged)

This is erroneous, you need to put back the Qt5CompactModule for QtGraphicalEffects, version 6.2 is not usable otherwise.

Suggesting to revert: https://github.com/OlivierLDff/Qaterial/commit/88209d5225b2cc9fcf5d051e0289b979027e284c

source: https://doc-snapshots.qt.io/qt6-dev/graphicaleffects5.html

There is no support for a regular include of QtGraphicalEffects in Qt6, you need to use the compat mod

moodyhunter commented 3 years ago

That's sad. but I was using my personally-built Qt dev branch and found the QtGraphicalEffects is actually working.

https://github.com/moodyhunter/QtSnapshot/actions

I may need further investigation.

Milerius commented 3 years ago

That's sad. but I was using my personally-built Qt dev branch and found the QtGraphicalEffects is actually working.

https://github.com/moodyhunter/QtSnapshot/actions

I may need further investigation.

It's likely the unofficial way, atleast i was not able to start my app with Qt6 without the Qt5CompatMode using online installer, so i think the official way is to use the good include

Also @OlivierLDff is it possible to merge this pr into a qt6_migration branch ? So projects that use qaterial can try the experimental branch

moodyhunter commented 3 years ago

Hi all, sorry for the late update, I was not working on QML within last month. Just reverted the Core5Compat and the old QtGraphicalEffects module back. https://github.com/OlivierLDff/Qaterial/pull/111/commits/c3b8f695a26b55e1df4303f28214d73ca7d18259

Milerius commented 3 years ago

Hi all, sorry for the late update, I was not working on QML within last month. Just reverted the Core5Compat and the old QtGraphicalEffects module back. c3b8f69

is it also possible to fix the conflict ?

ahmedyarub commented 3 years ago

I merged this into my master branch and it worked like a charm! I tested only on Windows so far.

OlivierLDff commented 3 years ago

I started to merge:

vincent-hui commented 2 years ago

Qt 6.3 released. When will Qaterial support Qt 6? Thanks

OlivierLDff commented 2 years ago

No date for now, I'm not working on UI right now

OlivierLDff commented 1 month ago

Superseded by https://github.com/OlivierLDff/Qaterial/pull/157. Feel free to add something in a new PR if something is missing from my pr