From 5e739d6da502e65616cf13b5761cc3d5cf6ff31e Mon Sep 17 00:00:00 2001 From: zorowk Date: Fri, 12 Jan 2024 15:54:55 +0800 Subject: [PATCH] fix: current index is incorrect when starting for the first time Log: current index is incorrect when starting for the first time Signed-off-by: zorowk --- src/treeland/quick/protocols/qwpersonalizationmanager.cpp | 1 + src/treeland/treeland-wallpaper/wallpapercardmodel.cpp | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/treeland/quick/protocols/qwpersonalizationmanager.cpp b/src/treeland/quick/protocols/qwpersonalizationmanager.cpp index d924a605..437584dc 100644 --- a/src/treeland/quick/protocols/qwpersonalizationmanager.cpp +++ b/src/treeland/quick/protocols/qwpersonalizationmanager.cpp @@ -68,6 +68,7 @@ void QuickPersonalizationManagerPrivate::updateCacheWallpaperPath(uid_t uid) QString cache_location = QStandardPaths::writableLocation(QStandardPaths::CacheLocation); m_cacheDirectory = cache_location + QString("/wallpaper/%1/").arg(uid); m_settingFile = m_cacheDirectory + "wallpaper.ini"; + m_currentWallpaper = "/usr/share/wallpapers/deepin/desktop.jpg"; } void QuickPersonalizationManagerPrivate::loadWallpaperSettings() diff --git a/src/treeland/treeland-wallpaper/wallpapercardmodel.cpp b/src/treeland/treeland-wallpaper/wallpapercardmodel.cpp index 37d01a8f..4ba0ffe6 100644 --- a/src/treeland/treeland-wallpaper/wallpapercardmodel.cpp +++ b/src/treeland/treeland-wallpaper/wallpapercardmodel.cpp @@ -40,6 +40,7 @@ void WallpaperCardModel::setCurrentIndex(int index) { d->currentIndex = index; Q_EMIT currentIndexChanged(d->currentIndex); + Q_EMIT layoutChanged(); } int WallpaperCardModel::currentIndex() const { @@ -109,11 +110,10 @@ void WallpaperCardModel::append(const QString& path) { beginInsertRows(QModelIndex(), 0, 0); d->wallpapers.push_front("file://" + path); - setCurrentIndex(0); endInsertRows(); + setCurrentIndex(0); Q_EMIT dataCountChanged(d->wallpapers.length()); - Q_EMIT layoutChanged(); } void WallpaperCardModel::remove(int index)