Add outline popup window for folder context menu

Implement the outline file popup window that opens when a user
right-clicks on a folder in the file list (e.g., Act 1 in 06-First Draft)
and selects 'Outline' from the context menu. The window displays the
corresponding outline file (e.g., 04-Outline/scene_breakdown/act_01.md)
in a read-only view.

Changes:
- Add outline_popup_window() function in file_list.rs
- Add window rendering call in mod.rs update loop
- Popup reads file content on open and displays it in scrollable view

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
2026-09-13 10:47:11 -05:00
parent 9f575c7c7e
commit cea944779e
2 changed files with 106 additions and 4 deletions
+8
View File
@@ -312,6 +312,9 @@ pub struct App {
show_manuscript_settings: bool,
/// Whether the Outline window is open.
show_outline: bool,
/// Whether to open an outline file from a folder context menu.
/// Contains the workspace-relative path of the outline file to open.
open_outline_file: Option<String>,
/// Whether the diff window is open, and what it is showing.
show_diff: bool,
diff_text: String,
@@ -434,6 +437,7 @@ impl App {
show_characters: false,
show_manuscript_settings: false,
show_outline: false,
open_outline_file: None,
show_diff: false,
diff_text: String::new(),
diff_title: String::new(),
@@ -589,6 +593,10 @@ impl eframe::App for App {
self.diff_window(ctx);
}
if self.open_outline_file.is_some() {
self.outline_popup_window(ctx);
}
if self.show_cheatsheet {
crate::help::cheatsheet_window(ctx, &mut self.show_cheatsheet);
}