aboutsummaryrefslogtreecommitdiff
path: root/src/handlers/preferences.rs
diff options
context:
space:
mode:
authorRubén Beltrán del Río <jj@r.bdr.sh>2026-03-27 16:10:46 +0100
committerRubén Beltrán del Río <jj@r.bdr.sh>2026-03-30 13:39:14 +0200
commitd01a4df546b553128400f6c68eefa8368b4113a8 (patch)
treed290ca78b1215fb450ec7850a74b79fd0ae9707c /src/handlers/preferences.rs
parent4dec344a7bcbf1d7d0bbbf985109df816470ecc6 (diff)
Use actual components for preference pages
Diffstat (limited to 'src/handlers/preferences.rs')
-rw-r--r--src/handlers/preferences.rs12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/handlers/preferences.rs b/src/handlers/preferences.rs
index 89a1ef5..9fb3638 100644
--- a/src/handlers/preferences.rs
+++ b/src/handlers/preferences.rs
@@ -13,13 +13,16 @@
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
+use std::convert::identity;
+
use adw::prelude::*;
use relm4::prelude::*;
use crate::actions::Action;
use crate::components::header::HeaderAction;
+use crate::components::preferences_window::PreferencesWindow;
use crate::file_registry;
-use crate::preferences::{PreferencesWindow, UserPreferences, storage, window};
+use crate::preferences::{UserPreferences, storage};
use crate::AppModel;
@@ -29,12 +32,7 @@ pub fn show(model: &mut AppModel, sender: &ComponentSender<AppModel>) {
let controller = PreferencesWindow::builder()
.transient_for(&model.window)
.launch(model.preferences.clone())
- .forward(sender.input_sender(), |output| match output {
- window::PreferencesOutput::PreferencesChanged(preferences) => {
- Action::PreferencesChanged(preferences)
- }
- window::PreferencesOutput::Closed => Action::PreferencesWindowClosed,
- });
+ .forward(sender.input_sender(), identity);
model.preferences_window = Some(controller);
}
if let Some(ref controller) = model.preferences_window {