快速面板模块
This commit is contained in:
@@ -10,6 +10,7 @@ mod monitor_kernel;
|
||||
mod network_monitor;
|
||||
mod osd_window;
|
||||
mod process_manager;
|
||||
mod quickpanel;
|
||||
mod screenshot;
|
||||
mod snap_fix;
|
||||
mod tray_menu;
|
||||
@@ -61,6 +62,15 @@ use clipboard::{
|
||||
clipboard_set_pinned, clipboard_show_popup, clipboard_show_window, clipboard_start,
|
||||
clipboard_status, clipboard_stop, clipboard_unregister_shortcut,
|
||||
};
|
||||
use quickpanel::{
|
||||
quickpanel_build_file_index, quickpanel_clear_app_icon_cache, quickpanel_delete_file,
|
||||
quickpanel_file_index_stats, quickpanel_get_app_icon, quickpanel_get_settings,
|
||||
quickpanel_hide_popup, quickpanel_init_file_index, quickpanel_lock_screen,
|
||||
quickpanel_open_file, quickpanel_register_shortcut, quickpanel_reveal_in_explorer,
|
||||
quickpanel_run_custom_command, quickpanel_run_system_command, quickpanel_save_settings,
|
||||
quickpanel_scan_apps, quickpanel_search_files, quickpanel_show_popup, quickpanel_show_window,
|
||||
quickpanel_unregister_shortcut,
|
||||
};
|
||||
use tray_menu::{tray_menu_action, tray_menu_hide, tray_menu_ready};
|
||||
|
||||
#[tauri::command]
|
||||
@@ -195,6 +205,26 @@ pub fn run() {
|
||||
clipboard_show_window,
|
||||
clipboard_hide_popup,
|
||||
clipboard_paste_to_target,
|
||||
quickpanel_get_settings,
|
||||
quickpanel_save_settings,
|
||||
quickpanel_register_shortcut,
|
||||
quickpanel_unregister_shortcut,
|
||||
quickpanel_show_popup,
|
||||
quickpanel_show_window,
|
||||
quickpanel_hide_popup,
|
||||
quickpanel_lock_screen,
|
||||
quickpanel_init_file_index,
|
||||
quickpanel_build_file_index,
|
||||
quickpanel_search_files,
|
||||
quickpanel_file_index_stats,
|
||||
quickpanel_scan_apps,
|
||||
quickpanel_get_app_icon,
|
||||
quickpanel_clear_app_icon_cache,
|
||||
quickpanel_reveal_in_explorer,
|
||||
quickpanel_open_file,
|
||||
quickpanel_delete_file,
|
||||
quickpanel_run_custom_command,
|
||||
quickpanel_run_system_command,
|
||||
tray_menu_action,
|
||||
tray_menu_hide,
|
||||
tray_menu_ready,
|
||||
@@ -286,6 +316,20 @@ pub fn run() {
|
||||
}
|
||||
app.manage(clipboard);
|
||||
|
||||
// 快速面板:应用启动时注册全局快捷键 + 预创建隐藏窗口。
|
||||
// defaultEnabled:true 假设启用;用户在设置页禁用模块时由前端 onDisable 钩子注销快捷键。
|
||||
let qp_settings = quickpanel::load_settings(&app.handle());
|
||||
if !qp_settings.shortcut.trim().is_empty() {
|
||||
let app_handle = app.handle().clone();
|
||||
if let Err(e) = quickpanel::register_shortcut(&app_handle, &qp_settings.shortcut) {
|
||||
eprintln!("[quickpanel] 快捷键注册失败: {}", e);
|
||||
}
|
||||
// 预创建弹窗窗口(隐藏),首次按快捷键时直接 show,避免首次创建时序问题
|
||||
quickpanel::ensure_window(&app_handle);
|
||||
}
|
||||
// 初始化文件索引数据库(不立即构建,由前端设置页或首次唤起时触发)
|
||||
quickpanel::file_index::init(&app.handle());
|
||||
|
||||
// 自定义托盘菜单(代理/OSD/Kernel/下载/设置/退出)
|
||||
tray_menu::create_tray_menu(app.handle())?;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user