1
0
mirror of https://gitlab.com/kelteseth/ScreenPlay.git synced 2024-11-25 12:13:00 +01:00

Add DataProtection and make SettingsExpander generic

This commit is contained in:
kelteseth 2018-09-14 18:30:57 +02:00
parent 63caa6f3b2
commit 612dad640e
6 changed files with 88 additions and 16 deletions

View File

@ -116,5 +116,6 @@
<file>legal/OpenSSL.txt</file> <file>legal/OpenSSL.txt</file>
<file>legal/Qt LGPLv3.txt</file> <file>legal/Qt LGPLv3.txt</file>
<file>qml/Controls/Slider.qml</file> <file>qml/Controls/Slider.qml</file>
<file>legal/DataProtection.txt</file>
</qresource> </qresource>
</RCC> </RCC>

View File

@ -0,0 +1,25 @@
Privacy policy for the use of Google Analytics
This app uses Google Analytics, a web analytics service provided by Google, Inc. "("Google"). Google Analytics uses "cookies", which are text files placed on your computer, to help the website analyze how users use the app. The information generated by the cookie about your use of the app is generally transmitted to and stored by Google on servers in the United States. However, if IP anonymisation is activated on this app, Google will previously shorten your IP address within member states of the European Union or in other signatory states to the Agreement on the European Economic Area.
Only in exceptional cases is the full IP address transmitted to a Google server in the USA and shortened there. On behalf of the operator of this app, Google will use this information to evaluate your use of the app, compile reports on app activity and provide other services to the app operator in connection with app usage and internet usage. The IP address transmitted by your browser as part of Google Analytics is not combined with other data from Google.
Security
The security of your Personal Information is important to us, but remember that no method of transmission over the Internet, or method of electronic storage, is 100% secure. While we strive to use commercially acceptable means to protect your Personal Information, we cannot guarantee its absolute security.
Changes To This Privacy Policy
This Privacy Policy is effective as of 14.09.2018 and will remain in effect except with respect to any changes in its provisions in the future, which will be in effect immediately after being posted on this page.
We reserve the right to update or change our Privacy Policy at any time and you should check this Privacy Policy periodically. Your continued use of the Service after we post any modifications to the Privacy Policy on this page will constitute your acknowledgment of the modifications and your consent to abide and be bound by the modified Privacy Policy.
If we make any material changes to this Privacy Policy, we will notify you either through the email address you have provided us, or by placing a prominent notice on our website.
Contact Us
If you have any questions about this Privacy Policy, please contact us at contact@screen-play.app

View File

@ -345,22 +345,56 @@ Item {
} }
} }
} }
SettingsHorizontalSeperator { SettingsHorizontalSeperator {}
}
SettingsButton { SettingsButton {
headline: qsTr("Third Party Software") headline: qsTr("Third Party Software")
description: qsTr("ScreenPlay would not be possible without the work of others. A big thank you to: ") description: qsTr("ScreenPlay would not be possible without the work of others. A big thank you to: ")
buttonText: qsTr("Licenses") buttonText: qsTr("Licenses")
onButtonPressed: { onButtonPressed: {
expander.toggle() expanderCopyright.toggle()
} }
} }
SettingsExpander { SettingsExpander {
id:expander id:expanderCopyright
anchors { anchors {
left: parent.left left: parent.left
right: parent.right right: parent.right
} }
Component.onCompleted: screenPlaySettings.requestAllLicenses()
Connections {
target: screenPlaySettings
onAllLicenseLoaded: {
expanderCopyright.text = licensesText
}
}
}
SettingsHorizontalSeperator {}
SettingsButton {
headline: qsTr("Data Protection")
description: qsTr("We use you data very carefully to improve ScreenPlay. We do not sell or share this (anonymous) information with others!")
buttonText: qsTr("Privacy")
onButtonPressed: {
expanderDataProtection.toggle()
}
}
SettingsExpander {
id:expanderDataProtection
anchors {
left: parent.left
right: parent.right
}
Component.onCompleted: screenPlaySettings.requestAllLDataProtection()
Connections {
target: screenPlaySettings
onAllDataProtectionLoaded: {
expanderDataProtection.text = dataProtectionText
}
}
} }
} }
} }

View File

@ -8,18 +8,11 @@ Rectangle {
state: "off" state: "off"
clip: true clip: true
Component.onCompleted: screenPlaySettings.requestAllLicenses() property alias text: txtExpander.text
Connections {
target: screenPlaySettings
onAllLicenseLoaded: {
txtLegal.text = licenses
}
}
Flickable { Flickable {
anchors.fill: parent anchors.fill: parent
contentHeight: txtLegal.paintedHeight contentHeight: txtExpander.paintedHeight
z: 999 z: 999
focus: true focus: true
contentWidth: parent.width contentWidth: parent.width
@ -28,7 +21,7 @@ Rectangle {
policy: ScrollBar.AlwaysOn policy: ScrollBar.AlwaysOn
} }
Text { Text {
id: txtLegal id: txtExpander
anchors { anchors {
top: parent.top top: parent.top
right: parent.right right: parent.right
@ -37,7 +30,8 @@ Rectangle {
} }
color: "#626262" color: "#626262"
renderType: Text.NativeRendering renderType: Text.NativeRendering
height: txtLegal.paintedHeight height: txtExpander.paintedHeight
wrapMode: Text.Wrap
} }
} }

View File

@ -217,6 +217,22 @@ void Settings::requestAllLicenses()
}); });
} }
void Settings::requestAllLDataProtection()
{
QtConcurrent::run([this]() {
QString tmp;
QFile file;
QTextStream out(&file);
file.setFileName(":/legal/DataProtection.txt");
file.open(QIODevice::ReadOnly | QIODevice::Text);
tmp += out.readAll();
file.close();
emit this->allDataProtectionLoaded(tmp);
});
}
void Settings::setMuteAll(bool isMuted) void Settings::setMuteAll(bool isMuted)
{ {

View File

@ -136,7 +136,8 @@ signals:
void activeWallpaperCounterChanged(int activeWallpaperCounter); void activeWallpaperCounterChanged(int activeWallpaperCounter);
void pauseWallpaperWhenIngameChanged(bool pauseWallpaperWhenIngame); void pauseWallpaperWhenIngameChanged(bool pauseWallpaperWhenIngame);
void offlineModeChanged(bool offlineMode); void offlineModeChanged(bool offlineMode);
void allLicenseLoaded(QString licenses); void allLicenseLoaded(QString licensesText);
void allDataProtectionLoaded(QString dataProtectionText);
public slots: public slots:
void setMuteAll(bool isMuted); void setMuteAll(bool isMuted);
@ -146,6 +147,7 @@ public slots:
void setGlobalFillMode(QString fillMode); void setGlobalFillMode(QString fillMode);
void writeSingleSettingConfig(QString name, QVariant value); void writeSingleSettingConfig(QString name, QVariant value);
void requestAllLicenses(); void requestAllLicenses();
void requestAllLDataProtection();
bool autostart() const bool autostart() const
{ {