From 9dfe6521fcb331c283c5ece6675daf699481df4e Mon Sep 17 00:00:00 2001 From: asliturk Date: Sun, 2 Feb 2020 14:45:45 +0300 Subject: [PATCH] LibGUI: Save current wallpaper setting to WindowManager.ini. --- Libraries/LibGUI/GDesktop.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Libraries/LibGUI/GDesktop.cpp b/Libraries/LibGUI/GDesktop.cpp index fed676a593..2ffe5801c4 100644 --- a/Libraries/LibGUI/GDesktop.cpp +++ b/Libraries/LibGUI/GDesktop.cpp @@ -24,6 +24,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include #include #include #include @@ -53,7 +54,17 @@ void GDesktop::did_receive_screen_rect(Badge, const Rec bool GDesktop::set_wallpaper(const StringView& path) { GWindowServerConnection::the().post_message(WindowServer::AsyncSetWallpaper(path)); - return GWindowServerConnection::the().wait_for_specific_message()->success(); + auto ret_val = GWindowServerConnection::the().wait_for_specific_message()->success(); + + if (ret_val) { + dbg() << "Saving wallpaper path '" << path << "' to config file at " << config->file_name(); + + RefPtr config = CConfigFile::get_for_app("WindowManager"); + config->write_entry("Background", "Wallpaper", path); + config->sync(); + } + + return ret_val; } String GDesktop::wallpaper() const