Commit e38bf17b authored by Aleksi Suomalainen's avatar Aleksi Suomalainen Committed by GitHub

Merge pull request #59 from neochapay/5.3.2

5.3.2
parents 0e6921d1 664ca7fa
/****************************************************************************************
**
** Copyright (C) 2017 Chupligin Sergey <neochapay@gmail.com>
** All rights reserved.
**
** You may use this file under the terms of BSD license as follows:
**
** Redistribution and use in source and binary forms, with or without
** modification, are permitted provided that the following conditions are met:
** * Redistributions of source code must retain the above copyright
** notice, this list of conditions and the following disclaimer.
** * Redistributions in binary form must reproduce the above copyright
** notice, this list of conditions and the following disclaimer in the
** documentation and/or other materials provided with the distribution.
** * Neither the name of the author nor the
** names of its contributors may be used to endorse or promote products
** derived from this software without specific prior written permission.
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
** ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
** WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
** DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR
** ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
** (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
** ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
**
****************************************************************************************/
import QtQuick 2.6
import QtQuick.Controls 1.0 //needed for the Stack attached property
import QtQuick.Controls.Nemo 1.0
import QtQuick.Controls.Styles.Nemo 1.0
import Nemo.Notifications 1.0
Page {
id: root
headerTools: HeaderToolsLayout {
showBackButton: true;
title: "Notifications"
}
allowedOrientations: Qt.PortraitOrientation | Qt.LandscapeOrientation | Qt.InvertedLandscapeOrientation | Qt.InvertedPortraitOrientation
Notification{
id: simpleNotify
category: "x-nemo.example"
summary: ""
body: ""
itemCount: 1
remoteActions: [ {
"name": "default",
"service": "org.nemomobile.notify",
"path": "/org/nemomobile/notify",
"iface": "org.nemomobile.notify",
"method": "activateApp",
"arguments": [ "Hello Nemo! You have a notification" ]
}]
}
Column {
spacing: 40
anchors.centerIn: parent
Button {
text: "Test label"
onClicked:{
simpleNotify.summary = "Hello Nemo! You have a notification"
simpleNotify.publish()
}
}
}
}
...@@ -124,6 +124,10 @@ ApplicationWindow { ...@@ -124,6 +124,10 @@ ApplicationWindow {
title: "Icons" title: "Icons"
page: "content/IconPage.qml" page: "content/IconPage.qml"
} }
ListElement {
title: "Notifications"
page: "content/NotificationsPage.qml"
}
} }
...@@ -224,13 +228,19 @@ ApplicationWindow { ...@@ -224,13 +228,19 @@ ApplicationWindow {
} }
ListView { ListView {
id: mainList
model: pageModel model: pageModel
anchors.fill: parent anchors.fill: parent
clip: true clip: true
delegate: ListViewItemWithActions { delegate: ListViewItemWithActions {
iconVisible: false
label: title label: title
onClicked: pageItem.Stack.view.push(Qt.resolvedUrl(page)) onClicked: pageItem.Stack.view.push(Qt.resolvedUrl(page))
} }
ScrollDecorator{
flickable: mainList
}
} }
} }
} }
...@@ -42,18 +42,16 @@ ...@@ -42,18 +42,16 @@
#include <QQmlApplicationEngine> #include <QQmlApplicationEngine>
#include <QtQuick/QQuickView> #include <QtQuick/QQuickView>
#include <glacierapp.h>
int main(int argc, char *argv[]) int main(int argc, char *argv[])
{ {
setenv("QT_QUICK_CONTROLS_STYLE", "Nemo", 1); setenv("QT_QUICK_CONTROLS_STYLE", "Nemo", 1);
QGuiApplication app(argc, argv); QGuiApplication *app = GlacierApp::app(argc, argv);
app->setOrganizationName("NemoMobile");
QQmlApplicationEngine* engine = new QQmlApplicationEngine(QUrl("/usr/share/glacier-components/main.qml"));
QObject *topLevel = engine->rootObjects().value(0);
QQuickWindow *window = qobject_cast<QQuickWindow *>(topLevel); QQuickWindow *window = GlacierApp::showWindow();
window->setTitle(QObject::tr("Glacier components")); window->setTitle(QObject::tr("Glacier components"));
window->showFullScreen();
return app.exec(); return app->exec();
} }
...@@ -3,12 +3,12 @@ QT += qml quick ...@@ -3,12 +3,12 @@ QT += qml quick
TARGET = glacier-components TARGET = glacier-components
target.path = /usr/bin target.path = /usr/bin
qtHaveModule(widgets) { CONFIG += link_pkgconfig
QT += widgets LIBS += -lglacierapp
} PKGCONFIG += glacierapp
mainqml.files = main.qml mainqml.files = glacier-components.qml
mainqml.path = /usr/share/glacier-components mainqml.path = /usr/share/glacier-components/qml
qml.files += \ qml.files += \
content/AndroidDelegate.qml \ content/AndroidDelegate.qml \
...@@ -26,9 +26,10 @@ qml.files += \ ...@@ -26,9 +26,10 @@ qml.files += \
content/ListViewPage.qml \ content/ListViewPage.qml \
content/SelectRollerPage.qml \ content/SelectRollerPage.qml \
content/IconPage.qml \ content/IconPage.qml \
content/DatePickerPage.qml content/DatePickerPage.qml \
content/NotificationsPage.qml
qml.path = /usr/share/glacier-components/content qml.path = /usr/share/glacier-components/qml/content
images.files = images/*.png images.files = images/*.png
images.files += images/*.jpg images.files += images/*.jpg
...@@ -36,7 +37,6 @@ images.path = /usr/share/glacier-components/images ...@@ -36,7 +37,6 @@ images.path = /usr/share/glacier-components/images
OTHER_FILES += $$qml.files OTHER_FILES += $$qml.files
desktop.path = /usr/share/applications desktop.path = /usr/share/applications
desktop.files = glacier-gallery.desktop desktop.files = glacier-gallery.desktop
......
Name: qt5-qtquickcontrols-nemo Name: qt5-qtquickcontrols-nemo
Summary: Nemomobile Qt Quick Controls Summary: Nemomobile Qt Quick Controls
Version: 5.3.1 Version: 5.3.2
Release: nemo1 Release: nemo1
Group: System/Library Group: System/Library
License: LGPLv2.1 with exception or GPLv3 License: LGPLv2.1 with exception or GPLv3
...@@ -10,6 +10,7 @@ BuildRequires: pkgconfig(Qt5Core) ...@@ -10,6 +10,7 @@ BuildRequires: pkgconfig(Qt5Core)
BuildRequires: pkgconfig(Qt5Qml) BuildRequires: pkgconfig(Qt5Qml)
BuildRequires: pkgconfig(Qt5Quick) BuildRequires: pkgconfig(Qt5Quick)
BuildRequires: fdupes BuildRequires: fdupes
Requires: qt5-qtquickcontrols Requires: qt5-qtquickcontrols
Requires: qt5-qtgraphicaleffects Requires: qt5-qtgraphicaleffects
Requires: nemo-theme-glacier Requires: nemo-theme-glacier
...@@ -24,7 +25,10 @@ This package contains the Qt Quick Controls library ...@@ -24,7 +25,10 @@ This package contains the Qt Quick Controls library
%package examples %package examples
Summary: Examples to showcase Nemo UI components Summary: Examples to showcase Nemo UI components
Requires: %{name} Requires: %{name}
Requires: nemo-qml-plugin-notifications-qt5
Requires: libglacierapp
BuildRequires: desktop-file-utils BuildRequires: desktop-file-utils
BuildRequires: pkgconfig(glacierapp)
%description examples %description examples
%{summary}. %{summary}.
......
...@@ -25,6 +25,7 @@ QML_FILES += \ ...@@ -25,6 +25,7 @@ QML_FILES += \
qml/InverseMouseArea.qml \ qml/InverseMouseArea.qml \
qml/IconButton.qml \ qml/IconButton.qml \
qml/DatePicker.qml \ qml/DatePicker.qml \
qml/ScrollDecorator.qml \
qml/dialogs/QueryDialog.qml qml/dialogs/QueryDialog.qml
OTHER_FILES += qmldir \ OTHER_FILES += qmldir \
......
...@@ -8,10 +8,8 @@ ListView { ...@@ -8,10 +8,8 @@ ListView {
signal hideAllActions(int hideIndex) signal hideAllActions(int hideIndex)
property bool showDecorator: false
property color delegateColor: Theme.backgroundColor property color delegateColor: Theme.backgroundColor
property color bottomGradientColor: Theme.backgroundColor property color bottomGradientColor: Theme.backgroundColor
property color scrollerDecoratorColor: Theme.accentColor
section.criteria: ViewSection.FullString section.criteria: ViewSection.FullString
section.delegate: Component{ section.delegate: Component{
...@@ -67,20 +65,5 @@ ListView { ...@@ -67,20 +65,5 @@ ListView {
} }
} }
Rectangle{
id: scrollerDecorator
visible: (listView.showDecorator && listView.contentHeight > listView.height)
color: scrollerDecoratorColor
width: Theme.itemSpacingExtraSmall
height: listView.height*listView.height/listView.contentHeight
y: (listView.height)/listView.contentHeight*listView.contentY
anchors{
right: listView.right
rightMargin: Theme.itemSpacingExtraSmall / 2
}
}
} }
/****************************************************************************************
**
** Copyright (C) 2017 Chupligin Sergey <neochapay@gmail.com>
** All rights reserved.
**
** You may use this file under the terms of BSD license as follows:
**
** Redistribution and use in source and binary forms, with or without
** modification, are permitted provided that the following conditions are met:
** * Redistributions of source code must retain the above copyright
** notice, this list of conditions and the following disclaimer.
** * Redistributions in binary form must reproduce the above copyright
** notice, this list of conditions and the following disclaimer in the
** documentation and/or other materials provided with the distribution.
** * Neither the name of the author nor the
** names of its contributors may be used to endorse or promote products
** derived from this software without specific prior written permission.
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
** ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
** WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
** DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR
** ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
** (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
** ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
**
****************************************************************************************/
import QtQuick 2.6
import QtQuick.Controls 1.0 //needed for the Stack attached property
import QtQuick.Controls.Nemo 1.0
Rectangle{
id: scroolDecorator
property var flickable
visible: (flickable.contentHeight > flickable.height)
color: Theme.accentColor
width: Theme.itemSpacingExtraSmall
height: flickable.height*flickable.height/flickable.contentHeight
y: (flickable.height)/flickable.contentHeight*flickable.contentY
anchors{
right: flickable.right
rightMargin: Theme.itemSpacingExtraSmall / 2
}
}
...@@ -26,6 +26,7 @@ GlacierRollerItem 1.0 GlacierRollerItem.qml ...@@ -26,6 +26,7 @@ GlacierRollerItem 1.0 GlacierRollerItem.qml
InverseMouseArea 1.0 InverseMouseArea.qml InverseMouseArea 1.0 InverseMouseArea.qml
IconButton 1.0 IconButton.qml IconButton 1.0 IconButton.qml
DatePicker 1.0 DatePicker.qml DatePicker 1.0 DatePicker.qml
ScrollDecorator 1.0 ScrollDecorator.qml
# MIRRORED CONTROLS: # MIRRORED CONTROLS:
# These are the controls that we take directly from official QQC. # These are the controls that we take directly from official QQC.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment