P1 bugs: - unix_launcher: shell_split respects quoted args (was split_whitespace) - plugin-host: 5s timeout on external plugin search - ui: handle engine init panic, wire error state - ui-egui: read window config instead of always using defaults - plugin-url: use OpenPath action instead of SpawnProcess+xdg-open Architecture: - remove WindowConfig (mirror of WindowCfg); use WindowCfg directly - remove on_select closure from SearchResult (domain leakage) - remove LaunchAction::Custom; add Plugin::on_selected + SearchEngine::on_selected - apps: record frecency via on_selected instead of embedded closure Design smells: - frecency: extract decay_factor helper, write outside mutex - apps: remove cfg(test) cache_path hack; add new_for_test ctor - apps: stable ResultId using name+exec to prevent collision - files: stable ResultId using full path instead of index - plugin-host: remove k-launcher-os-bridge dep (WindowConfig gone)
14 lines
292 B
Rust
14 lines
292 B
Rust
mod app;
|
|
|
|
use std::sync::Arc;
|
|
|
|
use k_launcher_kernel::{AppLauncher, SearchEngine};
|
|
|
|
pub fn run(
|
|
engine: Arc<dyn SearchEngine>,
|
|
launcher: Arc<dyn AppLauncher>,
|
|
window_cfg: &k_launcher_config::WindowCfg,
|
|
) -> Result<(), eframe::Error> {
|
|
app::run(engine, launcher, window_cfg)
|
|
}
|