diff --git a/CMakeLists.txt b/CMakeLists.txt
index bfe03dca..c4b82a9d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -32,6 +32,7 @@ endif()
set(VCPKG_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../ScreenPlay-vcpkg")
set(VCPKG_INSTALLED_PATH "${VCPKG_PATH}/installed/${VCPKG_ARCH}")
+
find_package(Git REQUIRED)
if(WIN32)
set(date_command "CMD")
@@ -56,7 +57,7 @@ execute_process(
OUTPUT_VARIABLE GIT_COMMIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE)
-add_compile_definitions(COMPILE_INFO="${BUILD_DATE} + ${GIT_COMMIT_HASH}")
+add_compile_definitions(COMPILE_INFO="Build Date: ${BUILD_DATE}. Git Hash: ${GIT_COMMIT_HASH}. ")
add_compile_definitions(SOURCE_DIR="${CMAKE_CURRENT_SOURCE_DIR}")
add_compile_definitions(SCREENPLAY_STEAM="${SCREENPLAY_STEAM}")
@@ -76,6 +77,9 @@ add_subdirectory(CMake)
if(${SCREENPLAY_STEAM})
add_subdirectory(ScreenPlayWorkshop)
+else()
+ # Only add target SteamSDKQtEnums
+ add_subdirectory(ScreenPlayWorkshop/SteamSDK)
endif()
if(WIN32)
diff --git a/ScreenPlay/CMakeLists.txt b/ScreenPlay/CMakeLists.txt
index b5604ccc..75053648 100644
--- a/ScreenPlay/CMakeLists.txt
+++ b/ScreenPlay/CMakeLists.txt
@@ -71,7 +71,6 @@ set(QML
qml/Monitors/MonitorsProjectSettingItem.qml
qml/Navigation/Navigation.qml
qml/Navigation/NavigationItem.qml
- qml/Navigation/NavigationWallpaperConfiguration.qml
qml/Monitors/DefaultVideoControls.qml
qml/Common/TagSelector.qml
qml/Common/Tag.qml
@@ -146,6 +145,7 @@ list(
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_it_IT.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_nl_NL.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_de_DE.ts
+ ${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_pl_PL.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_zh_CN.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_pt_BR.ts
${CMAKE_CURRENT_SOURCE_DIR}/translations/ScreenPlay_es_ES.ts
@@ -204,7 +204,7 @@ target_link_libraries(
Qt6::Svg
Qt6::WebEngineQuick
Qt6::WebEngineCore
- SteamSDK)
+ SteamSDKQtEnums)
if(${TESTS_ENABLED})
add_executable(tst_ScreenPlay tests/tst_main.cpp)
diff --git a/ScreenPlay/Resources.qrc b/ScreenPlay/Resources.qrc
index 85d1d5dd..625e5a34 100644
--- a/ScreenPlay/Resources.qrc
+++ b/ScreenPlay/Resources.qrc
@@ -148,5 +148,11 @@
translations/ScreenPlay_it_IT.tsqml/Create/WizardsFiles/HTMLWallpaperMain.htmlqml/Create/WizardsFiles/HTMLWidgetMain.html
+ assets/icons/icon_minimize.svg
+ assets/icons/icon_video_settings_black_24dp.svg
+ qml/Create/WizardsFiles/QMLWallpaperMain.qml
+ qml/Create/WizardsFiles/QMLWidgetMain.qml
+ translations/ScreenPlay_pl_PL.qm
+ translations/ScreenPlay_pl_PL.ts
diff --git a/ScreenPlay/assets/icons/icon_close_black_24dp.svg b/ScreenPlay/assets/icons/icon_close_black_24dp.svg
new file mode 100644
index 00000000..989837ca
--- /dev/null
+++ b/ScreenPlay/assets/icons/icon_close_black_24dp.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/ScreenPlay/assets/icons/icon_minimize.svg b/ScreenPlay/assets/icons/icon_minimize.svg
new file mode 100644
index 00000000..a5f54781
--- /dev/null
+++ b/ScreenPlay/assets/icons/icon_minimize.svg
@@ -0,0 +1,8 @@
+
+
+
diff --git a/ScreenPlay/assets/icons/icon_video_settings_black_24dp.svg b/ScreenPlay/assets/icons/icon_video_settings_black_24dp.svg
new file mode 100644
index 00000000..1cd53c98
--- /dev/null
+++ b/ScreenPlay/assets/icons/icon_video_settings_black_24dp.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/ScreenPlay/main.qml b/ScreenPlay/main.qml
index 2f79f610..5c3473e2 100644
--- a/ScreenPlay/main.qml
+++ b/ScreenPlay/main.qml
@@ -15,18 +15,18 @@ import "qml/Workshop" as Workshop
import "qml/Community" as Community
ApplicationWindow {
- id: window
+ id: root
function setTheme(theme) {
switch (theme) {
case Settings.System:
- window.Material.theme = Material.System;
+ root.Material.theme = Material.System;
break;
case Settings.Dark:
- window.Material.theme = Material.Dark;
+ root.Material.theme = Material.Dark;
break;
case Settings.Light:
- window.Material.theme = Material.Light;
+ root.Material.theme = Material.Light;
break;
}
}
@@ -38,7 +38,7 @@ ApplicationWindow {
}
if (name === "Installed") {
- stackView.replace("qrc:/ScreenPlay/qml/" + name + "/" + name + ".qml", {
+ stackView.replace("qrc:/ScreenPlay/qml/Installed/Installed.qml", {
"sidebar": sidebar
})
return
@@ -59,15 +59,23 @@ ApplicationWindow {
// https://bugreports.qt.io/browse/QTBUG-86047
Material.accent: Material.color(Material.Orange)
onVisibilityChanged: {
- if (window.visibility === 2)
+ if (root.visibility === 2)
ScreenPlay.installedListModel.reset();
}
+ onClosing: {
+ if (ScreenPlay.screenPlayManager.activeWallpaperCounter === 0
+ && ScreenPlay.screenPlayManager.activeWidgetsCounter === 0) {
+ Qt.quit()
+ }
+ }
Component.onCompleted: {
setTheme(ScreenPlay.settings.theme);
- switchPage("Installed");
+ stackView.push("qrc:/ScreenPlay/qml/Installed/Installed.qml", {
+ "sidebar": sidebar
+ })
if (!ScreenPlay.settings.silentStart)
- window.show();
+ root.show();
}
@@ -89,7 +97,7 @@ ApplicationWindow {
Connections {
function onRequestRaise() {
- window.show();
+ root.show();
}
target: ScreenPlay.screenPlayManager
@@ -103,10 +111,11 @@ ApplicationWindow {
}
Dialogs.CriticalError {
- mainWindow: window
+ window: root
}
Common.TrayIcon {
+ window: root
}
StackView {
@@ -192,6 +201,7 @@ ApplicationWindow {
Navigation.Navigation {
id: nav
+ window: root
onChangePage: (name)=> {
monitors.close();
diff --git a/ScreenPlay/qml/Common/Dialogs/CriticalError.qml b/ScreenPlay/qml/Common/Dialogs/CriticalError.qml
index b27bbcaf..1c1779dc 100644
--- a/ScreenPlay/qml/Common/Dialogs/CriticalError.qml
+++ b/ScreenPlay/qml/Common/Dialogs/CriticalError.qml
@@ -9,7 +9,7 @@ import ScreenPlay 1.0
Dialog {
id: root
- property Window mainWindow
+ property ApplicationWindow window
property string message
modal: true
@@ -22,7 +22,7 @@ Dialog {
Connections {
function onDisplayErrorPopup(msg) {
root.message = msg;
- root.mainWindow.show();
+ root.window.show();
root.open();
}
diff --git a/ScreenPlay/qml/Common/TrayIcon.qml b/ScreenPlay/qml/Common/TrayIcon.qml
index 4a5e4e90..609b67cc 100644
--- a/ScreenPlay/qml/Common/TrayIcon.qml
+++ b/ScreenPlay/qml/Common/TrayIcon.qml
@@ -1,10 +1,12 @@
import QtQuick
-import Qt.labs.platform 1.1
+import QtQuick.Window
+import Qt.labs.platform
import ScreenPlay 1.0
SystemTrayIcon {
id: root
+ property var window
visible: true
icon.source: "qrc:/assets/icons/app.ico"
tooltip: qsTr("ScreenPlay - Double click to change you settings.")
diff --git a/ScreenPlay/qml/Monitors/DefaultVideoControls.qml b/ScreenPlay/qml/Monitors/DefaultVideoControls.qml
index df5e2bb7..70176db2 100644
--- a/ScreenPlay/qml/Monitors/DefaultVideoControls.qml
+++ b/ScreenPlay/qml/Monitors/DefaultVideoControls.qml
@@ -114,7 +114,7 @@ ColumnLayout {
"text": qsTr("Scale_Down")
}]
onActivated: {
- ScreenPlay.screenPlayManager.setWallpaperValueAtMonitorIndex(activeMonitorIndex, "fillmode", settingsComboBox.currentText);
+ ScreenPlay.screenPlayManager.setWallpaperFillModeAtMonitorIndex(activeMonitorIndex,settingsComboBox.currentValue);
}
}
diff --git a/ScreenPlay/qml/Monitors/MonitorSelection.qml b/ScreenPlay/qml/Monitors/MonitorSelection.qml
index b6ca8212..8c82e595 100644
--- a/ScreenPlay/qml/Monitors/MonitorSelection.qml
+++ b/ScreenPlay/qml/Monitors/MonitorSelection.qml
@@ -62,7 +62,7 @@ Rectangle {
}
function resize() {
- var absoluteDesktopSize = ScreenPlay.monitorListModel.getAbsoluteDesktopSize();
+ var absoluteDesktopSize = ScreenPlay.monitorListModel.absoluteDesktopSize();
var isWidthGreaterThanHeight = false;
var windowsDelta = 0;
if (absoluteDesktopSize.width < absoluteDesktopSize.height) {
@@ -135,18 +135,10 @@ Rectangle {
delegate: MonitorSelectionItem {
id: delegate
- monitorID: m_monitorID
- monitorName: m_name
appID: m_appID
- height: m_availableGeometry.height
- width: m_availableGeometry.width
- x: m_availableGeometry.x
- y: m_availableGeometry.y
- monitorManufacturer: m_manufacturer
- monitorModel: m_model
- monitorSize: m_availableGeometry
+ geometry: m_geometry
fontSize: root.fontSize
- index: m_number
+ index: m_index
previewImage: m_previewImage
installedType: m_installedType
monitorWithoutContentSelectable: root.monitorWithoutContentSelectable
@@ -167,15 +159,5 @@ Rectangle {
}
-// layer.effect: InnerShadow {
-// cached: true
-// fast: true
-// smooth: true
-// radius: 32
-// spread: 0.8
-// verticalOffset: 3
-// color: "#55000000"
-// }
- // Width of the Sidebar or Space that should be used
}
diff --git a/ScreenPlay/qml/Monitors/MonitorSelectionItem.qml b/ScreenPlay/qml/Monitors/MonitorSelectionItem.qml
index d33f044c..2204dbf2 100644
--- a/ScreenPlay/qml/Monitors/MonitorSelectionItem.qml
+++ b/ScreenPlay/qml/Monitors/MonitorSelectionItem.qml
@@ -7,11 +7,14 @@ import ScreenPlay.Enums.InstalledType 1.0
Item {
id: root
- property rect monitorSize: Qt.rect(0, 0, 0, 0)
- property string monitorModel
- property string monitorManufacturer
- property string monitorName
- property string monitorID
+ property rect geometry
+ onGeometryChanged: {
+ root.width = geometry.width
+ root.height = geometry.height
+ root.x = geometry.x
+ root.y = geometry.y
+ }
+
property string previewImage
property string appID
property var installedType: InstalledType.QMLWallpaper
@@ -34,7 +37,7 @@ Item {
}
Text {
- text: monitorSize.width + "x" + monitorSize.height
+ text: geometry.width + "x" + geometry.height
color: Material.foreground
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
diff --git a/ScreenPlay/qml/Monitors/Monitors.qml b/ScreenPlay/qml/Monitors/Monitors.qml
index 1326bc58..e6d6b31c 100644
--- a/ScreenPlay/qml/Monitors/Monitors.qml
+++ b/ScreenPlay/qml/Monitors/Monitors.qml
@@ -83,7 +83,7 @@ Popup {
monitorWithoutContentSelectable: false
availableWidth: width - 20
availableHeight: 150
- function onRequestProjectSettings() {
+ onRequestProjectSettings: ( index, installedType, appID) => {
if (installedType === InstalledType.VideoWallpaper) {
videoControlWrapper.state = "visible";
customPropertiesGridView.visible = false;
diff --git a/ScreenPlay/qml/Navigation/Navigation.qml b/ScreenPlay/qml/Navigation/Navigation.qml
index a85cc851..208ab735 100644
--- a/ScreenPlay/qml/Navigation/Navigation.qml
+++ b/ScreenPlay/qml/Navigation/Navigation.qml
@@ -1,5 +1,7 @@
import QtQuick
import QtQuick.Controls
+import QtQuick.Layouts
+import QtQuick.Window
import QtQuick.Controls.Material
import Qt5Compat.GraphicalEffects
import QtQuick.Controls.Material.impl
@@ -10,56 +12,57 @@ import "../Common"
Rectangle {
id: root
- property string currentNavigationName: ""
+ property string currentNavigationName: "Installed"
property var navArray: [navCreate, navWorkshop, navInstalled, navSettings, navCommunity]
property bool navActive: true
+ property ApplicationWindow window
+ property int iconWidth: 16
+ property int iconHeight: iconWidth
signal changePage(string name)
function setActive(active) {
- navActive = active;
+ navActive = active
if (active)
- root.state = "enabled";
+ root.state = "enabled"
else
- root.state = "disabled";
+ root.state = "disabled"
}
function setNavigation(name) {
- var i = 0;
+ var i = 0
for (; i < navArray.length; i++) {
if (navArray[i].name === name) {
- navArray[i].state = "active";
- root.currentNavigationName = name;
+ navArray[i].state = "active"
+ root.currentNavigationName = name
} else {
- navArray[i].state = "inactive";
+ navArray[i].state = "inactive"
}
}
}
function onPageChanged(name) {
if (!navActive)
- return ;
+ return
- root.changePage(name);
- setNavigation(name);
+ root.changePage(name)
+ setNavigation(name)
}
height: 60
- clip: true
width: 1366
color: Material.theme === Material.Light ? "white" : Material.background
layer.enabled: true
- MouseHoverBlocker {
- }
+ MouseHoverBlocker {}
Connections {
function onRequestNavigationActive(isActive) {
- setActive(isActive);
+ setActive(isActive)
}
function onRequestNavigation(nav) {
- onPageChanged(nav);
+ onPageChanged(nav)
}
target: ScreenPlay.util
@@ -128,10 +131,145 @@ Rectangle {
onPageClicked: (name)=> {root.onPageChanged(name)}
objectName: "settingsTab"
}
-
}
- NavigationWallpaperConfiguration {
+ Rectangle {
+ id:quickActionRowBackground
+ anchors.centerIn: quickActionRow
+ width: quickActionRow.width + 5
+ height: quickActionRow.height - 16
+ color: Material.theme === Material.Light ? Material.background : "#242424"
+ border.color: Material.theme === Material.Light ? Material.iconDisabledColor : Qt.darker(Material.background)
+ border.width: 1
+ radius: 3
+ }
+
+ RowLayout {
+ id: quickActionRow
+ anchors {
+ top: parent.top
+ right: parent.right
+ rightMargin: 10
+ bottom: parent.bottom
+ }
+
+ property bool contentActive: ScreenPlay.screenPlayManager.activeWallpaperCounter > 0
+ || ScreenPlay.screenPlayManager.activeWidgetsCounter > 0
+
+ onContentActiveChanged: {
+ if(!contentActive){
+ miMuteAll.isMuted = false
+ miStopAll.isPlaying = false
+ }
+ }
+
+ ToolButton {
+ id: miMuteAll
+ Layout.alignment: Qt.AlignVCenter
+ icon.source: "qrc:/assets/icons/icon_volume.svg"
+ icon.width: root.iconWidth
+ icon.height: root.iconHeight
+ enabled: quickActionRow.contentActive
+
+ onClicked: isMuted = !isMuted
+ property bool isMuted: false
+ onIsMutedChanged: {
+ if (miMuteAll.isMuted) {
+ miMuteAll.icon.source = "qrc:/assets/icons/icon_volume.svg"
+ ScreenPlay.screenPlayManager.setAllWallpaperValue("muted",
+ "false")
+ } else {
+ miMuteAll.icon.source = "qrc:/assets/icons/icon_volume_mute.svg"
+ ScreenPlay.screenPlayManager.setAllWallpaperValue("muted",
+ "true")
+ }
+ }
+
+ hoverEnabled: true
+ ToolTip.text: qsTr("Mute/Unmute all Wallpaper")
+ ToolTip.visible: hovered
+ }
+ ToolButton {
+ id: miStopAll
+ enabled: quickActionRow.contentActive
+ Layout.alignment: Qt.AlignVCenter
+ icon.source: "qrc:/assets/icons/icon_pause.svg"
+ icon.width: root.iconWidth
+ icon.height: root.iconHeight
+ onClicked: isPlaying = !isPlaying
+ property bool isPlaying: true
+ onIsPlayingChanged:{
+ if (miStopAll.isPlaying) {
+ miStopAll.icon.source = "qrc:/assets/icons/icon_pause.svg"
+ ScreenPlay.screenPlayManager.setAllWallpaperValue(
+ "isPlaying", "true")
+ } else {
+ miStopAll.icon.source = "qrc:/assets/icons/icon_play.svg"
+ ScreenPlay.screenPlayManager.setAllWallpaperValue(
+ "isPlaying", "false")
+ }
+ }
+ hoverEnabled: true
+ ToolTip.text: qsTr("Pause/Play all Wallpaper")
+ ToolTip.visible: hovered
+ }
+ ToolButton {
+ id: miConfig
+ Layout.alignment: Qt.AlignVCenter
+ icon.source: "qrc:/assets/icons/icon_video_settings_black_24dp.svg"
+ icon.width: root.iconWidth
+ icon.height: root.iconHeight
+ onClicked: ScreenPlay.util.setToggleWallpaperConfiguration()
+ hoverEnabled: true
+ ToolTip.text: qsTr("Configure Wallpaper")
+ ToolTip.visible: hovered
+ }
+
+ Rectangle {
+ color: Material.theme === Material.Light ? Material.iconDisabledColor : Qt.darker(Material.background)
+ height: quickActionRowBackground.height
+ width: 1
+ }
+
+ ToolButton {
+ id: miMinimize
+ Layout.alignment: Qt.AlignVCenter
+ icon.source: "qrc:/assets/icons/icon_minimize.svg"
+ icon.width: root.iconWidth
+ icon.height: root.iconHeight
+ onClicked: root.window.hide()
+ hoverEnabled: true
+ ToolTip.text: qsTr("Minimize to Tray")
+ ToolTip.visible: hovered
+ }
+ ToolButton {
+ id: miquit
+ Layout.alignment: Qt.AlignVCenter
+ icon.source: "qrc:/assets/icons/icon_close.svg"
+ icon.width: root.iconWidth
+ icon.height: root.iconHeight
+ onClicked: {
+ if(ScreenPlay.screenPlayManager.activeWallpaperCounter > 0
+ && ScreenPlay.screenPlayManager.activeWidgetsCounter > 0){
+ Qt.quit()
+ return
+ }
+ dialog.open()
+ }
+ hoverEnabled: true
+ ToolTip.text: qsTr("Exit")
+ ToolTip.visible: hovered
+ }
+
+ Dialog {
+ id: dialog
+ anchors.centerIn: Overlay.overlay
+ title: qsTr("Are you sure you want to exit ScreenPlay? \nThis will shut down all Wallpaper and Widgets.")
+ standardButtons: Dialog.Ok | Dialog.Cancel
+ onAccepted: Qt.quit()
+ }
+
+
}
layer.effect: ElevationEffect {
@@ -149,7 +287,6 @@ Rectangle {
target: row
opacity: 0.3
}
-
}
]
transitions: [
@@ -161,7 +298,6 @@ Rectangle {
target: row
duration: 300
}
-
}
]
}
diff --git a/ScreenPlay/qml/Navigation/NavigationItem.qml b/ScreenPlay/qml/Navigation/NavigationItem.qml
index ef42ea88..70e20388 100644
--- a/ScreenPlay/qml/Navigation/NavigationItem.qml
+++ b/ScreenPlay/qml/Navigation/NavigationItem.qml
@@ -24,7 +24,6 @@ Item {
width: txtAmount.paintedWidth + txt.paintedWidth + icon.paintedWidth + 40
height: 60
state: "inactive"
- clip: true
onEnabledChanged: {
if (!enabled) {
navigationItem.width = 0;
@@ -74,7 +73,7 @@ Item {
anchors.left: txtAmount.right
anchors.leftMargin: navigationItem.amount == "" ? 0 : 5
text: "name"
- font.pointSize: 14
+ font.pointSize: 12
color: Material.primaryTextColor
anchors.verticalCenter: parent.verticalCenter
font.family: ScreenPlay.settings.font
diff --git a/ScreenPlay/qml/Navigation/NavigationWallpaperConfiguration.qml b/ScreenPlay/qml/Navigation/NavigationWallpaperConfiguration.qml
deleted file mode 100644
index 17e22941..00000000
--- a/ScreenPlay/qml/Navigation/NavigationWallpaperConfiguration.qml
+++ /dev/null
@@ -1,127 +0,0 @@
-import QtQuick
-import QtQuick.Controls
-import QtQuick.Controls.Material
-import Qt5Compat.GraphicalEffects
-import ScreenPlay 1.0
-import "../Common"
-
-Item {
- id: root
-
- width: 390
- property bool active: ScreenPlay.screenPlayManager.activeWallpaperCounter > 0
-
- anchors {
- top: parent.top
- right: parent.right
- rightMargin: 20
- bottom: parent.bottom
- }
-
- Connections {
- function onActiveWallpaperCounterChanged() {
- rippleEffect.trigger()
- }
-
- target: ScreenPlay.screenPlayManager
- }
-
- Pane {
- anchors.centerIn: parent
- contentWidth: activeMonitorName.contentWidth + image.width + 80
- contentHeight: parent.height - 10
- background: Item {
- Rectangle {
- id: bg
- clip: true
- anchors {
- fill: parent
- margins: 16
- }
- color: "transparent"
- border.color: root.active ? Material.accentColor : Material.iconDisabledColor
- border.width: 1
- radius: 3
- }
-
- RippleEffect {
- id: rippleEffect
-
- target: bg
- }
- }
-
- Behavior on contentWidth {
- PropertyAnimation {
- duration: 250
- easing.type: Easing.InOutQuart
- }
- }
-
- Text {
- id: activeMonitorName
-
- horizontalAlignment: Text.AlignRight
- color: root.active ? Material.primaryTextColor : Material.iconDisabledColor
- font.pointSize: 12
- font.family: ScreenPlay.settings.font
- text: root.active ? qsTr("Configurate active Wallpaper or Widgets") : qsTr(
- "No active Wallpaper or Widgets")
-
- anchors {
- right: image.right
- rightMargin: 50
- verticalCenter: parent.verticalCenter
- }
- }
-
- Image {
- id: image
-
- width: 28
- height: 24
- source: "qrc:/assets/icons/icon_monitor.svg"
- layer {
- effect: ColorOverlay {
- color: root.active ? Material.color(
- Material.Orange) : Material.iconDisabledColor
- }
- }
-
- anchors {
- rightMargin: 30
- right: parent.right
- verticalCenter: parent.verticalCenter
- }
-
- Text {
- id: txtAmountActiveWallpapers
-
- text: ScreenPlay.screenPlayManager.activeWallpaperCounter
- + ScreenPlay.screenPlayManager.activeWidgetsCounter
- horizontalAlignment: Text.AlignHCenter
- verticalAlignment: Text.AlignVCenter
- color: root.active ? Material.color(
- Material.Orange) : Material.iconDisabledColor
- font.pointSize: 10
- font.bold: true
- font.family: ScreenPlay.settings.font
- anchors {
- horizontalCenter: parent.horizontalCenter
- bottom: parent.bottom
- bottomMargin: 7
- }
- }
- }
-
- MouseArea {
- id: ma
-
- anchors.fill: parent
- cursorShape: Qt.PointingHandCursor
- onClicked: {
- ScreenPlay.util.setToggleWallpaperConfiguration()
- }
- }
- }
-}
diff --git a/ScreenPlay/qml/Settings/Settings.qml b/ScreenPlay/qml/Settings/Settings.qml
index c61f6ffa..a382e260 100644
--- a/ScreenPlay/qml/Settings/Settings.qml
+++ b/ScreenPlay/qml/Settings/Settings.qml
@@ -169,6 +169,9 @@ Item {
}, {
"value": Settings.De_DE,
"text": "German"
+ }, {
+ "value": Settings.Pl_PL,
+ "text": "Polish"
}, {
"value": Settings.It_IT,
"text": "Italian"
diff --git a/ScreenPlay/src/installedlistmodel.cpp b/ScreenPlay/src/installedlistmodel.cpp
index c132e0e0..65ad38af 100644
--- a/ScreenPlay/src/installedlistmodel.cpp
+++ b/ScreenPlay/src/installedlistmodel.cpp
@@ -200,12 +200,12 @@ void InstalledListModel::append(const QJsonObject& obj, const QString& folderNam
*/
void InstalledListModel::loadInstalledContent()
{
- if (m_loadContentFuture.isRunning()) {
+ if (m_isLoading) {
qInfo() << "loadInstalledContent is already running. Skip.";
return;
}
-
- m_loadContentFuture = QtConcurrent::run([this]() {
+ m_isLoading = true;
+ auto unused = QtConcurrent::run([this]() {
QFileInfoList list = QDir(m_globalVariables->localStoragePath().toLocalFile()).entryInfoList(QDir::NoDotAndDotDot | QDir::AllDirs);
int counter = 0;
@@ -239,6 +239,7 @@ void InstalledListModel::loadInstalledContent()
}
setCount(counter);
emit installedLoadingFinished();
+ m_isLoading = false;
});
}
diff --git a/ScreenPlay/src/installedlistmodel.h b/ScreenPlay/src/installedlistmodel.h
index c20b3476..c552675a 100644
--- a/ScreenPlay/src/installedlistmodel.h
+++ b/ScreenPlay/src/installedlistmodel.h
@@ -124,7 +124,7 @@ private:
QFileSystemWatcher m_fileSystemWatcher;
QVector m_screenPlayFiles;
int m_count { 0 };
- QFuture m_loadContentFuture;
+ std::atomic_bool m_isLoading { false };
const std::shared_ptr& m_globalVariables;
};
diff --git a/ScreenPlay/src/monitorlistmodel.cpp b/ScreenPlay/src/monitorlistmodel.cpp
index 36b92993..bc102582 100644
--- a/ScreenPlay/src/monitorlistmodel.cpp
+++ b/ScreenPlay/src/monitorlistmodel.cpp
@@ -37,15 +37,8 @@ QHash MonitorListModel::roleNames() const
{
static const QHash roles {
{ static_cast(MonitorRole::AppID), "m_appID" },
- { static_cast(MonitorRole::MonitorID), "m_monitorID" },
- { static_cast(MonitorRole::Name), "m_name" },
- { static_cast(MonitorRole::Size), "m_size" },
- { static_cast(MonitorRole::AvailableGeometry), "m_availableGeometry" },
- { static_cast(MonitorRole::AvailableVirtualGeometry), "m_availableVirtualGeometry" },
- { static_cast(MonitorRole::Number), "m_number" },
+ { static_cast(MonitorRole::Index), "m_index" },
{ static_cast(MonitorRole::Geometry), "m_geometry" },
- { static_cast(MonitorRole::Model), "m_model" },
- { static_cast(MonitorRole::Manufacturer), "m_manufacturer" },
{ static_cast(MonitorRole::PreviewImage), "m_previewImage" },
{ static_cast(MonitorRole::InstalledType), "m_installedType" },
};
@@ -86,32 +79,10 @@ QVariant MonitorListModel::data(const QModelIndex& index, int role) const
} else {
return QVariant("");
}
- case MonitorRole::MonitorID: {
- QScreen* screen = m_monitorList.at(row).m_screen;
-
- QVariant id = QString::number(screen->size().width())
- + "x" + QString::number(screen->size().height())
- + "_" + QString::number(screen->availableGeometry().x())
- + "x" + QString::number(screen->availableGeometry().y());
-
- return id;
- }
- case MonitorRole::Name:
- return m_monitorList.at(row).m_screen->name();
- case MonitorRole::Size:
- return m_monitorList.at(row).m_screen->size();
- case MonitorRole::AvailableGeometry:
- return m_monitorList.at(row).m_availableGeometry;
- case MonitorRole::AvailableVirtualGeometry:
- return m_monitorList.at(row).m_screen->availableVirtualGeometry();
- case MonitorRole::Number:
- return m_monitorList.at(row).m_number;
+ case MonitorRole::Index:
+ return m_monitorList.at(row).m_index;
case MonitorRole::Geometry:
- return m_monitorList.at(row).m_screen->geometry();
- case MonitorRole::Model:
- return m_monitorList.at(row).m_screen->model();
- case MonitorRole::Manufacturer:
- return m_monitorList.at(row).m_screen->manufacturer();
+ return m_monitorList.at(row).m_geometry;
case MonitorRole::InstalledType:
if (m_monitorList.at(row).m_activeWallpaper) {
return static_cast(m_monitorList.at(row).m_activeWallpaper->type());
@@ -135,6 +106,43 @@ QVariant MonitorListModel::data(const QModelIndex& index, int role) const
*/
void MonitorListModel::loadMonitors()
{
+
+#ifdef Q_OS_WIN
+ QModelIndex index;
+ ScreenPlayUtil::WinMonitorStats monitors;
+
+ // This offset lets us center the monitor selection view in the center
+ int offsetX = 0;
+ int offsetY = 0;
+ const int moinitorCount = monitors.iMonitors.size();
+
+ for (int i = 0; i < moinitorCount; i++) {
+ const int x = monitors.rcMonitors[i].left;
+ const int y = monitors.rcMonitors[i].top;
+ if (x < 0) {
+ offsetX += (x * -1);
+ }
+ if (y < 0) {
+ offsetY += (y * -1);
+ }
+ }
+
+ for (int i = 0; i < moinitorCount; i++) {
+ const int width = std::abs(monitors.rcMonitors[i].right - monitors.rcMonitors[i].left);
+ const int height = std::abs(monitors.rcMonitors[i].top - monitors.rcMonitors[i].bottom);
+ const int x = monitors.rcMonitors[i].left;
+ const int y = monitors.rcMonitors[i].top;
+ QRect geometry(
+ x + offsetX,
+ y + offsetY,
+ width,
+ height);
+ beginInsertRows(index, m_monitorList.size(), m_monitorList.size());
+ m_monitorList.append(Monitor { i, geometry });
+ endInsertRows();
+ }
+#else
+ QModelIndex index;
int offsetX = 0;
int offsetY = 0;
@@ -148,7 +156,6 @@ void MonitorListModel::loadMonitors()
}
}
- QModelIndex index;
for (int i = 0; i < QApplication::screens().count(); i++) {
QScreen* screen = QApplication::screens().at(i);
@@ -166,6 +173,7 @@ void MonitorListModel::loadMonitors()
m_monitorList.append(Monitor { i, availableVirtualGeometry, screen });
endInsertRows();
}
+#endif
emit monitorReloadCompleted();
}
@@ -216,7 +224,7 @@ void MonitorListModel::closeWallpaper(const QString& appID)
* \brief MonitorListModel::getAbsoluteDesktopSize
* \return
*/
-QRect MonitorListModel::getAbsoluteDesktopSize() const
+QRect MonitorListModel::absoluteDesktopSize() const
{
auto* app = static_cast(QGuiApplication::instance());
return app->screens().at(0)->availableVirtualGeometry();
@@ -248,7 +256,7 @@ void MonitorListModel::setWallpaperMonitor(const std::shared_ptr MonitorListModel::getAppIDByMonitorIndex(const int index) const
{
for (auto& monitor : m_monitorList) {
- if (monitor.m_number == index && monitor.m_activeWallpaper) {
+ if (monitor.m_index == index && monitor.m_activeWallpaper) {
return { monitor.m_activeWallpaper->appID() };
}
}
diff --git a/ScreenPlay/src/monitorlistmodel.h b/ScreenPlay/src/monitorlistmodel.h
index 311ec59e..24adcd06 100644
--- a/ScreenPlay/src/monitorlistmodel.h
+++ b/ScreenPlay/src/monitorlistmodel.h
@@ -58,18 +58,15 @@ namespace ScreenPlay {
struct Monitor {
Monitor(
- const int number,
- const QRect& availableGeometry,
- QScreen* screen)
+ const int index,
+ const QRect& geometry)
{
- m_number = number;
- m_availableGeometry = availableGeometry;
- m_screen = screen;
+ m_index = index;
+ m_geometry = geometry;
}
- QRect m_availableGeometry;
- int m_number { 0 };
- QScreen* m_screen { nullptr };
+ int m_index { 0 };
+ QRect m_geometry;
std::shared_ptr m_activeWallpaper { nullptr };
};
@@ -81,15 +78,8 @@ public:
enum class MonitorRole {
AppID = Qt::UserRole,
- MonitorID,
- Name,
- Size,
- AvailableGeometry,
- AvailableVirtualGeometry,
- Number,
+ Index,
Geometry,
- Model,
- Manufacturer,
PreviewImage,
InstalledType,
};
@@ -114,7 +104,7 @@ public slots:
void reset();
void clearActiveWallpaper();
void closeWallpaper(const QString& appID);
- QRect getAbsoluteDesktopSize() const;
+ QRect absoluteDesktopSize() const;
void screenAdded(QScreen* screen)
{
diff --git a/ScreenPlay/src/screenplaymanager.cpp b/ScreenPlay/src/screenplaymanager.cpp
index dcaaf14f..c15af494 100644
--- a/ScreenPlay/src/screenplaymanager.cpp
+++ b/ScreenPlay/src/screenplaymanager.cpp
@@ -335,13 +335,30 @@ bool ScreenPlayManager::setWallpaperValueAtMonitorIndex(const int index, const Q
return false;
}
+/*!
+ \brief Set a wallpaper \a fillmode at a given \a index and converts the qml enum (int)
+ into the c++ enum class value.
+*/
+bool ScreenPlayManager::setWallpaperFillModeAtMonitorIndex(const int index, const int fillmode)
+{
+ const auto fillModeTyped = static_cast(fillmode);
+
+ if (auto appID = m_monitorListModel->getAppIDByMonitorIndex(index)) {
+ return setWallpaperValue(*appID, "fillmode", QVariant::fromValue(fillModeTyped).toString());
+ }
+
+ qWarning() << "Could net get appID from m_monitorListModel!";
+ return false;
+}
+
/*!
\brief Convenient function to set a \a value at a given \a index and \a key for all wallaper. For exmaple used to mute all wallpaper.
*/
bool ScreenPlayManager::setAllWallpaperValue(const QString& key, const QString& value)
{
for (auto& wallpaper : m_screenPlayWallpapers) {
- return setWallpaperValue(wallpaper->appID(), key, value);
+ if (!wallpaper->setWallpaperValue(key, value, true))
+ return false;
}
return true;
}
diff --git a/ScreenPlay/src/screenplaymanager.h b/ScreenPlay/src/screenplaymanager.h
index 6e76e86b..b93558e1 100644
--- a/ScreenPlay/src/screenplaymanager.h
+++ b/ScreenPlay/src/screenplaymanager.h
@@ -116,6 +116,7 @@ public slots:
bool requestProjectSettingsAtMonitorIndex(const int index);
bool setWallpaperValueAtMonitorIndex(const int index, const QString& key, const QString& value);
+ bool setWallpaperFillModeAtMonitorIndex(const int index, const int fillmode);
bool setAllWallpaperValue(const QString& key, const QString& value);
bool setWallpaperValue(const QString& appID, const QString& key, const QString& value);
ScreenPlayWallpaper* getWallpaperByAppID(const QString& appID) const;
diff --git a/ScreenPlay/src/screenplaywallpaper.cpp b/ScreenPlay/src/screenplaywallpaper.cpp
index 389a1ec9..481cb4cc 100644
--- a/ScreenPlay/src/screenplaywallpaper.cpp
+++ b/ScreenPlay/src/screenplaywallpaper.cpp
@@ -174,6 +174,11 @@ void ScreenPlayWallpaper::processError(QProcess::ProcessError error)
*/
bool ScreenPlayWallpaper::setWallpaperValue(const QString& key, const QString& value, const bool save)
{
+ if (!m_connection) {
+ qWarning() << "Cannot set value for unconnected wallpaper!";
+ return false;
+ }
+
QJsonObject obj;
obj.insert(key, value);
@@ -203,7 +208,13 @@ void ScreenPlayWallpaper::setSDKConnection(std::unique_ptr connec
{
m_connection = std::move(connection);
qInfo() << "[3/3] SDKConnection (Wallpaper) saved!";
+ setIsConnected(true);
+ QObject::connect(m_connection.get(), &SDKConnection::disconnected, this, [this]() {
+ setIsConnected(false);
+ qInfo() << "disconnecetd;";
+
+ });
QTimer::singleShot(1000, this, [this]() {
if (playbackRate() != 1.0) {
setWallpaperValue("playbackRate", QString::number(playbackRate()), false);
@@ -234,8 +245,10 @@ void ScreenPlayWallpaper::replace(
const InstalledType::InstalledType type,
const bool checkWallpaperVisible)
{
- if (!m_connection)
+ if (!m_connection) {
+ qWarning() << "Cannot replace for unconnected wallpaper!";
return;
+ }
m_previewImage = previewImage;
m_type = type;
diff --git a/ScreenPlay/src/screenplaywallpaper.h b/ScreenPlay/src/screenplaywallpaper.h
index 557921f1..fd15b06d 100644
--- a/ScreenPlay/src/screenplaywallpaper.h
+++ b/ScreenPlay/src/screenplaywallpaper.h
@@ -51,6 +51,8 @@ namespace ScreenPlay {
class ScreenPlayWallpaper : public QObject {
Q_OBJECT
+ Q_PROPERTY(bool isConnected READ isConnected WRITE setIsConnected NOTIFY isConnectedChanged)
+
Q_PROPERTY(QVector screenNumber READ screenNumber WRITE setScreenNumber NOTIFY screenNumberChanged)
Q_PROPERTY(float volume READ volume WRITE setVolume NOTIFY volumeChanged)
@@ -108,6 +110,7 @@ public:
bool isLooping() const { return m_isLooping; }
ProjectSettingsListModel* getProjectSettingsListModel() { return &m_projectSettingsListModel; }
float playbackRate() const { return m_playbackRate; }
+ bool isConnected() const { return m_isConnected; }
signals:
void screenNumberChanged(QVector screenNumber);
@@ -126,6 +129,8 @@ signals:
void requestClose(const QString& appID);
void error(const QString& msg);
+ void isConnectedChanged(bool isConnected);
+
public slots:
void messageQuit();
void processExit(int exitCode, QProcess::ExitStatus exitStatus);
@@ -225,6 +230,14 @@ public slots:
emit playbackRateChanged(m_playbackRate);
}
+ void setIsConnected(bool isConnected)
+ {
+ if (m_isConnected == isConnected)
+ return;
+ m_isConnected = isConnected;
+ emit isConnectedChanged(m_isConnected);
+ }
+
private:
const std::shared_ptr m_globalVariables;
std::unique_ptr m_connection;
@@ -243,5 +256,6 @@ private:
float m_playbackRate { 1.0f };
QTimer m_pingAliveTimer;
QStringList m_appArgumentsList;
+ bool m_isConnected;
};
}
diff --git a/ScreenPlay/src/sdkconnection.cpp b/ScreenPlay/src/sdkconnection.cpp
index 5ef313d8..bbadddc9 100644
--- a/ScreenPlay/src/sdkconnection.cpp
+++ b/ScreenPlay/src/sdkconnection.cpp
@@ -17,6 +17,8 @@ ScreenPlay::SDKConnection::SDKConnection(QLocalSocket* socket, QObject* parent)
: QObject(parent)
{
m_socket = socket;
+
+ connect(m_socket, &QLocalSocket::disconnected, this, &SDKConnection::disconnected);
connect(m_socket, &QLocalSocket::readyRead, this, &SDKConnection::readyRead);
connect(m_socket, &QLocalSocket::errorOccurred, this, [](QLocalSocket::LocalSocketError socketError) {
qInfo() << "Localsocket error:" << socketError;
diff --git a/ScreenPlay/src/sdkconnection.h b/ScreenPlay/src/sdkconnection.h
index 74fbb572..bb576423 100644
--- a/ScreenPlay/src/sdkconnection.h
+++ b/ScreenPlay/src/sdkconnection.h
@@ -78,6 +78,7 @@ public:
QString type() const { return m_type; }
signals:
+ void disconnected();
void requestCloseAt(int at);
void appIDChanged(QString appID);
void monitorChanged(QVector monitor);
diff --git a/ScreenPlay/src/settings.h b/ScreenPlay/src/settings.h
index 0470eee3..00a43fa3 100644
--- a/ScreenPlay/src/settings.h
+++ b/ScreenPlay/src/settings.h
@@ -117,6 +117,7 @@ public:
enum class Language {
En_US,
De_DE,
+ Pl_PL,
It_IT,
Ru_RU,
Fr_FR,
diff --git a/ScreenPlay/src/wizards.cpp b/ScreenPlay/src/wizards.cpp
index 1ad9a541..149c2c2d 100644
--- a/ScreenPlay/src/wizards.cpp
+++ b/ScreenPlay/src/wizards.cpp
@@ -270,7 +270,7 @@ void Wizards::createGifWallpaper(
const QString& file,
const QVector& tags)
{
- QtConcurrent::run([=]() {
+ auto con = QtConcurrent::run([=]() {
std::optional folderName = createTemporaryFolder();
if (!folderName.has_value()) {
diff --git a/ScreenPlay/translations/ScreenPlay_.ts b/ScreenPlay/translations/ScreenPlay_.ts
index 9eb22bf4..8d4f3fc8 100644
--- a/ScreenPlay/translations/ScreenPlay_.ts
+++ b/ScreenPlay/translations/ScreenPlay_.ts
@@ -758,15 +758,29 @@
-
-
- NavigationWallpaperConfiguration
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1005,10 +1019,6 @@
-
-
-
-
@@ -1049,6 +1059,11 @@
+
+
+
+ SettingsExpander
diff --git a/ScreenPlay/translations/ScreenPlay_de_DE.qm b/ScreenPlay/translations/ScreenPlay_de_DE.qm
index 594f6bef..973249b4 100644
Binary files a/ScreenPlay/translations/ScreenPlay_de_DE.qm and b/ScreenPlay/translations/ScreenPlay_de_DE.qm differ
diff --git a/ScreenPlay/translations/ScreenPlay_de_DE.ts b/ScreenPlay/translations/ScreenPlay_de_DE.ts
index 7f845a5d..05e38bd1 100644
--- a/ScreenPlay/translations/ScreenPlay_de_DE.ts
+++ b/ScreenPlay/translations/ScreenPlay_de_DE.ts
@@ -488,98 +488,98 @@
Importh264Convert
- Analysiere Video...
+ AnalyseVideo...
- Erzeuge Vorschaubild...
+ Generating preview image...
- Erzeuge Vorschau-Miniaturbild...
+ Generating preview thumbnail image...
- Generiere ein 5-Sekunden-Vorschau-Video...
+ Generating 5 second preview video...
- Generiere Vorschau-Gif...
+ Generating preview gif...
- Konvertiere Audio...
+ Converting Audio...
- Video wird umgewandelt... Das kann etwas dauern!
+ Converting Video... This can take some time!
- Konvertieren nicht erfolgreich!
+ Converting Video ERROR!
- Analyse des Videos schlug Fehl!
+ Analyse Video ERROR!
- Importiere ein Video zu ein Wallpaper
+ Import a video to a wallpaper
- Generiere Vorschau-Video...
+ Generating preview video...
- Name (erforderlich!)
+ Name (required!)
- Beschreibung
+ Description
- YouTube-URL
+ Youtube URL
- Abbrechen
+ Abort
- Speichern
+ Save
- Speicher Wallpaper...
+ Save Wallpaper...Importh264Init
-
+ Import a .mp4 video
-
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
-
+ Invalid file type. Must be valid h264 (*.mp4)!
-
+ Drop a *.mp4 file here or use 'Select file' below.
-
+ Open Documentation
- Datei auswählen
+ Select file
@@ -760,16 +760,31 @@ Bitte Konfiguriere deine Wallpaper noch erneut
Einstellungen
-
-
- NavigationWallpaperConfiguration
-
- Konfiguriere aktive Wallpaper oder Widgets
+
+ Mute/Unmute all Wallpaper
-
- Keine aktiven Wallpaper oder Widgets
+
+ Pause/Play all Wallpaper
+
+
+
+ Configure Wallpaper
+
+
+
+ Minimize to Tray
+
+
+
+ Exit
+
+
+
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
@@ -1007,10 +1022,6 @@ Bitte Konfiguriere deine Wallpaper noch erneut
Version
-
-
- ScreenPlay-Build-Version
- Changelog öffnen
@@ -1051,6 +1062,12 @@ Bitte Konfiguriere deine Wallpaper noch erneut
Datenschutz
+
+
+ ScreenPlay Build Version
+
+ SettingsExpander
@@ -1067,15 +1084,15 @@ Bitte Konfiguriere deine Wallpaper noch erneut
-
+ Video Import h264 (.mp4)
-
+ Video Import VP8 & VP9 (.webm)
-
+ Video import (all types)
@@ -1182,11 +1199,11 @@ Bitte Konfiguriere deine Wallpaper noch erneut
StartInfo
-
+ Free tools to help you to create wallpaper
-
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
@@ -1577,7 +1594,7 @@ Bitte Konfiguriere deine Wallpaper noch erneut
-
+ Password Required To Kick Session
diff --git a/ScreenPlay/translations/ScreenPlay_es_ES.qm b/ScreenPlay/translations/ScreenPlay_es_ES.qm
index d697ae06..e3c8f6a0 100644
Binary files a/ScreenPlay/translations/ScreenPlay_es_ES.qm and b/ScreenPlay/translations/ScreenPlay_es_ES.qm differ
diff --git a/ScreenPlay/translations/ScreenPlay_es_ES.ts b/ScreenPlay/translations/ScreenPlay_es_ES.ts
index 56f5997d..5df01bd9 100644
--- a/ScreenPlay/translations/ScreenPlay_es_ES.ts
+++ b/ScreenPlay/translations/ScreenPlay_es_ES.ts
@@ -5,15 +5,15 @@
ColorPicker
- Red
+ Rojo
- Green
+ Verde
- Blue
+ Azul
@@ -45,7 +45,7 @@
- V:
+ V:
@@ -60,7 +60,7 @@
Community
- News
+ Noticias
@@ -68,15 +68,15 @@
- Forum
+ Foro
- Issue List
+ Lista de Problemas
- Contribute
+ Contribuir
@@ -87,14 +87,14 @@
CommunityNavItem
- Open in browser
+ Abrir en el navegadorCreateWallpaperInit
- Import any video type
+ Importar cualquier tipo de vídeo
- Set your preffered video codec:
+ Establezca su códec de vídeo predeterminado:
- Quality slider. Lower value means better quality.
+ Deslizador de calidad. Un valor más bajo significa una mejor calidad.
- Open Documentation
+ Abrir documentación
- Select file
+ Seleccionar archivo
@@ -164,7 +164,7 @@
- Converting Video... This can take some time!
+ Convirtiendo vídeo... ¡Esto puede tardar un poco!
@@ -192,7 +192,7 @@
- Youtube URL
+ URL de YouTube
@@ -200,7 +200,7 @@
- Save
+ Guardar
@@ -215,7 +215,7 @@
- Playback rate
+ Velocidad de reproducción
@@ -292,7 +292,7 @@
- General
+ General
@@ -300,11 +300,11 @@
- Created By
+ Creado por
- Tags
+ Etiquetas
@@ -315,11 +315,11 @@
- General
+ General
- Wallpaper name
+ Nombre del fondo
@@ -335,14 +335,14 @@
- Preview Image
+ Imagen de previsualizaciónHTMLWidget
- Create a HTML widget
+ Crear un widget HTML
@@ -350,7 +350,7 @@
- Widget name
+ Nombre del widget
@@ -451,7 +451,7 @@
- Save
+ Guardar
@@ -462,7 +462,7 @@
ImportWebmInit
- Import a .webm video
+ Importar un vídeo .webm
@@ -509,7 +509,7 @@
-
+ Converting Audio...
@@ -533,11 +533,11 @@
-
+ Name (required!)
-
+ Description
@@ -545,7 +545,7 @@
-
+ Abort
@@ -560,19 +560,19 @@
Importh264Init
-
+ Import a .mp4 video
-
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
-
+ Invalid file type. Must be valid h264 (*.mp4)!
-
+ Drop a *.mp4 file here or use 'Select file' below.
@@ -637,7 +637,7 @@
LicenseSelector
- License
+ Licencia
@@ -761,16 +761,31 @@
Settings
-
-
- NavigationWallpaperConfiguration
-
- Configurate active Wallpaper or Widgets
+
+ Mute/Unmute all Wallpaper
-
- No active Wallpaper or Widgets
+
+ Pause/Play all Wallpaper
+
+
+
+ Configure Wallpaper
+
+
+
+ Minimize to Tray
+
+
+
+ Exit
+
+
+
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
@@ -1008,10 +1023,6 @@
Version
-
-
- ScreenPlay Build Version
- Open Changelog
@@ -1052,6 +1063,12 @@
Privacy
+
+
+ ScreenPlay Build Version
+
+ SettingsExpander
@@ -1068,15 +1085,15 @@
-
+ Video Import h264 (.mp4)
-
+ Video Import VP8 & VP9 (.webm)
-
+ Video import (all types)
@@ -1183,11 +1200,11 @@
StartInfo
-
+ Free tools to help you to create wallpaper
-
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
@@ -1578,7 +1595,7 @@
-
+ Password Required To Kick Session
diff --git a/ScreenPlay/translations/ScreenPlay_fr_FR.qm b/ScreenPlay/translations/ScreenPlay_fr_FR.qm
index 4049870a..837750da 100644
Binary files a/ScreenPlay/translations/ScreenPlay_fr_FR.qm and b/ScreenPlay/translations/ScreenPlay_fr_FR.qm differ
diff --git a/ScreenPlay/translations/ScreenPlay_fr_FR.ts b/ScreenPlay/translations/ScreenPlay_fr_FR.ts
index f12e7b69..42179673 100644
--- a/ScreenPlay/translations/ScreenPlay_fr_FR.ts
+++ b/ScreenPlay/translations/ScreenPlay_fr_FR.ts
@@ -21,7 +21,7 @@
- HSV
+ TSV
@@ -265,15 +265,15 @@
Forum
- Download Wallpaper and Widgets from our forums manually. If you want to download Steam Workshop content you have to install ScreenPlay via Steam.
+ Téléchargez manuellement des fond d'écran et des widgets depuis notre forum. Si vous voulez télécharger du contenu Steam Workshop, vous devez installer ScreenPlay via Steam.
- Install Steam Version
+ Installer la version Steam
- Open In Browser
+ Ouvrir dans le navigateur
@@ -365,7 +365,7 @@
HeadlineSection
- Headline Section
+ Section de titre
@@ -427,7 +427,7 @@
- Import a video to a wallpaper
+ Convertir une vidéo en fond d'écran
@@ -466,15 +466,15 @@
- When importing webm we can skip the long conversion. When you get unsatisfying results with the ScreenPlay importer from 'ideo import and convert (all types)' you can also convert via the free and open source HandBrake!
+ Lors de l'importation de webm, vous pouvez ignorer l'étape de conversion. Lorsque vous obtenez des résultats insatisfaisants avec l'importateur de ScreenPlay via 'import et conversion de vidéo (tous types)' vous pouvez convertir au format webm via le logiciel HandBrake. Il est gratuit et open source!
- Invalid file type. Must be valid VP8 or VP9 (*.webm)!
+ Type de fichier invalide. Doit être un VP8 ou VP9 (*.webm)!
- Drop a *.webm file here or use 'Select file' below.
+ Déposez un fichier *.webm ici ou utilisez 'Sélectionner un fichier' ci-dessous.
@@ -489,39 +489,39 @@
Importh264Convert
- AnalyseVidéo...
+ AnalyseVideo...
- Génération de l'image d'aperçu...
+ Generating preview image...
- Génération de la miniature de l’aperçu...
+ Generating preview thumbnail image...
- Génération d’une vidéo d’aperçu de 5 secondes...
+ Generating 5 second preview video...
-
+ Generating preview gif...
- Conversion de l’audio...
+ Converting Audio...
-
+ Converting Video... This can take some time!
-
+ Converting Video ERROR!
- Erreur d'Analyse Vidéo !
+ Analyse Video ERROR!
@@ -529,11 +529,11 @@
- Génération de la vidéo d'aperçu...
+ Generating preview video...
- Nom (requis!)
+ Name (required!)
@@ -541,46 +541,46 @@
- URL Youtube
+ Youtube URL
-
+ Abort
-
+ Save
- Enregistrer le fond d'écran
+ Save Wallpaper...Importh264Init
-
+ Import a .mp4 video
-
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
-
+ Invalid file type. Must be valid h264 (*.mp4)!
-
+ Drop a *.mp4 file here or use 'Select file' below.
- Ouvrir la documentation
+ Open Documentation
- Sélectionner un fichier
+ Select file
@@ -595,7 +595,7 @@
- Pull to refresh!
+ Faire glisser pour actualiser!
@@ -645,7 +645,7 @@
- You grant other to remix your work and change the license to their liking.
+ Vous permettez aux autres utilisateurs de réutiliser et altérer votre travail et de changer la licence selon leur souhait.
@@ -657,7 +657,7 @@
- You grant other to remix your work but it must remain under the GPLv3. We recommend this license for all code wallpaper!
+ Vous permettez aux autres utilisateurs de réutiliser et altérer votre travail, mais il doit rester sous licence GPLv3. Nous recommandons cette licence pour tout les fonds d'écrans codé.
@@ -669,224 +669,239 @@
- Your monitor setup changed!
- Please configure your wallpaper again.
+ La configuration de votre écran a changé!
+ Veuillez configurer votre fond d'écran à nouveau.Monitors
- Wallpaper Configuration
+ Configuration du fond d'écran
- Remove selected
+ Retirer l'écran sélectionné
- Remove
+ Retirer
- Wallpapers
+ Fonds d’écran
- Widgets
+ WidgetsMonitorsProjectSettingItem
- Set color
+ Définir la couleur
- Please choose a color
+ Veuillez choisir une couleurNavigation
- All
+ Tout
- Scenes
+ Scènes
- Videos
+ Vidéos
- Widgets
+ Widgets
- Install Date Ascending
+ Date d'installation croissante
- Install Date Descending
+ Date d'installation décroissante
- Subscribed items:
+ Éléments souscrits :
- Upload to the Steam Workshop
+ Uploader sur le Steam Workshop
- Create
+ Créer
- Workshop
+ Workshop
- Installed
+ Installé
- Community
+ Communauté
- Settings
-
-
-
- NavigationWallpaperConfiguration
-
-
- Configurate active Wallpaper or Widgets
+ Paramètres
-
- No active Wallpaper or Widgets
+
+ Mute/Unmute all Wallpaper
+
+
+
+ Pause/Play all Wallpaper
+
+
+
+ Configure Wallpaper
+
+
+
+ Minimize to Tray
+
+
+
+ Exit
+
+
+
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.PopupOffline
- You need to run Steam for this. steamErrorRestart: %1 - steamErrorAPIInit: %2
+ Vous devez exécuter Steam pour cela. steamErrorRestart: %1 - steamErrorAPIInit: %2
- Back
+ PrécédentPopupSteamWorkshopAgreement
- You Need to Agree To The Steam Subscriber Agreement First
+ Vous devez d'abord accepter l'Accord de Souscription Steam
- REQUIRES INTERNET CONNECTION AND FREE STEAM ACCOUNT TO ACTIVATE. Notice: Product offered subject to your acceptance of the Steam Subscriber Agreement (SSA). You must activate this product via the Internet by registering for a Steam account and accepting the SSA. Please see https://store.steampowered.com/subscriber_agreement/ to view the SSA prior to purchase. If you do not agree with the provisions of the SSA, you should return this game unopened to your retailer in accordance with their return policy.
+ REQUIÈRE UNE CONNEXION INTERNET ET UN COMPTE STEAM GRATUIT POUR L'ACTIVATION. Avertissement: Produit offert sous réserve de votre acceptation de l'Accord de Souscription Steam (ASS). Vous devez activer ce produit via Internet en vous enregistrant sur un compte Steam et en acceptant l'ASS. Veuillez consulter https://store.steampowered.com/subscriber_agreement/ pour consulter l'ASS avant l'achat. Si vous n'êtes pas d'accord avec les dispositions de l'ASS, vous devriez retourner ce jeu non ouvert à votre détaillant conformément à leur politique de retour.
- View The Steam Subscriber Agreement
+ Voir l'Accord de Souscription Steam
- Accept Steam Workshop Agreement
+ Accepter l'Accord de Souscription SteamQMLWallpaper
- Create a QML Wallpaper
+ Créer un fond d'écran QML
- General
+ Général
- Wallpaper name
+ Nom du fond d'écran
- Created By
+ Créé par
- Description
+ Description
- License & Tags
+ Licence & Tags
- Preview Image
+ Image d'aperçuQMLWidget
- Create a QML widget
+ Créer un widget QML
- General
+ Général
- Widget name
+ Nom du Widget
- Created by
+ Créé par
- Tags
+ TagsSaveNotification
- Profile saved successfully!
+ Profil enregistré avec succès!ScreenPlayItem
- NEW
+ NOUVEAUSearch
- Search for Wallpaper & Widgets
+ Recherche de fond d'écran et de widgetsSettings
- General
+ Général
- Autostart
+ Démarrage automatique
@@ -1008,10 +1023,6 @@
Version
-
-
- ScreenPlay Build Version
- Open Changelog
@@ -1034,30 +1045,36 @@
- If your ScreenPlay missbehaves this is a good way to look for answers. This shows all logs and warning during runtime.
+ Si ScreenPlay ne fonctionne pas correctement, c'est une bonne façon de chercher des réponses. Cela montre tous les logs et les avertissements émis pendant l'exécution.
- Show Logs
+ Afficher les logs
- Data Protection
+ Protection des données
- We use you data very carefully to improve ScreenPlay. We do not sell or share this (anonymous) information with others!
+ Nous utilisons vos données exclusivement pour améliorer ScreenPlay. Nous ne vendons pas ou ne partageons pas ces données (anonyme) avec d'autres !
- Privacy
+ Confidentialité
+
+
+
+ ScreenPlay Build Version
+SettingsExpander
- Copy text to clipboard
+ Copier le texte dans le presse-papiers
@@ -1068,47 +1085,47 @@
-
+ Video Import h264 (.mp4)
-
+ Video Import VP8 & VP9 (.webm)
-
+ Video import (all types)
- GIF Wallpaper
+ Fond d'écran GIF
- QML Wallpaper
+ Fond d'écran QML
- HTML5 Wallpaper
+ Fond d'écran HTML5
- Website Wallpaper
+ Fond d'écran Site web
- QML Widget
+ Widget QML
- HTML Widget
+ Widget HTML
- Set Wallpaper
+ Définir le fond d'écran
- Set Widget
+ Définir le Widget
@@ -1116,139 +1133,139 @@
- Select a Monitor to display the content
+ Sélectionnez un écran pour afficher le contenu
- Set Volume
+ Régler le volume
- Fill Mode
+ Mode de remplissage
- Stretch
+ Étirer
- Fill
+ Remplir
- Contain
+ Contenir
- Cover
+ Couvrir
- Scale-Down
+ Réduire
- Size:
+ Taille :
- No description...
+ Pas de description ...
- Click here if you like the content
+ Cliquez ici si vous aimez le contenu
- Click here if you do not like the content
+ Cliquez ici si vous n'aimez pas le contenu
- Subscribtions:
+ Abonnements :
- Open In Steam
+ Ouvrir dans Steam
- Subscribed!
+ Abonné!
- Subscribe
+ S'abonnerStartInfo
-
+ Free tools to help you to create wallpaper
-
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!SteamNotAvailable
- Could not load steam integration!
+ Impossible de charger l'intégration Steam!SteamProfile
- Back
+ Précédent
- Forward
+ SuivantSteamWorkshopStartPage
- Loading
+ Chargement
- Download now!
+ Télécharger maintenant!
- Downloading...
+ Téléchargement...
- Details
+ Détails
- Open In Steam
+ Ouvrir dans Steam
- Profile
+ Profil
- Upload
+ Uploader
- Search for Wallpaper and Widgets...
+ Recherche de fond d'écran et de widgets...
- Open Workshop in Steam
+ Ouvrir le Workshop dans Steam
- Ranked By Vote
+ Classé par vote
@@ -1578,7 +1595,7 @@
-
+ Password Required To Kick Session
diff --git a/ScreenPlay/translations/ScreenPlay_it_IT.qm b/ScreenPlay/translations/ScreenPlay_it_IT.qm
index 5c81ce55..57ca2fd6 100644
Binary files a/ScreenPlay/translations/ScreenPlay_it_IT.qm and b/ScreenPlay/translations/ScreenPlay_it_IT.qm differ
diff --git a/ScreenPlay/translations/ScreenPlay_it_IT.ts b/ScreenPlay/translations/ScreenPlay_it_IT.ts
index 4c071d37..c0401d07 100644
--- a/ScreenPlay/translations/ScreenPlay_it_IT.ts
+++ b/ScreenPlay/translations/ScreenPlay_it_IT.ts
@@ -489,98 +489,98 @@
Importh264Convert
- Analizza Video...
+ AnalyseVideo...
-
+ Generating preview image...
- Generazione miniatura di anteprima...
+ Generating preview thumbnail image...
- Generazione anteprima video di 5 secondi...
+ Generating 5 second preview video...
- Generazione gif di anteprima...
+ Generating preview gif...
- Conversione Audio...
+ Converting Audio...
- Conversione Video... Potrebbe richiedere un po' di tempo!
+ Converting Video... This can take some time!
- Conversione Video ERRORE!
+ Converting Video ERROR!
- Analisi Video ERRORE!
+ Analyse Video ERROR!
- Importa un video in uno sfondo
+ Import a video to a wallpaper
- Generazione video di anteprima...
+ Generating preview video...
- Nome (obbligatorio)
+ Name (required!)
- Descrizione
+ Description
- URL Youtube
+ Youtube URL
- Interrompi
+ Abort
- Salva
+ Save
- Salva sfondo...
+ Save Wallpaper...Importh264Init
-
+ Import a .mp4 video
-
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
-
+ Invalid file type. Must be valid h264 (*.mp4)!
-
+ Drop a *.mp4 file here or use 'Select file' below.
- Apri documentazione
+ Open Documentation
- Seleziona file
+ Select file
@@ -761,16 +761,31 @@
Impostazioni
-
-
- NavigationWallpaperConfiguration
-
- Configura Sfondi o Widgets attivi
+
+ Mute/Unmute all Wallpaper
-
- Nessuno Sfondo o Widget attivi
+
+ Pause/Play all Wallpaper
+
+
+
+ Configure Wallpaper
+
+
+
+ Minimize to Tray
+
+
+
+ Exit
+
+
+
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
@@ -1008,10 +1023,6 @@
Versione
-
-
- Versione Build di ScreenPlay
- Apri Changelog
@@ -1052,6 +1063,12 @@
Privacy
+
+
+ ScreenPlay Build Version
+
+ SettingsExpander
@@ -1068,15 +1085,15 @@
-
+ Video Import h264 (.mp4)
-
+ Video Import VP8 & VP9 (.webm)
-
+ Video import (all types)
@@ -1183,11 +1200,11 @@
StartInfo
-
+ Free tools to help you to create wallpaper
-
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
@@ -1578,7 +1595,7 @@
-
+ Password Required To Kick Session
diff --git a/ScreenPlay/translations/ScreenPlay_ko_KR.qm b/ScreenPlay/translations/ScreenPlay_ko_KR.qm
index 892b2a8a..b073bae5 100644
Binary files a/ScreenPlay/translations/ScreenPlay_ko_KR.qm and b/ScreenPlay/translations/ScreenPlay_ko_KR.qm differ
diff --git a/ScreenPlay/translations/ScreenPlay_ko_KR.ts b/ScreenPlay/translations/ScreenPlay_ko_KR.ts
index 93437fca..5cc74a50 100644
--- a/ScreenPlay/translations/ScreenPlay_ko_KR.ts
+++ b/ScreenPlay/translations/ScreenPlay_ko_KR.ts
@@ -493,27 +493,27 @@
-
+ Generating preview image...
-
+ Generating preview thumbnail image...
-
+ Generating 5 second preview video...
-
+ Generating preview gif...
-
+ Converting Audio...
-
+ Converting Video... This can take some time!
@@ -541,15 +541,15 @@
-
+ Youtube URL
-
+ Abort
-
+ Save
@@ -560,27 +560,27 @@
Importh264Init
-
+ Import a .mp4 video
-
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
-
+ Invalid file type. Must be valid h264 (*.mp4)!
-
+ Drop a *.mp4 file here or use 'Select file' below.
- 문서 열기
+ Open Documentation
- 파일 선택
+ Select file
@@ -761,16 +761,31 @@
Settings
-
-
- NavigationWallpaperConfiguration
-
- Configurate active Wallpaper or Widgets
+
+ Mute/Unmute all Wallpaper
-
- No active Wallpaper or Widgets
+
+ Pause/Play all Wallpaper
+
+
+
+ Configure Wallpaper
+
+
+
+ Minimize to Tray
+
+
+
+ Exit
+
+
+
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
@@ -1008,10 +1023,6 @@
Version
-
-
- ScreenPlay Build Version
- Open Changelog
@@ -1052,6 +1063,12 @@
Privacy
+
+
+ ScreenPlay Build Version
+
+ SettingsExpander
@@ -1068,15 +1085,15 @@
-
+ Video Import h264 (.mp4)
-
+ Video Import VP8 & VP9 (.webm)
-
+ Video import (all types)
@@ -1183,11 +1200,11 @@
StartInfo
-
+ Free tools to help you to create wallpaper
-
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
@@ -1578,7 +1595,7 @@
-
+ Password Required To Kick Session
diff --git a/ScreenPlay/translations/ScreenPlay_nl_NL.qm b/ScreenPlay/translations/ScreenPlay_nl_NL.qm
index 77cc5214..7c2714b2 100644
Binary files a/ScreenPlay/translations/ScreenPlay_nl_NL.qm and b/ScreenPlay/translations/ScreenPlay_nl_NL.qm differ
diff --git a/ScreenPlay/translations/ScreenPlay_nl_NL.ts b/ScreenPlay/translations/ScreenPlay_nl_NL.ts
index 9fc355c1..0a1d7df9 100644
--- a/ScreenPlay/translations/ScreenPlay_nl_NL.ts
+++ b/ScreenPlay/translations/ScreenPlay_nl_NL.ts
@@ -1,1920 +1,1937 @@
-
+ ColorPicker
-
- Rood
+
+ Rood
-
- Groen
+
+ Groen
-
- Blauw
+
+ Blauw
-
- RGB
+
+ RGB
-
- HSV
+
+ HSV
-
- R:
+
+ R:
-
- G:
+
+ G:
-
- B:
+
+ B:
-
- H:
+
+ H:
-
- S:
+
+ S:
-
- V:
+
+ V:
-
- Alpha:
+
+ Alpha:
-
- #
+
+ #
-
-
+
+ Community
-
- Nieuws
+
+ Nieuws
-
- Wiki
+
+ Wiki
-
- Forum
+
+ Forum
-
- Probleem lijst
+
+ Probleem lijst
-
- Bijdragen
+
+ Bijdragen
-
- Steam Workshop
+
+ Steam Workshop
-
-
+
+ CommunityNavItem
-
- Open in browser
+
+ Open in browser
-
-
+
+ CreateWallpaperInit
-
- Importeer elk video type
+
+ Importeer elk video type
-
- Set your preffered video codec:
- Stel je gewenst videocodec in:
+ Set your preffered video codec:
+ Stel je gewenst videocodec in:
- Quality slider. Lower value means better quality.
- Quality slider. Lower value means better quality.
+ Quality slider. Lower value means better quality.
+ Kwaliteit schuifregelaar. Lagere waarde betekent betere kwaliteit.
- Open Documentation
- Open Documentatie
+ Open Documentation
+ Open Documentatie
- Select file
- Select file
+ Select file
+ Selecteer bestand
-
-
+
+ CreateWallpaperResult
- An error occurred!
- An error occurred!
+ An error occurred!
+ Er is een fout opgetreden!
- Copy text to clipboard
- Copy text to clipboard
+ Copy text to clipboard
+ Kopieer tekst naar klembord
- Back to create and send an error report!
- Back to create and send an error report!
+ Back to create and send an error report!
+ Back to create and send an error report!
-
-
+
+ CreateWallpaperVideoImportConvert
-
-
+
+
- Generating preview image...
- Generating preview image...
+ Generating preview image...
+ Voorbeeld afbeelding aan het genereren...
- Generating preview thumbnail image...
- Generating preview thumbnail image...
+ Generating preview thumbnail image...
+ Voorbeeld miniatuurafbeelding aan het genereren...
- Generating 5 second preview video...
- Generating 5 second preview video...
+ Generating 5 second preview video...
+ 5 seconden voorbeeldvideo aan het genereren...
- Generating preview gif...
- Generating preview gif...
+ Generating preview gif...
+ Voorbeeld gif aan het genereren...
- Converting Audio...
- Converting Audio...
+ Converting Audio...
+ Audio aan het converteren...
- Converting Video... This can take some time!
- Converting Video... This can take some time!
+ Converting Video... This can take some time!
+ Video aan het converteren... Dit kan even duren!
- Converting Video ERROR!
- Converting Video ERROR!
+ Converting Video ERROR!
+ Video Converteren FOUT!
- Analyse Video ERROR!
- Analyse Video ERROR!
+ Analyse Video ERROR!
+ Video Analyse FOUT!
- Convert a video to a wallpaper
- Convert a video to a wallpaper
+ Convert a video to a wallpaper
+ Converteer een video naar een achtergrond
- Generating preview video...
- Generating preview video...
+ Generating preview video...
+ Voorbeeldvideo aan het genereren...
- Name (required!)
- Name (required!)
+ Name (required!)
+ Naam (verplicht!)
- Description
- Description
+ Description
+ Beschrijving
- Youtube URL
- Youtube URL
+ Youtube URL
+ Youtube URL
- Abort
- Abort
+ Abort
+ Breek af
- Save
- Save
+ Save
+ Sla op
- Save Wallpaper...
- Save Wallpaper...
+ Save Wallpaper...
+ Sla achtergrond op...
-
-
+
+ DefaultVideoControls
- Volume
- Volume
+ Volume
+ Volume
- Playback rate
- Playback rate
+ Playback rate
+ Afspeelsnelheid
- Current Video Time
- Current Video Time
+ Current Video Time
+ Huidige Videotijd
- Fill Mode
- Fill Mode
+ Fill Mode
+ Vulmodus
- Stretch
- Stretch
+ Stretch
+ Rek uit
- Fill
- Fill
+ Fill
+ Vul
- Contain
- Contain
+ Contain
+ Contain
- Cover
- Cover
+ Cover
+ Dek
- Scale_Down
- Scale_Down
+ Scale_Down
+ Schaal_Omlaag
-
-
+
+ FileSelector
- Clear
- Clear
+ Clear
+ Wis
- Select File
- Select File
+ Select File
+ Selecteer bestand
- Please choose a file
- Please choose a file
+ Please choose a file
+ Kies een bestand
-
-
+
+ Forum
- Download Wallpaper and Widgets from our forums manually. If you want to download Steam Workshop content you have to install ScreenPlay via Steam.
- Download Wallpaper and Widgets from our forums manually. If you want to download Steam Workshop content you have to install ScreenPlay via Steam.
+ Download Wallpaper and Widgets from our forums manually. If you want to download Steam Workshop content you have to install ScreenPlay via Steam.
+ Download Wallpaper and Widgets from our forums manually. If you want to download Steam Workshop content you have to install ScreenPlay via Steam.
- Install Steam Version
- Install Steam Version
+ Install Steam Version
+ Install Steam Version
- Open In Browser
- Open In Browser
+ Open In Browser
+ Open In Browser
-
-
+
+ GifWallpaper
- Import a Gif Wallpaper
- Import a Gif Wallpaper
+ Import a Gif Wallpaper
+ Import a Gif Wallpaper
- Drop a *.gif file here or use 'Select file' below.
- Drop a *.gif file here or use 'Select file' below.
+ Drop a *.gif file here or use 'Select file' below.
+ Drop a *.gif file here or use 'Select file' below.
- Select your gif
- Select your gif
+ Select your gif
+ Select your gif
- General
- General
+ General
+ General
- Wallpaper name
- Wallpaper name
+ Wallpaper name
+ Wallpaper name
- Created By
- Created By
+ Created By
+ Gemaakt door
- Tags
- Tags
+ Tags
+ Tags
-
-
+
+ HTMLWallpaper
- Create a HTML Wallpaper
- Create a HTML Wallpaper
+ Create a HTML Wallpaper
+ Maak een HTML Achtergrond
- General
- General
+ General
+ Algemeen
- Wallpaper name
- Wallpaper name
+ Wallpaper name
+ Achtergrond naam
- Created By
- Created By
+ Created By
+ Gemaakt door
- Description
- Description
+ Description
+ Beschrijving
- License & Tags
- License & Tags
+ License & Tags
+ Licentie & Tags
- Preview Image
- Preview Image
+ Preview Image
+ Voorbeeldafbeelding
-
-
+
+ HTMLWidget
- Create a HTML widget
- Create a HTML widget
+ Create a HTML widget
+ Create a HTML widget
- General
- General
+ General
+ General
- Widget name
- Widget name
+ Widget name
+ Widget name
- Created by
- Created by
+ Created by
+ Created by
- Tags
- Tags
+ Tags
+ Tags
-
-
+
+ HeadlineSection
- Headline Section
- Headline Section
+ Headline Section
+ Headline Section
-
-
+
+ ImageSelector
- Set your own preview image
- Set your own preview image
+ Set your own preview image
+ Set your own preview image
- Clear
- Clear
+ Clear
+ Clear
- Select Preview Image
- Select Preview Image
+ Select Preview Image
+ Select Preview Image
-
-
+
+ ImportWebmConvert
-
-
+
+
- AnalyseVideo...
- AnalyseVideo...
+ AnalyseVideo...
+ AnalyseVideo...
- Generating preview image...
- Generating preview image...
+ Generating preview image...
+ Generating preview image...
- Generating preview thumbnail image...
- Generating preview thumbnail image...
+ Generating preview thumbnail image...
+ Generating preview thumbnail image...
- Generating 5 second preview video...
- Generating 5 second preview video...
+ Generating 5 second preview video...
+ Generating 5 second preview video...
- Generating preview gif...
- Generating preview gif...
+ Generating preview gif...
+ Generating preview gif...
- Converting Audio...
- Converting Audio...
+ Converting Audio...
+ Converting Audio...
- Converting Video... This can take some time!
- Converting Video... This can take some time!
+ Converting Video... This can take some time!
+ Converting Video... This can take some time!
- Converting Video ERROR!
- Converting Video ERROR!
+ Converting Video ERROR!
+ Converting Video ERROR!
- Analyse Video ERROR!
- Analyse Video ERROR!
+ Analyse Video ERROR!
+ Analyse Video ERROR!
- Import a video to a wallpaper
- Import a video to a wallpaper
+ Import a video to a wallpaper
+ Import a video to a wallpaper
- Generating preview video...
- Generating preview video...
+ Generating preview video...
+ Generating preview video...
- Name (required!)
- Name (required!)
+ Name (required!)
+ Name (required!)
- Description
- Description
+ Description
+ Description
- Youtube URL
- Youtube URL
+ Youtube URL
+ Youtube URL
- Abort
- Abort
+ Abort
+ Abort
- Save
- Save
+ Save
+ Save
- Save Wallpaper...
- Save Wallpaper...
+ Save Wallpaper...
+ Save Wallpaper...
-
-
+
+ ImportWebmInit
- Import a .webm video
- Import a .webm video
+ Import a .webm video
+ Import a .webm video
- When importing webm we can skip the long conversion. When you get unsatisfying results with the ScreenPlay importer from 'ideo import and convert (all types)' you can also convert via the free and open source HandBrake!
- When importing webm we can skip the long conversion. When you get unsatisfying results with the ScreenPlay importer from 'ideo import and convert (all types)' you can also convert via the free and open source HandBrake!
+ When importing webm we can skip the long conversion. When you get unsatisfying results with the ScreenPlay importer from 'ideo import and convert (all types)' you can also convert via the free and open source HandBrake!
+ When importing webm we can skip the long conversion. When you get unsatisfying results with the ScreenPlay importer from 'ideo import and convert (all types)' you can also convert via the free and open source HandBrake!
- Invalid file type. Must be valid VP8 or VP9 (*.webm)!
- Invalid file type. Must be valid VP8 or VP9 (*.webm)!
+ Invalid file type. Must be valid VP8 or VP9 (*.webm)!
+ Invalid file type. Must be valid VP8 or VP9 (*.webm)!
- Drop a *.webm file here or use 'Select file' below.
- Drop a *.webm file here or use 'Select file' below.
+ Drop a *.webm file here or use 'Select file' below.
+ Drop a *.webm file here or use 'Select file' below.
- Open Documentation
- Open Documentation
+ Open Documentation
+ Open Documentation
- Select file
- Select file
+ Select file
+ Select file
-
-
+
+ Importh264Convert
- AnalyseVideo...
- AnalyseVideo...
+ AnalyseVideo...
+ AnalyseVideo...
- Generating preview image...
- Generating preview image...
+ Generating preview image...
+ Generating preview image...
- Generating preview thumbnail image...
- Generating preview thumbnail image...
+ Generating preview thumbnail image...
+ Generating preview thumbnail image...
- Generating 5 second preview video...
- Generating 5 second preview video...
+ Generating 5 second preview video...
+ Generating 5 second preview video...
- Generating preview gif...
- Generating preview gif...
+ Generating preview gif...
+ Generating preview gif...
- Converting Audio...
- Converting Audio...
+ Converting Audio...
+ Converting Audio...
- Converting Video... This can take some time!
- Converting Video... This can take some time!
+ Converting Video... This can take some time!
+ Converting Video... This can take some time!
- Converting Video ERROR!
- Converting Video ERROR!
+ Converting Video ERROR!
+ Converting Video ERROR!
- Analyse Video ERROR!
- Analyse Video ERROR!
+ Analyse Video ERROR!
+ Analyse Video ERROR!
- Import a video to a wallpaper
- Import a video to a wallpaper
+ Import a video to a wallpaper
+ Import a video to a wallpaper
- Generating preview video...
- Generating preview video...
+ Generating preview video...
+ Generating preview video...
- Name (required!)
- Name (required!)
+ Name (required!)
+ Name (required!)
- Description
- Description
+ Description
+ Description
- Youtube URL
- Youtube URL
+ Youtube URL
+ Youtube URL
- Abort
- Abort
+ Abort
+ Abort
- Save
- Save
+ Save
+ Save
- Save Wallpaper...
- Save Wallpaper...
+ Save Wallpaper...
+ Save Wallpaper...
-
-
+
+ Importh264Init
- Import a .mp4 video
-
+ Import a .mp4 video
+ Import a .mp4 video
- ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
-
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
- Invalid file type. Must be valid h264 (*.mp4)!
-
+ Invalid file type. Must be valid h264 (*.mp4)!
+ Invalid file type. Must be valid h264 (*.mp4)!
- Drop a *.mp4 file here or use 'Select file' below.
-
+ Drop a *.mp4 file here or use 'Select file' below.
+ Drop a *.mp4 file here or use 'Select file' below.
- Open Documentation
-
+ Open Documentation
+ Open Documentation
- Select file
- Select file
+ Select file
+ Select file
-
-
+
+ Installed
-
-
+
+
- Refreshing!
- Refreshing!
+ Refreshing!
+ Refreshing!
- Pull to refresh!
- Pull to refresh!
+ Pull to refresh!
+ Pull to refresh!
- Get more Wallpaper & Widgets via the Steam workshop!
- Get more Wallpaper & Widgets via the Steam workshop!
+ Get more Wallpaper & Widgets via the Steam workshop!
+ Get more Wallpaper & Widgets via the Steam workshop!
- Open containing folder
- Open containing folder
+ Open containing folder
+ Open containing folder
- Remove Item
- Remove Item
+ Remove Item
+ Remove Item
- Remove via Workshop
- Remove via Workshop
+ Remove via Workshop
+ Remove via Workshop
- Open Workshop Page
- Open Workshop Page
+ Open Workshop Page
+ Open Workshop Page
- Are you sure you want to delete this item?
- Are you sure you want to delete this item?
+ Are you sure you want to delete this item?
+ Are you sure you want to delete this item?
-
-
+
+ InstalledWelcomeScreen
- Get free Widgets and Wallpaper via the Steam Workshop
- Get free Widgets and Wallpaper via the Steam Workshop
+ Get free Widgets and Wallpaper via the Steam Workshop
+ Get free Widgets and Wallpaper via the Steam Workshop
- Browse the Steam Workshop
- Browse the Steam Workshop
+ Browse the Steam Workshop
+ Browse the Steam Workshop
-
-
+
+ LicenseSelector
- License
- License
+ License
+ License
- Share — copy and redistribute the material in any medium or format. Adapt — remix, transform, and build upon the material for any purpose, even commercially.
- Share — copy and redistribute the material in any medium or format. Adapt — remix, transform, and build upon the material for any purpose, even commercially.
+ Share — copy and redistribute the material in any medium or format. Adapt — remix, transform, and build upon the material for any purpose, even commercially.
+ Share — copy and redistribute the material in any medium or format. Adapt — remix, transform, and build upon the material for any purpose, even commercially.
- You grant other to remix your work and change the license to their liking.
- You grant other to remix your work and change the license to their liking.
+ You grant other to remix your work and change the license to their liking.
+ You grant other to remix your work and change the license to their liking.
- Share — copy and redistribute the material in any medium or format. Adapt — remix, transform, and build upon the material. You are not allowed to use it commercially!
- Share — copy and redistribute the material in any medium or format. Adapt — remix, transform, and build upon the material. You are not allowed to use it commercially!
+ Share — copy and redistribute the material in any medium or format. Adapt — remix, transform, and build upon the material. You are not allowed to use it commercially!
+ Share — copy and redistribute the material in any medium or format. Adapt — remix, transform, and build upon the material. You are not allowed to use it commercially!
- You allow everyone to do anything with your work.
- You allow everyone to do anything with your work.
+ You allow everyone to do anything with your work.
+ You allow everyone to do anything with your work.
- You grant other to remix your work but it must remain under the GPLv3. We recommend this license for all code wallpaper!
- You grant other to remix your work but it must remain under the GPLv3. We recommend this license for all code wallpaper!
+ You grant other to remix your work but it must remain under the GPLv3. We recommend this license for all code wallpaper!
+ You grant other to remix your work but it must remain under the GPLv3. We recommend this license for all code wallpaper!
- You do not share any rights and nobody is allowed to use or remix it (Not recommended). Can also used to credit work others.
- You do not share any rights and nobody is allowed to use or remix it (Not recommended). Can also used to credit work others.
+ You do not share any rights and nobody is allowed to use or remix it (Not recommended). Can also used to credit work others.
+ You do not share any rights and nobody is allowed to use or remix it (Not recommended). Can also used to credit work others.
-
-
+
+ MonitorConfiguration
- Your monitor setup changed!
+ Your monitor setup changed!
Please configure your wallpaper again.
- Your monitor setup changed!
+ Your monitor setup changed!
Please configure your wallpaper again.
-
-
+
+ Monitors
- Wallpaper Configuration
- Wallpaper Configuration
+ Wallpaper Configuration
+ Wallpaper Configuration
- Remove selected
- Remove selected
+ Remove selected
+ Remove selected
- Remove
- Remove
+ Remove
+ Remove
- Wallpapers
- Wallpapers
+ Wallpapers
+ Wallpapers
- Widgets
- Widgets
+ Widgets
+ Widgets
-
-
+
+ MonitorsProjectSettingItem
- Set color
- Set color
+ Set color
+ Set color
- Please choose a color
- Please choose a color
+ Please choose a color
+ Please choose a color
-
-
+
+ Navigation
- All
- All
+ All
+ All
- Scenes
- Scenes
+ Scenes
+ Scenes
- Videos
- Videos
+ Videos
+ Videos
- Widgets
- Widgets
+ Widgets
+ Widgets
- Install Date Ascending
- Install Date Ascending
+ Install Date Ascending
+ Install Date Ascending
- Install Date Descending
- Install Date Descending
+ Install Date Descending
+ Install Date Descending
- Subscribed items:
- Subscribed items:
+ Subscribed items:
+ Subscribed items:
- Upload to the Steam Workshop
- Upload to the Steam Workshop
+ Upload to the Steam Workshop
+ Upload to the Steam Workshop
- Create
- Create
+ Create
+ Create
- Workshop
- Workshop
+ Workshop
+ Workshop
- Installed
- Installed
+ Installed
+ Installed
- Community
- Community
+ Community
+ Community
- Settings
- Settings
-
-
-
- NavigationWallpaperConfiguration
-
- Configurate active Wallpaper or Widgets
- Configurate active Wallpaper or Widgets
+ Settings
+ Settings
- No active Wallpaper or Widgets
- No active Wallpaper or Widgets
+ Mute/Unmute all Wallpaper
+ Mute/Unmute all Wallpaper
-
-
+
+ Pause/Play all Wallpaper
+ Pause/Play all Wallpaper
+
+
+ Configure Wallpaper
+ Configure Wallpaper
+
+
+ Minimize to Tray
+ Minimize to Tray
+
+
+ Exit
+ Exit
+
+
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
+
+
+ PopupOffline
- You need to run Steam for this. steamErrorRestart: %1 - steamErrorAPIInit: %2
- You need to run Steam for this. steamErrorRestart: %1 - steamErrorAPIInit: %2
+ You need to run Steam for this. steamErrorRestart: %1 - steamErrorAPIInit: %2
+ You need to run Steam for this. steamErrorRestart: %1 - steamErrorAPIInit: %2
- Back
- Back
+ Back
+ Back
-
-
+
+ PopupSteamWorkshopAgreement
- You Need to Agree To The Steam Subscriber Agreement First
- You Need to Agree To The Steam Subscriber Agreement First
+ You Need to Agree To The Steam Subscriber Agreement First
+ You Need to Agree To The Steam Subscriber Agreement First
- REQUIRES INTERNET CONNECTION AND FREE STEAM ACCOUNT TO ACTIVATE. Notice: Product offered subject to your acceptance of the Steam Subscriber Agreement (SSA). You must activate this product via the Internet by registering for a Steam account and accepting the SSA. Please see https://store.steampowered.com/subscriber_agreement/ to view the SSA prior to purchase. If you do not agree with the provisions of the SSA, you should return this game unopened to your retailer in accordance with their return policy.
- REQUIRES INTERNET CONNECTION AND FREE STEAM ACCOUNT TO ACTIVATE. Notice: Product offered subject to your acceptance of the Steam Subscriber Agreement (SSA). You must activate this product via the Internet by registering for a Steam account and accepting the SSA. Please see https://store.steampowered.com/subscriber_agreement/ to view the SSA prior to purchase. If you do not agree with the provisions of the SSA, you should return this game unopened to your retailer in accordance with their return policy.
+ REQUIRES INTERNET CONNECTION AND FREE STEAM ACCOUNT TO ACTIVATE. Notice: Product offered subject to your acceptance of the Steam Subscriber Agreement (SSA). You must activate this product via the Internet by registering for a Steam account and accepting the SSA. Please see https://store.steampowered.com/subscriber_agreement/ to view the SSA prior to purchase. If you do not agree with the provisions of the SSA, you should return this game unopened to your retailer in accordance with their return policy.
+ REQUIRES INTERNET CONNECTION AND FREE STEAM ACCOUNT TO ACTIVATE. Notice: Product offered subject to your acceptance of the Steam Subscriber Agreement (SSA). You must activate this product via the Internet by registering for a Steam account and accepting the SSA. Please see https://store.steampowered.com/subscriber_agreement/ to view the SSA prior to purchase. If you do not agree with the provisions of the SSA, you should return this game unopened to your retailer in accordance with their return policy.
- View The Steam Subscriber Agreement
- View The Steam Subscriber Agreement
+ View The Steam Subscriber Agreement
+ View The Steam Subscriber Agreement
- Accept Steam Workshop Agreement
- Accept Steam Workshop Agreement
+ Accept Steam Workshop Agreement
+ Accept Steam Workshop Agreement
-
-
+
+ QMLWallpaper
- Create a QML Wallpaper
- Create a QML Wallpaper
+ Create a QML Wallpaper
+ Create a QML Wallpaper
- General
- General
+ General
+ General
- Wallpaper name
- Wallpaper name
+ Wallpaper name
+ Wallpaper name
- Created By
- Created By
+ Created By
+ Created By
- Description
- Description
+ Description
+ Description
- License & Tags
- License & Tags
+ License & Tags
+ License & Tags
- Preview Image
- Preview Image
+ Preview Image
+ Preview Image
-
-
+
+ QMLWidget
- Create a QML widget
- Create a QML widget
+ Create a QML widget
+ Create a QML widget
- General
- General
+ General
+ General
- Widget name
- Widget name
+ Widget name
+ Widget name
- Created by
- Created by
+ Created by
+ Created by
- Tags
- Tags
+ Tags
+ Tags
-
-
+
+ SaveNotification
- Profile saved successfully!
- Profile saved successfully!
+ Profile saved successfully!
+ Profile saved successfully!
-
-
+
+ ScreenPlayItem
- NEW
- NEW
+ NEW
+ NEW
-
-
+
+ Search
- Search for Wallpaper & Widgets
- Search for Wallpaper & Widgets
+ Search for Wallpaper & Widgets
+ Search for Wallpaper & Widgets
-
-
+
+ Settings
- General
- General
+ General
+ General
- Autostart
- Autostart
+ Autostart
+ Autostart
- ScreenPlay will start with Windows and will setup your Desktop every time for you.
- ScreenPlay will start with Windows and will setup your Desktop every time for you.
+ ScreenPlay will start with Windows and will setup your Desktop every time for you.
+ ScreenPlay will start with Windows and will setup your Desktop every time for you.
- High priority Autostart
- High priority Autostart
+ High priority Autostart
+ High priority Autostart
- This options grants ScreenPlay a higher autostart priority than other apps.
- This options grants ScreenPlay a higher autostart priority than other apps.
+ This options grants ScreenPlay a higher autostart priority than other apps.
+ This options grants ScreenPlay a higher autostart priority than other apps.
- Send anonymous crash reports and statistics
- Send anonymous crash reports and statistics
+ Send anonymous crash reports and statistics
+ Send anonymous crash reports and statistics
- Help us make ScreenPlay faster and more stable. All collected data is purely anonymous and only used for development purposes! We use <a href="https://sentry.io">sentry.io</a> to collect and analyze this data. A <b>big thanks to them</b> for providing us with free premium support for open source projects!
- Help us make ScreenPlay faster and more stable. All collected data is purely anonymous and only used for development purposes! We use <a href="https://sentry.io">sentry.io</a> to collect and analyze this data. A <b>big thanks to them</b> for providing us with free premium support for open source projects!
+ Help us make ScreenPlay faster and more stable. All collected data is purely anonymous and only used for development purposes! We use <a href="https://sentry.io">sentry.io</a> to collect and analyze this data. A <b>big thanks to them</b> for providing us with free premium support for open source projects!
+ Help us make ScreenPlay faster and more stable. All collected data is purely anonymous and only used for development purposes! We use <a href="https://sentry.io">sentry.io</a> to collect and analyze this data. A <b>big thanks to them</b> for providing us with free premium support for open source projects!
- Set save location
- Set save location
+ Set save location
+ Set save location
- Set location
- Set location
+ Set location
+ Set location
- Your storage path is empty!
- Your storage path is empty!
+ Your storage path is empty!
+ Your storage path is empty!
- Important: Changing this directory has no effect on the workshop download path. ScreenPlay only supports having one content folder!
- Important: Changing this directory has no effect on the workshop download path. ScreenPlay only supports having one content folder!
+ Important: Changing this directory has no effect on the workshop download path. ScreenPlay only supports having one content folder!
+ Important: Changing this directory has no effect on the workshop download path. ScreenPlay only supports having one content folder!
- Language
- Language
+ Language
+ Language
- Set the ScreenPlay UI Language
- Set the ScreenPlay UI Language
+ Set the ScreenPlay UI Language
+ Set the ScreenPlay UI Language
- Theme
- Theme
+ Theme
+ Theme
- Switch dark/light theme
- Switch dark/light theme
+ Switch dark/light theme
+ Switch dark/light theme
- System Default
- System Default
+ System Default
+ System Default
- Dark
- Dark
+ Dark
+ Dark
- Light
- Light
+ Light
+ Light
- Performance
- Performance
+ Performance
+ Performance
- Pause wallpaper video rendering while another app is in the foreground
- Pause wallpaper video rendering while another app is in the foreground
+ Pause wallpaper video rendering while another app is in the foreground
+ Pause wallpaper video rendering while another app is in the foreground
- We disable the video rendering (not the audio!) for the best performance. If you have problem you can disable this behaviour here. Wallpaper restart required!
- We disable the video rendering (not the audio!) for the best performance. If you have problem you can disable this behaviour here. Wallpaper restart required!
+ We disable the video rendering (not the audio!) for the best performance. If you have problem you can disable this behaviour here. Wallpaper restart required!
+ We disable the video rendering (not the audio!) for the best performance. If you have problem you can disable this behaviour here. Wallpaper restart required!
- Default Fill Mode
- Default Fill Mode
+ Default Fill Mode
+ Default Fill Mode
- Set this property to define how the video is scaled to fit the target area.
- Set this property to define how the video is scaled to fit the target area.
+ Set this property to define how the video is scaled to fit the target area.
+ Set this property to define how the video is scaled to fit the target area.
- Stretch
- Stretch
+ Stretch
+ Stretch
- Fill
- Fill
+ Fill
+ Fill
- Contain
- Contain
+ Contain
+ Contain
- Cover
- Cover
+ Cover
+ Cover
- Scale-Down
- Scale-Down
+ Scale-Down
+ Scale-Down
- About
- About
+ About
+ About
- Thank you for using ScreenPlay
- Thank you for using ScreenPlay
+ Thank you for using ScreenPlay
+ Thank you for using ScreenPlay
- Hi, I'm Elias Steurer also known as Kelteseth and I'm the developer of ScreenPlay. Thank you for using my software. You can follow me to receive updates about ScreenPlay here:
- Hi, I'm Elias Steurer also known as Kelteseth and I'm the developer of ScreenPlay. Thank you for using my software. You can follow me to receive updates about ScreenPlay here:
+ Hi, I'm Elias Steurer also known as Kelteseth and I'm the developer of ScreenPlay. Thank you for using my software. You can follow me to receive updates about ScreenPlay here:
+ Hi, I'm Elias Steurer also known as Kelteseth and I'm the developer of ScreenPlay. Thank you for using my software. You can follow me to receive updates about ScreenPlay here:
- Version
- Version
+ Version
+ Version
- ScreenPlay Build Version
- ScreenPlay Build Version
+ Open Changelog
+ Open Changelog
- Open Changelog
- Open Changelog
+ Third Party Software
+ Third Party Software
- Third Party Software
- Third Party Software
+ ScreenPlay would not be possible without the work of others. A big thank you to:
+ ScreenPlay would not be possible without the work of others. A big thank you to:
- ScreenPlay would not be possible without the work of others. A big thank you to:
- ScreenPlay would not be possible without the work of others. A big thank you to:
+ Licenses
+ Licenses
- Licenses
- Licenses
+ Logs
+ Logs
- Logs
- Logs
+ If your ScreenPlay missbehaves this is a good way to look for answers. This shows all logs and warning during runtime.
+ If your ScreenPlay missbehaves this is a good way to look for answers. This shows all logs and warning during runtime.
- If your ScreenPlay missbehaves this is a good way to look for answers. This shows all logs and warning during runtime.
- If your ScreenPlay missbehaves this is a good way to look for answers. This shows all logs and warning during runtime.
+ Show Logs
+ Show Logs
- Show Logs
- Show Logs
+ Data Protection
+ Data Protection
- Data Protection
- Data Protection
+ We use you data very carefully to improve ScreenPlay. We do not sell or share this (anonymous) information with others!
+ We use you data very carefully to improve ScreenPlay. We do not sell or share this (anonymous) information with others!
- We use you data very carefully to improve ScreenPlay. We do not sell or share this (anonymous) information with others!
- We use you data very carefully to improve ScreenPlay. We do not sell or share this (anonymous) information with others!
+ Privacy
+ Privacy
- Privacy
- Privacy
+ ScreenPlay Build Version
+
+ ScreenPlay Build Version
+
-
-
+
+ SettingsExpander
- Copy text to clipboard
- Copy text to clipboard
+ Copy text to clipboard
+ Copy text to clipboard
-
-
+
+ Sidebar
- Tools Overview
- Tools Overview
+ Tools Overview
+ Tools Overview
- Video Import h264 (.mp4)
-
+ Video Import h264 (.mp4)
+ Video Import h264 (.mp4)
- Video Import VP8 & VP9 (.webm)
-
+ Video Import VP8 & VP9 (.webm)
+ Video Import VP8 & VP9 (.webm)
- Video import (all types)
-
+ Video import (all types)
+ Video import (all types)
- GIF Wallpaper
- GIF Wallpaper
+ GIF Wallpaper
+ GIF Wallpaper
- QML Wallpaper
- QML Wallpaper
+ QML Wallpaper
+ QML Wallpaper
- HTML5 Wallpaper
- HTML5 Wallpaper
+ HTML5 Wallpaper
+ HTML5 Wallpaper
- Website Wallpaper
- Website Wallpaper
+ Website Wallpaper
+ Website Wallpaper
- QML Widget
- QML Widget
+ QML Widget
+ QML Widget
- HTML Widget
- HTML Widget
+ HTML Widget
+ HTML Widget
- Set Wallpaper
- Set Wallpaper
+ Set Wallpaper
+ Set Wallpaper
- Set Widget
- Set Widget
+ Set Widget
+ Set Widget
- Headline
- Headline
+ Headline
+ Headline
- Select a Monitor to display the content
- Select a Monitor to display the content
+ Select a Monitor to display the content
+ Select a Monitor to display the content
- Set Volume
- Set Volume
+ Set Volume
+ Set Volume
- Fill Mode
- Fill Mode
+ Fill Mode
+ Fill Mode
- Stretch
- Stretch
+ Stretch
+ Stretch
- Fill
- Fill
+ Fill
+ Fill
- Contain
- Contain
+ Contain
+ Contain
- Cover
- Cover
+ Cover
+ Cover
- Scale-Down
- Scale-Down
+ Scale-Down
+ Scale-Down
- Size:
- Size:
+ Size:
+ Size:
- No description...
- No description...
+ No description...
+ No description...
- Click here if you like the content
- Click here if you like the content
+ Click here if you like the content
+ Click here if you like the content
- Click here if you do not like the content
- Click here if you do not like the content
+ Click here if you do not like the content
+ Click here if you do not like the content
- Subscribtions:
- Subscribtions:
+ Subscribtions:
+ Subscribtions:
- Open In Steam
- Open In Steam
+ Open In Steam
+ Open In Steam
- Subscribed!
- Subscribed!
+ Subscribed!
+ Subscribed!
- Subscribe
- Subscribe
+ Subscribe
+ Subscribe
-
-
+
+ StartInfo
- Free tools to help you to create wallpaper
-
+ Free tools to help you to create wallpaper
+ Free tools to help you to create wallpaper
- Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
-
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
-
-
+
+ SteamNotAvailable
- Could not load steam integration!
- Could not load steam integration!
+ Could not load steam integration!
+ Could not load steam integration!
-
-
+
+ SteamProfile
- Back
- Back
+ Back
+ Back
- Forward
- Forward
+ Forward
+ Forward
-
-
+
+ SteamWorkshopStartPage
- Loading
- Loading
+ Loading
+ Loading
- Download now!
- Download now!
+ Download now!
+ Download now!
- Downloading...
- Downloading...
+ Downloading...
+ Downloading...
- Details
- Details
+ Details
+ Details
- Open In Steam
- Open In Steam
+ Open In Steam
+ Open In Steam
- Profile
- Profile
+ Profile
+ Profile
- Upload
- Upload
+ Upload
+ Upload
- Search for Wallpaper and Widgets...
- Search for Wallpaper and Widgets...
+ Search for Wallpaper and Widgets...
+ Search for Wallpaper and Widgets...
- Open Workshop in Steam
- Open Workshop in Steam
+ Open Workshop in Steam
+ Open Workshop in Steam
- Ranked By Vote
- Ranked By Vote
+ Ranked By Vote
+ Ranked By Vote
- Publication Date
- Publication Date
+ Publication Date
+ Publication Date
- Ranked By Trend
- Ranked By Trend
+ Ranked By Trend
+ Ranked By Trend
- Favorited By Friends
- Favorited By Friends
+ Favorited By Friends
+ Favorited By Friends
- Created By Friends
- Created By Friends
+ Created By Friends
+ Created By Friends
- Created By Followed Users
- Created By Followed Users
+ Created By Followed Users
+ Created By Followed Users
- Not Yet Rated
- Not Yet Rated
+ Not Yet Rated
+ Not Yet Rated
- Total VotesAsc
- Total VotesAsc
+ Total VotesAsc
+ Total VotesAsc
- Votes Up
- Votes Up
+ Votes Up
+ Votes Up
- Total Unique Subscriptions
- Total Unique Subscriptions
+ Total Unique Subscriptions
+ Total Unique Subscriptions
- Back
- Back
+ Back
+ Back
- Forward
- Forward
+ Forward
+ Forward
-
-
+
+ TagSelector
- Save
- Save
+ Save
+ Save
- Add tag
- Add tag
+ Add tag
+ Add tag
- Cancel
- Cancel
+ Cancel
+ Cancel
- Add Tag
- Add Tag
+ Add Tag
+ Add Tag
-
-
+
+ TextField
- Label
- Label
+ Label
+ Label
- *Required
- *Required
+ *Required
+ *Required
-
-
+
+ TrayIcon
- ScreenPlay - Double click to change you settings.
- ScreenPlay - Double click to change you settings.
+ ScreenPlay - Double click to change you settings.
+ ScreenPlay - Double click to change you settings.
- Open ScreenPlay
- Open ScreenPlay
+ Open ScreenPlay
+ Open ScreenPlay
- Mute all
- Mute all
+ Mute all
+ Mute all
- Unmute all
- Unmute all
+ Unmute all
+ Unmute all
- Pause all
- Pause all
+ Pause all
+ Pause all
- Play all
- Play all
+ Play all
+ Play all
- Quit
- Quit
+ Quit
+ Quit
-
-
+
+ UploadProject
- Upload Wallpaper/Widgets to Steam
- Upload Wallpaper/Widgets to Steam
+ Upload Wallpaper/Widgets to Steam
+ Upload Wallpaper/Widgets to Steam
- Abort
- Abort
+ Abort
+ Abort
- Upload Selected Projects
- Upload Selected Projects
+ Upload Selected Projects
+ Upload Selected Projects
- Finish
- Finish
+ Finish
+ Finish
-
-
+
+ UploadProjectBigItem
- Type:
- Type:
+ Type:
+ Type:
- Open Folder
- Open Folder
+ Open Folder
+ Open Folder
- Invalid Project!
- Invalid Project!
+ Invalid Project!
+ Invalid Project!
-
-
+
+ UploadProjectItem
- Fail
- Fail
+ Fail
+ Fail
- No Connection
- No Connection
+ No Connection
+ No Connection
- Invalid Password
- Invalid Password
+ Invalid Password
+ Invalid Password
- Logged In Elsewhere
- Logged In Elsewhere
+ Logged In Elsewhere
+ Logged In Elsewhere
- Invalid Protocol Version
- Invalid Protocol Version
+ Invalid Protocol Version
+ Invalid Protocol Version
- Invalid Param
- Invalid Param
+ Invalid Param
+ Invalid Param
- File Not Found
- File Not Found
+ File Not Found
+ File Not Found
- Busy
- Busy
+ Busy
+ Busy
- Invalid State
- Invalid State
+ Invalid State
+ Invalid State
- Invalid Name
- Invalid Name
+ Invalid Name
+ Invalid Name
- Invalid Email
- Invalid Email
+ Invalid Email
+ Invalid Email
- Duplicate Name
- Duplicate Name
+ Duplicate Name
+ Duplicate Name
- Access Denied
- Access Denied
+ Access Denied
+ Access Denied
- Timeout
- Timeout
+ Timeout
+ Timeout
- Banned
- Banned
+ Banned
+ Banned
- Account Not Found
- Account Not Found
+ Account Not Found
+ Account Not Found
- Invalid SteamID
- Invalid SteamID
+ Invalid SteamID
+ Invalid SteamID
- Service Unavailable
- Service Unavailable
+ Service Unavailable
+ Service Unavailable
- Not Logged On
- Not Logged On
+ Not Logged On
+ Not Logged On
- Pending
- Pending
+ Pending
+ Pending
- Encryption Failure
- Encryption Failure
+ Encryption Failure
+ Encryption Failure
- Insufficient Privilege
- Insufficient Privilege
+ Insufficient Privilege
+ Insufficient Privilege
- Limit Exceeded
- Limit Exceeded
+ Limit Exceeded
+ Limit Exceeded
- Revoked
- Revoked
+ Revoked
+ Revoked
- Expired
- Expired
+ Expired
+ Expired
- Already Redeemed
- Already Redeemed
+ Already Redeemed
+ Already Redeemed
- Duplicate Request
- Duplicate Request
+ Duplicate Request
+ Duplicate Request
- Already Owned
- Already Owned
+ Already Owned
+ Already Owned
- IP Not Found
- IP Not Found
+ IP Not Found
+ IP Not Found
- Persist Failed
- Persist Failed
+ Persist Failed
+ Persist Failed
- Locking Failed
- Locking Failed
+ Locking Failed
+ Locking Failed
- Logon Session Replaced
- Logon Session Replaced
+ Logon Session Replaced
+ Logon Session Replaced
- Connect Failed
- Connect Failed
+ Connect Failed
+ Connect Failed
- Handshake Failed
- Handshake Failed
+ Handshake Failed
+ Handshake Failed
- IO Failure
- IO Failure
+ IO Failure
+ IO Failure
- Remote Disconnect
- Remote Disconnect
+ Remote Disconnect
+ Remote Disconnect
- Shopping Cart Not Found
- Shopping Cart Not Found
+ Shopping Cart Not Found
+ Shopping Cart Not Found
- Blocked
- Blocked
+ Blocked
+ Blocked
- Ignored
- Ignored
+ Ignored
+ Ignored
- No Match
- No Match
+ No Match
+ No Match
- Account Disabled
- Account Disabled
+ Account Disabled
+ Account Disabled
- Service ReadOnly
- Service ReadOnly
+ Service ReadOnly
+ Service ReadOnly
- Account Not Featured
- Account Not Featured
+ Account Not Featured
+ Account Not Featured
- Administrator OK
- Administrator OK
+ Administrator OK
+ Administrator OK
- Content Version
- Content Version
+ Content Version
+ Content Version
- Try Another CM
- Try Another CM
+ Try Another CM
+ Try Another CM
- Password Required To Kick Session
-
+ Password Required To Kick Session
+ Password Required To Kick Session
- Already Logged In Elsewhere
- Already Logged In Elsewhere
+ Already Logged In Elsewhere
+ Already Logged In Elsewhere
- Suspended
- Suspended
+ Suspended
+ Suspended
- Cancelled
- Cancelled
+ Cancelled
+ Cancelled
- Data Corruption
- Data Corruption
+ Data Corruption
+ Data Corruption
- Disk Full
- Disk Full
+ Disk Full
+ Disk Full
- Remote Call Failed
- Remote Call Failed
+ Remote Call Failed
+ Remote Call Failed
- Password Unset
- Password Unset
+ Password Unset
+ Password Unset
- External Account Unlinked
- External Account Unlinked
+ External Account Unlinked
+ External Account Unlinked
- PSN Ticket Invalid
- PSN Ticket Invalid
+ PSN Ticket Invalid
+ PSN Ticket Invalid
- External Account Already Linked
- External Account Already Linked
+ External Account Already Linked
+ External Account Already Linked
- Remote File Conflict
- Remote File Conflict
+ Remote File Conflict
+ Remote File Conflict
- Illegal Password
- Illegal Password
+ Illegal Password
+ Illegal Password
- Same As Previous Value
- Same As Previous Value
+ Same As Previous Value
+ Same As Previous Value
- Account Logon Denied
- Account Logon Denied
+ Account Logon Denied
+ Account Logon Denied
- Cannot Use Old Password
- Cannot Use Old Password
+ Cannot Use Old Password
+ Cannot Use Old Password
- Invalid Login AuthCode
- Invalid Login AuthCode
+ Invalid Login AuthCode
+ Invalid Login AuthCode
- Account Logon Denied No Mail
- Account Logon Denied No Mail
+ Account Logon Denied No Mail
+ Account Logon Denied No Mail
- Hardware Not Capable Of IPT
- Hardware Not Capable Of IPT
+ Hardware Not Capable Of IPT
+ Hardware Not Capable Of IPT
- IPT Init Error
- IPT Init Error
+ IPT Init Error
+ IPT Init Error
- Parental Control Restricted
- Parental Control Restricted
+ Parental Control Restricted
+ Parental Control Restricted
- Facebook Query Error
- Facebook Query Error
+ Facebook Query Error
+ Facebook Query Error
- Expired Login Auth Code
- Expired Login Auth Code
+ Expired Login Auth Code
+ Expired Login Auth Code
- IP Login Restriction Failed
- IP Login Restriction Failed
+ IP Login Restriction Failed
+ IP Login Restriction Failed
- Account Locked Down
- Account Locked Down
+ Account Locked Down
+ Account Locked Down
- Account Logon Denied Verified Email Required
- Account Logon Denied Verified Email Required
+ Account Logon Denied Verified Email Required
+ Account Logon Denied Verified Email Required
- No MatchingURL
- No MatchingURL
+ No MatchingURL
+ No MatchingURL
- Bad Response
- Bad Response
+ Bad Response
+ Bad Response
- Require Password ReEntry
- Require Password ReEntry
+ Require Password ReEntry
+ Require Password ReEntry
- Value Out Of Range
- Value Out Of Range
+ Value Out Of Range
+ Value Out Of Range
- Unexpecte Error
- Unexpecte Error
+ Unexpecte Error
+ Unexpecte Error
- Disabled
- Disabled
+ Disabled
+ Disabled
- Invalid CEG Submission
- Invalid CEG Submission
+ Invalid CEG Submission
+ Invalid CEG Submission
- Restricted Device
- Restricted Device
+ Restricted Device
+ Restricted Device
- Region Locked
- Region Locked
+ Region Locked
+ Region Locked
- Rate Limit Exceeded
- Rate Limit Exceeded
+ Rate Limit Exceeded
+ Rate Limit Exceeded
- Account Login Denied Need Two Factor
- Account Login Denied Need Two Factor
+ Account Login Denied Need Two Factor
+ Account Login Denied Need Two Factor
- Item Deleted
- Item Deleted
+ Item Deleted
+ Item Deleted
- Account Login Denied Throttle
- Account Login Denied Throttle
+ Account Login Denied Throttle
+ Account Login Denied Throttle
- Two Factor Code Mismatch
- Two Factor Code Mismatch
+ Two Factor Code Mismatch
+ Two Factor Code Mismatch
- Two Factor Activation Code Mismatch
- Two Factor Activation Code Mismatch
+ Two Factor Activation Code Mismatch
+ Two Factor Activation Code Mismatch
- Account Associated To Multiple Partners
- Account Associated To Multiple Partners
+ Account Associated To Multiple Partners
+ Account Associated To Multiple Partners
- Not Modified
- Not Modified
+ Not Modified
+ Not Modified
- No Mobile Device
- No Mobile Device
+ No Mobile Device
+ No Mobile Device
- Time Not Synced
- Time Not Synced
+ Time Not Synced
+ Time Not Synced
- Sms Code Failed
- Sms Code Failed
+ Sms Code Failed
+ Sms Code Failed
- Account Limit Exceeded
- Account Limit Exceeded
+ Account Limit Exceeded
+ Account Limit Exceeded
- Account Activity Limit Exceeded
- Account Activity Limit Exceeded
+ Account Activity Limit Exceeded
+ Account Activity Limit Exceeded
- Phone Activity Limit Exceeded
- Phone Activity Limit Exceeded
+ Phone Activity Limit Exceeded
+ Phone Activity Limit Exceeded
- Refund To Wallet
- Refund To Wallet
+ Refund To Wallet
+ Refund To Wallet
- Email Send Failure
- Email Send Failure
+ Email Send Failure
+ Email Send Failure
- Not Settled
- Not Settled
+ Not Settled
+ Not Settled
- Need Captcha
- Need Captcha
+ Need Captcha
+ Need Captcha
- GSLT Denied
- GSLT Denied
+ GSLT Denied
+ GSLT Denied
- GS Owner Denied
- GS Owner Denied
+ GS Owner Denied
+ GS Owner Denied
- Invalid Item Type
- Invalid Item Type
+ Invalid Item Type
+ Invalid Item Type
- IP Banned
- IP Banned
+ IP Banned
+ IP Banned
- GSLT Expired
- GSLT Expired
+ GSLT Expired
+ GSLT Expired
- Insufficient Funds
- Insufficient Funds
+ Insufficient Funds
+ Insufficient Funds
- Too Many Pending
- Too Many Pending
+ Too Many Pending
+ Too Many Pending
- No Site Licenses Found
- No Site Licenses Found
+ No Site Licenses Found
+ No Site Licenses Found
- WG Network Send Exceeded
- WG Network Send Exceeded
+ WG Network Send Exceeded
+ WG Network Send Exceeded
- Account Not Friends
- Account Not Friends
+ Account Not Friends
+ Account Not Friends
- Limited User Account
- Limited User Account
+ Limited User Account
+ Limited User Account
- Cant Remove Item
- Cant Remove Item
+ Cant Remove Item
+ Cant Remove Item
- Account Deleted
- Account Deleted
+ Account Deleted
+ Account Deleted
- Existing User Cancelled License
- Existing User Cancelled License
+ Existing User Cancelled License
+ Existing User Cancelled License
- Community Cooldown
- Community Cooldown
+ Community Cooldown
+ Community Cooldown
- Status:
- Status:
+ Status:
+ Status:
- Upload Progress:
- Upload Progress:
+ Upload Progress:
+ Upload Progress:
-
-
+
+ WebsiteWallpaper
- Create a Website Wallpaper
- Create a Website Wallpaper
+ Create a Website Wallpaper
+ Create a Website Wallpaper
- General
- General
+ General
+ General
- Wallpaper name
- Wallpaper name
+ Wallpaper name
+ Wallpaper name
- Created By
- Created By
+ Created By
+ Created By
- Description
- Description
+ Description
+ Description
- Tags
- Tags
+ Tags
+ Tags
- Preview Image
- Preview Image
+ Preview Image
+ Preview Image
-
-
+
+ WizardPage
- Save
- Save
+ Save
+ Save
- Saving...
- Saving...
+ Saving...
+ Saving...
-
-
+
+ WorkshopItem
- Successfully subscribed to Workshop Item!
- Successfully subscribed to Workshop Item!
+ Successfully subscribed to Workshop Item!
+ Successfully subscribed to Workshop Item!
- Download complete!
- Download complete!
+ Download complete!
+ Download complete!
-
-
+
+ XMLNewsfeed
- News & Patchnotes
- News & Patchnotes
+ News & Patchnotes
+ News & Patchnotes
-
+
diff --git a/ScreenPlay/translations/ScreenPlay_pl_PL.qm b/ScreenPlay/translations/ScreenPlay_pl_PL.qm
new file mode 100644
index 00000000..39f5080c
Binary files /dev/null and b/ScreenPlay/translations/ScreenPlay_pl_PL.qm differ
diff --git a/ScreenPlay/translations/ScreenPlay_pl_PL.ts b/ScreenPlay/translations/ScreenPlay_pl_PL.ts
new file mode 100644
index 00000000..8b53624d
--- /dev/null
+++ b/ScreenPlay/translations/ScreenPlay_pl_PL.ts
@@ -0,0 +1,1937 @@
+
+
+
+
+ ColorPicker
+
+ Red
+ Czerwony
+
+
+ Green
+ Zielony
+
+
+ Blue
+ Niebieski
+
+
+ RGB
+ RGB
+
+
+ HSV
+ HSV
+
+
+ R:
+ R:
+
+
+ G:
+ G:
+
+
+ B:
+ B:
+
+
+ H:
+ H:
+
+
+ S:
+ S:
+
+
+ V:
+ V:
+
+
+ Alpha:
+ Alfa:
+
+
+ #
+ #
+
+
+
+ Community
+
+ News
+ Aktualności
+
+
+ Wiki
+ Wiki
+
+
+ Forum
+ Forum
+
+
+ Issue List
+ Lista problemów
+
+
+ Contribute
+ Udziel się
+
+
+ Steam Workshop
+ Warsztat Steam
+
+
+
+ CommunityNavItem
+
+ Open in browser
+ Otwórz w przeglądarce
+
+
+
+ CreateWallpaperInit
+
+ Import any video type
+ Importuj dowolny typ filmu
+
+
+ Depending on your PC configuration it is better to convert your wallpaper to a specific video codec. If both have bad performance you can also try a QML wallpaper! Supported video formats are:
+
+*.mp4 *.mpg *.mp2 *.mpeg *.ogv *.avi *.wmv *.m4v *.3gp *.flv
+ W zależności od konfiguracji Twojego urządzenia zalecamy przekonwertować tapetę do konkretnego kodeka wideo. Jeśli wydajność jest słaba w obu przypadkach, możesz wypróbować tapetę QML! Wspierane są następujące formaty wideo:
+
+*.mp4 *.mpg *.mp2 *.mpeg *.ogv *.avi *.wmv *.m4v *.3gp *.flv
+
+
+ Set your preffered video codec:
+ Ustaw preferowany kodek wideo:
+
+
+ Quality slider. Lower value means better quality.
+ Suwak jakości. Mniejsza wartość oznacza lepszą jakość.
+
+
+ Open Documentation
+ Otwórz dokumentację
+
+
+ Select file
+ Wybierz plik
+
+
+
+ CreateWallpaperResult
+
+ An error occurred!
+ Wystąpił błąd!
+
+
+ Copy text to clipboard
+ Skopiuj tekst do schowka
+
+
+ Back to create and send an error report!
+ Wróć do tworzenia i wyślij raport o błędzie!
+
+
+
+ CreateWallpaperVideoImportConvert
+
+
+
+
+
+ Generating preview image...
+ Generowanie obrazu podglądu...
+
+
+ Generating preview thumbnail image...
+ Generowanie miniaturki podglądu...
+
+
+ Generating 5 second preview video...
+ Generowanie 5-sekundowego podglądu wideo...
+
+
+ Generating preview gif...
+ Generowanie podglądu gif...
+
+
+ Converting Audio...
+ Konwertowanie dźwięku...
+
+
+ Converting Video... This can take some time!
+ Konwertowanie wideo... Może to zająć trochę czasu!
+
+
+ Converting Video ERROR!
+ BŁĄD konwertowania wideo!
+
+
+ Analyse Video ERROR!
+ BŁĄD analizowania filmu!
+
+
+ Convert a video to a wallpaper
+ Konwertuj film na tapetę
+
+
+ Generating preview video...
+ Generowanie podglądu wideo...
+
+
+ Name (required!)
+ Nazwa (wymagane!)
+
+
+ Description
+ Opis
+
+
+ Youtube URL
+ Adres URL YouTube
+
+
+ Abort
+ Przerwij
+
+
+ Save
+ Zapisz
+
+
+ Save Wallpaper...
+ Zapisz tapetę...
+
+
+
+ DefaultVideoControls
+
+ Volume
+ Głośność
+
+
+ Playback rate
+ Prędkość odtwarzania
+
+
+ Current Video Time
+ Moment filmu
+
+
+ Fill Mode
+ Fill Mode
+
+
+ Stretch
+ Rozciągnięcie
+
+
+ Fill
+ Wypełnij
+
+
+ Contain
+ Contain
+
+
+ Cover
+ Cover
+
+
+ Scale_Down
+ Scale_Down
+
+
+
+ FileSelector
+
+ Clear
+ Wyczyść
+
+
+ Select File
+ Wybierz plik
+
+
+ Please choose a file
+ Należy wybrać plik
+
+
+
+ Forum
+
+ Download Wallpaper and Widgets from our forums manually. If you want to download Steam Workshop content you have to install ScreenPlay via Steam.
+ Pobierz ręcznie tapety i widżety z naszego forum. Jeśli chcesz pobierać treści z Warsztatu Steam, należy zainstalować ScreenPlay przez Steam.
+
+
+ Install Steam Version
+ Zainstaluj wersję Steam
+
+
+ Open In Browser
+ Otwórz w przeglądarce
+
+
+
+ GifWallpaper
+
+ Import a Gif Wallpaper
+ Importuj tapetę Gif
+
+
+ Drop a *.gif file here or use 'Select file' below.
+ Przeciągnij tutaj plik *.gif lub naciśnij 'Wybierz plik'.
+
+
+ Select your gif
+ Wybierz swój gif
+
+
+ General
+ Ogólne
+
+
+ Wallpaper name
+ Nazwa tapety
+
+
+ Created By
+ Utworzone przez
+
+
+ Tags
+ Znaczniki
+
+
+
+ HTMLWallpaper
+
+ Create a HTML Wallpaper
+ Utwórz tapetę HTML
+
+
+ General
+ Ogólne
+
+
+ Wallpaper name
+ Nazwa tapety
+
+
+ Created By
+ Utworzone przez
+
+
+ Description
+ Opis
+
+
+ License & Tags
+ Licencja i znaczniki
+
+
+ Preview Image
+ Obraz podglądu
+
+
+
+ HTMLWidget
+
+ Create a HTML widget
+ Utwórz widżet HTML
+
+
+ General
+ Ogólne
+
+
+ Widget name
+ Nazwa widżetu
+
+
+ Created by
+ Utworzone przez
+
+
+ Tags
+ Znaczniki
+
+
+
+ HeadlineSection
+
+ Headline Section
+ Sekcja nagłówka
+
+
+
+ ImageSelector
+
+ Set your own preview image
+ Ustaw swój obraz podglądu
+
+
+ Clear
+ Wyczyść
+
+
+ Select Preview Image
+ Wybierz obraz podglądu
+
+
+
+ ImportWebmConvert
+
+
+
+
+
+ AnalyseVideo...
+ Analizowanie filmu...
+
+
+ Generating preview image...
+ Generowanie obrazu podglądu...
+
+
+ Generating preview thumbnail image...
+ Generowanie miniaturki podglądu...
+
+
+ Generating 5 second preview video...
+ Generowanie 5-sekundowego podglądu wideo...
+
+
+ Generating preview gif...
+ Generowanie podglądu gif...
+
+
+ Converting Audio...
+ Konwertowanie dźwięku...
+
+
+ Converting Video... This can take some time!
+ Konwertowanie wideo... Może to zająć trochę czasu!
+
+
+ Converting Video ERROR!
+ BŁĄD konwertowania wideo!
+
+
+ Analyse Video ERROR!
+ BŁĄD analizowania filmu!
+
+
+ Import a video to a wallpaper
+ Importowanie filmu jako tapetę
+
+
+ Generating preview video...
+ Generowanie podglądu wideo...
+
+
+ Name (required!)
+ Nazwa (wymagane!)
+
+
+ Description
+ Opis
+
+
+ Youtube URL
+ Adres URL YouTube
+
+
+ Abort
+ Przerwij
+
+
+ Save
+ Zapisz
+
+
+ Save Wallpaper...
+ Zapisz tapetę...
+
+
+
+ ImportWebmInit
+
+ Import a .webm video
+ Importuj film .webm
+
+
+ When importing webm we can skip the long conversion. When you get unsatisfying results with the ScreenPlay importer from 'ideo import and convert (all types)' you can also convert via the free and open source HandBrake!
+ Importowanie pliku webm pozwala na ominięcie czasochłonnej konwersji. Jeśli rezultat importera ScreenPlay po użyciu opcji 'importuj i konwertuj film (dowolny typ)' nie będzie dla Ciebie satysfakcjonujący, możesz przekonwertować film korzystając z bezpłatnego programu o otwartym źródle o nazwie HandBrake!
+
+
+ Invalid file type. Must be valid VP8 or VP9 (*.webm)!
+ Nieprawidłowy typ pliku. Należy wybrać plik VP8 lub VP9 (*.webm)!
+
+
+ Drop a *.webm file here or use 'Select file' below.
+ Przeciągnij tutaj plik *.webm lub naciśnij 'Wybierz plik'.
+
+
+ Open Documentation
+ Otwórz dokumentację
+
+
+ Select file
+ Wybierz plik
+
+
+
+ Importh264Convert
+
+ AnalyseVideo...
+ Analizowanie filmu...
+
+
+ Generating preview image...
+ Generowanie obrazu podglądu...
+
+
+ Generating preview thumbnail image...
+ Generowanie miniaturki podglądu...
+
+
+ Generating 5 second preview video...
+ Generowanie 5-sekundowego podglądu wideo...
+
+
+ Generating preview gif...
+ Generowanie podglądu gif...
+
+
+ Converting Audio...
+ Konwertowanie dźwięku...
+
+
+ Converting Video... This can take some time!
+ Konwertowanie wideo... Może to zająć trochę czasu!
+
+
+ Converting Video ERROR!
+ BŁĄD konwertowania wideo!
+
+
+ Analyse Video ERROR!
+ BŁĄD analizowania filmu!
+
+
+ Import a video to a wallpaper
+ Importowanie filmu jako tapetę
+
+
+ Generating preview video...
+ Generowanie podglądu wideo...
+
+
+ Name (required!)
+ Nazwa (wymagane!)
+
+
+ Description
+ Opis
+
+
+ Youtube URL
+ Adres URL YouTube
+
+
+ Abort
+ Przerwij
+
+
+ Save
+ Zapisz
+
+
+ Save Wallpaper...
+ Zapisz tapetę...
+
+
+
+ Importh264Init
+
+ Import a .mp4 video
+ Importuj film .mp4
+
+
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
+ ScreenPlay V0.15 i nowsze mogą odtwarzać pliki *.mp4 (znane również jako h264). Może to poprawić wydajność na starszych systemach.
+
+
+ Invalid file type. Must be valid h264 (*.mp4)!
+ Nieprawidłowy typ pliku. Należy użyć prawidłowy plik h264 (*.mp4)!
+
+
+ Drop a *.mp4 file here or use 'Select file' below.
+ Przeciągnij tutaj plik *.mp4 lub naciśnij 'Wybierz plik'.
+
+
+ Open Documentation
+ Otwórz dokumentację
+
+
+ Select file
+ Wybierz plik
+
+
+
+ Installed
+
+
+
+
+
+ Refreshing!
+ Odświeżanie!
+
+
+ Pull to refresh!
+ Przesuń, aby odświeżyć!
+
+
+ Get more Wallpaper & Widgets via the Steam workshop!
+ Więcej tapet oraz widżetów dostępne przez Warsztat Steam!
+
+
+ Open containing folder
+ Otwórz lokalizację pliku
+
+
+ Remove Item
+ Usuń element
+
+
+ Remove via Workshop
+ Usuń poprzez Warsztat
+
+
+ Open Workshop Page
+ Otwórz stronę Warsztatu
+
+
+ Are you sure you want to delete this item?
+ Czy na pewno chcesz usunąć ten element?
+
+
+
+ InstalledWelcomeScreen
+
+ Get free Widgets and Wallpaper via the Steam Workshop
+ Uzyskaj bezpłatne widżety i tapety poprzez Warsztat Steam
+
+
+ Browse the Steam Workshop
+ Przeglądaj Warsztat Steam
+
+
+
+ LicenseSelector
+
+ License
+ Licencja
+
+
+ Share — copy and redistribute the material in any medium or format. Adapt — remix, transform, and build upon the material for any purpose, even commercially.
+ Udostępnianie — możesz kopiować i rozpowszechniać ten materiał w dowolnym formacie na dowolnym nośniku danych. Dostosowywanie — możesz poprawiać, przekształcać oraz używać tego materiału jako bazy pod inne prace w dowolnym celu, nawet komercyjnie.
+
+
+ You grant other to remix your work and change the license to their liking.
+ Pozwalasz innym osobom na przekształcanie Twojej treści oraz zmienianie licencji w razie potrzeby.
+
+
+ Share — copy and redistribute the material in any medium or format. Adapt — remix, transform, and build upon the material. You are not allowed to use it commercially!
+ Udostępnianie — możesz kopiować i rozpowszechniać ten materiał w dowolnym formacie na dowolnym nośniku danych. Dostosowywanie — możesz poprawiać, przekształcać oraz używać tego materiału jako bazy pod inne prace. Nie możesz używać tego materiału komercyjnie!
+
+
+ You allow everyone to do anything with your work.
+ Pozwalasz każdemu robić cokolwiek chce z Twoją treścią.
+
+
+ You grant other to remix your work but it must remain under the GPLv3. We recommend this license for all code wallpaper!
+ Pozwalasz innym osobom na przekształcanie Twojej treści, ale musi pozostać na licencji GPLv3. Zalecamy wybranie tej licencji dla wszystkich tapet napisanych kodem!
+
+
+ You do not share any rights and nobody is allowed to use or remix it (Not recommended). Can also used to credit work others.
+ Zastrzegasz sobie wszystkie prawa i nie pozwalasz nikomu na przekształcanie tej treści (nie zalecane). Możesz użyć tej opcji, aby uznać prawa innych osób.
+
+
+
+ MonitorConfiguration
+
+ Your monitor setup changed!
+ Please configure your wallpaper again.
+ Konfiguracja Twojego monitora uległa zmianie!
+ Należy ponownie skonfigurować tapetę.
+
+
+
+ Monitors
+
+ Wallpaper Configuration
+ Konfiguracja tapety
+
+
+ Remove selected
+ Usuń wybrane
+
+
+ Remove
+ Usuń
+
+
+ Wallpapers
+ Tapety
+
+
+ Widgets
+ Widżety
+
+
+
+ MonitorsProjectSettingItem
+
+ Set color
+ Ustaw kolor
+
+
+ Please choose a color
+ Należy wybrać kolor
+
+
+
+ Navigation
+
+ All
+ Wszystko
+
+
+ Scenes
+ Sceny
+
+
+ Videos
+ Filmy
+
+
+ Widgets
+ Widżety
+
+
+ Install Date Ascending
+ Data instalacji: rosnąco
+
+
+ Install Date Descending
+ Data instalacji: malejąco
+
+
+ Subscribed items:
+ Subskrybowane:
+
+
+ Upload to the Steam Workshop
+ Prześlij do Warsztatu Steam
+
+
+ Create
+ Utwórz
+
+
+ Workshop
+ Warsztat
+
+
+ Installed
+ Zainstalowane
+
+
+ Community
+ Społeczność
+
+
+ Settings
+ Ustawienia
+
+
+ Mute/Unmute all Wallpaper
+ Wycisz/Anuluj wyciszenie wszystkich tapet
+
+
+ Pause/Play all Wallpaper
+ Wstrzymaj/Odtwórz wszystkie tapety
+
+
+ Configure Wallpaper
+ Konfiguruj tapetę
+
+
+ Minimize to Tray
+ Minimalizuj do paska zadań
+
+
+ Exit
+ Wyjdź
+
+
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
+ Czy na pewno chcesz zamknąć ScreenPlay?
+Spowoduje to wyłączenie wszystkich tapet oraz widżetów.
+
+
+
+ PopupOffline
+
+ You need to run Steam for this. steamErrorRestart: %1 - steamErrorAPIInit: %2
+ Ta funkcja wymaga uruchomienia Steam. steamErrorRestart: %1 - steamErrorAPIInit: %2
+
+
+ Back
+ Wstecz
+
+
+
+ PopupSteamWorkshopAgreement
+
+ You Need to Agree To The Steam Subscriber Agreement First
+ Należy zaakceptować Umowę użytkownika Steam
+
+
+ REQUIRES INTERNET CONNECTION AND FREE STEAM ACCOUNT TO ACTIVATE. Notice: Product offered subject to your acceptance of the Steam Subscriber Agreement (SSA). You must activate this product via the Internet by registering for a Steam account and accepting the SSA. Please see https://store.steampowered.com/subscriber_agreement/ to view the SSA prior to purchase. If you do not agree with the provisions of the SSA, you should return this game unopened to your retailer in accordance with their return policy.
+ DO AKTYWACJI WYMAGANE JEST POŁĄCZENIE Z INTERNETEM ORAZ BEZPŁATNE KONTO STEAM. Uwaga: Oferowany produkt podlega Twojej akceptacji Umowy użytkownika Steam (dalej "Umowa"). Należy aktywować ten produkt przez Internet rejestrując konto Steam oraz akceptująć Umowę. Odwiedź https://store.steampowered.com/subscriber_agreement/, aby zapoznać się z Umową przed zakupem. Jeśli nie zgadzasz się z warunkami Umowy, należy zwrócić tę grę w stanie nieotwartym do Twojego sprzedawcy zgodnie z jego warunkami zwrotów.
+
+
+ View The Steam Subscriber Agreement
+ Wyświetl Umowę użytkownika Steam
+
+
+ Accept Steam Workshop Agreement
+ Zaakceptuj Umowę użytkownika Warsztatu Steam
+
+
+
+ QMLWallpaper
+
+ Create a QML Wallpaper
+ Utwórz tapetę QML
+
+
+ General
+ Ogólne
+
+
+ Wallpaper name
+ Nazwa tapety
+
+
+ Created By
+ Utworzone przez
+
+
+ Description
+ Opis
+
+
+ License & Tags
+ Licencja i znaczniki
+
+
+ Preview Image
+ Obraz podglądu
+
+
+
+ QMLWidget
+
+ Create a QML widget
+ Utwórz widżet QML
+
+
+ General
+ Ogólne
+
+
+ Widget name
+ Nazwa widżetu
+
+
+ Created by
+ Utworzone przez
+
+
+ Tags
+ Znaczniki
+
+
+
+ SaveNotification
+
+ Profile saved successfully!
+ Profil zapisany pomyślnie!
+
+
+
+ ScreenPlayItem
+
+ NEW
+ NOWE
+
+
+
+ Search
+
+ Search for Wallpaper & Widgets
+ Szukaj tapet i widżetów
+
+
+
+ Settings
+
+ General
+ Ogólne
+
+
+ Autostart
+ Autostart
+
+
+ ScreenPlay will start with Windows and will setup your Desktop every time for you.
+ ScreenPlay zostanie uruchomione przy starcie systemu Windows i ustawi dla Ciebie tapetę za każdym razem.
+
+
+ High priority Autostart
+ Wysoki priorytet autostartu
+
+
+ This options grants ScreenPlay a higher autostart priority than other apps.
+ Ta opcja nadaje ScreenPlay wyższy priorytet autostartu w porównaniu do innych aplikacji.
+
+
+ Send anonymous crash reports and statistics
+ Wysyłaj anonimowe raporty o awariach oraz statystyki
+
+
+ Help us make ScreenPlay faster and more stable. All collected data is purely anonymous and only used for development purposes! We use <a href="https://sentry.io">sentry.io</a> to collect and analyze this data. A <b>big thanks to them</b> for providing us with free premium support for open source projects!
+ Help us make ScreenPlay faster and more stable. All collected data is purely anonymous and only used for development purposes! We use <a href="https://sentry.io">sentry.io</a> to collect and analyze this data. A <b>big thanks to them</b> for providing us with free premium support for open source projects!
+
+
+ Set save location
+ Ustaw lokalizację zapisu
+
+
+ Set location
+ Ustaw lokalizację
+
+
+ Your storage path is empty!
+ Ścieżka do pamięci jest pusta!
+
+
+ Important: Changing this directory has no effect on the workshop download path. ScreenPlay only supports having one content folder!
+ Uwaga: Zmiana tego katalogu nie ma wpływu na ścieżkę pobierania z warsztatu. ScreenPlay wspiera posiadanie tylko jednego folderu na treść!
+
+
+ Language
+ Język
+
+
+ Set the ScreenPlay UI Language
+ Ustaw język interfejsu ScreenPlay
+
+
+ Theme
+ Motyw
+
+
+ Switch dark/light theme
+ Zmień motyw na jasny/ciemny
+
+
+ System Default
+ Systemowy
+
+
+ Dark
+ Ciemny
+
+
+ Light
+ Jasny
+
+
+ Performance
+ Wydajność
+
+
+ Pause wallpaper video rendering while another app is in the foreground
+ Pause wallpaper video rendering while another app is in the foreground
+
+
+ We disable the video rendering (not the audio!) for the best performance. If you have problem you can disable this behaviour here. Wallpaper restart required!
+ We disable the video rendering (not the audio!) for the best performance. If you have problem you can disable this behaviour here. Wallpaper restart required!
+
+
+ Default Fill Mode
+ Domyślny tryb wypełniania
+
+
+ Set this property to define how the video is scaled to fit the target area.
+ To ustawienie określa, w jaki sposób film jest skalowany, aby dopasować go do obszaru docelowego.
+
+
+ Stretch
+ Rozciągnięcie
+
+
+ Fill
+ Wypełnienie
+
+
+ Contain
+ Contain
+
+
+ Cover
+ Cover
+
+
+ Scale-Down
+ Scale-Down
+
+
+ About
+ Informacje
+
+
+ Thank you for using ScreenPlay
+ Dziękujemy za wypróbowanie ScreenPlay
+
+
+ Hi, I'm Elias Steurer also known as Kelteseth and I'm the developer of ScreenPlay. Thank you for using my software. You can follow me to receive updates about ScreenPlay here:
+ Cześć, nazywam się Elias Steurer znany również jako Kelteseth i jestem programistą ScreenPlay. Dziękuję Ci za wypróbowanie mojego oprogramowania. Obserwuj mnie, aby być na bieżąco z aktualizacjami ScreenPlay:
+
+
+ Version
+ Wersja
+
+
+ Open Changelog
+ Wyświetl listę zmian
+
+
+ Third Party Software
+ Oprogramowanie zewnętrzne
+
+
+ ScreenPlay would not be possible without the work of others. A big thank you to:
+ ScreenPlay would not be possible without the work of others. A big thank you to:
+
+
+ Licenses
+ Licencje
+
+
+ Logs
+ Rejestry
+
+
+ If your ScreenPlay missbehaves this is a good way to look for answers. This shows all logs and warning during runtime.
+ Tutaj znajdziesz wyjaśnienie, jeśli ScreenPlay nie działa poprawnie. Wyświetla wszystkie rejestry oraz ostrzeżenia podczas działania.
+
+
+ Show Logs
+ Pokaż rejestry
+
+
+ Data Protection
+ Ochrona danych
+
+
+ We use you data very carefully to improve ScreenPlay. We do not sell or share this (anonymous) information with others!
+ Bardzo ostrożnie używamy danych w celu rozwoju ScreenPlay. Nie sprzedajemy oraz nie udostępniamy tych (anonimowych) informacji osobom trzecim!
+
+
+ Privacy
+ Prywatność
+
+
+ ScreenPlay Build Version
+
+ Wersja kompilacji ScreenPlay
+
+
+
+
+ SettingsExpander
+
+ Copy text to clipboard
+ Kopiuj tekst do schowka
+
+
+
+ Sidebar
+
+ Tools Overview
+ Przegląd narzędzi
+
+
+ Video Import h264 (.mp4)
+ Importuj film h264 (.mp4)
+
+
+ Video Import VP8 & VP9 (.webm)
+ Importuj film VP8 lub VP9 (.webm)
+
+
+ Video import (all types)
+ Importuj film (dowolny typ)
+
+
+ GIF Wallpaper
+ Tapeta GIF
+
+
+ QML Wallpaper
+ Tapeta QML
+
+
+ HTML5 Wallpaper
+ Tapeta HTML5
+
+
+ Website Wallpaper
+ Website Wallpaper
+
+
+ QML Widget
+ Widżet QML
+
+
+ HTML Widget
+ Widżet HTML
+
+
+ Set Wallpaper
+ Ustaw tapetę
+
+
+ Set Widget
+ Ustaw widżet
+
+
+ Headline
+ Nagłówek
+
+
+ Select a Monitor to display the content
+ Wybierz monitor do wyświetlania treści
+
+
+ Set Volume
+ Ustaw głośność
+
+
+ Fill Mode
+ Tryb wypełnienia
+
+
+ Stretch
+ Rozciągnięcie
+
+
+ Fill
+ Wypełnienie
+
+
+ Contain
+ Contain
+
+
+ Cover
+ Cover
+
+
+ Scale-Down
+ Scale-Down
+
+
+ Size:
+ Rozmiar:
+
+
+ No description...
+ Brak opisu...
+
+
+ Click here if you like the content
+ Naciśnij tutaj, jeśli lubisz tę treść
+
+
+ Click here if you do not like the content
+ Naciśnij tutaj, jeśli nie lubisz tej treści
+
+
+ Subscribtions:
+ Subskrypcje:
+
+
+ Open In Steam
+ Otwórz w Steam
+
+
+ Subscribed!
+ Subskrybujesz!
+
+
+ Subscribe
+ Subskrybuj
+
+
+
+ StartInfo
+
+ Free tools to help you to create wallpaper
+ Bezpłatne narzędzia ułatwiające tworzenie tapety
+
+
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
+ Poniżej znajdziesz dodatkowe narzędzia do tworzenia tapety poza tymi, które oferuje dla Ciebie ScreenPlay!
+
+
+
+ SteamNotAvailable
+
+ Could not load steam integration!
+ Błąd wczytywania integracji Steam!
+
+
+
+ SteamProfile
+
+ Back
+ Wstecz
+
+
+ Forward
+ Dalej
+
+
+
+ SteamWorkshopStartPage
+
+ Loading
+ Wczytywanie
+
+
+ Download now!
+ Pobierz teraz!
+
+
+ Downloading...
+ Pobieranie...
+
+
+ Details
+ Szczegóły
+
+
+ Open In Steam
+ Otwórz w Steam
+
+
+ Profile
+ Profil
+
+
+ Upload
+ Prześlij
+
+
+ Search for Wallpaper and Widgets...
+ Szukaj tapet i widżetów...
+
+
+ Open Workshop in Steam
+ Otwórz Warsztat Steam
+
+
+ Ranked By Vote
+ Ilość głosów
+
+
+ Publication Date
+ Data publikacji
+
+
+ Ranked By Trend
+ Popularność
+
+
+ Favorited By Friends
+ Lubiane przez znajomych
+
+
+ Created By Friends
+ Utworzone przez znajomych
+
+
+ Created By Followed Users
+ Utworzone przez obserwowane osoby
+
+
+ Not Yet Rated
+ Bez ocen
+
+
+ Total VotesAsc
+ Ilość głosów: rosnąco
+
+
+ Votes Up
+ Głosy pozytywne
+
+
+ Total Unique Subscriptions
+ Łącznie unikalnych subskrypcji
+
+
+ Back
+ Wstecz
+
+
+ Forward
+ Dalej
+
+
+
+ TagSelector
+
+ Save
+ Zapisz
+
+
+ Add tag
+ Dodaj znacznik
+
+
+ Cancel
+ Anuluj
+
+
+ Add Tag
+ Dodaj znacznik
+
+
+
+ TextField
+
+ Label
+ Etykieta
+
+
+ *Required
+ *Wymagane
+
+
+
+ TrayIcon
+
+ ScreenPlay - Double click to change you settings.
+ ScreenPlay - naciśnij dwukrotnie, aby zmienić ustawienia.
+
+
+ Open ScreenPlay
+ Otwórz ScreenPlay
+
+
+ Mute all
+ Wycisz wszystkie
+
+
+ Unmute all
+ Unmute all
+
+
+ Pause all
+ Wstrzymaj wszystkie
+
+
+ Play all
+ Odtwórz wszystkie
+
+
+ Quit
+ Wyjdź
+
+
+
+ UploadProject
+
+ Upload Wallpaper/Widgets to Steam
+ Prześlij tapetę/widżet do Steam
+
+
+ Abort
+ Przerwij
+
+
+ Upload Selected Projects
+ Prześlij wybrane projekty
+
+
+ Finish
+ Zakończ
+
+
+
+ UploadProjectBigItem
+
+ Type:
+ Typ:
+
+
+ Open Folder
+ Otwórz folder
+
+
+ Invalid Project!
+ Nieprawidłowy projekt!
+
+
+
+ UploadProjectItem
+
+ Fail
+ Niepowodzenie
+
+
+ No Connection
+ Brak połączenia
+
+
+ Invalid Password
+ Nieprawidłowe hasło
+
+
+ Logged In Elsewhere
+ Zalogowano w innym miejscu
+
+
+ Invalid Protocol Version
+ Nieprawidłowa wersja protokołu
+
+
+ Invalid Param
+ Nieprawidłowy parametr
+
+
+ File Not Found
+ Nie znaleziono pliku
+
+
+ Busy
+ Zajęte
+
+
+ Invalid State
+ Invalid State
+
+
+ Invalid Name
+ Nieprawidłowa nazwa
+
+
+ Invalid Email
+ Nieprawidłowy adres e-mail
+
+
+ Duplicate Name
+ Duplikat nazwy
+
+
+ Access Denied
+ Odmowa dostępu
+
+
+ Timeout
+ Upłynął limit czasu
+
+
+ Banned
+ Zbanowano
+
+
+ Account Not Found
+ Nie znaleziono konta
+
+
+ Invalid SteamID
+ Nieprawidłowe SteamID
+
+
+ Service Unavailable
+ Usługa jest niedostępna
+
+
+ Not Logged On
+ Nie zalogowano
+
+
+ Pending
+ Pending
+
+
+ Encryption Failure
+ Błąd szyfrowania
+
+
+ Insufficient Privilege
+ Brak uprawnień
+
+
+ Limit Exceeded
+ Limit Exceeded
+
+
+ Revoked
+ Revoked
+
+
+ Expired
+ Expired
+
+
+ Already Redeemed
+ Already Redeemed
+
+
+ Duplicate Request
+ Duplicate Request
+
+
+ Already Owned
+ Already Owned
+
+
+ IP Not Found
+ IP Not Found
+
+
+ Persist Failed
+ Persist Failed
+
+
+ Locking Failed
+ Locking Failed
+
+
+ Logon Session Replaced
+ Logon Session Replaced
+
+
+ Connect Failed
+ Connect Failed
+
+
+ Handshake Failed
+ Handshake Failed
+
+
+ IO Failure
+ IO Failure
+
+
+ Remote Disconnect
+ Remote Disconnect
+
+
+ Shopping Cart Not Found
+ Shopping Cart Not Found
+
+
+ Blocked
+ Zablokowane
+
+
+ Ignored
+ Ignorowane
+
+
+ No Match
+ No Match
+
+
+ Account Disabled
+ Account Disabled
+
+
+ Service ReadOnly
+ Service ReadOnly
+
+
+ Account Not Featured
+ Account Not Featured
+
+
+ Administrator OK
+ Administrator OK
+
+
+ Content Version
+ Wersja treści
+
+
+ Try Another CM
+ Try Another CM
+
+
+ Password Required To Kick Session
+ Password Required To Kick Session
+
+
+ Already Logged In Elsewhere
+ Already Logged In Elsewhere
+
+
+ Suspended
+ Wstrzymane
+
+
+ Cancelled
+ Anulowane
+
+
+ Data Corruption
+ Data Corruption
+
+
+ Disk Full
+ Disk Full
+
+
+ Remote Call Failed
+ Remote Call Failed
+
+
+ Password Unset
+ Nie ustawiono hasła
+
+
+ External Account Unlinked
+ Odłączone konto zewnętrzne
+
+
+ PSN Ticket Invalid
+ PSN Ticket Invalid
+
+
+ External Account Already Linked
+ Konto zewnętrzne już połączone
+
+
+ Remote File Conflict
+ Remote File Conflict
+
+
+ Illegal Password
+ Niedopuszczalne hasło
+
+
+ Same As Previous Value
+ Same As Previous Value
+
+
+ Account Logon Denied
+ Account Logon Denied
+
+
+ Cannot Use Old Password
+ Nie można użyć poprzedniego hasła
+
+
+ Invalid Login AuthCode
+ Nieprawidłowe logowanie AuthCode
+
+
+ Account Logon Denied No Mail
+ Account Logon Denied No Mail
+
+
+ Hardware Not Capable Of IPT
+ Hardware Not Capable Of IPT
+
+
+ IPT Init Error
+ IPT Init Error
+
+
+ Parental Control Restricted
+ Parental Control Restricted
+
+
+ Facebook Query Error
+ Facebook Query Error
+
+
+ Expired Login Auth Code
+ Expired Login Auth Code
+
+
+ IP Login Restriction Failed
+ IP Login Restriction Failed
+
+
+ Account Locked Down
+ Account Locked Down
+
+
+ Account Logon Denied Verified Email Required
+ Account Logon Denied Verified Email Required
+
+
+ No MatchingURL
+ No MatchingURL
+
+
+ Bad Response
+ Bad Response
+
+
+ Require Password ReEntry
+ Require Password ReEntry
+
+
+ Value Out Of Range
+ Value Out Of Range
+
+
+ Unexpecte Error
+ Unexpecte Error
+
+
+ Disabled
+ Disabled
+
+
+ Invalid CEG Submission
+ Invalid CEG Submission
+
+
+ Restricted Device
+ Restricted Device
+
+
+ Region Locked
+ Region Locked
+
+
+ Rate Limit Exceeded
+ Rate Limit Exceeded
+
+
+ Account Login Denied Need Two Factor
+ Account Login Denied Need Two Factor
+
+
+ Item Deleted
+ Item Deleted
+
+
+ Account Login Denied Throttle
+ Account Login Denied Throttle
+
+
+ Two Factor Code Mismatch
+ Błędny kod uwierzytelniania dwuskładnikowego
+
+
+ Two Factor Activation Code Mismatch
+ Błędny kod aktywacyjny uwierzytelniania dwuskładnikowego
+
+
+ Account Associated To Multiple Partners
+ Account Associated To Multiple Partners
+
+
+ Not Modified
+ Not Modified
+
+
+ No Mobile Device
+ Brak urządzenia mobilnego
+
+
+ Time Not Synced
+ Time Not Synced
+
+
+ Sms Code Failed
+ Błąd wysyłania kodu SMS
+
+
+ Account Limit Exceeded
+ Account Limit Exceeded
+
+
+ Account Activity Limit Exceeded
+ Account Activity Limit Exceeded
+
+
+ Phone Activity Limit Exceeded
+ Phone Activity Limit Exceeded
+
+
+ Refund To Wallet
+ Refund To Wallet
+
+
+ Email Send Failure
+ Email Send Failure
+
+
+ Not Settled
+ Not Settled
+
+
+ Need Captcha
+ Wymagana Captcha
+
+
+ GSLT Denied
+ GSLT Denied
+
+
+ GS Owner Denied
+ GS Owner Denied
+
+
+ Invalid Item Type
+ Invalid Item Type
+
+
+ IP Banned
+ Zbanowany adres IP
+
+
+ GSLT Expired
+ GSLT Expired
+
+
+ Insufficient Funds
+ Insufficient Funds
+
+
+ Too Many Pending
+ Too Many Pending
+
+
+ No Site Licenses Found
+ No Site Licenses Found
+
+
+ WG Network Send Exceeded
+ WG Network Send Exceeded
+
+
+ Account Not Friends
+ Account Not Friends
+
+
+ Limited User Account
+ Limited User Account
+
+
+ Cant Remove Item
+ Cant Remove Item
+
+
+ Account Deleted
+ Account Deleted
+
+
+ Existing User Cancelled License
+ Existing User Cancelled License
+
+
+ Community Cooldown
+ Community Cooldown
+
+
+ Status:
+ Status:
+
+
+ Upload Progress:
+ Postęp przesyłania:
+
+
+
+ WebsiteWallpaper
+
+ Create a Website Wallpaper
+ Create a Website Wallpaper
+
+
+ General
+ Ogólne
+
+
+ Wallpaper name
+ Nazwa tapety
+
+
+ Created By
+ Utworzone przez
+
+
+ Description
+ Opis
+
+
+ Tags
+ Znaczniki
+
+
+ Preview Image
+ Obraz podglądu
+
+
+
+ WizardPage
+
+ Save
+ Zapisz
+
+
+ Saving...
+ Zapisywanie...
+
+
+
+ WorkshopItem
+
+ Successfully subscribed to Workshop Item!
+ Pomyślnie subskrybujesz element z Warsztatu!
+
+
+ Download complete!
+ Pobieranie ukończone!
+
+
+
+ XMLNewsfeed
+
+ News & Patchnotes
+ Aktualności i lista zmian
+
+
+
diff --git a/ScreenPlay/translations/ScreenPlay_pt_BR.qm b/ScreenPlay/translations/ScreenPlay_pt_BR.qm
index 0831bef6..e3cef3df 100644
Binary files a/ScreenPlay/translations/ScreenPlay_pt_BR.qm and b/ScreenPlay/translations/ScreenPlay_pt_BR.qm differ
diff --git a/ScreenPlay/translations/ScreenPlay_pt_BR.ts b/ScreenPlay/translations/ScreenPlay_pt_BR.ts
index 474356e9..fbe42f21 100644
--- a/ScreenPlay/translations/ScreenPlay_pt_BR.ts
+++ b/ScreenPlay/translations/ScreenPlay_pt_BR.ts
@@ -493,35 +493,35 @@
Generating preview image...
-
+ Generating preview image...Generating preview thumbnail image...
-
+ Generating preview thumbnail image...Generating 5 second preview video...
-
+ Generating 5 second preview video...Generating preview gif...
-
+ Generating preview gif...Converting Audio...
-
+ Converting Audio...Converting Video... This can take some time!
-
+ Converting Video... This can take some time!Converting Video ERROR!
-
+ Converting Video ERROR!Analyse Video ERROR!
-
+ Analyse Video ERROR!Import a video to a wallpaper
@@ -529,58 +529,58 @@
Generating preview video...
-
+ Generating preview video...Name (required!)
-
+ Name (required!)Description
-
+ DescriptionYoutube URL
-
+ Youtube URLAbort
-
+ AbortSave
-
+ SaveSave Wallpaper...
-
+ Save Wallpaper...Importh264InitImport a .mp4 video
-
+ Import a .mp4 videoScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
-
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.Invalid file type. Must be valid h264 (*.mp4)!
-
+ Invalid file type. Must be valid h264 (*.mp4)!Drop a *.mp4 file here or use 'Select file' below.
-
+ Drop a *.mp4 file here or use 'Select file' below.Open Documentation
-
+ Open DocumentationSelect file
- Selecionar arquivo
+ Select file
@@ -761,16 +761,31 @@
SettingsSettings
-
-
- NavigationWallpaperConfiguration
- Configurate active Wallpaper or Widgets
- Configurate active Wallpaper or Widgets
+ Mute/Unmute all Wallpaper
+ Mute/Unmute all Wallpaper
- No active Wallpaper or Widgets
- No active Wallpaper or Widgets
+ Pause/Play all Wallpaper
+ Pause/Play all Wallpaper
+
+
+ Configure Wallpaper
+ Configure Wallpaper
+
+
+ Minimize to Tray
+ Minimize to Tray
+
+
+ Exit
+ Exit
+
+
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
@@ -1008,10 +1023,6 @@
VersionVersion
-
- ScreenPlay Build Version
- ScreenPlay Build Version
- Open ChangelogOpen Changelog
@@ -1052,6 +1063,12 @@
PrivacyPrivacy
+
+ ScreenPlay Build Version
+
+ ScreenPlay Build Version
+
+ SettingsExpander
@@ -1068,15 +1085,15 @@
Video Import h264 (.mp4)
-
+ Video Import h264 (.mp4)Video Import VP8 & VP9 (.webm)
-
+ Video Import VP8 & VP9 (.webm)Video import (all types)
-
+ Video import (all types)GIF Wallpaper
@@ -1183,11 +1200,11 @@
StartInfoFree tools to help you to create wallpaper
-
+ Free tools to help you to create wallpaperBelow you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
-
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
@@ -1578,7 +1595,7 @@
Password Required To Kick Session
-
+ Password Required To Kick SessionAlready Logged In Elsewhere
diff --git a/ScreenPlay/translations/ScreenPlay_ru_RU.qm b/ScreenPlay/translations/ScreenPlay_ru_RU.qm
index 006ec077..57aff6a8 100644
Binary files a/ScreenPlay/translations/ScreenPlay_ru_RU.qm and b/ScreenPlay/translations/ScreenPlay_ru_RU.qm differ
diff --git a/ScreenPlay/translations/ScreenPlay_ru_RU.ts b/ScreenPlay/translations/ScreenPlay_ru_RU.ts
index 7d702092..f75ea14e 100644
--- a/ScreenPlay/translations/ScreenPlay_ru_RU.ts
+++ b/ScreenPlay/translations/ScreenPlay_ru_RU.ts
@@ -493,35 +493,35 @@
Generating preview image...
-
+ Generating preview image...Generating preview thumbnail image...
-
+ Generating preview thumbnail image...Generating 5 second preview video...
-
+ Generating 5 second preview video...Generating preview gif...
-
+ Generating preview gif...Converting Audio...
-
+ Converting Audio...Converting Video... This can take some time!
-
+ Converting Video... This can take some time!Converting Video ERROR!
-
+ Converting Video ERROR!Analyse Video ERROR!
-
+ Analyse Video ERROR!Import a video to a wallpaper
@@ -529,58 +529,58 @@
Generating preview video...
-
+ Generating preview video...Name (required!)
-
+ Name (required!)Description
-
+ DescriptionYoutube URL
-
+ Youtube URLAbort
-
+ AbortSave
-
+ SaveSave Wallpaper...
-
+ Save Wallpaper...Importh264InitImport a .mp4 video
-
+ Import a .mp4 videoScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
-
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.Invalid file type. Must be valid h264 (*.mp4)!
-
+ Invalid file type. Must be valid h264 (*.mp4)!Drop a *.mp4 file here or use 'Select file' below.
-
+ Drop a *.mp4 file here or use 'Select file' below.Open Documentation
-
+ Open DocumentationSelect file
-
+ Select file
@@ -761,16 +761,31 @@
SettingsSettings
-
-
- NavigationWallpaperConfiguration
- Configurate active Wallpaper or Widgets
- Configurate active Wallpaper or Widgets
+ Mute/Unmute all Wallpaper
+ Mute/Unmute all Wallpaper
- No active Wallpaper or Widgets
- No active Wallpaper or Widgets
+ Pause/Play all Wallpaper
+ Pause/Play all Wallpaper
+
+
+ Configure Wallpaper
+ Configure Wallpaper
+
+
+ Minimize to Tray
+ Minimize to Tray
+
+
+ Exit
+ Exit
+
+
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
@@ -1008,10 +1023,6 @@
VersionVersion
-
- ScreenPlay Build Version
- ScreenPlay Build Version
- Open ChangelogOpen Changelog
@@ -1052,6 +1063,12 @@
PrivacyPrivacy
+
+ ScreenPlay Build Version
+
+ ScreenPlay Build Version
+
+ SettingsExpander
@@ -1068,15 +1085,15 @@
Video Import h264 (.mp4)
-
+ Video Import h264 (.mp4)Video Import VP8 & VP9 (.webm)
-
+ Video Import VP8 & VP9 (.webm)Video import (all types)
-
+ Video import (all types)GIF Wallpaper
@@ -1183,11 +1200,11 @@
StartInfoFree tools to help you to create wallpaper
-
+ Free tools to help you to create wallpaperBelow you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
-
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
@@ -1578,7 +1595,7 @@
Password Required To Kick Session
-
+ Password Required To Kick SessionAlready Logged In Elsewhere
diff --git a/ScreenPlay/translations/ScreenPlay_tr_TR.qm b/ScreenPlay/translations/ScreenPlay_tr_TR.qm
index 437f059b..6aff3c89 100644
Binary files a/ScreenPlay/translations/ScreenPlay_tr_TR.qm and b/ScreenPlay/translations/ScreenPlay_tr_TR.qm differ
diff --git a/ScreenPlay/translations/ScreenPlay_tr_TR.ts b/ScreenPlay/translations/ScreenPlay_tr_TR.ts
index e618cd0f..e151799c 100644
--- a/ScreenPlay/translations/ScreenPlay_tr_TR.ts
+++ b/ScreenPlay/translations/ScreenPlay_tr_TR.ts
@@ -489,98 +489,98 @@
Importh264ConvertAnalyseVideo...
- VideoAnaliz...
+ AnalyseVideo...Generating preview image...
- Önizleme oluşturuluyor...
+ Generating preview image...Generating preview thumbnail image...
- Önizleme küçük resmi oluşturuluyor...
+ Generating preview thumbnail image...Generating 5 second preview video...
- 5 saniyelik önizleme videosu oluşturuluyor...
+ Generating 5 second preview video...Generating preview gif...
- Özizleme gifi oluşturuluyor...
+ Generating preview gif...Converting Audio...
- Ses Dönüştürülüyor...
+ Converting Audio...Converting Video... This can take some time!
- Video dönüştürülüyor... Biraz zaman alabilir!
+ Converting Video... This can take some time!Converting Video ERROR!
- Video Dönüştürülürken Hata Oluştu!
+ Converting Video ERROR!Analyse Video ERROR!
- Video Hatasını Analiz Edin!
+ Analyse Video ERROR!Import a video to a wallpaper
- Bir videoyu duvar kağıdına aktarın
+ Import a video to a wallpaperGenerating preview video...
- Önizleme videosu oluşturuluyor...
+ Generating preview video...Name (required!)
- İsim (gerekli)
+ Name (required!)Description
-
+ DescriptionYoutube URL
- YouTube URL
+ Youtube URLAbort
-
+ AbortSave
-
+ SaveSave Wallpaper...
- Duvar kağıdını kaydet...
+ Save Wallpaper...Importh264InitImport a .mp4 video
-
+ Import a .mp4 videoScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
-
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.Invalid file type. Must be valid h264 (*.mp4)!
-
+ Invalid file type. Must be valid h264 (*.mp4)!Drop a *.mp4 file here or use 'Select file' below.
-
+ Drop a *.mp4 file here or use 'Select file' below.Open Documentation
- Belgeyi Aç
+ Open DocumentationSelect file
- Dosya seç
+ Select file
@@ -761,16 +761,31 @@
SettingsSettings
-
-
- NavigationWallpaperConfiguration
- Configurate active Wallpaper or Widgets
- Aktif Duvar Kağıdını veya Widget'ları yapılandırın
+ Mute/Unmute all Wallpaper
+ Mute/Unmute all Wallpaper
- No active Wallpaper or Widgets
- Aktif Duvar Kağıdı veya Widget yok
+ Pause/Play all Wallpaper
+ Pause/Play all Wallpaper
+
+
+ Configure Wallpaper
+ Configure Wallpaper
+
+
+ Minimize to Tray
+ Minimize to Tray
+
+
+ Exit
+ Exit
+
+
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
@@ -1008,10 +1023,6 @@
VersionVersion
-
- ScreenPlay Build Version
- ScreenPlay Build Version
- Open ChangelogOpen Changelog
@@ -1052,6 +1063,12 @@
PrivacyPrivacy
+
+ ScreenPlay Build Version
+
+ ScreenPlay Build Version
+
+ SettingsExpander
@@ -1068,15 +1085,15 @@
Video Import h264 (.mp4)
-
+ Video Import h264 (.mp4)Video Import VP8 & VP9 (.webm)
-
+ Video Import VP8 & VP9 (.webm)Video import (all types)
-
+ Video import (all types)GIF Wallpaper
@@ -1183,11 +1200,11 @@
StartInfoFree tools to help you to create wallpaper
-
+ Free tools to help you to create wallpaperBelow you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
-
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
@@ -1578,7 +1595,7 @@
Password Required To Kick Session
-
+ Password Required To Kick SessionAlready Logged In Elsewhere
diff --git a/ScreenPlay/translations/ScreenPlay_vi_VN.qm b/ScreenPlay/translations/ScreenPlay_vi_VN.qm
index 905f9b6e..14a8000b 100644
Binary files a/ScreenPlay/translations/ScreenPlay_vi_VN.qm and b/ScreenPlay/translations/ScreenPlay_vi_VN.qm differ
diff --git a/ScreenPlay/translations/ScreenPlay_vi_VN.ts b/ScreenPlay/translations/ScreenPlay_vi_VN.ts
index d7c1187a..a89695db 100644
--- a/ScreenPlay/translations/ScreenPlay_vi_VN.ts
+++ b/ScreenPlay/translations/ScreenPlay_vi_VN.ts
@@ -489,98 +489,98 @@
Importh264ConvertAnalyseVideo...
- Đang xử lý video...
+ AnalyseVideo...Generating preview image...
- Đang tạo ra ảnh xem trước...
+ Generating preview image...Generating preview thumbnail image...
- Đang tạo ra hình thu nhỏ xem trước...
+ Generating preview thumbnail image...Generating 5 second preview video...
- Đang tao ra video 5 giây xem trước...
+ Generating 5 second preview video...Generating preview gif...
- Đang tạo ra gif xem trước...
+ Generating preview gif...Converting Audio...
- Đang chuyển đổi dạng âm thanh...
+ Converting Audio...Converting Video... This can take some time!
- Đang chuyển đổi dạng video... Việc này có thể tốn kha khá thời gian!
+ Converting Video... This can take some time!Converting Video ERROR!
- Đã có lỗi xảy ra khi chuyển đổi dạng video!
+ Converting Video ERROR!Analyse Video ERROR!
- Đã có lỗi xảy ra khi đang xử lý video!
+ Analyse Video ERROR!Import a video to a wallpaper
- Nhập một video vào hình nền
+ Import a video to a wallpaperGenerating preview video...
- Đang tạo ra video xem trước...
+ Generating preview video...Name (required!)
- Tên (bắt buộc!)
+ Name (required!)Description
- Mô tả
+ DescriptionYoutube URL
- Link YouTube
+ Youtube URLAbort
- Hủy bỏ
+ AbortSave
- Lưu
+ SaveSave Wallpaper...
- Lưu hình nền...
+ Save Wallpaper...Importh264InitImport a .mp4 video
-
+ Import a .mp4 videoScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
-
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.Invalid file type. Must be valid h264 (*.mp4)!
-
+ Invalid file type. Must be valid h264 (*.mp4)!Drop a *.mp4 file here or use 'Select file' below.
-
+ Drop a *.mp4 file here or use 'Select file' below.Open Documentation
- Mở tài liệu tham khảo
+ Open DocumentationSelect file
-
+ Select file
@@ -761,16 +761,31 @@
SettingsSettings
-
-
- NavigationWallpaperConfiguration
- Configurate active Wallpaper or Widgets
- Thiết lập hình nền hoặc widgets đang hoạt động
+ Mute/Unmute all Wallpaper
+ Mute/Unmute all Wallpaper
- No active Wallpaper or Widgets
- Không có hình nền hoặc widgets đang hoạt động
+ Pause/Play all Wallpaper
+ Pause/Play all Wallpaper
+
+
+ Configure Wallpaper
+ Configure Wallpaper
+
+
+ Minimize to Tray
+ Minimize to Tray
+
+
+ Exit
+ Exit
+
+
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
@@ -1008,10 +1023,6 @@
VersionPhiên bản
-
- ScreenPlay Build Version
- Bản dựng của ScreenPlay
- Open ChangelogMở nhật kí thay đổi
@@ -1052,6 +1063,12 @@
PrivacyQuyền riêng tư
+
+ ScreenPlay Build Version
+
+ ScreenPlay Build Version
+
+ SettingsExpander
@@ -1068,15 +1085,15 @@
Video Import h264 (.mp4)
-
+ Video Import h264 (.mp4)Video Import VP8 & VP9 (.webm)
-
+ Video Import VP8 & VP9 (.webm)Video import (all types)
-
+ Video import (all types)GIF Wallpaper
@@ -1183,11 +1200,11 @@
StartInfoFree tools to help you to create wallpaper
-
+ Free tools to help you to create wallpaperBelow you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
-
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
@@ -1578,7 +1595,7 @@
Password Required To Kick Session
-
+ Password Required To Kick SessionAlready Logged In Elsewhere
diff --git a/ScreenPlay/translations/ScreenPlay_zh_CN.qm b/ScreenPlay/translations/ScreenPlay_zh_CN.qm
index a0aec754..49747d4f 100644
Binary files a/ScreenPlay/translations/ScreenPlay_zh_CN.qm and b/ScreenPlay/translations/ScreenPlay_zh_CN.qm differ
diff --git a/ScreenPlay/translations/ScreenPlay_zh_CN.ts b/ScreenPlay/translations/ScreenPlay_zh_CN.ts
index e7b2daa0..02909113 100644
--- a/ScreenPlay/translations/ScreenPlay_zh_CN.ts
+++ b/ScreenPlay/translations/ScreenPlay_zh_CN.ts
@@ -489,98 +489,98 @@
Importh264ConvertAnalyseVideo...
- 分析视频...
+ AnalyseVideo...Generating preview image...
- 生成预览图...
+ Generating preview image...Generating preview thumbnail image...
- 生成预览缩略图...
+ Generating preview thumbnail image...Generating 5 second preview video...
- 生成5秒预览视频...
+ Generating 5 second preview video...Generating preview gif...
-
+ Generating preview gif...Converting Audio...
- 转换音频...
+ Converting Audio...Converting Video... This can take some time!
- 转换视频... 这可能需要一些时间!
+ Converting Video... This can take some time!Converting Video ERROR!
- 转换视频出错!
+ Converting Video ERROR!Analyse Video ERROR!
- 分析视频出错!
+ Analyse Video ERROR!Import a video to a wallpaper
- 将视频导入为壁纸
+ Import a video to a wallpaperGenerating preview video...
- 生成预览视频...
+ Generating preview video...Name (required!)
- 名称(必选)
+ Name (required!)Description
- 简介
+ DescriptionYoutube URL
- Youtube 链接
+ Youtube URLAbort
-
+ AbortSave
- 保存
+ SaveSave Wallpaper...
- 保存壁纸...
+ Save Wallpaper...Importh264InitImport a .mp4 video
-
+ Import a .mp4 videoScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.
-
+ ScreenPlay V0.15 and up can play *.mp4 (also more known as h264). This can improove performance on older systems.Invalid file type. Must be valid h264 (*.mp4)!
-
+ Invalid file type. Must be valid h264 (*.mp4)!Drop a *.mp4 file here or use 'Select file' below.
-
+ Drop a *.mp4 file here or use 'Select file' below.Open Documentation
- 打开文档
+ Open DocumentationSelect file
- 选择文件
+ Select file
@@ -761,16 +761,31 @@
SettingsSettings
-
-
- NavigationWallpaperConfiguration
- Configurate active Wallpaper or Widgets
- 设置活动壁纸或物件
+ Mute/Unmute all Wallpaper
+ Mute/Unmute all Wallpaper
- No active Wallpaper or Widgets
- 没有活动壁纸或物件
+ Pause/Play all Wallpaper
+ Pause/Play all Wallpaper
+
+
+ Configure Wallpaper
+ Configure Wallpaper
+
+
+ Minimize to Tray
+ Minimize to Tray
+
+
+ Exit
+ Exit
+
+
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
+ Are you sure you want to exit ScreenPlay?
+This will shut down all Wallpaper and Widgets.
@@ -1008,10 +1023,6 @@
Version版本
-
- ScreenPlay Build Version
- ScreenPlay编译版本
- Open Changelog打开更改日志。
@@ -1052,6 +1063,12 @@
Privacy隐私
+
+ ScreenPlay Build Version
+
+ ScreenPlay Build Version
+
+ SettingsExpander
@@ -1068,15 +1085,15 @@
Video Import h264 (.mp4)
-
+ Video Import h264 (.mp4)Video Import VP8 & VP9 (.webm)
-
+ Video Import VP8 & VP9 (.webm)Video import (all types)
-
+ Video import (all types)GIF Wallpaper
@@ -1183,11 +1200,11 @@
StartInfoFree tools to help you to create wallpaper
-
+ Free tools to help you to create wallpaperBelow you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
-
+ Below you can find tools to create wallaper, beyond the tools that ScreenPlay provides for you!
@@ -1578,7 +1595,7 @@
Password Required To Kick Session
-
+ Password Required To Kick SessionAlready Logged In Elsewhere
diff --git a/ScreenPlaySDK/inc/screenplaysdk.h b/ScreenPlaySDK/inc/screenplaysdk.h
index 991c7143..db72753a 100644
--- a/ScreenPlaySDK/inc/screenplaysdk.h
+++ b/ScreenPlaySDK/inc/screenplaysdk.h
@@ -49,33 +49,19 @@
#include
#include
-class ScreenPlaySDK : public QQuickItem {
+class ScreenPlaySDK : public QObject {
Q_OBJECT
- Q_DISABLE_COPY(ScreenPlaySDK)
public:
- ScreenPlaySDK(QQuickItem* parent = nullptr);
- ScreenPlaySDK(const QString& appID, const QString& type, QQuickItem* parent = nullptr);
+ ScreenPlaySDK(const QString& appID, const QString& type);
~ScreenPlaySDK();
-
Q_PROPERTY(QString type READ type WRITE setType NOTIFY typeChanged)
Q_PROPERTY(bool isConnected READ isConnected WRITE setIsConnected NOTIFY isConnectedChanged)
Q_PROPERTY(QString appID READ appID WRITE setAppID NOTIFY appIDChanged)
- QString type() const
- {
- return m_type;
- }
-
- bool isConnected() const
- {
- return m_isConnected;
- }
-
- QString appID() const
- {
- return m_appID;
- }
+ QString type() const { return m_type; }
+ bool isConnected() const { return m_isConnected; }
+ QString appID() const { return m_appID; }
public slots:
void sendMessage(const QJsonObject& obj);
@@ -140,7 +126,7 @@ signals:
private:
QLocalSocket m_socket;
- QString m_type = "undefined";
+ QString m_type;
bool m_isConnected = false;
QString m_appID;
diff --git a/ScreenPlaySDK/src/screenplaysdk.cpp b/ScreenPlaySDK/src/screenplaysdk.cpp
index 619960a1..bb5b4e3a 100644
--- a/ScreenPlaySDK/src/screenplaysdk.cpp
+++ b/ScreenPlaySDK/src/screenplaysdk.cpp
@@ -15,16 +15,8 @@ static ScreenPlaySDK* global_sdkPtr = nullptr;
\brief .
*/
-ScreenPlaySDK::ScreenPlaySDK(QQuickItem* parent)
- : QQuickItem(parent)
-{
-}
-
-ScreenPlaySDK::ScreenPlaySDK(
- const QString& appID,
- const QString& type,
- QQuickItem* parent)
- : QQuickItem(parent)
+ScreenPlaySDK::ScreenPlaySDK(const QString& appID, const QString& type)
+ : QObject(nullptr)
, m_type { type }
, m_appID { appID }
{
diff --git a/ScreenPlaySysInfo/CMakeLists.txt b/ScreenPlaySysInfo/CMakeLists.txt
index 5c43fb69..7e7d1f21 100644
--- a/ScreenPlaySysInfo/CMakeLists.txt
+++ b/ScreenPlaySysInfo/CMakeLists.txt
@@ -34,7 +34,10 @@ set(HEADER
add_library(${PROJECT_NAME} SHARED ${SOURCES} ${HEADER})
-qt_add_qml_module(${PROJECT_NAME} URI ${PROJECT_NAME} VERSION 1.0)
+qt_add_qml_module(${PROJECT_NAME}
+ OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin/SysInfo
+ URI ${PROJECT_NAME}
+ VERSION 1.0)
target_compile_definitions(${PROJECT_NAME} PRIVATE $<$,$>:QT_QML_DEBUG>)
diff --git a/ScreenPlayUtil/CMakeLists.txt b/ScreenPlayUtil/CMakeLists.txt
index a2f171b9..3047e2dc 100644
--- a/ScreenPlayUtil/CMakeLists.txt
+++ b/ScreenPlayUtil/CMakeLists.txt
@@ -26,3 +26,8 @@ target_include_directories(
PRIVATE src/)
target_link_libraries(${PROJECT_NAME} PRIVATE Qt6::Core)
+
+if(WIN32)
+ # Used for query windows monitor data
+ target_link_libraries(${PROJECT_NAME} PUBLIC shcore.lib)
+endif()
diff --git a/ScreenPlayUtil/inc/public/ScreenPlayUtil/util.h b/ScreenPlayUtil/inc/public/ScreenPlayUtil/util.h
index 11396b85..6005a462 100644
--- a/ScreenPlayUtil/inc/public/ScreenPlayUtil/util.h
+++ b/ScreenPlayUtil/inc/public/ScreenPlayUtil/util.h
@@ -33,6 +33,17 @@
****************************************************************************/
#pragma once
+
+#include
+
+#if defined(Q_OS_WIN)
+// Must be first!
+#include
+
+#include "WinUser.h"
+#include
+#endif
+
#include "ScreenPlayUtil/contenttypes.h"
#include
#include
@@ -41,6 +52,37 @@
#include
namespace ScreenPlayUtil {
+#if defined(Q_OS_WIN)
+struct WinMonitorStats {
+ std::vector iMonitors;
+ std::vector hMonitors;
+ std::vector hdcMonitors;
+ std::vector rcMonitors;
+ std::vector scaleFactor;
+ std::vector> sizes;
+
+ static BOOL CALLBACK MonitorEnum(HMONITOR hMon, HDC hdc, LPRECT lprcMonitor,
+ LPARAM pData)
+ {
+ WinMonitorStats* pThis = reinterpret_cast(pData);
+ auto scaleFactor = DEVICE_SCALE_FACTOR::DEVICE_SCALE_FACTOR_INVALID;
+ GetScaleFactorForMonitor(hMon, &scaleFactor);
+
+ UINT x = 0;
+ UINT y = 0;
+ GetDpiForMonitor(hMon, MONITOR_DPI_TYPE::MDT_RAW_DPI, &x, &y);
+ pThis->sizes.push_back({ x, y });
+ pThis->scaleFactor.push_back(scaleFactor);
+ pThis->hMonitors.push_back(hMon);
+ pThis->hdcMonitors.push_back(hdc);
+ pThis->rcMonitors.push_back(*lprcMonitor);
+ pThis->iMonitors.push_back(pThis->hdcMonitors.size());
+ return TRUE;
+ }
+
+ WinMonitorStats() { EnumDisplayMonitors(0, 0, MonitorEnum, (LPARAM)this); }
+};
+#endif
QJsonArray fillArray(const QVector& items);
ScreenPlay::SearchType::SearchType getSearchTypeFromInstalledType(const ScreenPlay::InstalledType::InstalledType type);
std::optional getInstalledTypeFromString(const QString& type);
diff --git a/ScreenPlayUtil/src/util.cpp b/ScreenPlayUtil/src/util.cpp
index 00119aba..339c5a10 100644
--- a/ScreenPlayUtil/src/util.cpp
+++ b/ScreenPlayUtil/src/util.cpp
@@ -233,7 +233,7 @@ std::optional getInstalledTypeFromStri
{
using ScreenPlay::InstalledType::InstalledType;
- if (type.endsWith("Wallpaper")) {
+ if (type.endsWith("Wallpaper", Qt::CaseInsensitive)) {
if (type.startsWith("video", Qt::CaseInsensitive)) {
return InstalledType::VideoWallpaper;
}
@@ -254,7 +254,7 @@ std::optional getInstalledTypeFromStri
}
}
- if (type.endsWith("Widget")) {
+ if (type.endsWith("Widget", Qt::CaseInsensitive)) {
if (type.startsWith("qml", Qt::CaseInsensitive)) {
return InstalledType::QMLWidget;
}
@@ -266,28 +266,27 @@ std::optional getInstalledTypeFromStri
return std::nullopt;
}
-
/*!
\brief Maps the video codec type from a QString to an enum. Used for parsing the project.json.
*/
-std::optional getVideoCodecFromString(const QString &type)
+std::optional getVideoCodecFromString(const QString& type)
{
- if(type.isEmpty())
+ if (type.isEmpty())
return std::nullopt;
- if(type.contains("vp8",Qt::CaseInsensitive))
+ if (type.contains("vp8", Qt::CaseInsensitive))
return ScreenPlay::VideoCodec::VideoCodec::VP8;
- if(type.contains("vp9",Qt::CaseInsensitive))
+ if (type.contains("vp9", Qt::CaseInsensitive))
return ScreenPlay::VideoCodec::VideoCodec::VP9;
- if(type.contains("av1",Qt::CaseInsensitive))
+ if (type.contains("av1", Qt::CaseInsensitive))
return ScreenPlay::VideoCodec::VideoCodec::AV1;
- if(type.contains("h264",Qt::CaseInsensitive))
+ if (type.contains("h264", Qt::CaseInsensitive))
return ScreenPlay::VideoCodec::VideoCodec::H264;
- if(type.contains("h265",Qt::CaseInsensitive))
+ if (type.contains("h265", Qt::CaseInsensitive))
return ScreenPlay::VideoCodec::VideoCodec::H264;
return std::nullopt;
@@ -395,5 +394,4 @@ std::optional> parseStringToIntegerList(const QString string)
return list;
}
-
}
diff --git a/ScreenPlayWallpaper/CMakeLists.txt b/ScreenPlayWallpaper/CMakeLists.txt
index 43a2fb15..3cf79351 100644
--- a/ScreenPlayWallpaper/CMakeLists.txt
+++ b/ScreenPlayWallpaper/CMakeLists.txt
@@ -84,6 +84,5 @@ if(WIN32)
# Disable console window on Windows
# https://stackoverflow.com/questions/8249028/how-do-i-keep-my-qt-c-program-from-opening-a-console-in-windows
set_property(TARGET ${PROJECT_NAME} PROPERTY WIN32_EXECUTABLE true)
- target_link_libraries(${PROJECT_NAME} PRIVATE shcore.lib)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/index.html ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/index.html COPYONLY)
endif()
diff --git a/ScreenPlayWallpaper/main.cpp b/ScreenPlayWallpaper/main.cpp
index f2d6512c..899fe96d 100644
--- a/ScreenPlayWallpaper/main.cpp
+++ b/ScreenPlayWallpaper/main.cpp
@@ -32,8 +32,8 @@ int main(int argc, char* argv[])
// For testing purposes when starting the ScreenPlayWallpaper directly.
if (argumentList.length() == 1) {
#if defined(Q_OS_WIN)
- //WinWindow window1({ 0 }, "test", "appID=test", "1", "fill", "videoWallpaper", true, true);
- WinWindow window1({ 0 }, "C:/Program Files (x86)/Steam/steamapps/workshop/content/672870/2453869686", "appID=test", "1", "fill", "videoWallpaper", true, true);
+ // WinWindow window1({ 0 }, "test", "appID=test", "1", "fill", "videoWallpaper", true, true);
+ WinWindow window1({ 0, 1, 2 }, "C:/Program Files (x86)/Steam/steamapps/workshop/content/672870/hordemp4", "appID=test", "1", "fill", "videoWallpaper", true, true);
#elif defined(Q_OS_LINUX)
LinuxWindow window({ 0 }, "test", "appID=test", "1", "fill", "videoWallpaper", false, true);
#elif defined(Q_OS_OSX)
diff --git a/ScreenPlayWallpaper/qml/MultimediaView.qml b/ScreenPlayWallpaper/qml/MultimediaView.qml
index 113dd832..341865fe 100644
--- a/ScreenPlayWallpaper/qml/MultimediaView.qml
+++ b/ScreenPlayWallpaper/qml/MultimediaView.qml
@@ -6,12 +6,15 @@ Item {
id: root
anchors.fill: parent
property bool loops: Wallpaper.loops
+ property bool isPlaying: Wallpaper.isPlaying
+ onIsPlayingChanged: isPlaying ? mediaPlayer.play() : mediaPlayer.pause()
property bool isWindows: Qt.platform.os === "windows"
signal requestFadeIn
MediaPlayer {
id: mediaPlayer
+
source: Wallpaper.projectSourceFileAbsolute
Component.onCompleted: {
mediaPlayer.play()
@@ -35,10 +38,35 @@ Item {
VideoOutput {
id: vo
anchors.fill: parent
+
}
AudioOutput {
id: ao
volume: Wallpaper.volume
+ muted: Wallpaper.muted
+ }
+
+ Connections {
+ function onFillModeChanged(fillMode) {
+ if(fillMode === "stretch"){
+ vo.fillMode = VideoOutput.Stretch
+ return
+ }
+ if(fillMode === "fill"){
+ vo.fillMode = VideoOutput.PreserveAspectFit
+ return
+ }
+ if(fillMode === "contain" || fillMode === "cover" || fillMode === "scale-down"){
+ vo.fillMode = VideoOutput.PreserveAspectCrop
+ }
+ }
+
+ function onCurrentTimeChanged(currentTime) {
+ mediaPlayer.position = currentTime * mediaPlayer.duration
+ }
+
+
+ target: Wallpaper
}
}
diff --git a/ScreenPlayWallpaper/qml/Wallpaper.qml b/ScreenPlayWallpaper/qml/Wallpaper.qml
index 41c9485b..55df1635 100644
--- a/ScreenPlayWallpaper/qml/Wallpaper.qml
+++ b/ScreenPlayWallpaper/qml/Wallpaper.qml
@@ -17,20 +17,30 @@ Rectangle {
if (Wallpaper.videoCodec === VideoCodec.Unknown) {
Wallpaper.terminate()
}
+
// macOS only supports h264 via the native Qt MM
- if (Qt.platform.os === "osx" && (Wallpaper.videoCodec === VideoCodec.VP8
- || Wallpaper.videoCodec === VideoCodec.VP9)) {
- loader.source = "qrc:/ScreenPlayWallpaper/qml/MultimediaWebView.qml"
- } else {
+ if (Qt.platform.os === "osx") {
+ if ((Wallpaper.videoCodec === VideoCodec.VP8
+ || Wallpaper.videoCodec === VideoCodec.VP9)) {
+ loader.source = "qrc:/ScreenPlayWallpaper/qml/MultimediaWebView.qml"
+ } else {
+ loader.source = "qrc:/ScreenPlayWallpaper/qml/MultimediaView.qml"
+ }
+ }
+
+ if (Qt.platform.os === "windows") {
loader.source = "qrc:/ScreenPlayWallpaper/qml/MultimediaView.qml"
}
+
+ print(loader.source)
fadeIn()
break
case InstalledType.HTMLWallpaper:
- loader.setSource("qrc:/ScreenPlayWallpaper/qml/WebsiteWallpaper.qml", {
- "url": Qt.resolvedUrl(
- Wallpaper.projectSourceFileAbsolute)
- })
+ loader.setSource(
+ "qrc:/ScreenPlayWallpaper/qml/WebsiteWallpaper.qml", {
+ "url": Qt.resolvedUrl(
+ Wallpaper.projectSourceFileAbsolute)
+ })
break
case InstalledType.QMLWallpaper:
loader.source = Qt.resolvedUrl(Wallpaper.projectSourceFileAbsolute)
@@ -54,49 +64,50 @@ Rectangle {
}
function fadeIn() {
- Wallpaper.setVisible(true);
+ Wallpaper.setVisible(true)
if (canFadeByWallpaperFillMode && Wallpaper.canFade)
- imgCover.state = "hideDefaultBackgroundImage";
+ imgCover.state = "hideDefaultBackgroundImage"
else
- imgCover.opacity = 0;
+ imgCover.opacity = 0
}
anchors.fill: parent
color: {
if (Qt.platform.os !== "windows")
- return "black";
+ return "black"
else
- return Wallpaper.windowsDesktopProperties.color;
+ return Wallpaper.windowsDesktopProperties.color
}
Component.onCompleted: {
- init();
+ init()
}
Connections {
function onQmlExit() {
if (canFadeByWallpaperFillMode && Wallpaper.canFade)
- imgCover.state = "exit";
+ imgCover.state = "exit"
else
- Wallpaper.terminate();
+ Wallpaper.terminate()
}
function onQmlSceneValueReceived(key, value) {
- var obj2 = 'import QtQuick; Item {Component.onCompleted: loader.item.' + key + ' = ' + value + '; }';
- var newObject = Qt.createQmlObject(obj2.toString(), root, "err");
- newObject.destroy(10000);
+ var obj2 = 'import QtQuick; Item {Component.onCompleted: loader.item.'
+ + key + ' = ' + value + '; }'
+ var newObject = Qt.createQmlObject(obj2.toString(), root, "err")
+ newObject.destroy(10000)
}
// Replace wallpaper with QML Scene
function onReloadQML(oldType) {
- loader.sourceComponent = undefined;
- loader.source = "";
- Wallpaper.clearComponentCache();
- loader.source = Qt.resolvedUrl(Wallpaper.projectSourceFileAbsolute);
+ loader.sourceComponent = undefined
+ loader.source = ""
+ Wallpaper.clearComponentCache()
+ loader.source = Qt.resolvedUrl(Wallpaper.projectSourceFileAbsolute)
}
// Replace wallpaper with GIF
function onReloadGIF(oldType) {
- init();
+ init()
}
// This function only gets called here (the same function
@@ -106,9 +117,9 @@ Rectangle {
// We need to check if the old type
// was also Video not get called twice
if (oldType === InstalledType.VideoWallpaper)
- return ;
+ return
- loader.source = "qrc:/ScreenPlayWallpaper/qml/MultimediaView.qml";
+ loader.source = "qrc:/ScreenPlayWallpaper/qml/MultimediaView.qml"
}
target: Wallpaper
@@ -123,20 +134,19 @@ Rectangle {
//asynchronous: true
onStatusChanged: {
if (loader.status === Loader.Error) {
- loader.source = "";
- // Wallpaper.terminate();
+ loader.source = ""
+ // Wallpaper.terminate();
}
}
Connections {
function onRequestFadeIn() {
- fadeIn();
+ fadeIn()
}
ignoreUnknownSignals: true
target: loader.item
}
-
}
Image {
@@ -147,40 +157,41 @@ Rectangle {
sourceSize.height: Wallpaper.height
source: {
if (Qt.platform.os === "windows")
- return Qt.resolvedUrl("file:///" + Wallpaper.windowsDesktopProperties.wallpaperPath);
+ return Qt.resolvedUrl(
+ "file:///" + Wallpaper.windowsDesktopProperties.wallpaperPath)
else
return ""
}
-
+
Component.onCompleted: {
if (Qt.platform.os !== "windows") {
- root.canFadeByWallpaperFillMode = false;
- return ;
+ root.canFadeByWallpaperFillMode = false
+ return
}
switch (Wallpaper.windowsDesktopProperties.wallpaperStyle) {
case 10:
- imgCover.fillMode = Image.PreserveAspectCrop;
- break;
+ imgCover.fillMode = Image.PreserveAspectCrop
+ break
case 6:
- imgCover.fillMode = Image.PreserveAspectFit;
- break;
+ imgCover.fillMode = Image.PreserveAspectFit
+ break
case 2:
- break;
+ break
case 0:
if (desktopProperties.isTiled) {
// Tiled
- imgCover.fillMode = Image.Tile;
+ imgCover.fillMode = Image.Tile
} else {
// Center
- imgCover.fillMode = Image.PreserveAspectFit;
- imgCover.anchors.centerIn = parent;
- imgCover.width = sourceSize.width;
- imgCover.height = sourceSize.height;
+ imgCover.fillMode = Image.PreserveAspectFit
+ imgCover.anchors.centerIn = parent
+ imgCover.width = sourceSize.width
+ imgCover.height = sourceSize.height
}
- break;
+ break
case 22:
- root.canFadeByWallpaperFillMode = false;
- break;
+ root.canFadeByWallpaperFillMode = false
+ break
}
}
@@ -199,7 +210,6 @@ Rectangle {
target: imgCover
opacity: 1
}
-
},
State {
name: "hideDefaultBackgroundImage"
@@ -208,7 +218,6 @@ Rectangle {
target: imgCover
opacity: 0
}
-
},
State {
name: "exit"
@@ -217,7 +226,6 @@ Rectangle {
target: imgCover
opacity: 1
}
-
}
]
transitions: [
@@ -236,9 +244,7 @@ Rectangle {
duration: 600
property: "opacity"
}
-
}
-
},
Transition {
from: "hideDefaultBackgroundImage"
@@ -255,9 +261,7 @@ Rectangle {
ScriptAction {
script: Wallpaper.terminate()
}
-
}
-
}
]
}
@@ -287,7 +291,12 @@ Rectangle {
}
Text {
- text: "projectSourceFileAbsolute " + Wallpaper.projectSourceFileAbsolute
+ text: "getApplicationPath " + Wallpaper.getApplicationPath()
+ font.pointSize: 14
+ }
+
+ Text {
+ text: "projectSourceFileAbsolute " + Qt.resolvedUrl(Wallpaper.projectSourceFileAbsolute)
font.pointSize: 14
}
@@ -324,9 +333,10 @@ Rectangle {
Text {
text: {
if (Qt.platform.os === "windows")
- return "imgCover.source " + Qt.resolvedUrl("file:///" + Wallpaper.windowsDesktopProperties.wallpaperPath)
- else
- return ""
+ return "imgCover.source " + Qt.resolvedUrl(
+ "file:///" + Wallpaper.windowsDesktopProperties.wallpaperPath)
+ else
+ return ""
}
font.pointSize: 14
}
@@ -335,13 +345,10 @@ Rectangle {
text: "imgCover.status " + imgCover.status
font.pointSize: 14
}
-
}
background: Rectangle {
opacity: 0.5
}
-
}
-
}
diff --git a/ScreenPlayWallpaper/src/basewindow.cpp b/ScreenPlayWallpaper/src/basewindow.cpp
index de9d2ecb..396e782a 100644
--- a/ScreenPlayWallpaper/src/basewindow.cpp
+++ b/ScreenPlayWallpaper/src/basewindow.cpp
@@ -85,7 +85,13 @@ BaseWindow::BaseWindow(
if (auto typeOpt = ScreenPlayUtil::getInstalledTypeFromString(project.value("type").toString())) {
setType(typeOpt.value());
- if (!project.contains("videoCodec")) {
+ if (this->type() == ScreenPlay::InstalledType::InstalledType::VideoWallpaper) {
+ if (auto videoCodecOpt = ScreenPlayUtil::getVideoCodecFromString(project.value("videoCodec").toString())) {
+ setVideoCodec(videoCodecOpt.value());
+ } else {
+ qCritical() << "Cannot parse Wallpaper video codec from value" << project.value("type");
+ }
+ } else if (!project.contains("videoCodec") && this->type() == ScreenPlay::InstalledType::InstalledType::VideoWallpaper) {
qWarning("No videoCodec was specified inside the json object!");
const QString filename = project.value("file").toString();
if (filename.endsWith(".mp4")) {
@@ -93,14 +99,6 @@ BaseWindow::BaseWindow(
} else if (filename.endsWith(".webm")) {
setVideoCodec(ScreenPlay::VideoCodec::VideoCodec::VP8);
}
- } else {
- if (this->type() == ScreenPlay::InstalledType::InstalledType::VideoWallpaper) {
- if (auto videoCodecOpt = ScreenPlayUtil::getVideoCodecFromString(project.value("videoCodec").toString())) {
- setVideoCodec(videoCodecOpt.value());
- } else {
- qCritical() << "Cannot parse Wallpaper video codec from value" << project.value("type");
- }
- }
}
} else {
diff --git a/ScreenPlayWallpaper/src/winwindow.cpp b/ScreenPlayWallpaper/src/winwindow.cpp
index a2ec08b5..28177872 100644
--- a/ScreenPlayWallpaper/src/winwindow.cpp
+++ b/ScreenPlayWallpaper/src/winwindow.cpp
@@ -1,41 +1,8 @@
#include "winwindow.h"
-#include "WinUser.h"
#include "qqml.h"
-#include
#include
#include
#include
-#include
-
-struct WinMonitorStats {
- std::vector iMonitors;
- std::vector hMonitors;
- std::vector hdcMonitors;
- std::vector rcMonitors;
- std::vector scaleFactor;
- std::vector> sizes;
-
- static BOOL CALLBACK MonitorEnum(HMONITOR hMon, HDC hdc, LPRECT lprcMonitor,
- LPARAM pData)
- {
- WinMonitorStats* pThis = reinterpret_cast(pData);
- auto scaleFactor = DEVICE_SCALE_FACTOR::DEVICE_SCALE_FACTOR_INVALID;
- GetScaleFactorForMonitor(hMon, &scaleFactor);
-
- UINT x = 0;
- UINT y = 0;
- GetDpiForMonitor(hMon, MONITOR_DPI_TYPE::MDT_RAW_DPI, &x, &y);
- pThis->sizes.push_back({ x, y });
- pThis->scaleFactor.push_back(scaleFactor);
- pThis->hMonitors.push_back(hMon);
- pThis->hdcMonitors.push_back(hdc);
- pThis->rcMonitors.push_back(*lprcMonitor);
- pThis->iMonitors.push_back(pThis->hdcMonitors.size());
- return TRUE;
- }
-
- WinMonitorStats() { EnumDisplayMonitors(0, 0, MonitorEnum, (LPARAM)this); }
-};
/*!
\brief Searches for the worker window for our window to parent to.
@@ -225,11 +192,6 @@ WinWindow::WinWindow(
configureWindowGeometry();
- if (hasWindowScaling()) {
- qInfo() << "Monitor with scaling detected!";
- configureWindowGeometry();
- }
-
// We do not support autopause for multi monitor wallpaper
if (this->activeScreensList().length() == 1) {
if (checkWallpaperVisible) {
@@ -294,13 +256,13 @@ void WinWindow::setupWallpaperForOneScreen(int activeScreen)
const QRect screenRect = QApplication::screens().at(activeScreen)->geometry();
const int boderWidth = 2;
const float scaling = getScaling(activeScreen);
- const auto width = screenRect.width() * scaling + boderWidth;
- const auto height = screenRect.height() * scaling + boderWidth;
-
const int borderOffset = -1;
- const int x = screenRect.x() + m_zeroPoint.x() + borderOffset;
- const int y = screenRect.y() + m_zeroPoint.y() + borderOffset;
+ ScreenPlayUtil::WinMonitorStats monitors;
+ const int width = std::abs(monitors.rcMonitors[activeScreen].right - monitors.rcMonitors[activeScreen].left);
+ const int height = std::abs(monitors.rcMonitors[activeScreen].top - monitors.rcMonitors[activeScreen].bottom);
+ const int x = monitors.rcMonitors[activeScreen].left + m_zeroPoint.x() + borderOffset;
+ const int y = monitors.rcMonitors[activeScreen].top + m_zeroPoint.y() + borderOffset;
qInfo() << QString("Setup window activeScreen: %1 scaling: %2 x: %3 y: %4 width: %5 height: %6").arg(activeScreen).arg(scaling).arg(x).arg(y).arg(width).arg(height);
{
@@ -323,20 +285,43 @@ void WinWindow::setupWallpaperForOneScreen(int activeScreen)
*/
void WinWindow::setupWallpaperForAllScreens()
{
+ ScreenPlayUtil::WinMonitorStats monitors;
QRect rect;
- for (int i = 0; i < QApplication::screens().count(); i++) {
- QScreen* screenTmp = QApplication::screens().at(i);
- rect.setWidth(rect.width() + screenTmp->geometry().width());
- rect.setHeight(rect.height() + screenTmp->geometry().height());
+ for (int i = 0; i < monitors.iMonitors.size(); i++) {
+ const int width = std::abs(monitors.rcMonitors[i].right - monitors.rcMonitors[i].left);
+ const int height = std::abs(monitors.rcMonitors[i].top - monitors.rcMonitors[i].bottom);
+ qInfo() << width << height;
+ rect.setWidth(rect.width() + width);
+ rect.setHeight(rect.height() + height);
}
- m_window.setHeight(rect.height());
- m_window.setWidth(rect.width());
- if (!SetWindowPos(m_windowHandle, HWND_TOPMOST, 0, 0, rect.width(), rect.height(), SWP_NOSIZE | SWP_NOMOVE)) {
+ int offsetX = 0;
+ int offsetY = 0;
+ for (int i = 0; i < monitors.iMonitors.size(); i++) {
+ const int x = monitors.rcMonitors[i].left;
+ const int y = monitors.rcMonitors[i].top;
+ qInfo() << x << y;
+ if (x < offsetX) {
+ offsetX = x;
+ }
+ if (y < offsetY) {
+ offsetY += y;
+ }
+ }
+ if (!SetWindowPos(m_windowHandle, nullptr, offsetX, offsetY, rect.width(), rect.height(), SWP_NOSIZE | SWP_NOMOVE)) {
+ qFatal("Could not set window pos: ");
+ }
+ if (!SetWindowPos(m_windowHandle, nullptr, offsetX, offsetY, rect.width(), rect.height(), SWP_NOSIZE | SWP_NOMOVE)) {
qFatal("Could not set window pos: ");
}
if (SetParent(m_windowHandle, m_windowHandleWorker) == nullptr) {
qFatal("Could not attach to parent window");
}
+ qInfo() << rect.width() << rect.height() << offsetX << offsetY;
+ m_window.setHeight(rect.height());
+ m_window.setWidth(rect.width());
+ m_window.setY(offsetY);
+ m_window.setX(offsetX+1920);
+ qInfo() << m_window.geometry();
}
/*!
diff --git a/ScreenPlayWorkshop/CMakeLists.txt b/ScreenPlayWorkshop/CMakeLists.txt
index bb6cce28..d7ef8ff1 100644
--- a/ScreenPlayWorkshop/CMakeLists.txt
+++ b/ScreenPlayWorkshop/CMakeLists.txt
@@ -60,8 +60,7 @@ qt_add_qml_module(
${WORKSHOP_PLUGIN_DIR}
URI "Workshop"
SOURCES ${SOURCES} ${HEADER}
- VERSION
- 1.0)
+ VERSION 1.0)
if(${SCREENPLAY_STEAM})
@@ -84,4 +83,4 @@ endif()
# https://github.com/qt/qtdeclarative/blob/7a7064e14f094e843e1ee832cc927e86f887621a/src/qml/Qt6QmlMacros.cmake#L2042
target_include_directories(${PROJECT_NAME} PUBLIC src/)
-target_link_libraries(${PROJECT_NAME} PRIVATE Qt6::Core Qt6::Quick ${STEAM_LIB} ScreenPlayUtil SteamSDK)
+target_link_libraries(${PROJECT_NAME} PRIVATE Qt6::Core Qt6::Quick ${STEAM_LIB} ScreenPlayUtil SteamSDK SteamSDKQtEnums)
diff --git a/ScreenPlayWorkshop/SteamSDK/CMakeLists.txt b/ScreenPlayWorkshop/SteamSDK/CMakeLists.txt
index f74286af..74e908c4 100644
--- a/ScreenPlayWorkshop/SteamSDK/CMakeLists.txt
+++ b/ScreenPlayWorkshop/SteamSDK/CMakeLists.txt
@@ -50,11 +50,17 @@ set(HEADER
public/steam/steamps3params.h
public/steam/steamtypes.h
public/steam/steamuniverse.h
- # CUSTOM
- public/steam/steam_qt_enums_generated.h
- # ENDCUSTOM
)
-add_library(${PROJECT_NAME} STATIC ${HEADER})
-target_include_directories(${PROJECT_NAME} PUBLIC public/)
-target_link_libraries(${PROJECT_NAME} PRIVATE Qt6::Core)
+
+if(${SCREENPLAY_STEAM})
+ add_library(${PROJECT_NAME} STATIC ${HEADER})
+ target_include_directories(${PROJECT_NAME} PUBLIC public/)
+ target_link_libraries(${PROJECT_NAME})
+endif()
+
+# We allaways need the generated enums as a workaround to register these enums in app.cpp.
+# Registering in the ScreenPlayWorkshop plugin does not work for some reason.
+add_library(SteamSDKQtEnums STATIC public/steam/steam_qt_enums_generated.h)
+target_include_directories(SteamSDKQtEnums PUBLIC public/)
+target_link_libraries(SteamSDKQtEnums PRIVATE Qt6::Core)
diff --git a/ScreenPlayWorkshop/src/installedlistmodel.cpp b/ScreenPlayWorkshop/src/installedlistmodel.cpp
index 112f7ef7..7773c35a 100644
--- a/ScreenPlayWorkshop/src/installedlistmodel.cpp
+++ b/ScreenPlayWorkshop/src/installedlistmodel.cpp
@@ -88,8 +88,10 @@ void InstalledListModel::append(const QJsonObject& obj, const QString& folderNam
void InstalledListModel::loadInstalledContent()
{
+ if(m_loadContentFutureWatcher.isRunning())
+ return;
- QtConcurrent::run([this]() {
+ m_loadContentFuture = QtConcurrent::run([this]() {
QFileInfoList list = QDir(m_absoluteStoragePath.toLocalFile()).entryInfoList(QDir::NoDotAndDotDot | QDir::AllDirs);
for (const auto& item : list) {
@@ -117,6 +119,7 @@ void InstalledListModel::loadInstalledContent()
emit installedLoadingFinished();
});
+ m_loadContentFutureWatcher.setFuture(m_loadContentFuture);
}
QVariantMap InstalledListModel::get(QString folderId)
diff --git a/ScreenPlayWorkshop/src/installedlistmodel.h b/ScreenPlayWorkshop/src/installedlistmodel.h
index 90cb1712..b4c90454 100644
--- a/ScreenPlayWorkshop/src/installedlistmodel.h
+++ b/ScreenPlayWorkshop/src/installedlistmodel.h
@@ -89,6 +89,8 @@ signals:
private:
QVector m_screenPlayFiles;
QUrl m_absoluteStoragePath;
+ QFuture m_loadContentFuture;
+ QFutureWatcher m_loadContentFutureWatcher;
};
}