feat: 实现命令面板、颜色取色、JSON格式化和系统信息功能
- 重构项目架构,采用四层架构模式 (Command → Service → Platform → Utils) - 实现命令面板功能,支持快捷搜索和特征分类 - 添加颜色取色功能,支持屏幕像素颜色获取 - 添加JSON格式化功能,支持JSON格式化和压缩 - 添加系统信息功能,显示操作系统和硬件信息 - 移除旧的状态文档和无用配置文件
This commit is contained in:
32
src/components/command-palette/CommandPalette.tsx
Normal file
32
src/components/command-palette/CommandPalette.tsx
Normal file
@@ -0,0 +1,32 @@
|
||||
import { useEffect } from 'react';
|
||||
import { invoke } from '@tauri-apps/api/core';
|
||||
import { listen } from '@tauri-apps/api/event';
|
||||
|
||||
/**
|
||||
* 全局快捷键处理组件
|
||||
* 负责监听全局快捷键并控制窗口显示/隐藏
|
||||
*/
|
||||
export function CommandPalette() {
|
||||
useEffect(() => {
|
||||
// 监听热键事件
|
||||
const unlistenPromise = listen('hotkey-pressed', async () => {
|
||||
await invoke('toggle_window');
|
||||
});
|
||||
|
||||
// 清理监听器
|
||||
return () => {
|
||||
unlistenPromise.then((unlisten) => unlisten());
|
||||
};
|
||||
}, []);
|
||||
|
||||
// 这个组件不渲染任何可见 UI
|
||||
return null;
|
||||
}
|
||||
|
||||
// 保留 SearchResult 类型以供其他组件使用
|
||||
export interface SearchResult {
|
||||
id: string;
|
||||
title: string;
|
||||
description?: string;
|
||||
icon?: string;
|
||||
}
|
||||
Reference in New Issue
Block a user