mirror of
https://github.com/lencx/ChatGPT.git
synced 2024-10-01 01:06:13 -04:00
chore: dalle2
This commit is contained in:
parent
de5533d942
commit
a3b40f7f40
@ -90,7 +90,7 @@
|
||||
- 应用菜单功能强大
|
||||
- 支持斜杠命令及其配置(可手动配置或从文件同步 [#55](https://github.com/lencx/ChatGPT/issues/55))
|
||||
- 自定义全局快捷键 ([#108](https://github.com/lencx/ChatGPT/issues/108))
|
||||
- DALL·E 2 搜索 (触发方式:鼠标选中文本 [#122](https://github.com/lencx/ChatGPT/issues/122))
|
||||
- DALL·E 2 搜索 ([#122](https://github.com/lencx/ChatGPT/issues/122) 鼠标选中文本,不超过 400 个字符):应用使用 Tauri 构建,因其安全限制,会导致部分操作按钮无效,建议前往浏览器操作。
|
||||
|
||||
### #️⃣ 菜单项
|
||||
|
||||
|
@ -93,7 +93,7 @@ You can look at **[awesome-chatgpt-prompts](https://github.com/f/awesome-chatgpt
|
||||
- Powerful menu items
|
||||
- Support for slash commands and their configuration (can be configured manually or synchronized from a file [#55](https://github.com/lencx/ChatGPT/issues/55))
|
||||
- Customize global shortcuts ([#108](https://github.com/lencx/ChatGPT/issues/108))
|
||||
- DALL·E 2 Search (mouse selected content [#122](https://github.com/lencx/ChatGPT/issues/122), use no more than 400 characters): The application is built using Tauri, and due to its security restrictions, some of the action buttons will not work, so we recommend going to your browser.
|
||||
- DALL·E 2 Search ([#122](https://github.com/lencx/ChatGPT/issues/122) mouse selected content, use no more than 400 characters): The application is built using Tauri, and due to its security restrictions, some of the action buttons will not work, so we recommend going to your browser.
|
||||
|
||||
## #️⃣ MenuItem
|
||||
|
||||
|
@ -246,7 +246,8 @@ pub async fn sync_prompts(app: AppHandle, time: u64) -> Option<Vec<ModelRecord>>
|
||||
"Sync Prompts",
|
||||
"ChatGPT Prompts data has been synchronized!",
|
||||
);
|
||||
window_reload(app, "core");
|
||||
window_reload(app.clone(), "core");
|
||||
window_reload(app, "tray");
|
||||
|
||||
return Some(data2);
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
use crate::{
|
||||
app::window,
|
||||
app::{cmd, window},
|
||||
conf::{self, ChatConfJson},
|
||||
utils,
|
||||
};
|
||||
@ -35,6 +35,12 @@ pub fn init() -> Menu {
|
||||
|
||||
let stay_on_top =
|
||||
CustomMenuItem::new("stay_on_top".to_string(), "Stay On Top").accelerator("CmdOrCtrl+T");
|
||||
let stay_on_top_menu = if chat_conf.stay_on_top {
|
||||
stay_on_top.selected()
|
||||
} else {
|
||||
stay_on_top
|
||||
};
|
||||
|
||||
|
||||
#[cfg(target_os = "macos")]
|
||||
let titlebar =
|
||||
@ -50,10 +56,11 @@ pub fn init() -> Menu {
|
||||
let update_silent = CustomMenuItem::new("update_silent".to_string(), "Silent");
|
||||
let _update_disable = CustomMenuItem::new("update_disable".to_string(), "Disable");
|
||||
|
||||
let stay_on_top_menu = if chat_conf.stay_on_top {
|
||||
stay_on_top.selected()
|
||||
let dalle2_search = CustomMenuItem::new("dalle2_search".to_string(), "DALL·E 2 Search");
|
||||
let dalle2_search_menu = if chat_conf.dalle2_search {
|
||||
dalle2_search.selected()
|
||||
} else {
|
||||
stay_on_top
|
||||
dalle2_search
|
||||
};
|
||||
|
||||
#[cfg(target_os = "macos")]
|
||||
@ -119,6 +126,7 @@ pub fn init() -> Menu {
|
||||
)
|
||||
.into(),
|
||||
MenuItem::Separator.into(),
|
||||
dalle2_search_menu.into(),
|
||||
CustomMenuItem::new("sync_prompts".to_string(), "Sync Prompts").into(),
|
||||
MenuItem::Separator.into(),
|
||||
CustomMenuItem::new("go_conf".to_string(), "Go to Config")
|
||||
@ -238,6 +246,17 @@ pub fn menu_handler(event: WindowMenuEvent<tauri::Wry>) {
|
||||
"go_conf" => utils::open_file(utils::chat_root()),
|
||||
"clear_conf" => utils::clear_conf(&app),
|
||||
"awesome" => open(&app, conf::AWESOME_URL.to_string()),
|
||||
"dalle2_search" => {
|
||||
let chat_conf = conf::ChatConfJson::get_chat_conf();
|
||||
let dalle2_search = !chat_conf.dalle2_search;
|
||||
menu_handle
|
||||
.get_item(menu_id)
|
||||
.set_selected(dalle2_search)
|
||||
.unwrap();
|
||||
ChatConfJson::amend(&serde_json::json!({ "dalle2_search": dalle2_search }), None).unwrap();
|
||||
cmd::window_reload(app.clone(), "core");
|
||||
cmd::window_reload(app, "tray");
|
||||
},
|
||||
"sync_prompts" => {
|
||||
tauri::api::dialog::ask(
|
||||
app.get_window("core").as_ref(),
|
||||
|
@ -18,8 +18,11 @@ pub fn tray_window(handle: &tauri::AppHandle) {
|
||||
.always_on_top(true)
|
||||
.theme(theme)
|
||||
.initialization_script(&utils::user_script())
|
||||
.initialization_script(include_str!("../vendors/floating-ui-core.js"))
|
||||
.initialization_script(include_str!("../vendors/floating-ui-dom.js"))
|
||||
.initialization_script(include_str!("../assets/core.js"))
|
||||
.initialization_script(include_str!("../assets/cmd.js"))
|
||||
.initialization_script(include_str!("../assets/dalle2.core.js"))
|
||||
.user_agent(&chat_conf.ua_tray)
|
||||
.build()
|
||||
.unwrap()
|
||||
|
5
src-tauri/src/assets/cmd.js
vendored
5
src-tauri/src/assets/cmd.js
vendored
@ -75,6 +75,11 @@ function init() {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
}
|
||||
@media screen and (max-width: 767px) {
|
||||
#download-png-button, #download-pdf-button, #download-html-button {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
`;
|
||||
document.head.append(styleDom);
|
||||
|
||||
|
2
src-tauri/src/assets/dalle2.core.js
vendored
2
src-tauri/src/assets/dalle2.core.js
vendored
@ -1,6 +1,8 @@
|
||||
// *** Core Script - DALL·E 2 Core ***
|
||||
|
||||
async function init() {
|
||||
const chatConf = await invoke('get_chat_conf') || {};
|
||||
if (!chatConf.dalle2_search) return;
|
||||
if (!window.FloatingUIDOM) return;
|
||||
|
||||
const styleDom = document.createElement('style');
|
||||
|
@ -21,6 +21,7 @@ pub const DEFAULT_CHAT_CONF: &str = r#"{
|
||||
"auto_update": "Prompt",
|
||||
"theme": "Light",
|
||||
"titlebar": true,
|
||||
"dalle2_search": true,
|
||||
"global_shortcut": "",
|
||||
"hide_dock_icon": false,
|
||||
"default_origin": "https://chat.openai.com",
|
||||
@ -33,6 +34,7 @@ pub const DEFAULT_CHAT_CONF_MAC: &str = r#"{
|
||||
"auto_update": "Prompt",
|
||||
"theme": "Light",
|
||||
"titlebar": false,
|
||||
"dalle2_search": true,
|
||||
"global_shortcut": "",
|
||||
"hide_dock_icon": false,
|
||||
"default_origin": "https://chat.openai.com",
|
||||
@ -63,6 +65,7 @@ pub struct ChatConfJson {
|
||||
pub theme: String,
|
||||
// auto update policy, Prompt/Silent/Disable
|
||||
pub auto_update: String,
|
||||
pub dalle2_search: bool,
|
||||
pub stay_on_top: bool,
|
||||
pub default_origin: String,
|
||||
pub origin: String,
|
||||
|
1
src/hooks/useChatModel.ts
vendored
1
src/hooks/useChatModel.ts
vendored
@ -47,6 +47,7 @@ export function useCacheModel(file = '') {
|
||||
const list = await invoke('cmd_list');
|
||||
await writeJSON(CHAT_MODEL_CMD_JSON, { name: 'ChatGPT CMD', last_updated: Date.now(), data: list });
|
||||
await invoke('window_reload', { label: 'core' });
|
||||
await invoke('window_reload', { label: 'tray' });
|
||||
};
|
||||
|
||||
return { modelCacheJson, modelCacheSet, modelCacheCmd };
|
||||
|
15
src/view/General.tsx
vendored
15
src/view/General.tsx
vendored
@ -14,12 +14,12 @@ const AutoUpdateLabel = () => {
|
||||
return (
|
||||
<span>
|
||||
Auto Update <Tooltip title={(
|
||||
<div>
|
||||
<div>Auto Update Policy</div>
|
||||
<span><strong>Prompt</strong>: prompt to install</span><br/>
|
||||
<span><strong>Silent</strong>: install silently</span><br/>
|
||||
{/*<span><strong>Disable</strong>: disable auto update</span><br/>*/}
|
||||
</div>
|
||||
<div>
|
||||
<div>Auto Update Policy</div>
|
||||
<span><strong>Prompt</strong>: prompt to install</span><br/>
|
||||
<span><strong>Silent</strong>: install silently</span><br/>
|
||||
{/*<span><strong>Disable</strong>: disable auto update</span><br/>*/}
|
||||
</div>
|
||||
)}><QuestionCircleOutlined style={{ color: '#1677ff' }} /></Tooltip>
|
||||
</span>
|
||||
)
|
||||
@ -122,6 +122,9 @@ export default function General() {
|
||||
<Switch />
|
||||
</Form.Item>
|
||||
)}
|
||||
<Form.Item label="DALL·E 2 Search" name="dalle2_search" valuePropName="checked">
|
||||
<Switch />
|
||||
</Form.Item>
|
||||
<Form.Item label="Theme" name="theme">
|
||||
<Radio.Group>
|
||||
<Radio value="Light">Light</Radio>
|
||||
|
Loading…
Reference in New Issue
Block a user