diff --git a/src/app.rs b/src/app.rs index 24575886..3bbe4fee 100644 --- a/src/app.rs +++ b/src/app.rs @@ -115,13 +115,13 @@ impl App { match database.records() { Ok(records) => { for record in records { - println!("{:?}", record.id) // @TODO + browser.restore(record.id); } } Err(error) => panic!("{error}"), // @TODO } - // Activate events + // Assign browser window to this application browser.widget().set_application(Some(this)); // Show main widget @@ -133,15 +133,15 @@ impl App { // let browser = browser.clone(); let database = database.clone(); move |_| { + // @TODO transaction? match database.records() { Ok(records) => { // Cleanup previous session records for record in records { match database.delete(record.id) { Ok(_) => { - // Delegate clean action to children components - // browser.clean(app_id); @TODO + browser.clean(record.id); } Err(error) => panic!("{error}"), // @TODO } @@ -150,11 +150,10 @@ impl App { // Save current session to DB match database.add() { Ok(_) => { - // let app_id = database.last_insert_id(); + let app_id = database.last_insert_id(); // Delegate save action to children components - // self.browser.save(app_id) @TODO - // .. + browser.save(app_id); } Err(error) => panic!("{error}"), // @TODO } diff --git a/src/app/browser.rs b/src/app/browser.rs index 8c326373..1be413be 100644 --- a/src/app/browser.rs +++ b/src/app/browser.rs @@ -191,6 +191,11 @@ impl Browser { } } + // Actions + pub fn clean(&self, app_id: i64) {} + pub fn restore(&self, app_id: i64) {} + pub fn save(&self, app_id: i64) {} + // Getters pub fn widget(&self) -> &ApplicationWindow { &self.widget