Skip to content

Save and load#14

Merged
flashonfire merged 4 commits intoflashonfire:mainfrom
undermirrors:SaveAndLoadBis
Nov 21, 2025
Merged

Save and load#14
flashonfire merged 4 commits intoflashonfire:mainfrom
undermirrors:SaveAndLoadBis

Conversation

@undermirrors
Copy link
Copy Markdown
Contributor

Features :

  • Save wallpaper config when you set a wallpaper in a screen
  • Try to load wallpaper when a new screen is plugged, if it was save previously

…rofile manager

# Conflicts:
#	waypaper_engine_daemon/src/wl_renderer.rs
@flashonfire flashonfire requested a review from Copilot November 8, 2025 20:18
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR refactors the IPC system to distinguish between external and internal requests using the subenum crate, adds a profile manager for persisting wallpaper configurations, and migrates from crossbeam channels to standard library mpsc channels.

Key changes:

  • Introduces InternalRequest enum with subenum to generate IPCRequest as a subset, enabling internal-only messages like NewOutput
  • Adds ProfileManager to save/load wallpaper configurations per screen
  • Replaces crossbeam::channel with std::sync::mpsc throughout the daemon

Reviewed Changes

Copilot reviewed 7 out of 8 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
waypaper_engine_shared/src/lib.rs Simplifies import by using env directly instead of std::env
waypaper_engine_shared/src/ipc.rs Introduces InternalRequest enum using subenum to differentiate from public IPCRequest
waypaper_engine_shared/Cargo.toml Adds subenum dependency for enum subset generation
waypaper_engine_daemon/src/wl_renderer.rs Migrates from crossbeam to std::sync::mpsc and integrates InternalRequest
waypaper_engine_daemon/src/profile_manager.rs New module for persisting wallpaper configurations to JSON file
waypaper_engine_daemon/src/main.rs Adds profile_manager module declaration
waypaper_engine_daemon/src/app_state.rs Refactors IPC handling to use InternalRequest, extracts set_wallpaper method, integrates profile persistence
Cargo.lock Updates dependency versions including syn, quote, proc-macro2, and adds subenum

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread waypaper_engine_daemon/src/profile_manager.rs Outdated
Comment thread waypaper_engine_daemon/src/profile_manager.rs Outdated
Comment thread waypaper_engine_daemon/src/profile_manager.rs Outdated
Comment thread waypaper_engine_daemon/src/app_state.rs Outdated
Comment thread waypaper_engine_daemon/src/app_state.rs Outdated
Comment thread waypaper_engine_daemon/src/app_state.rs Outdated
Comment thread waypaper_engine_daemon/src/app_state.rs Outdated
Comment thread waypaper_engine_daemon/src/wl_renderer.rs Outdated
Repository owner deleted a comment from Copilot AI Nov 8, 2025
@flashonfire flashonfire requested a review from Copilot November 19, 2025 08:02
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Copilot reviewed 7 out of 8 changed files in this pull request and generated 16 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread waypaper_engine_daemon/src/app_state.rs Outdated
Comment thread waypaper_engine_daemon/src/app_state.rs Outdated
Comment thread waypaper_engine_daemon/src/profile_manager.rs Outdated
Comment thread waypaper_engine_daemon/src/profile_manager.rs Outdated
Comment thread waypaper_engine_daemon/src/app_state.rs Outdated
Comment thread waypaper_engine_daemon/src/app_state.rs
Comment thread waypaper_engine_daemon/src/app_state.rs Outdated
Comment thread waypaper_engine_daemon/src/wl_renderer.rs
Comment thread waypaper_engine_shared/src/ipc.rs
Comment thread waypaper_engine_daemon/src/profile_manager.rs Outdated
Comment thread waypaper_engine_shared/src/lib.rs Outdated
Comment thread waypaper_engine_shared/Cargo.toml Outdated
Comment thread waypaper_engine_daemon/src/profile_manager.rs Outdated
Comment thread waypaper_engine_daemon/src/profile_manager.rs Outdated
@flashonfire flashonfire merged commit f469e6f into flashonfire:main Nov 21, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants