mirror of
https://gitlab.com/kelteseth/ScreenPlay.git
synced 2024-09-18 16:32:33 +02:00
Add base multi monitor wallpaper setup
This commit is contained in:
parent
e73471ad79
commit
da63c09920
@ -1,4 +1,5 @@
|
||||
import QtQuick 2.12
|
||||
import QtQuick.Layouts 1.12
|
||||
import QtQuick.Controls 2.2
|
||||
|
||||
Item {
|
||||
@ -29,7 +30,7 @@ Item {
|
||||
}
|
||||
}
|
||||
|
||||
Row {
|
||||
RowLayout {
|
||||
spacing: 30
|
||||
anchors {
|
||||
top: txtHeadline.bottom
|
||||
@ -42,9 +43,9 @@ Item {
|
||||
id: imgIcon
|
||||
width: 20
|
||||
height: 20
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
source: iconSource
|
||||
sourceSize: Qt.size(20, 20)
|
||||
Layout.alignment: Qt.AlignVCenter
|
||||
}
|
||||
|
||||
Slider {
|
||||
@ -52,16 +53,16 @@ Item {
|
||||
stepSize: 0.01
|
||||
from: 0
|
||||
value: 1
|
||||
Layout.fillWidth: true
|
||||
Layout.alignment: Qt.AlignVCenter
|
||||
to: 1
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
}
|
||||
|
||||
Text {
|
||||
id: txtValue
|
||||
color: "#818181"
|
||||
text: Math.round(slider.value * 100) / 100
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
//font.family: "Libre Baskerville"
|
||||
Layout.alignment: Qt.AlignVCenter
|
||||
font.pointSize: 12
|
||||
font.italic: true
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
@ -400,14 +400,29 @@ Item {
|
||||
}
|
||||
|
||||
onClicked: {
|
||||
|
||||
if (type.endsWith("Wallpaper")) {
|
||||
screenPlay.createWallpaper(
|
||||
monitorSelection.activeMonitorIndex, installedListModel.absoluteStoragePath + "/" + activeScreen,
|
||||
installedListModel.get(activeScreen).screenPreview,
|
||||
(Math.round(sliderVolume.value * 100) / 100),
|
||||
settingsComboBox.model.get(settingsComboBox.currentIndex).text.toString(
|
||||
), type)
|
||||
let activeMonitors = monitorSelection.getActiveMonitors();
|
||||
|
||||
if(activeMonitors.length === 0)
|
||||
return
|
||||
|
||||
if(activeMonitors.length > 1) {
|
||||
screenPlay.createWallpaper(
|
||||
activeMonitors, installedListModel.absoluteStoragePath + "/" + activeScreen,
|
||||
installedListModel.get(activeScreen).screenPreview,
|
||||
(Math.round(sliderVolume.value * 100) / 100),
|
||||
settingsComboBox.model.get(settingsComboBox.currentIndex).text.toString(
|
||||
), type)
|
||||
} else {
|
||||
screenPlay.createWallpaper(
|
||||
activeMonitors[0], installedListModel.absoluteStoragePath + "/" + activeScreen,
|
||||
installedListModel.get(activeScreen).screenPreview,
|
||||
(Math.round(sliderVolume.value * 100) / 100),
|
||||
settingsComboBox.model.get(settingsComboBox.currentIndex).text.toString(
|
||||
), type)
|
||||
}
|
||||
|
||||
|
||||
} else {
|
||||
screenPlay.createWidget(
|
||||
installedListModel.absoluteStoragePath + "/" + activeScreen,
|
||||
|
@ -14,25 +14,22 @@ Rectangle {
|
||||
// Width of the Sidebar or Space that should be used
|
||||
property real availableWidth: 0
|
||||
property real availableHeight: 0
|
||||
property int activeMonitorIndex: 0
|
||||
property int fontSize: 12
|
||||
property string activeMonitorID: "empty"
|
||||
|
||||
signal requestProjectSettings(var at)
|
||||
|
||||
|
||||
function setActiveMonitorIndex(newIndex) {
|
||||
activeMonitorIndex = newIndex
|
||||
activeMonitorID = rp.itemAt(newIndex).monitorID
|
||||
function getActiveMonitors(){
|
||||
let activeMonitors = [];
|
||||
for (var i = 0; i < rp.count; i++) {
|
||||
if (i === newIndex) {
|
||||
rp.itemAt(i).isSelected = true
|
||||
} else {
|
||||
rp.itemAt(i).isSelected = false
|
||||
}
|
||||
if(rp.itemAt(i).isSelected){
|
||||
activeMonitors.push(rp.itemAt(i).index)
|
||||
}
|
||||
}
|
||||
return activeMonitors;
|
||||
}
|
||||
|
||||
|
||||
Component.onCompleted: {
|
||||
resize()
|
||||
}
|
||||
@ -42,17 +39,17 @@ Rectangle {
|
||||
onMonitorReloadCompleted: {
|
||||
resize()
|
||||
}
|
||||
onSetNewActiveMonitor:{
|
||||
onSetNewActiveMonitor: {
|
||||
rp.itemAt(index).previewImage = "file:///" + path.trim()
|
||||
rp.itemAt(index).isSelected = true
|
||||
}
|
||||
}
|
||||
Connections {
|
||||
target: screenPlay
|
||||
onAllWallpaperRemoved:{
|
||||
for(var i = 0; i < rp.count; i++){
|
||||
onAllWallpaperRemoved: {
|
||||
for (var i = 0; i < rp.count; i++) {
|
||||
rp.itemAt(i).isSelected = false
|
||||
rp.itemAt(i).previewImage =""
|
||||
rp.itemAt(i).previewImage = ""
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -93,7 +90,6 @@ Rectangle {
|
||||
rp.itemAt(i).x = rp.itemAt(i).x * monitorWidthRationDelta
|
||||
rp.itemAt(i).y = rp.itemAt(i).y * monitorHeightRationDelta
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Repeater {
|
||||
@ -102,7 +98,7 @@ Rectangle {
|
||||
anchors.centerIn: parent
|
||||
model: monitorListModel
|
||||
|
||||
Component.onCompleted: rp.itemAt(0).isSelected = true
|
||||
Component.onCompleted: rp.itemAt(0).isSelected = true
|
||||
|
||||
delegate: MonitorSelectionItem {
|
||||
id: delegate
|
||||
@ -118,16 +114,12 @@ Rectangle {
|
||||
fontSize: rect.fontSize
|
||||
index: monitorNumber
|
||||
//isWallpaperActive: monitorIsWallpaperActive
|
||||
//previewImage: monitorPreviewImage
|
||||
previewImage: monitorPreviewImage
|
||||
|
||||
onMonitorSelected: {
|
||||
requestProjectSettings(index)
|
||||
|
||||
Connections {
|
||||
target: delegate
|
||||
onMonitorSelected: {
|
||||
setActiveMonitorIndex(index)
|
||||
requestProjectSettings(index)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -19,6 +19,13 @@ Item {
|
||||
property bool isSelected: false
|
||||
property bool isWallpaperActive: false
|
||||
signal monitorSelected(var index)
|
||||
onMonitorSelected: {
|
||||
if(isSelected){
|
||||
isSelected = false
|
||||
} else {
|
||||
isSelected = true
|
||||
}
|
||||
}
|
||||
|
||||
onIsSelectedChanged: {
|
||||
if (isSelected) {
|
||||
@ -26,7 +33,6 @@ Item {
|
||||
|
||||
} else {
|
||||
wrapper.border.color = "#373737"
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -150,6 +150,10 @@ Item {
|
||||
headline: qsTr("Playback rate")
|
||||
onValueChanged: screenPlay.setWallpaperValue(activeMonitorIndex,"playbackRate", value)
|
||||
}
|
||||
SP.Slider {
|
||||
headline: qsTr("Current Video Time")
|
||||
onValueChanged: screenPlay.setWallpaperValue(activeMonitorIndex,"currentTime", value)
|
||||
}
|
||||
}
|
||||
|
||||
GridView {
|
||||
|
@ -176,7 +176,8 @@ Monitor::Monitor(QString manufacturer, QString model, QString name, QSize size,
|
||||
m_number = number;
|
||||
// FIXME: Use a better way to create an id
|
||||
// because name and manufacturer are allways empty
|
||||
m_id = name + "_" + QString::number(size.width()) + "x" + QString::number(size.height()) + "_" + QString::number(availableGeometry.x()) + "x" + QString::number(availableGeometry.y());
|
||||
m_id = QString::number(size.width()) + "x" + QString::number(size.height()) + "_" + QString::number(availableGeometry.x()) + "x" + QString::number(availableGeometry.y());
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -34,7 +34,7 @@ void ScreenPlayManager::createWallpaper(
|
||||
|
||||
m_screenPlayWallpapers.emplace_back(
|
||||
make_unique<ScreenPlayWallpaper>(
|
||||
vector<int> { monitorIndex },
|
||||
QVector<int> { monitorIndex },
|
||||
m_settings,
|
||||
generateID(),
|
||||
path,
|
||||
@ -50,6 +50,31 @@ void ScreenPlayManager::createWallpaper(
|
||||
m_settings->saveWallpaperToConfig(monitorIndex, path, type);
|
||||
}
|
||||
|
||||
void ScreenPlayManager::createWallpaper( QVector<int> monitorIndex, const QString &absoluteStoragePath, const QString &previewImage, const float volume, const QString &fillMode, const QString &type)
|
||||
{
|
||||
m_settings->increaseActiveWallpaperCounter();
|
||||
|
||||
QString path = absoluteStoragePath;
|
||||
if(absoluteStoragePath.contains("file:///"))
|
||||
path = path.remove("file:///");
|
||||
|
||||
std::sort(monitorIndex.begin(), monitorIndex.end());
|
||||
|
||||
m_screenPlayWallpapers.emplace_back(
|
||||
make_unique<ScreenPlayWallpaper>(
|
||||
monitorIndex,
|
||||
m_settings,
|
||||
generateID(),
|
||||
path,
|
||||
previewImage,
|
||||
volume,
|
||||
fillMode,
|
||||
type,
|
||||
this));
|
||||
|
||||
|
||||
}
|
||||
|
||||
void ScreenPlayManager::createWidget(QUrl absoluteStoragePath, const QString& previewImage)
|
||||
{
|
||||
ProjectFile project {};
|
||||
@ -118,7 +143,7 @@ void ScreenPlayManager::removeWallpaperAt(const int at)
|
||||
const auto wallsToRemove = remove_if(
|
||||
m_screenPlayWallpapers.begin(), m_screenPlayWallpapers.end(),
|
||||
[&](const unique_ptr<ScreenPlayWallpaper>& uPtrWallpaper) -> bool {
|
||||
const vector<int>& screenNumber = uPtrWallpaper->screenNumber();
|
||||
const QVector<int>& screenNumber = uPtrWallpaper->screenNumber();
|
||||
const bool isFound = !screenNumber.empty() && screenNumber[0] == at;
|
||||
if (isFound) {
|
||||
m_sdkconnector->closeWallpapersAt(at);
|
||||
@ -200,9 +225,8 @@ void ScreenPlayManager::loadActiveProfiles()
|
||||
// A wallpaper can span across multiple monitors
|
||||
for (const QJsonValueRef monitor : monitorsArray) {
|
||||
QJsonObject obj = monitor.toObject();
|
||||
int parseMonitorIndexDefaultValue { -1 };
|
||||
int monitorIndex = obj.value("index").toInt(parseMonitorIndexDefaultValue);
|
||||
|
||||
int monitorIndex = obj.value("index").toInt(-1);
|
||||
if (monitorIndex == -1)
|
||||
continue;
|
||||
|
||||
|
@ -33,6 +33,7 @@ using std::shared_ptr,
|
||||
std::size_t,
|
||||
std::remove_if;
|
||||
|
||||
|
||||
class ScreenPlayManager final : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
@ -56,7 +57,13 @@ public slots:
|
||||
void createWallpaper(const int monitorIndex, const QString& absoluteStoragePath,
|
||||
const QString& previewImage, const float volume,
|
||||
const QString& fillMode, const QString& type);
|
||||
|
||||
void createWallpaper( QVector<int> monitorIndex, const QString& absoluteStoragePath,
|
||||
const QString& previewImage, const float volume,
|
||||
const QString& fillMode, const QString& type);
|
||||
|
||||
void createWidget(QUrl absoluteStoragePath, const QString& previewImage);
|
||||
|
||||
void closeAllConnections();
|
||||
void requestProjectSettingsListModelAt(const int index);
|
||||
void setWallpaperValue(const int at, const QString& key, const QString& value);
|
||||
|
@ -6,7 +6,7 @@
|
||||
*/
|
||||
namespace ScreenPlay {
|
||||
|
||||
ScreenPlayWallpaper::ScreenPlayWallpaper(const vector<int>& screenNumber,
|
||||
ScreenPlayWallpaper::ScreenPlayWallpaper(const QVector<int>& screenNumber,
|
||||
const shared_ptr<Settings>& settings,
|
||||
const QString& appID,
|
||||
const QString& projectPath,
|
||||
@ -17,7 +17,7 @@ ScreenPlayWallpaper::ScreenPlayWallpaper(const vector<int>& screenNumber,
|
||||
QObject* parent)
|
||||
: QObject(parent)
|
||||
, m_projectSettingsListModel { make_shared<ProjectSettingsListModel>(projectPath + "/project.json") }
|
||||
, m_screenNumber { move(screenNumber) }
|
||||
, m_screenNumber { screenNumber }
|
||||
, m_projectPath { projectPath }
|
||||
, m_previewImage { previewImage }
|
||||
, m_appID { appID }
|
||||
@ -36,8 +36,22 @@ ScreenPlayWallpaper::ScreenPlayWallpaper(const vector<int>& screenNumber,
|
||||
qDebug() << "EX: " << error;
|
||||
});
|
||||
|
||||
QString tmpScreenNumber;
|
||||
if (m_screenNumber.length() > 1) {
|
||||
for (const int number : m_screenNumber) {
|
||||
// IMPORTANT: NO TRAILING COMMA!
|
||||
if (number == m_screenNumber.back()) {
|
||||
tmpScreenNumber += QString::number(number);
|
||||
} else {
|
||||
tmpScreenNumber += QString::number(number) + ",";
|
||||
}
|
||||
}
|
||||
} else {
|
||||
tmpScreenNumber = QString::number(m_screenNumber.first());
|
||||
}
|
||||
|
||||
const QStringList proArgs {
|
||||
QString::number(m_screenNumber.empty() ? 0 : m_screenNumber[0]),
|
||||
tmpScreenNumber,
|
||||
m_projectPath,
|
||||
QString { "appID=" + m_appID },
|
||||
"",
|
||||
@ -45,7 +59,7 @@ ScreenPlayWallpaper::ScreenPlayWallpaper(const vector<int>& screenNumber,
|
||||
fillMode
|
||||
};
|
||||
|
||||
//qDebug() << "Creating ScreenPlayWallpaper " << proArgs;
|
||||
qDebug() << "Creating ScreenPlayWallpaper " << proArgs;
|
||||
|
||||
m_process.setArguments(proArgs);
|
||||
m_process.setProgram(m_settings->screenPlayWallpaperPath().toString());
|
||||
|
@ -17,14 +17,14 @@ using std::shared_ptr,
|
||||
class ScreenPlayWallpaper final : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
Q_PROPERTY(vector<int> screenNumber READ screenNumber WRITE setScreenNumber NOTIFY screenNumberChanged)
|
||||
Q_PROPERTY(QVector<int> screenNumber READ screenNumber WRITE setScreenNumber NOTIFY screenNumberChanged)
|
||||
Q_PROPERTY(QString projectPath READ projectPath WRITE setProjectPath NOTIFY projectPathChanged)
|
||||
Q_PROPERTY(QString previewImage READ previewImage WRITE setPreviewImage NOTIFY previewImageChanged)
|
||||
Q_PROPERTY(QString appID READ appID WRITE setAppID NOTIFY appIDChanged)
|
||||
Q_PROPERTY(QString type READ type WRITE setType NOTIFY typeChanged)
|
||||
|
||||
public:
|
||||
explicit ScreenPlayWallpaper(const vector<int>& screenNumber,
|
||||
explicit ScreenPlayWallpaper(const QVector<int>& screenNumber,
|
||||
const shared_ptr<Settings>& settings,
|
||||
const QString& appID,
|
||||
const QString& projectPath,
|
||||
@ -41,7 +41,7 @@ public:
|
||||
return m_projectSettingsListModel;
|
||||
}
|
||||
|
||||
vector<int> screenNumber() const
|
||||
QVector<int> screenNumber() const
|
||||
{
|
||||
return m_screenNumber;
|
||||
}
|
||||
@ -67,14 +67,14 @@ public:
|
||||
}
|
||||
|
||||
signals:
|
||||
void screenNumberChanged(vector<int> screenNumber);
|
||||
void screenNumberChanged(QVector<int> screenNumber);
|
||||
void projectPathChanged(QString projectPath);
|
||||
void previewImageChanged(QString previewImage);
|
||||
void appIDChanged(QString appID);
|
||||
void typeChanged(QString type);
|
||||
|
||||
public slots:
|
||||
void setScreenNumber(vector<int> screenNumber)
|
||||
void setScreenNumber(QVector<int> screenNumber)
|
||||
{
|
||||
if (m_screenNumber == screenNumber)
|
||||
return;
|
||||
@ -122,7 +122,7 @@ public slots:
|
||||
private:
|
||||
QProcess m_process;
|
||||
shared_ptr<ProjectSettingsListModel> m_projectSettingsListModel;
|
||||
vector<int> m_screenNumber;
|
||||
QVector<int> m_screenNumber;
|
||||
QString m_projectPath;
|
||||
QString m_previewImage;
|
||||
QString m_appID;
|
||||
|
@ -60,7 +60,11 @@ int main(int argc, char* argv[])
|
||||
sdk.setAppID(argumentList.at(3));
|
||||
|
||||
QString monitorNumbers = argumentList.at(1);
|
||||
QStringList activeScreensList = monitorNumbers.split(",");
|
||||
qDebug() << activeScreensList;
|
||||
activeScreensList.removeAll(",");
|
||||
QVector<int> list;
|
||||
qDebug() << activeScreensList;
|
||||
|
||||
if (monitorNumbers.length() == 1) {
|
||||
bool canParseMonitorNumber = false;
|
||||
@ -70,8 +74,8 @@ int main(int argc, char* argv[])
|
||||
}
|
||||
list.append(monitor);
|
||||
} else {
|
||||
QStringList activeScreensList = monitorNumbers.split(",");
|
||||
for (QString s : activeScreensList) {
|
||||
|
||||
for (const QString& s : activeScreensList) {
|
||||
bool ok = false;
|
||||
int val = s.toInt(&ok);
|
||||
if (!ok) {
|
||||
|
@ -118,10 +118,7 @@ Rectangle {
|
||||
if(desktopProperties.windowsVersion >= 1903){
|
||||
|
||||
var ratio = root.width / root.height
|
||||
|
||||
print(ratio)
|
||||
ratio = Math.round(ratio * 100) / 100
|
||||
print(ratio, root.width, root.height)
|
||||
|
||||
// 4:3
|
||||
if (ratio === 1,3) {
|
||||
@ -227,10 +224,10 @@ Rectangle {
|
||||
}
|
||||
}
|
||||
|
||||
onPlaybackRateChanged: {
|
||||
onCurrentTimeChanged: {
|
||||
if (webView.loadProgress === 100) {
|
||||
webView.runJavaScript(
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.playbackRate = " + playbackRate + ";")
|
||||
"var videoPlayer = document.getElementById('videoPlayer'); videoPlayer.currentTime = " + currentTime + " * videoPlayer.duration;")
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -121,5 +121,14 @@ void BaseWindow::messageReceived(QString key, QString value)
|
||||
return;
|
||||
}
|
||||
|
||||
if (key == "currentTime") {
|
||||
bool ok;
|
||||
float tmp = value.toFloat(&ok);
|
||||
if (ok) {
|
||||
setCurrentTime(tmp);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
emit qmlSceneValueReceived(key, value);
|
||||
}
|
||||
|
@ -25,10 +25,12 @@ public:
|
||||
Q_PROPERTY(float volume READ volume WRITE setVolume NOTIFY volumeChanged)
|
||||
Q_PROPERTY(bool muted READ muted WRITE setMuted NOTIFY mutedChanged)
|
||||
Q_PROPERTY(float playbackRate READ playbackRate WRITE setPlaybackRate NOTIFY playbackRateChanged)
|
||||
Q_PROPERTY(float currentTime READ currentTime WRITE setCurrentTime NOTIFY currentTimeChanged)
|
||||
Q_PROPERTY(WallpaperType type READ type WRITE setType NOTIFY typeChanged)
|
||||
Q_PROPERTY(QString OSVersion READ OSVersion WRITE setOSVersion NOTIFY OSVersionChanged)
|
||||
|
||||
QSysInfo m_sysinfo;
|
||||
|
||||
enum class WallpaperType {
|
||||
Video,
|
||||
Html,
|
||||
@ -37,6 +39,8 @@ public:
|
||||
};
|
||||
Q_ENUM(WallpaperType)
|
||||
|
||||
|
||||
|
||||
bool loops() const
|
||||
{
|
||||
return m_loops;
|
||||
@ -82,6 +86,11 @@ public:
|
||||
return m_muted;
|
||||
}
|
||||
|
||||
float currentTime() const
|
||||
{
|
||||
return m_currentTime;
|
||||
}
|
||||
|
||||
signals:
|
||||
void loopsChanged(bool loops);
|
||||
void volumeChanged(float volume);
|
||||
@ -92,10 +101,9 @@ signals:
|
||||
void appIDChanged(QString appID);
|
||||
void qmlExit();
|
||||
void qmlSceneValueReceived(QString key, QString value);
|
||||
|
||||
void OSVersionChanged(QString OSVersion);
|
||||
|
||||
void mutedChanged(bool muted);
|
||||
void currentTimeChanged(float currentTime);
|
||||
|
||||
public slots:
|
||||
virtual void destroyThis() {}
|
||||
@ -187,6 +195,16 @@ public slots:
|
||||
emit mutedChanged(m_muted);
|
||||
}
|
||||
|
||||
void setCurrentTime(float currentTime)
|
||||
{
|
||||
qWarning("Floating point comparison needs context sanity check");
|
||||
if (qFuzzyCompare(m_currentTime, currentTime))
|
||||
return;
|
||||
|
||||
m_currentTime = currentTime;
|
||||
emit currentTimeChanged(m_currentTime);
|
||||
}
|
||||
|
||||
private:
|
||||
bool m_loops { true };
|
||||
bool m_isPlaying { true };
|
||||
@ -200,4 +218,5 @@ private:
|
||||
|
||||
WallpaperType m_type = BaseWindow::WallpaperType::Qml;
|
||||
QString m_OSVersion;
|
||||
float m_currentTime;
|
||||
};
|
||||
|
@ -60,7 +60,7 @@ LRESULT __stdcall MouseHookCallback(int nCode, WPARAM wParam, LPARAM lParam)
|
||||
return CallNextHookEx(mouseHook, nCode, wParam, lParam);
|
||||
}
|
||||
|
||||
WinWindow::WinWindow(QVector<int>& activeScreensList, QString projectPath, QString id, QString volume)
|
||||
WinWindow::WinWindow(const QVector<int> &activeScreensList, QString projectPath, QString id, QString volume)
|
||||
: BaseWindow(projectPath)
|
||||
{
|
||||
m_windowHandle = reinterpret_cast<HWND>(m_window.winId());
|
||||
@ -94,8 +94,13 @@ WinWindow::WinWindow(QVector<int>& activeScreensList, QString projectPath, QStri
|
||||
// Ether for one Screen or for all
|
||||
if ((QApplication::screens().length() == activeScreensList.length()) && (activeScreensList.length() != 1)) {
|
||||
setupWallpaperForAllScreens();
|
||||
qDebug() << "setupWallpaperForAllScreens()";
|
||||
} else if (activeScreensList.length() == 1) {
|
||||
setupWallpaperForOneScreen(activeScreensList.at(0));
|
||||
qDebug() << "setupWallpaperForOneScreen()";
|
||||
} else if (activeScreensList.length() == 1) {
|
||||
setupWallpaperForMultipleScreens(activeScreensList);
|
||||
qDebug() << "setupWallpaperForMultipleScreens()";
|
||||
}
|
||||
|
||||
m_window.setResizeMode(QQuickView::ResizeMode::SizeRootObjectToView);
|
||||
@ -188,6 +193,12 @@ void WinWindow::setupWallpaperForAllScreens()
|
||||
}
|
||||
}
|
||||
|
||||
void WinWindow::setupWallpaperForMultipleScreens(const QVector<int> &activeScreensList)
|
||||
{
|
||||
qDebug() << "######## setupWallpaperForMultipleScreens ########";
|
||||
|
||||
}
|
||||
|
||||
bool WinWindow::searchWorkerWindowToParentTo()
|
||||
{
|
||||
HWND progman_hwnd = FindWindowW(L"Progman", L"Program Manager");
|
||||
|
@ -20,8 +20,9 @@
|
||||
class WinWindow : public BaseWindow {
|
||||
Q_OBJECT
|
||||
|
||||
|
||||
public:
|
||||
explicit WinWindow(QVector<int>& activeScreensList, QString projectPath, QString id, QString volume);
|
||||
explicit WinWindow(const QVector<int>& activeScreensList, QString projectPath, QString id, QString volume);
|
||||
|
||||
public slots:
|
||||
void setVisible(bool show) override;
|
||||
@ -32,8 +33,10 @@ private:
|
||||
void calcOffsets();
|
||||
void setupWallpaperForOneScreen(int activeScreen);
|
||||
void setupWallpaperForAllScreens();
|
||||
void setupWallpaperForMultipleScreens(const QVector<int>& activeScreensList);
|
||||
bool searchWorkerWindowToParentTo();
|
||||
|
||||
|
||||
private:
|
||||
int m_windowOffsetX = 0;
|
||||
int m_windowOffsetY = 0;
|
||||
|
Loading…
Reference in New Issue
Block a user