file manager
git clone https://git.lucas.co/cce-files.git
Update clear-filesystem-interface to adapt to Element trait refactoring (modified: src/main.rs, src/pages/browse.rs, src/pages/network.rs and 1 others)
src/main.rs | 2 +-
src/pages/browse.rs | 20 ++++++++++----------
src/pages/network.rs | 2 +-
src/pages/settings.rs | 20 ++++++++++----------
4 files changed, 22 insertions(+), 22 deletions(-)
diff --git a/src/main.rs b/src/main.rs
index b4a8c64..16d9a11 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -4,7 +4,7 @@ use wayland_client::QueueHandle;
use glyphon::{Attrs, Buffer, FontSystem, Metrics};
use clear_ui::engine::{Application, LogicalPosition, LogicalSize, WindowSettings};
-use clear_ui::widget::{MouseButton, ElementState, MouseScrollDelta, KeyEvent, TextItem, Widget};
+use clear_ui::widget::{MouseButton, ElementState, MouseScrollDelta, KeyEvent, TextItem, Element};
use pages::Page;
use pages::browse::is_project_dir;
diff --git a/src/pages/browse.rs b/src/pages/browse.rs
index 9246637..6aeb600 100644
--- a/src/pages/browse.rs
+++ b/src/pages/browse.rs
@@ -3,8 +3,8 @@ use std::os::unix::fs::PermissionsExt;
use std::path::{Path, PathBuf};
use crate::pages::PageContent;
-use clear_ui::widget::{Widget, Breadcrumb};
-use clear_ui::layout::Section;
+use clear_ui::widget::{Element, Breadcrumb};
+use clear_ui::layout::SectionContext;
// ── Data ────────────────────────────────────────────────────────────
@@ -214,9 +214,9 @@ pub fn view(state: &mut BrowseState, cx: f32, cy: f32, cw: f32, ch: f32, select_
// Files Section height takes the remaining space above Search Section
let outer_h = search_sec_y - outer_y - 12.0;
- let mut files_sec = Section::new(&mut pc, outer_x - 8.0, outer_y - 12.0, outer_w + 16.0, "Files");
+ let mut files_sec = SectionContext::new(&mut pc, outer_x - 8.0, outer_y - 12.0, outer_w + 16.0, "Files", false);
files_sec.content_y = outer_y + outer_h - 12.0;
- files_sec.finish(&mut pc);
+ files_sec.finish();
// Inner file list scroll box (inset inside the Files Section)
let list_x = outer_x + 4.0;
@@ -244,9 +244,9 @@ pub fn view(state: &mut BrowseState, cx: f32, cy: f32, cw: f32, ch: f32, select_
let sec_w = (outer_w - 12.0) / 2.0;
// Left column: Search
- let mut search_sec = Section::new(&mut pc, outer_x - 8.0, search_sec_y - 12.0, sec_w + 16.0, "Search");
+ let mut search_sec = SectionContext::new(&mut pc, outer_x - 8.0, search_sec_y - 12.0, sec_w + 16.0, "Search", false);
search_sec.content_y = search_sec_y + search_sec_h - 12.0;
- search_sec.finish(&mut pc);
+ search_sec.finish();
let search_x = outer_x + 12.0;
let search_y = search_sec_y + 14.0;
@@ -258,9 +258,9 @@ pub fn view(state: &mut BrowseState, cx: f32, cy: f32, cw: f32, ch: f32, select_
// Right column: File Name
let filename_sec_x = outer_x + sec_w + 12.0;
- let mut filename_sec = Section::new(&mut pc, filename_sec_x - 8.0, search_sec_y - 12.0, sec_w + 16.0, "File Name");
+ let mut filename_sec = SectionContext::new(&mut pc, filename_sec_x - 8.0, search_sec_y - 12.0, sec_w + 16.0, "File Name", false);
filename_sec.content_y = search_sec_y + search_sec_h - 12.0;
- filename_sec.finish(&mut pc);
+ filename_sec.finish();
let filename_x = filename_sec_x + 12.0;
let filename_y = search_sec_y + 14.0;
@@ -271,9 +271,9 @@ pub fn view(state: &mut BrowseState, cx: f32, cy: f32, cw: f32, ch: f32, select_
clear_ui::layout::render_widget(&mut pc, &mut state.save_name_box, filename_x, filename_y, filename_w, filename_h);
} else {
// 2. Search Section borders (Full Width)
- let mut search_sec = Section::new(&mut pc, outer_x - 8.0, search_sec_y - 12.0, outer_w + 16.0, "Search");
+ let mut search_sec = SectionContext::new(&mut pc, outer_x - 8.0, search_sec_y - 12.0, outer_w + 16.0, "Search", false);
search_sec.content_y = search_sec_y + search_sec_h - 12.0;
- search_sec.finish(&mut pc);
+ search_sec.finish();
// Inner search textbox
let search_x = outer_x + 12.0;
diff --git a/src/pages/network.rs b/src/pages/network.rs
index e51f1ea..52c1b9d 100644
--- a/src/pages/network.rs
+++ b/src/pages/network.rs
@@ -1,7 +1,7 @@
use std::path::{Path, PathBuf};
use crate::pages::PageContent;
use crate::pages::browse::{BrowseState, DirEntry};
-use clear_ui::widget::{Graph, GraphNode, Widget, Breadcrumb};
+use clear_ui::widget::{Graph, GraphNode, Element, Breadcrumb};
pub struct NetworkState {
pub graph: Graph,
diff --git a/src/pages/settings.rs b/src/pages/settings.rs
index f2ccf9c..92291db 100644
--- a/src/pages/settings.rs
+++ b/src/pages/settings.rs
@@ -1,6 +1,6 @@
use crate::pages::PageContent;
-use clear_ui::widget::{ColorSelector, Widget};
-use clear_ui::layout::Section;
+use clear_ui::widget::{ColorSelector, Element};
+use clear_ui::layout::SectionContext;
// ── Data ────────────────────────────────────────────────────────────
@@ -85,8 +85,8 @@ pub fn view(state: &mut SettingsState, cx: f32, cy: f32, cw: f32, _ch: f32) -> P
pc.text("Settings", cx + 12.0, cy + 12.0, 18.0, accent);
let cs_w = (cw - 24.0).min(300.0);
- let cs_h = 24.0;
- let cs_y = cy + 48.0 + state.color_selector.top_room();
+ let cs_h = 42.0;
+ let cs_y = cy + 48.0;
state.color_selector.set_row_rect(cx + 12.0, cs_w);
clear_ui::layout::render_widget(&mut pc, &mut state.color_selector, cx + 12.0, cs_y, cs_w, cs_h);
@@ -94,29 +94,29 @@ pub fn view(state: &mut SettingsState, cx: f32, cy: f32, cw: f32, _ch: f32) -> P
let y = cs_y + cs_h + 32.0;
// Keyboard Shortcuts Section
- let mut sec_keys = Section::new(&mut pc, cx, y, cw, "Keyboard Shortcuts");
+ let mut sec_keys = SectionContext::new(&mut pc, cx, y, cw, "Keyboard Shortcuts", false);
sec_keys.spacing(8.0);
for (i, section) in SECTIONS.iter().enumerate() {
// Section Header
let header_str = format!("{} {}", section.icon, section.title);
- sec_keys.text(&mut pc, &header_str, 12.0, 0.0, 13.0, text_fg);
+ sec_keys.text(&header_str, 12.0, 0.0, 13.0, text_fg);
sec_keys.spacing(20.0);
for b in section.bindings {
- sec_keys.text(&mut pc, b.keys, 12.0, 0.0, 11.0, accent);
- sec_keys.text(&mut pc, b.action, 160.0, 0.0, 11.0, text_dim);
+ sec_keys.text(b.keys, 12.0, 0.0, 11.0, accent);
+ sec_keys.text(b.action, 160.0, 0.0, 11.0, text_dim);
sec_keys.spacing(16.0);
}
if i < SECTIONS.len() - 1 {
sec_keys.spacing(8.0);
- sec_keys.separator(&mut pc);
+ sec_keys.separator();
sec_keys.spacing(12.0);
}
}
- sec_keys.finish(&mut pc);
+ sec_keys.finish();
pc
}