From 1379363e0b0323ee20f642d95b059f2e588878ed Mon Sep 17 00:00:00 2001 From: Michael Aaron Murphy Date: Mon, 22 May 2023 23:17:59 +0200 Subject: [PATCH] fix: create missing subpage models --- page/src/insert.rs | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/page/src/insert.rs b/page/src/insert.rs index 2b9e574..f116c68 100644 --- a/page/src/insert.rs +++ b/page/src/insert.rs @@ -1,7 +1,7 @@ // Copyright 2023 System76 // SPDX-License-Identifier: GPL-3.0-only -use super::{AutoBind, Binder, Content, Entity, Info}; +use super::{AutoBind, Binder, Content, Entity}; /// An inserted page which may have additional properties assigned to it. pub struct Insert<'a, Message> { @@ -25,25 +25,16 @@ impl<'a, Message: 'static> Insert<'a, Message> { #[allow(clippy::return_self_not_must_use)] #[allow(clippy::must_use_candidate)] pub fn sub_page>(self) -> Self { - let sub_page = P::default(); + let sub_page = self.model.register::

().id(); - let page = self.model.info.insert(Info { - parent: Some(self.id), - ..sub_page.info() - }); - - if let Some(content) = sub_page.content(&mut self.model.sections) { - self.model.content.insert(page, content); - } - - self.model.page.insert(page, Box::new(sub_page)); + self.model.info[sub_page].parent = Some(self.id); self.model .sub_pages .entry(self.id) .expect("parent page missing") - .and_modify(|v| v.push(page)) - .or_insert_with(|| vec![page]); + .and_modify(|v| v.push(sub_page)) + .or_insert_with(|| vec![sub_page]); self }