Hi all, I highly doubt that it can be done as a part of GSoC and I don't see any point in moving this to QtProject as we don't have Sailfish OS platform upstreamed. We just need this style to make QQC2 applications look native on Sailfish OS. I think that we'll have to rely on closed-yet components and the style is not going to look nice with mocks.
That said, I see a number of issues and I hope that we'll discuss and agree on some changes to the QQC2 API: 1) I would like to propose ComboDelegate — a pair of ComboBox and Label, combined in a platform-specific way (similar to CheckDelegate and RadioDelegate). 2) We also need a delegate to display a label and an associated value. It is named "DetailItem" in Silica, but I would agree to go with a name like ValueDelegate. 3) Yet another point is that we need to properly style delegate descriptions, so I want to propose "description" property at least for Combo, Radio and Switch delegates (we even don't have a 'buddy' property here, though it still would be very hacky to go in this way). Probably it makes sense to start another thread to discuss Qt Quick Controls 2 API, but I need at least three weeks to think and experiment with what we have right now. :-) My work is available at https://git.merproject.org/Kaffeine/qtsilicastyle (compatible with Qt 5.9 and 5.10), but I don't think that it can be interesting for anyone in its current shape. On Fri, Apr 6, 2018 at 4:11 PM, Alexey Andreyev <yetanotherandre...@gmail.com> wrote: > Got it, thank you, Mitch! :) > > Yes, I have contacted Jolla devs, got answer: > >> Providing Sailfish support for Qt Quick Controls 2 would definitely be >> valuable. Sailfish OS cannot build app ecosystem alone, and improving the >> cross-platform story would help us getting Qt app contributions from other >> platforms, and help 3rd party developers target multiple platforms like >> Android and iOS with the same code base. > >> You are free to use what license you choose, but I would recommend >> something permissive like BSD3 or LGPL2, which we also use in Sailfish OS >> open source side > > Silica Componets source is not public, yes :( But I've got device where I > have all up-to-date qml files and I'm it as hint. > > I've also played to run armv7h binaries from device repos (rpm packages) on > archlinuxarm (wrote PKGBUILDs) with all the deps and some hacky qt5 linkage > address patching for .so lib, it staring and not crashing but asking for > more deps yet (like image resources deps, so work in progress) > > Alexander Akulich (Kaffeine) from Open Mobile Platform is helping me a lot > too, he recently created: > > https://git.merproject.org/Kaffeine/qtsilicastyle > > So I'm going to contribute there. > > For now current state is: > > 5.10 private API chaged compating to 5.9: > https://github.com/qt/qtquickcontrols2/commit/b18b6375d170ce02dc5a627bfb69ca49046ee05c#diff-7467cf01ad998520d6d9d2995867e8e2 > > Alexander is testing with 5.9 LTS on SailfishOS > and me with archlinuxarm 5.10 > so I'm thinking now how to provide better compabilty for both :) > > looks like #ifdef approarch is not helping yet, should investigate more time > > > 2018-04-06 15:47 GMT+03:00 Mitch Curtis <mitch.cur...@qt.io>: >> >> Hi. >> >> >> >> We think this would be best in a repo outside of qtquickcontrols2.git. >> >> >> >> The process for creating a playground repo is documented here: >> >> >> >> >> http://wiki.qt.io/Creating_a_new_module_or_tool_for_Qt#Getting_started_with_new_ideas_on_Qt_Project.27s_Playground. >> >> >> >> Have you discussed this project with the Sailfish devs, by the way? >> Perhaps they would be interested in integrating your efforts upstream. >> >> >> >> One potential problem I see is that it seems that the source code is not >> public: >> >> >> >> >> https://together.jolla.com/question/6780/request-sourcecode-for-silica-core-components/ >> >> >> >> The closest thing is this repo, which doesn’t seem to be complete: >> >> >> >> https://github.com/dm8tbr/sailfishsilica-qt5 >> >> >> >> How do you plan on implementing the style in light of this? >> >> >> >> Speaking for myself: I would be happy to answer any questions you may have >> with regards to implementing a Controls 2 style, but I don’t think I can put >> aside enough time to be a mentor for this. >> >> >> >> Cheers. >> >> >> >> From: Alexey Andreyev [mailto:yetanotherandre...@gmail.com] >> Sent: Tuesday, 3 April 2018 2:14 PM >> To: Aleksey Kontsevich <tantr...@ya.ru> >> Cc: Mitch Curtis <mitch.cur...@qt.io>; development@qt-project.org >> >> >> Subject: Re: [Development] [Google Summer of Code] [Project Ideas] Qt >> Quick Controls 2 Sailfish Silica Style >> >> >> >> Hi, Aleksey Kontsevich! Thank you for your support, I do agree that >> Sailfish OS is receiving a huge contribution from Russian speaking >> developers and focusing on other local markets too. There's also related >> AsteroidOS community about smartwatches. They have a demo [1] >> >> >> >> Talking about popularity: from my point of view, while Microsoft is >> providing their Metro unified look for desktop and Intel-based tablets (and >> Xbox) for example, looks like they do not have any plans for new mobile >> devices (I mean arm-based) to provide. While Sailfish OS is mobile OS with >> GSM-stack support for real arm-based systems. [1] Correct me if I'm wrong, I >> do not want to mislead anyone. >> >> >> >> Mitch Curtis, thank you for your feedback sincerely. I do understand your >> skepticism about yet another controls in mainline to support. (but I do not >> share this personally :) >> >> I'm new to qqc2 internals. I've cloned qtquickcontrols2 repo 5.10.1 brach >> (to play on my Arch Linux system). Dependency from some private APIs looks >> tricky for me at first glance. I'm trying to sort out. I'm not against >> providing silica style as some custom repo, the result I want to get is open >> source solution to run Qt application in my personal environment with native >> Silica look and feel. Will be happy to get any hints about basic repo draft >> in that case (should I look at Kirigami approach?) >> >> >> >> Anyway, as I wrote at my GSoC proposal, GSoC campaign is just money >> support, I love Silica style, using Sailfish OS for several years and can't >> stand that no one is willing to port it to modern QQC2 approach :) I guess >> it could radically change skepticism about qt quick controls approach in >> general from ios and android developers. >> >> >> >> [1]: https://www.youtube.com/watch?v=Rd86KTs2Les >> >> [2]: https://wiki.merproject.org/wiki/Adaptations/libhybris >> >> >> >> 2018-04-03 13:38 GMT+03:00 Aleksey Kontsevich <tantr...@ya.ru>: >> >> Hi all, my 2 cents here: >> >> >The controls look nice, but my concern is how relevant the Silica style >> > is these days (in the context of how many people are developing apps for >> > the >> >Sailfish OS). >> >> Sailfish OS become VERY popular in Russia and in Latin America, and for >> people who wants their data and communication be secure. Market in Russia >> growing very fast, Sailfish OS devices are hits of sales, leading >> universities created courses for Sailfish OS, government certified >> it for corporate and government use and since 2019 all mobile applications >> from national software list (government and corporate use) should work in >> Sailfish OS (according to import replacing law all applications should be >> Russian-native and secure). >> >> -- >> Best regards, >> Aleksey >> Linked in https://www.linkedin.com/in/alekseykontsevich >> >> >> >> 03.04.2018, 13:13, "Mitch Curtis" <mitch.cur...@qt.io>: >> >> > Hi Alexey. >> > >> > The controls look nice, but my concern is how relevant the Silica style >> > is these days (in the context of how many people are developing apps for >> > the >> > Sailfish OS). >> > >> > For each style we currently have, I would justify their inclusion into >> > qtquickcontrols2.git for the following reasons: >> > >> > Default - extremely high performance at the cost of a very basic >> > appearance. Tries to be neutral in terms of looks. >> > >> > Fusion - bridges the gap in terms of Desktop styling. An additional/more >> > specific point that I think it is important here is that the controls are >> > more compact (smaller) than any other pre-built style we offer (the >> > Material >> > style has a dense variant now, but that’s still larger if I recall >> > correctly). >> > >> > Imagine - puts power in the hands of designers, frees up time for >> > developers. >> > >> > Material - very relevant in terms of Android market share. Looks really >> > nice; a good candidate for “non-native” cross-platform apps. >> > >> > Universal - relevant in terms of Windows market share. >> > >> > As mentioned, I do think the Silica controls look nice, but that’s the >> > only justification I could think of for including them in >> > qtquickcontrols2.git. For each new style we add, the maintenance cost >> > increases, so this is something that we need to consider. >> > >> > What is your opinion on this? >> > >> > Cheers. >> > >> > From: Alexey Andreyev [mailto:yetanotherandre...@gmail.com] >> > Sent: Friday, 23 March 2018 8:49 PM >> > To: Mitch Curtis <mitch.cur...@qt.io> >> > Cc: development@qt-project.org >> > Subject: Re: [Development] [Google Summer of Code] [Project Ideas] Qt >> > Quick Controls 2 Sailfish Silica Style >> > >> > Thank you Mitch for the feedback! >> > I've also tried to record current controls on a real device: >> > https://youtu.be/T-qUZMuTGqw (hope not only 360p will be available soon) >> > >> > 2018-03-23 21:55 GMT+03:00 Alexey Andreyev >> > <yetanotherandre...@gmail.com>: >> >> Silica cheat sheet: >> >> >> >> https://sailfishos.org/wp-content/uploads/2016/06/component_cheatsheet.png >> >> Theme cheat sheet: >> >> https://sailfishos.org/wp-content/uploads/2016/06/theme_cheatsheet.png >> >> Icon reference: >> >> https://sailfishos.org/wp-content/uploads/2016/06/icon_reference.png >> >> code example: >> >> https://gist.github.com/jaymzznoori/a980314f8248e0a1e7904c29c88ecdf3 >> >> >> >> Youtube video with timestamp for platform-specific PulleyMenu element >> >> example: https://youtu.be/jByW7UNmbxU?t=11m38s >> >> >> >> 2018-03-23 21:40 GMT+03:00 Mitch Curtis <mitch.cur...@qt.io>: >> >>> Hello. >> >>> >> >>> Are there any screenshots of it? I read that entire page and the >> >>> Silica docs but couldn’t see anything. >> >>> >> >>> Cheers. >> >>> >> >>> From: Development >> >>> [mailto:development-bounces+mitch.curtis=qt...@qt-project.org] On Behalf >> >>> Of >> >>> Alexey Andreyev >> >>> Sent: Friday, 23 March 2018 5:39 PM >> >>> To: development@qt-project.org >> >>> Subject: [Development] [Google Summer of Code] [Project Ideas] Qt >> >>> Quick Controls 2 Sailfish Silica Style >> >>> >> >>> Hello! >> >>> My name is Alexey, what do you think about Silica Style for QQC2 as a >> >>> gsoc project? >> >>> I have some notes here: http://aa13q.ru/qqc2-silica-style-en/ >> >>> >> >>> and want to create a proposal. >> > >> >> > , >> > >> > _______________________________________________ >> > Development mailing list >> > Development@qt-project.org >> > http://lists.qt-project.org/mailman/listinfo/development >> >> > > > > _______________________________________________ > Development mailing list > Development@qt-project.org > http://lists.qt-project.org/mailman/listinfo/development > _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development