Coder Social home page Coder Social logo

Comments (6)

SunRain avatar SunRain commented on June 22, 2024

I could help to port qml-material if possbile.

from shell.

iBelieve avatar iBelieve commented on June 22, 2024

First of all, we're not using QML Material, as that is only for QtQuick.Controls 1, not Controls 2. We're using Fluid now. This would also probably be better discussed in Fluid instead of here in the shell.

I might be wrong on this, but I feel that Ubuntu UI Toolkit is Canonical just doing their own thing creating new projects instead of working with Qt upstream on QtQuick.Controls. Anyhow, to address your points:

  1. QML Material worked on Ubuntu Touch (see Liri Browser), so I would expect Fluid will work as well. I don't know of any reason why Controls 2 wouldn't be supported if Controls 1 is.
  2. We're already depending on Qt 5.7, so I don't really see a huge need to support anything older than the latest version. (Yes, distributions might not have 5.7 yet, but they will eventually)
  3. Any specific examples? Maybe we could add our own implementations in Fluid or upstream in Controls 2.

One major advantage to Controls 2 (and a disadvantage to Ubuntu UI Toolkit) is that Controls 2 already has a pretty good implementation of Material Design that we merely build off of instead of writing it from scratch like I did in QML Material.

@plfiorini will likely have his own thoughts to add as well.

from shell.

SunRain avatar SunRain commented on June 22, 2024

Hi, the main reason for using Ubuntu UI Tookit for me is that it is QuickControl free, Ubuntu UI Toolit only depend on Qt qml part. It not depend on QuickControl, Canonical write it on cpp from scratch.

As QtQuickControl 2 and Quick.layouts 2 only works on Qt5.7(am I wrong?), it not works on most of linux distributions(eg ubuntu16.04 only support Qt5.6, ubuntu phone 5.5, Sailfish OS 5.2). Updating Qt verison may broken most of system packages on linux distribution,so it is better to support old version instead of only new version.

from shell.

plfiorini avatar plfiorini commented on June 22, 2024

You can write QML applications with whatever controls library you want and they will work on any platform with Qt. So for instance you can run a Fluid app on Ubuntu Touch and even SailfishOS if they have the right dependencies, but updating Qt is up to them.
They should really keep up, this is a sensitive matter I wouldn't trust much a Qt based platform that has a huge delta with the Qt version. Ubuntu 16.04 has an excuse, Qt 5.7 wasn't around at the time so I'm confident they will update their distro, while SailfishOS unfortunately slowed the development down quite a lot with their recent unfortunate events.

As far as normal Linux distros goes they already have Qt 5.7 at least in their development tree and soon will be pushed to the main tree.

It's not like we require every single Qt minor version each time it's released, probably we'll still require at least Qt 5.7 when 5.8 comes out. By that time distros will have Qt 5.7.

QtQuick Controls 2.0 is also designed for embedded which is quite an improvement over the now old QtQuick Controls 1.0 and it's part of the standard Qt offering meaning the API won't suddenly change and it's a strategic part of Qt today.
It also offer a much more standardized API for controls.

We are using QtQuick.Layout 1.0 that is available from the Qt 5.0/5.1 era, don't know anything about QtQuick.Layout 2.0.

from shell.

plfiorini avatar plfiorini commented on June 22, 2024

TL;DR: We need Qt 5.7 for other parts of the system anyway and QQC2 gives us advantages that other libraries don't offer.

from shell.

SunRain avatar SunRain commented on June 22, 2024

Thanks for your reply @plfiorini , I'll try fluid library and qmlOS after I received Qt5.7 package on my ubuntu 16.04(Or ubuntu 16.10) :) and try to make contributions to this project if possible as a qml-based workspace/shell is really awesome lol

from shell.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.