Quickddit icon indicating copy to clipboard operation
Quickddit copied to clipboard

Add a Kirigami UI

Open PureTryOut opened this issue 3 years ago • 9 comments

Hey I've used Quickddit extensively in the past when I still used my Jolla Phone and loved the experience, it was one of the few apps that I would actually consider high quality, so thanks for that!

Nowadays I have left SailfishOS behind and am personally more focussed on mainline Linux systems, in particular postmarketOS with Plasma Mobile. I would love to have Quickddit be available there, and a Kirigami UI would probably work really well. I see this app is also available for Ubuntu Touch nowadays so the logic for separate UI's seems to be already there.

rinigus, the developer from Pure-Maps, has already made his app available in Kirigami (besides a SailfiishOS and a Ubuntu Touch UI) so you can probably ask him for tips and help.

Would a Kirigami UI be something in the scope of Quickddit?

PureTryOut avatar Apr 12 '21 07:04 PureTryOut

Hi @PureTryOut,

Thanks for the endorsement! It's really nice to get feedback every now and then, since SailfishOS is such a small space :)

For me currently, Quickddit is in maintenance mode, I won't do much development on it for the time being, but I'll keep it up to date with newest Sailfish, architectures, youtube-dl etc. Maybe that changes if/when I move away from Sailfish..

However, I would welcome a Kirigami based UI if someone is willing to create it AND support it (same deal I made with @dano6 for the Ubuntu Touch port)

The C++ base is 100% ready for a Kirigami UI. I think you can even take 90% of the Ubuntu Touch QML as a base, as it is also QtQuick Controls 2 based. I was actually surprised how little impact the Ubuntu Touch port had on the C++ side (♥ QML). But if there's support needed on that side I can help.

Sharing components between ports (or using a generic wrapper, like Pure Maps approach) is probably not ideal for Quickddit, as each platform has slightly (or in the case of Sailfish, a lot) different behavioral properties. But if Ubuntu Touch and Kirigami/Plasma Mobile have similar user interaction patterns, it might be interesting to investigate what components can be (made to be) shared.

accumulator avatar Apr 15 '21 13:04 accumulator

Hi, Ubuntu Touch port is not using Ubuntu.Components, there is just forced Suru theme from https://github.com/ubports/qqc2-suru-style/. I planned to port it to qt5.12 and do not require a specific theme, to research how hard it would be to use multiple styles. I would love to get it usable with Breeze, Suru and Default QQC2 style

dano6 avatar Apr 15 '21 13:04 dano6

I am not a fan of platform specific toolkits, but if somebody is willing to use Pure Maps approach for Ubuntu Touch/Kirigami/Plasma Mobile (Sailfish has a great frontend already, it will only break stuff), I would love to help him. For me, it looks too complicated, and I do not have enough time for that.

dano6 avatar Apr 15 '21 14:04 dano6

WIP preview of using breeze style

Screenshot from 2021-04-17 20-34-00

dano6 avatar Apr 17 '21 18:04 dano6

Screenshot from 2021-04-19 08-21-20 Screenshot from 2021-04-19 08-25-09 Screenshot from 2021-04-19 08-26-10

dano6 avatar Apr 19 '21 06:04 dano6

@dano6, looks nice! Are you planning to submit a PR?

Shatur avatar May 12 '21 22:05 Shatur

Yes, but I am waiting for this https://github.com/ubports/qqc2-suru-style/pull/56 But you can test with AUR package https://aur.archlinux.org/packages/quickddit/ For breeze support please install optional dependencies, breeze-icons and qqc2-breeze-style. Style can be changed in the settings, Suru, Material, Universal and Breeze should somewhat work

dano6 avatar May 14 '21 19:05 dano6

@dano6, thanks! Works correctly with org.kde.breeze. But with Plasma theme my interface sometimes freezes. Especially when I'm trying to change the theme to another one.

Shatur avatar May 14 '21 20:05 Shatur

I see. Reason for that is Buttons in Plasma theme are quite resources heavy. I will investigate performance more.

dano6 avatar May 15 '21 07:05 dano6