Preserve sidebar state for blogmarks.
This commit is contained in:
@@ -3000,8 +3000,6 @@ impl BdsApp {
|
||||
if self.task_manager.status(task_id) == Some(TaskStatus::Cancelled) {
|
||||
return Task::none();
|
||||
}
|
||||
self.sidebar_view = SidebarView::Posts;
|
||||
self.sidebar_visible = true;
|
||||
let tab = Tab {
|
||||
id: post.id,
|
||||
tab_type: TabType::Post,
|
||||
@@ -3021,8 +3019,6 @@ impl BdsApp {
|
||||
for error in result.transform_errors {
|
||||
self.add_output(&error);
|
||||
}
|
||||
self.sidebar_view = SidebarView::Posts;
|
||||
self.sidebar_visible = true;
|
||||
let post_id = result.post.id.clone();
|
||||
let already_open = self
|
||||
.tabs
|
||||
@@ -11140,6 +11136,8 @@ mod tests {
|
||||
app.tabs.clear();
|
||||
app.active_tab = None;
|
||||
app.post_editors.clear();
|
||||
app.sidebar_view = SidebarView::Media;
|
||||
app.sidebar_visible = false;
|
||||
let task_id = app.task_manager.submit("Importing blogmark");
|
||||
|
||||
let _ = app.update(Message::BlogmarkDraftCreated {
|
||||
@@ -11149,6 +11147,14 @@ mod tests {
|
||||
|
||||
assert_eq!(app.active_tab.as_deref(), Some(created.id.as_str()));
|
||||
assert!(app.post_editors.contains_key(&created.id));
|
||||
assert_eq!(app.sidebar_view, SidebarView::Media);
|
||||
assert!(!app.sidebar_visible);
|
||||
let persisted =
|
||||
engine::ui_state::load(app.db.as_ref().unwrap().conn(), &created.project_id)
|
||||
.unwrap()
|
||||
.unwrap();
|
||||
assert_eq!(persisted.sidebar_view, "media");
|
||||
assert!(!persisted.sidebar_visible);
|
||||
assert_eq!(
|
||||
app.task_manager.status(task_id),
|
||||
Some(TaskStatus::Running),
|
||||
@@ -11175,7 +11181,7 @@ mod tests {
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn imported_blogmark_activates_posts_and_opens_its_editor() {
|
||||
fn imported_blogmark_opens_its_editor_without_changing_sidebar_state() {
|
||||
let (db, project, temp) = setup();
|
||||
ai::save_endpoint(
|
||||
db.conn(),
|
||||
@@ -11220,8 +11226,8 @@ mod tests {
|
||||
}),
|
||||
});
|
||||
|
||||
assert_eq!(app.sidebar_view, SidebarView::Posts);
|
||||
assert!(app.sidebar_visible);
|
||||
assert_eq!(app.sidebar_view, SidebarView::Settings);
|
||||
assert!(!app.sidebar_visible);
|
||||
assert_eq!(app.active_tab.as_deref(), Some(created.id.as_str()));
|
||||
assert!(app.post_editors.contains_key(&created.id));
|
||||
assert!(app.embedded_preview.is_some());
|
||||
|
||||
Reference in New Issue
Block a user