diff --git a/rpm/lipstick-qt5.spec b/rpm/lipstick-qt5.spec index 54bb1a4d..a25eb03a 100644 --- a/rpm/lipstick-qt5.spec +++ b/rpm/lipstick-qt5.spec @@ -38,7 +38,7 @@ BuildRequires: pkgconfig(ngf-qt5) BuildRequires: pkgconfig(systemd) BuildRequires: pkgconfig(wayland-server) BuildRequires: pkgconfig(usb-moded-qt5) >= 1.8 -BuildRequires: pkgconfig(systemsettings) +BuildRequires: pkgconfig(systemsettings) >= 0.5.28 BuildRequires: pkgconfig(nemodevicelock) BuildRequires: qt5-qttools-linguist BuildRequires: qt5-qtgui-devel >= 5.2.1+git24 diff --git a/src/notifications/notificationmanager.cpp b/src/notifications/notificationmanager.cpp index e4dfd265..f0288f6a 100644 --- a/src/notifications/notificationmanager.cpp +++ b/src/notifications/notificationmanager.cpp @@ -1,6 +1,6 @@ /*************************************************************************** ** -** Copyright (C) 2012-2019 Jolla Ltd. +** Copyright (c) 2012 - 2019 Jolla Ltd. ** Copyright (c) 2019 Open Mobile Platform LLC. ** ** Contact: Robin Burchell @@ -22,8 +22,10 @@ #include #include #include +#include #include #include +#include #include #include #include @@ -52,9 +54,6 @@ static const char *CATEGORY_DEFINITION_FILE_DIRECTORY = "/usr/share/lipstick/not //! The number configuration files to load into the event type store. static const uint MAX_CATEGORY_DEFINITION_FILES = 100; -//! Path of the privileged storage directory relative to the home directory -static const char *PRIVILEGED_DATA_PATH = "/.local/share/system/privileged"; - //! Path to probe for desktop entries static const char *DESKTOP_ENTRY_PATH = "/usr/share/applications/"; @@ -455,7 +454,8 @@ void NotificationManager::markNotificationDisplayed(uint id) QString NotificationManager::GetServerInformation(QString &vendor, QString &version, QString &spec_version) { QString name = qApp->applicationName(); - vendor = "Nemo Mobile"; + AboutSettings settings; + vendor = settings.operatingSystemName(); version = qApp->applicationVersion(); spec_version = "1.2"; return name; @@ -666,7 +666,7 @@ void NotificationManager::restoreNotifications(bool update) bool NotificationManager::connectToDatabase() { - QString databasePath = "/home/nemo" + QString(PRIVILEGED_DATA_PATH) + QDir::separator() + "Notifications"; + QString databasePath = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation) + QStringLiteral("/system/privileged/Notifications"); if (!QDir::root().exists(databasePath)) { QDir::root().mkpath(databasePath); } diff --git a/tests/stubs/aboutsettings_stub.h b/tests/stubs/aboutsettings_stub.h new file mode 100644 index 00000000..4d761000 --- /dev/null +++ b/tests/stubs/aboutsettings_stub.h @@ -0,0 +1,251 @@ +/*************************************************************************** +** +** Copyright (c) 2019 Open Mobile Platform LLC. +** +** This file is part of lipstick. +** +** This library is free software; you can redistribute it and/or +** modify it under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation +** and appearing in the file LICENSE.LGPL included in the packaging +** of this file. +** +****************************************************************************/ + +#ifndef ABOUTSETTINGS_H_STUB +#define ABOUTSETTINGS_H_STUB + +#include "aboutsettings.h" +#include + +static const auto TotalDiskSpace = QStringLiteral("totalDiskSpace"); +static const auto AvailableDiskSpace = QStringLiteral("availableDiskSpace"); +static const auto DiskUsageModel = QStringLiteral("diskUsageModel"); +static const auto RefreshStorageModels = QStringLiteral("refreshStorageModels"); + +static const auto WlanMacAddress = QStringLiteral("wlanMacAddress"); +static const auto Imei = QStringLiteral("imei"); +static const auto Serial = QStringLiteral("serial"); +static const auto LocalizedOperatingSystemName = QStringLiteral("localizedOperatingSystemName"); +static const auto OperatingSystemName = QStringLiteral("operatingSystemName"); +static const auto BaseOperatingSystemName = QStringLiteral("baseOperatingSystemName"); +static const auto SoftwareVersion = QStringLiteral("softwareVersion"); +static const auto SoftwareVersionId = QStringLiteral("softwareVersionId"); +static const auto AdaptationVersion = QStringLiteral("adaptationVersion"); +static const auto VendorName = QStringLiteral("vendorName"); +static const auto VendorVersion = QStringLiteral("vendorVersion"); + +class AboutSettingsStub : public StubBase +{ +public: + virtual void AboutSettingsConstructor(QObject *parent); + virtual void AboutSettingsDestructor(); + virtual QString operatingSystemName() const; + + virtual qlonglong totalDiskSpace() const; + virtual qlonglong availableDiskSpace() const; + virtual QVariant diskUsageModel() const; + virtual void refreshStorageModels(); + + virtual QString wlanMacAddress() const; + virtual QString imei() const; + virtual QString serial() const; + virtual QString localizedOperatingSystemName() const; + virtual QString baseOperatingSystemName() const; + virtual QString softwareVersion() const; + virtual QString softwareVersionId() const; + virtual QString adaptationVersion() const; + + virtual QString vendorName() const; + virtual QString vendorVersion() const; +}; + + +void AboutSettingsStub::AboutSettingsConstructor(QObject *parent) +{ + Q_UNUSED(parent) +} + +void AboutSettingsStub::AboutSettingsDestructor() +{ + +} + +QString AboutSettingsStub::operatingSystemName() const +{ + stubMethodEntered(OperatingSystemName); + return stubReturnValue(OperatingSystemName); +} + +qlonglong AboutSettingsStub::totalDiskSpace() const +{ + stubMethodEntered(TotalDiskSpace); + return stubReturnValue(TotalDiskSpace); +} + +qlonglong AboutSettingsStub::availableDiskSpace() const +{ + stubMethodEntered(AvailableDiskSpace); + return stubReturnValue(AvailableDiskSpace); +} + +QVariant AboutSettingsStub::diskUsageModel() const +{ + stubMethodEntered(DiskUsageModel); + return stubReturnValue(DiskUsageModel); +} + +void AboutSettingsStub::refreshStorageModels() +{ + // Do nothing +} + +QString AboutSettingsStub::wlanMacAddress() const +{ + stubMethodEntered(WlanMacAddress); + return stubReturnValue(WlanMacAddress); +} + +QString AboutSettingsStub::imei() const +{ + stubMethodEntered(Imei); + return stubReturnValue(Imei); +} + +QString AboutSettingsStub::serial() const +{ + stubMethodEntered(Serial); + return stubReturnValue(Serial); +} + +QString AboutSettingsStub::localizedOperatingSystemName() const +{ + stubMethodEntered(LocalizedOperatingSystemName); + return stubReturnValue(LocalizedOperatingSystemName); +} + +QString AboutSettingsStub::baseOperatingSystemName() const +{ + stubMethodEntered(BaseOperatingSystemName); + return stubReturnValue(BaseOperatingSystemName); +} + +QString AboutSettingsStub::softwareVersion() const +{ + stubMethodEntered(SoftwareVersion); + return stubReturnValue(SoftwareVersion); +} + +QString AboutSettingsStub::softwareVersionId() const +{ + stubMethodEntered(SoftwareVersionId); + return stubReturnValue(SoftwareVersionId); +} + +QString AboutSettingsStub::adaptationVersion() const +{ + stubMethodEntered(AdaptationVersion); + return stubReturnValue(AdaptationVersion); +} + +QString AboutSettingsStub::vendorName() const +{ + stubMethodEntered(VendorName); + return stubReturnValue(VendorName); +} + +QString AboutSettingsStub::vendorVersion() const +{ + stubMethodEntered(VendorVersion); + return stubReturnValue(VendorVersion); +} + +AboutSettingsStub gDefaultAboutSettingsStub; +AboutSettingsStub *gAboutSettingsStub = &gDefaultAboutSettingsStub; + +AboutSettings::AboutSettings(QObject *parent) +{ + gAboutSettingsStub->AboutSettingsConstructor(parent); +} + +AboutSettings::~AboutSettings() +{ + gAboutSettingsStub->AboutSettingsDestructor(); +} + +QString AboutSettings::operatingSystemName() const +{ + return gAboutSettingsStub->operatingSystemName(); +} + +qlonglong AboutSettings::totalDiskSpace() const +{ + return gAboutSettingsStub->totalDiskSpace(); +} + +qlonglong AboutSettings::availableDiskSpace() const +{ + return gAboutSettingsStub->availableDiskSpace(); +} + +QVariant AboutSettings::diskUsageModel() const +{ + return gAboutSettingsStub->diskUsageModel(); +} + +void AboutSettings::refreshStorageModels() +{ + gAboutSettingsStub->refreshStorageModels(); +} + +QString AboutSettings::wlanMacAddress() const +{ + return gAboutSettingsStub->wlanMacAddress(); +} + +QString AboutSettings::imei() const +{ + return gAboutSettingsStub->imei(); +} + +QString AboutSettings::serial() const +{ + return gAboutSettingsStub->serial(); +} + +QString AboutSettings::localizedOperatingSystemName() const +{ + return gAboutSettingsStub->localizedOperatingSystemName(); +} + +QString AboutSettings::baseOperatingSystemName() const +{ + return gAboutSettingsStub->baseOperatingSystemName(); +} + +QString AboutSettings::softwareVersion() const +{ + return gAboutSettingsStub->softwareVersion(); +} + +QString AboutSettings::softwareVersionId() const +{ + return gAboutSettingsStub->softwareVersionId(); +} + +QString AboutSettings::adaptationVersion() const +{ + return gAboutSettingsStub->adaptationVersion(); +} + +QString AboutSettings::vendorName() const +{ + return gAboutSettingsStub->vendorName(); +} + +QString AboutSettings::vendorVersion() const +{ + return gAboutSettingsStub->vendorVersion(); +} + +#endif diff --git a/tests/stubs/notificationmanager_stub.h b/tests/stubs/notificationmanager_stub.h index 85bb5b8f..9c5d1ba1 100644 --- a/tests/stubs/notificationmanager_stub.h +++ b/tests/stubs/notificationmanager_stub.h @@ -1,6 +1,7 @@ /*************************************************************************** ** -** Copyright (C) 2012 Jolla Ltd. +** Copyright (c) 2012 - 2019 Jolla Ltd. +** Copyright (c) 2019 Open Mobile Platform LLC. ** Contact: Robin Burchell ** ** This file is part of lipstick. diff --git a/tests/ut_notificationmanager/ut_notificationmanager.cpp b/tests/ut_notificationmanager/ut_notificationmanager.cpp index e59991d4..c3c6dd0f 100644 --- a/tests/ut_notificationmanager/ut_notificationmanager.cpp +++ b/tests/ut_notificationmanager/ut_notificationmanager.cpp @@ -15,6 +15,8 @@ #include #include "ut_notificationmanager.h" +#include "aboutsettings_stub.h" + #include "notificationmanager.h" #include "notificationmanageradaptor_stub.h" #include "lipsticknotification.h" @@ -90,9 +92,12 @@ void Ut_NotificationManager::testServerInformation() QString name, vendor, version, spec_version; qApp->setApplicationName("testApp"); qApp->setApplicationVersion("1.2.3"); + QString testVendor("test vendor"); + gAboutSettingsStub->stubSetReturnValue(OperatingSystemName, testVendor); + name = NotificationManager::instance()->GetServerInformation(vendor, version, spec_version); QCOMPARE(name, qApp->applicationName()); - QCOMPARE(vendor, QString("Nemo Mobile")); + QCOMPARE(vendor, testVendor); QCOMPARE(version, qApp->applicationVersion()); QCOMPARE(spec_version, QString("1.2")); } diff --git a/tests/ut_notificationmanager/ut_notificationmanager.pro b/tests/ut_notificationmanager/ut_notificationmanager.pro index dbd123fa..5cd152b6 100644 --- a/tests/ut_notificationmanager/ut_notificationmanager.pro +++ b/tests/ut_notificationmanager/ut_notificationmanager.pro @@ -19,5 +19,7 @@ HEADERS += \ $$NOTIFICATIONSRCDIR/lipsticknotification.h \ $$NOTIFICATIONSRCDIR/notificationmanageradaptor.h \ $$NOTIFICATIONSRCDIR/categorydefinitionstore.h \ - $$NOTIFICATIONSRCDIR/androidprioritystore.h + $$NOTIFICATIONSRCDIR/androidprioritystore.h \ + /usr/include/systemsettings/aboutsettings.h +QMAKE_CXXFLAGS += `pkg-config --cflags-only-I systemsettings` diff --git a/tools/simple-compositor/simplecompositor.qml b/tools/simple-compositor/simplecompositor.qml index 7b319a67..6aa36ee5 100644 --- a/tools/simple-compositor/simplecompositor.qml +++ b/tools/simple-compositor/simplecompositor.qml @@ -1,3 +1,16 @@ +/* + * Copyright (c) 2015 - 2019 Jolla Ltd. + * Copyright (c) 2019 Open Mobile Platform LLC. + * + * This file is part of lipstick. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1 as published by the Free Software Foundation + * and appearing in the file LICENSE.LGPL included in the packaging + * of this file. + */ + import org.nemomobile.lipstick 0.1 import QtQuick 2.2 @@ -29,6 +42,7 @@ Compositor repeat: false onTriggered: { print("setting the first batch of sources...", root.doAsync ? "async" : "sync"); + // Note: This is default content of the main user. image1.source = "/home/nemo/Pictures/Jolla/Jolla_01.jpg" image2.source = "/home/nemo/Pictures/Jolla/Jolla_02.jpg" // image3.source = "/home/nemo/Pictures/Jolla/Jolla_03.jpg"