Разработчики KDE опубликовали (https://dot.kde.org/2017/01/12/kde-releases-kirigami-ui-20) релиз фреймворка Kirigami 2.0 (https://techbase.kde.org/Kirigami), созданного для быстрой разработки приложений с адаптивным интерфейсом, работающим без изменения на настольных и мобильных системах. Фреймворк является надстройкой над Qt Quick Controls (http://doc.qt.io/qt-5/qtquickcontrols2-index.html) и использует в качестве основы уже предоставляемые в Qt Quick элементы, такие как кнопки и поля ввода текста.
Приложения, использующие Kirigami, автоматически адаптируются к размеру экрана и доступным методам ввода, что позволяет комфортно работать с ними на настольных системах, планшетах с относительно большими сенсорными экранами и смартфонах с ограниченным экранным пространством. Kirigami даёт возможность комбинировать элементы Qt Quick в готовые блоки построения интерфейса, например, позволяет построить интерфейс в форме набора горизонтально сдвигаемых страниц, которые отображаются по одной или группируются в зависимости от размера экрана.Для управления со смартфона предлагается концепция управления приложением одной рукой, основанная на формировании неинвазивных всплывающих окон - вместо открытия диалога подтверждения операции, пользователю предоставляется возможность отменить действие, после его совершения. В настоящее время поддерживается создание приложений для настольных дистрибутивов GNU/Linux на базе X11 и Wayland, Windows, Android и платформы Plasma Mobile. Ожидается поддержка iOS и Ubuntu Touch.
Новый выпуск примечателен переходом на использование элементов Qt Quick Controls 2 (https://www.opennet.me/opennews/art.shtml?num=44614). Так как Quick Controls 2 предоставляет более широкий, чем в Qt Quick Controls 1, набор готовых элементов интерфейса, вместо поддержки собственных реализаций, удалось сократить кодовую базу Kirigami за счёт задействования предоставляемых в Quick Controls 2 возможностей, что положительно сказалось на стабильности и производительности. Для упрощения перевода приложений, уже использующих Quick Controls 2, API Kirigami по возможности максимально приближен к API Quick Controls 2.Из других улучшений, отмечается проведение работы по увеличению производительности и значительное расширение возможностей по организации управления с клавиатуры, без применения мыши и сенсорного экрана. Для платформы Android в Kirigami 2 обеспечена более качественная визуальная интеграция с оформлением, основанным на концепции Material Design.
На Kirigami 2 уже переведён (http://www.proli.net/2016/12/31/discover-more-in-2017/) интерфейс менеджера установки приложений Discover (Software Center), но так как для работы Kirigami 2 требуется Qt 5.7 (https://www.opennet.me/opennews/art.shtml?num=44614), который пока доступен не во всех дистрибутивах, поддержка варианта интерфейса на базе Kirigami 1 пока сохранена. Для ознакомления с возможностями Kirigami на платформе Android в Google Play добавлено (https://play.google.com/store/apps/details?id=org.kde.kiriga...) специальное демонстрационное приложение.
URL: https://dot.kde.org/2017/01/12/kde-releases-kirigami-ui-20
Новость: http://www.opennet.me/opennews/art.shtml?num=45847
Ну хоть у этих человеческие чекбоксы, а не осточертевшие тумблеры.
Только почему слева? Даже я уже както привык что они справа на мобильниках.
> Только почему слева? Даже я уже както привык что они справа на
> мобильниках.Material Design же.
Кстати, они там в этом месте слева, а на другом экране справа.
Главное, чтобы разработчики на фреймворке не забывали делать кликабельной всю область, а не только сам чекбокс.Веб-разработчики вот часто забывают сделать label, это очень раздражает.
В QQC2 кликабельна вся область.
Ну да, конечно! Это непередаваемое чувство, когда в процессе скроллинга длинного списка настроек у тебя чуть дернулся палец, и всё - незвестно какие галки были поставлены, а поскольку кнопки Apply нет и все изменения применяются в реальном времени... Веришь, эта игра покруче сапера будет.
Самое время еще и скроллинг убрать. В списке должно быть элементов 7, не больше. Нужно перегруппировывать.
может под левую руку сделаны?
Им срочно нужен дизайнер, работа с размером шрифта, пропорциями элементов никакая.
> Им срочно нужен дизайнерПОШЕЛ НА**Й, ДИЗАЙНЕР! Хватит уже анально-ориентированных интерфейсов.
Найди 10 отличий от MD из Google.
1. MD не выглядит как отходы жизнедеятельности.
2. MD не позиционируется как дизайн, интегрирующийся с любым окружением, в отличие от. Хотя это не мешает гуглу пропихивать его в iOS.
3. MD — это не дизайн, чего б там гугловцы себе ни думали.
Открываешь родной клиент gmail в iOS, как-будто в строго стильном бело-голубом умном доме будущего открыл коробку конфет ассорти - всё такое разноцветное, круглое и весёлое, доставляет. Но если вокруг будут сплошь такие же коробки конфет - то наверное начнёшь их ненавидеть.
Не знаю как у вас там в голубом доме :) я - традиционной ориентации.
У андроида завиит от вендора много. Вот на самсунях всё яркое и не стильное, а возьми HTC One ... уже не стыдно на переговорах экраном светить :-)
Речь про чистый андроид. Что там Самсунг и прочие сделали, дело десятое.
На каких переговорах? Бхаххаххаааа!.. Лапшицу кушай, линукс-переговорщик :)
> я - традиционной ориентацииДа ты чО!? Ну, герой! Глянь, вся ночлежка тебе аплодирует!
Так не все цветное же. Далеко не все.
> Найди 10 отличий от MD из Google.Зачем их искать? В QtQuick Controls 2 тема Material Design входит в комплект поставки (а эти контролы основаны на QQC2).
А, так на Андроиде там еще и не нативные контролы? Закoпать!
А что дадут нативные? Эти выглядят точно также.
> А что дадут нативные? Эти выглядят точно также.Неа. См. ниже. Еще добавлю, что диалоги просто жутко уродливые.
>> А что дадут нативные? Эти выглядят точно также.
> Неа. См. ниже. Еще добавлю, что диалоги просто жутко уродливые.Смотрел. Лень разбирать по каждому пункту, в целом ерунда.
Но замечу, что я пользовался не конкретно сабжем, а QtQuick Controls 2.0 и там все очень неплохо. Диалоги делал сам.
> Смотрел. Лень разбирать по каждому пункту, в целом ерунда.
> Но замечу, что я пользовался не конкретно сабжем, а QtQuick Controls 2.0
> и там все очень неплохо. Диалоги делал сам.А можно ссылку на пример приложения в Play Store на QtQuick? Только не Hello World, а нормального. Мне действительно интересно.
Поищите, я думаю, сможете найти.
> Поищите, я думаю, сможете найти.Поискал. Нашел какой-то Passgen.
Запускался 2-3 секунды, но больше тормозов не было. Посреди экрана висит цветное Sample Text, интерфейс довольно уродливый.И все. Остальное в выдаче — хеллоуворлды и документация. А, еще пара игр, но по ним судить бессмысленно, там контролов просто нет.
>Для управления со смартфона предлагается концепция управления приложением одной рукой, основанная на формировании неинвазивных всплывающих окон - вместо открытия диалога подтверждения операции, пользователю предоставляется возможность отменить действие, после его совершения."послано жене и любовнице. вы можете отменить. отменить ?
> вместо открытия диалога подтверждения операции, пользователю предоставляется возможность отменить действие
> концепция управления приложением одной рукойА что, при появлении диалога подтверждения нужна вторая рука?
Нет. Голова. :)
Наконец-то перевели на QtQuick Controls 2.
всё. понеслась, переписываем все по новой
Попробовал на Андроиде.
1. Запускалось очень долго.
2. Если выдвинуть меню слева на скрине (navigation drawer, не знаю, как оно в киригами зовется), то обратно его свайпом задвинуть свайпом тяжело. Иногда оно просто не срабатывает.
3. Выше сказали, что на чекбокс можно нажимать где угодно. А ннет, только на сам чекбокс или на надпись, на пустое место справа нельзя, а должно быть на всю строку можно.
4. Оверскроллинг как в iOS. Только еще и выглядит по-дурацки. Видел старый китайский телефон на Андроиде 2.3, там, помнится, так было.
5. Для выдвигания navigation drawer снизу слева есть кнопка. Почему она не сверху, как в Андроиде? Наверное, чтобы на нее было удобнее нажимать, держа телефон одной рукой? А ннет, нажимать на нее нельзя. Update: можно, но срабатывает почему-то далеко не всегда.
6. Индикатор прокрутки очень широкий. При этом пальцем его крутить все равно нельзя. Update: на некоторых экранах можно, но почему-то не везде.
7. В списках есть действия под элементами, как в iOS. Вот только их показать можно только кнопкой, но не свайпом.
8. В одном месте нашел чекбокс без галочки. Просто квадрат и надпись рядом.
9. При вызове клавиатуры весь экран (точнее, только то, что рисует приложение) неприятно мигает.
11. Анимации часто глючат.
12. Панель сверху очень узкая, выглядит очень странно.
13. Цветной статусбар где?Андроид 6.0, да.
Продолжаем.14. Диалоги очень уродливые. Просто текст и стандартная кнопку засунули.
15. Кнопка Назад ведет себя как-то неадекватно.
16. Довольно часто при переходе между экранами все дергается и мелькает.
А, я 10 пропустил. Ну да ладно, смысл понятен. Контролы там настолько же "такие же, как нативные", как в LibreOffice. Выглядит примерно так же, а если попробовать пользоваться, то все плохо.
Используйте чистые QtQuick Controls 2.0.
> Используйте чистые QtQuick Controls 2.0.А зачем, если можно просто нативные использовать? Какой плюс от этого?
>> Используйте чистые QtQuick Controls 2.0.
> А зачем, если можно просто нативные использовать? Какой плюс от этого?А как вы сделаете одно приложение для нескольких платформ без написания одного и того же кода для каждой платформы?
>>> Используйте чистые QtQuick Controls 2.0.
>> А зачем, если можно просто нативные использовать? Какой плюс от этого?
> А как вы сделаете одно приложение для нескольких платформ без написания одного
> и того же кода для каждой платформы?Подождите, подождите. Во-первых, бекенд общий сделать можно в любом случае.
Во-вторых, а для каких еще платформ вы собрались тот же интерфейс делать? Я не знаю ни одной платформы, куда бы интерфейс Android нормально интегрировался. Ну кроме Chrome OS.
Для винфонов можно использовать стиль Universal. Для десктопов его же или Material. На iOS можно использовать тоже Material, пока не добавили нативный стиль.
> Для винфонов можно использовать стиль Universal. Для десктопов его же или Material.
> На iOS можно использовать тоже Material, пока не добавили нативный стиль.Но дело же не в стилях. Там же стиль построения интерфейса совершенно разный...
Если нужна аналогия, то сравните приложения GNOME и KDE. Как можно один интерфейс везде пихать? Он либо будет чужеродный везде, либо везде, кроме какой-то одной платформы.
>> Для винфонов можно использовать стиль Universal. Для десктопов его же или Material.
>> На iOS можно использовать тоже Material, пока не добавили нативный стиль.
> Там же стиль построения интерфейса совершенно
> разный...Тьфу.
Там же принцип построения интерфейса совершенно разный...
> Какой плюс от этого?Абстракция от натива, кроссплатформенность.
>> Какой плюс от этого?
> Абстракция от натива, кроссплатформенность.См. выше. Интерфейсы на разных платформах должны быть разные. Иначе будет либо на всех платформах неудобно, либо на всех, кроме той, под которую вы его пилили.