pake-cli 3.6.1 → 3.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,43 @@
1
+ {
2
+ "windows": [
3
+ {
4
+ "url": "https://github.com",
5
+ "url_type": "web",
6
+ "hide_title_bar": true,
7
+ "fullscreen": false,
8
+ "width": 1200,
9
+ "height": 800,
10
+ "resizable": true,
11
+ "always_on_top": false,
12
+ "dark_mode": false,
13
+ "activation_shortcut": "",
14
+ "disabled_web_shortcuts": false,
15
+ "hide_on_close": true,
16
+ "incognito": false,
17
+ "enable_wasm": false,
18
+ "enable_drag_drop": false,
19
+ "maximize": false,
20
+ "start_to_tray": false,
21
+ "force_internal_navigation": false,
22
+ "title": null,
23
+ "zoom": 100,
24
+ "min_width": 0,
25
+ "min_height": 0,
26
+ "ignore_certificate_errors": false
27
+ }
28
+ ],
29
+ "user_agent": {
30
+ "macos": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.2 Safari/605.1.15",
31
+ "linux": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",
32
+ "windows": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36"
33
+ },
34
+ "system_tray": {
35
+ "macos": false,
36
+ "linux": true,
37
+ "windows": true
38
+ },
39
+ "system_tray_path": "png/icon_512.png",
40
+ "inject": [],
41
+ "proxy_url": "",
42
+ "multi_instance": false
43
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "productName": "GitHubMultiArch",
3
+ "identifier": "com.pake.3097fc",
4
+ "version": "1.0.0",
5
+ "app": {
6
+ "withGlobalTauri": true,
7
+ "security": {
8
+ "headers": {},
9
+ "csp": null
10
+ }
11
+ },
12
+ "build": {
13
+ "frontendDist": "../dist"
14
+ },
15
+ "bundle": {
16
+ "icon": [
17
+ "icons/githubmultiarch.icns"
18
+ ],
19
+ "active": true,
20
+ "targets": [
21
+ "app"
22
+ ],
23
+ "resources": [
24
+ "icons/githubmultiarch.icns"
25
+ ]
26
+ }
27
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "productName": "weekly",
3
+ "bundle": {
4
+ "icon": ["png/weekly_512.png"],
5
+ "active": true,
6
+ "linux": {
7
+ "deb": {
8
+ "depends": ["curl", "wget"]
9
+ }
10
+ },
11
+ "targets": ["deb", "appimage"]
12
+ }
13
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "bundle": {
3
+ "icon": [
4
+ "icons/githubmultiarch.icns"
5
+ ],
6
+ "active": true,
7
+ "targets": [
8
+ "app"
9
+ ],
10
+ "resources": [
11
+ "icons/githubmultiarch.icns"
12
+ ]
13
+ }
14
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "bundle": {
3
+ "icon": ["png/weekly_256.ico", "png/weekly_32.ico"],
4
+ "active": true,
5
+ "resources": ["png/weekly_32.ico"],
6
+ "targets": ["msi"],
7
+ "windows": {
8
+ "digestAlgorithm": "sha256",
9
+ "wix": {
10
+ "language": ["en-US"],
11
+ "template": "assets/main.wxs"
12
+ }
13
+ }
14
+ }
15
+ }
Binary file
Binary file
@@ -50,11 +50,11 @@ pub async fn download_file(app: AppHandle, params: DownloadFileParams) -> Result
50
50
  .await;
51
51
 
52
52
  match response {
53
- Ok(res) => {
54
- let bytes = res.bytes().await.unwrap();
55
-
53
+ Ok(mut res) => {
56
54
  let mut file = File::create(file_path).unwrap();
57
- file.write_all(&bytes).unwrap();
55
+ while let Some(chunk) = res.chunk().await.unwrap() {
56
+ file.write_all(&chunk).unwrap();
57
+ }
58
58
  show_toast(
59
59
  &window,
60
60
  &get_download_message_with_lang(MessageType::Success, params.language.clone()),
@@ -0,0 +1,281 @@
1
+ use tauri::menu::{AboutMetadata, Menu, MenuItem, PredefinedMenuItem, Submenu};
2
+ use tauri::{AppHandle, Manager, Wry};
3
+ use tauri_plugin_opener::OpenerExt;
4
+
5
+ pub fn get_menu(app: &AppHandle<Wry>) -> Menu<Wry> {
6
+ let pake_version = env!("CARGO_PKG_VERSION");
7
+ let pake_menu_item_title = format!("Built with Pake V{}", pake_version);
8
+
9
+ // App Menu (macOS specific, e.g., "Pake")
10
+ let app_menu = Submenu::new(app, "Pake", true).unwrap();
11
+ let about_metadata = AboutMetadata::default();
12
+ app_menu
13
+ .append(&PredefinedMenuItem::about(app, Some("Pake"), Some(about_metadata)).unwrap())
14
+ .unwrap();
15
+ app_menu
16
+ .append(&PredefinedMenuItem::separator(app).unwrap())
17
+ .unwrap();
18
+ app_menu
19
+ .append(&PredefinedMenuItem::services(app, None).unwrap())
20
+ .unwrap();
21
+ app_menu
22
+ .append(&PredefinedMenuItem::separator(app).unwrap())
23
+ .unwrap();
24
+ app_menu
25
+ .append(&PredefinedMenuItem::hide(app, None).unwrap())
26
+ .unwrap();
27
+ app_menu
28
+ .append(&PredefinedMenuItem::hide_others(app, None).unwrap())
29
+ .unwrap();
30
+ app_menu
31
+ .append(&PredefinedMenuItem::show_all(app, None).unwrap())
32
+ .unwrap();
33
+ app_menu
34
+ .append(&PredefinedMenuItem::separator(app).unwrap())
35
+ .unwrap();
36
+ app_menu
37
+ .append(&PredefinedMenuItem::quit(app, None).unwrap())
38
+ .unwrap();
39
+
40
+ // File Menu
41
+ let file_menu = Submenu::new(app, "File", true).unwrap();
42
+ file_menu
43
+ .append(&PredefinedMenuItem::close_window(app, None).unwrap())
44
+ .unwrap();
45
+ file_menu
46
+ .append(&PredefinedMenuItem::separator(app).unwrap())
47
+ .unwrap();
48
+ file_menu
49
+ .append(
50
+ &MenuItem::with_id(
51
+ app,
52
+ "clear_cache_restart",
53
+ "Clear Cache & Restart",
54
+ true,
55
+ Some("CmdOrCtrl+Shift+Backspace"),
56
+ )
57
+ .unwrap(),
58
+ )
59
+ .unwrap();
60
+
61
+ // Edit Menu
62
+ let edit_menu = Submenu::new(app, "Edit", true).unwrap();
63
+ edit_menu
64
+ .append(&PredefinedMenuItem::undo(app, None).unwrap())
65
+ .unwrap();
66
+ edit_menu
67
+ .append(&PredefinedMenuItem::redo(app, None).unwrap())
68
+ .unwrap();
69
+ edit_menu
70
+ .append(&PredefinedMenuItem::separator(app).unwrap())
71
+ .unwrap();
72
+ edit_menu
73
+ .append(&PredefinedMenuItem::cut(app, None).unwrap())
74
+ .unwrap();
75
+ edit_menu
76
+ .append(&PredefinedMenuItem::copy(app, None).unwrap())
77
+ .unwrap();
78
+ edit_menu
79
+ .append(&PredefinedMenuItem::paste(app, None).unwrap())
80
+ .unwrap();
81
+ edit_menu
82
+ .append(&PredefinedMenuItem::select_all(app, None).unwrap())
83
+ .unwrap();
84
+ edit_menu
85
+ .append(&PredefinedMenuItem::separator(app).unwrap())
86
+ .unwrap();
87
+ edit_menu
88
+ .append(&MenuItem::with_id(app, "copy_url", "Copy URL", true, Some("CmdOrCtrl+L")).unwrap())
89
+ .unwrap();
90
+
91
+ // View Menu
92
+ let view_menu = Submenu::new(app, "View", true).unwrap();
93
+ view_menu
94
+ .append(&MenuItem::with_id(app, "reload", "Reload", true, Some("CmdOrCtrl+R")).unwrap())
95
+ .unwrap();
96
+ view_menu
97
+ .append(&PredefinedMenuItem::separator(app).unwrap())
98
+ .unwrap();
99
+ view_menu
100
+ .append(&MenuItem::with_id(app, "zoom_in", "Zoom In", true, Some("CmdOrCtrl+=")).unwrap())
101
+ .unwrap();
102
+ view_menu
103
+ .append(&MenuItem::with_id(app, "zoom_out", "Zoom Out", true, Some("CmdOrCtrl+-")).unwrap())
104
+ .unwrap();
105
+ view_menu
106
+ .append(
107
+ &MenuItem::with_id(app, "zoom_reset", "Actual Size", true, Some("CmdOrCtrl+0"))
108
+ .unwrap(),
109
+ )
110
+ .unwrap();
111
+ view_menu
112
+ .append(&PredefinedMenuItem::separator(app).unwrap())
113
+ .unwrap();
114
+ view_menu
115
+ .append(&PredefinedMenuItem::fullscreen(app, None).unwrap())
116
+ .unwrap();
117
+ view_menu
118
+ .append(&PredefinedMenuItem::separator(app).unwrap())
119
+ .unwrap();
120
+ view_menu
121
+ .append(
122
+ &MenuItem::with_id(
123
+ app,
124
+ "toggle_devtools",
125
+ "Toggle Developer Tools",
126
+ cfg!(debug_assertions),
127
+ Some("CmdOrCtrl+Option+I"),
128
+ )
129
+ .unwrap(),
130
+ )
131
+ .unwrap();
132
+
133
+ // Navigation Menu
134
+ let navigation_menu = Submenu::new(app, "Navigation", true).unwrap();
135
+ navigation_menu
136
+ .append(&MenuItem::with_id(app, "go_back", "Back", true, Some("CmdOrCtrl+[")).unwrap())
137
+ .unwrap();
138
+ navigation_menu
139
+ .append(
140
+ &MenuItem::with_id(app, "go_forward", "Forward", true, Some("CmdOrCtrl+]")).unwrap(),
141
+ )
142
+ .unwrap();
143
+ navigation_menu
144
+ .append(
145
+ &MenuItem::with_id(app, "go_home", "Go Home", true, Some("CmdOrCtrl+Shift+H")).unwrap(),
146
+ )
147
+ .unwrap();
148
+
149
+ // Window Menu
150
+ let window_menu = Submenu::new(app, "Window", true).unwrap();
151
+ window_menu
152
+ .append(&PredefinedMenuItem::minimize(app, None).unwrap())
153
+ .unwrap();
154
+ window_menu
155
+ .append(&PredefinedMenuItem::maximize(app, None).unwrap())
156
+ .unwrap();
157
+ window_menu
158
+ .append(&PredefinedMenuItem::separator(app).unwrap())
159
+ .unwrap();
160
+ window_menu
161
+ .append(
162
+ &MenuItem::with_id(
163
+ app,
164
+ "always_on_top",
165
+ "Toggle Always on Top",
166
+ true,
167
+ None::<&str>,
168
+ )
169
+ .unwrap(),
170
+ )
171
+ .unwrap();
172
+ window_menu
173
+ .append(&PredefinedMenuItem::separator(app).unwrap())
174
+ .unwrap();
175
+ window_menu
176
+ .append(&PredefinedMenuItem::close_window(app, None).unwrap())
177
+ .unwrap();
178
+
179
+ // Help Menu (Custom)
180
+ let help_menu = Submenu::new(app, "Help", true).unwrap();
181
+ let github_item = MenuItem::with_id(
182
+ app,
183
+ "pake_github_link",
184
+ &pake_menu_item_title,
185
+ true,
186
+ None::<&str>,
187
+ )
188
+ .unwrap();
189
+ help_menu.append(&github_item).unwrap();
190
+
191
+ // Construct the Menu Bar
192
+ let menu = Menu::with_items(
193
+ app,
194
+ &[
195
+ &app_menu,
196
+ &file_menu,
197
+ &edit_menu,
198
+ &view_menu,
199
+ &navigation_menu,
200
+ &window_menu,
201
+ &help_menu,
202
+ ],
203
+ )
204
+ .unwrap();
205
+
206
+ menu
207
+ }
208
+
209
+ pub fn handle_menu_click(app_handle: &AppHandle, id: &str) {
210
+ match id {
211
+ "pake_github_link" => {
212
+ let _ = app_handle
213
+ .opener()
214
+ .open_url("https://github.com/tw93/Pake", None::<&str>);
215
+ }
216
+ "reload" => {
217
+ if let Some(window) = app_handle.get_webview_window("pake") {
218
+ let _ = window.eval("window.location.reload()");
219
+ }
220
+ }
221
+ "toggle_devtools" => {
222
+ #[cfg(debug_assertions)] // Only allow in debug builds
223
+ if let Some(window) = app_handle.get_webview_window("pake") {
224
+ if window.is_devtools_open() {
225
+ window.close_devtools();
226
+ } else {
227
+ window.open_devtools();
228
+ }
229
+ }
230
+ }
231
+ "zoom_in" => {
232
+ if let Some(window) = app_handle.get_webview_window("pake") {
233
+ let _ = window.eval("zoomIn()");
234
+ }
235
+ }
236
+ "zoom_out" => {
237
+ if let Some(window) = app_handle.get_webview_window("pake") {
238
+ let _ = window.eval("zoomOut()");
239
+ }
240
+ }
241
+ "zoom_reset" => {
242
+ if let Some(window) = app_handle.get_webview_window("pake") {
243
+ let _ = window.eval("setZoom('100%')");
244
+ }
245
+ }
246
+ "go_back" => {
247
+ if let Some(window) = app_handle.get_webview_window("pake") {
248
+ let _ = window.eval("window.history.back()");
249
+ }
250
+ }
251
+ "go_forward" => {
252
+ if let Some(window) = app_handle.get_webview_window("pake") {
253
+ let _ = window.eval("window.history.forward()");
254
+ }
255
+ }
256
+ "go_home" => {
257
+ if let Some(window) = app_handle.get_webview_window("pake") {
258
+ let _ = window.eval("window.location.href = window.pakeConfig.url");
259
+ }
260
+ }
261
+ "copy_url" => {
262
+ if let Some(window) = app_handle.get_webview_window("pake") {
263
+ let _ = window.eval("navigator.clipboard.writeText(window.location.href)");
264
+ }
265
+ }
266
+ "clear_cache_restart" => {
267
+ if let Some(window) = app_handle.get_webview_window("pake") {
268
+ if let Ok(_) = window.clear_all_browsing_data() {
269
+ app_handle.restart();
270
+ }
271
+ }
272
+ }
273
+ "always_on_top" => {
274
+ if let Some(window) = app_handle.get_webview_window("pake") {
275
+ let is_on_top = window.is_always_on_top().unwrap_or(false);
276
+ let _ = window.set_always_on_top(!is_on_top);
277
+ }
278
+ }
279
+ _ => {}
280
+ }
281
+ }
@@ -1,4 +1,5 @@
1
1
  pub mod config;
2
2
  pub mod invoke;
3
+ pub mod menu;
3
4
  pub mod setup;
4
5
  pub mod window;
@@ -9,9 +9,6 @@ use tauri_plugin_window_state::StateFlags;
9
9
  #[cfg(target_os = "macos")]
10
10
  use std::time::Duration;
11
11
 
12
- use tauri::menu::{AboutMetadata, Menu, MenuItem, PredefinedMenuItem, Submenu};
13
- use tauri_plugin_opener::OpenerExt; // Add this
14
-
15
12
  use app::{
16
13
  invoke::{
17
14
  clear_cache_and_restart, download_file, download_file_by_binary, send_notification,
@@ -72,238 +69,12 @@ pub fn run_app() {
72
69
  ])
73
70
  .setup(move |app| {
74
71
  // --- Menu Construction Start ---
75
- let pake_version = env!("CARGO_PKG_VERSION");
76
- let pake_menu_item_title = format!("Built with Pake V{}", pake_version);
77
-
78
- // App Menu (macOS specific, e.g., "Pake")
79
- let app_menu = Submenu::new(app, "Pake", true)?;
80
- let about_metadata = AboutMetadata::default();
81
- app_menu.append(&PredefinedMenuItem::about(
82
- app,
83
- Some("Pake"),
84
- Some(about_metadata),
85
- )?)?;
86
- app_menu.append(&PredefinedMenuItem::separator(app)?)?;
87
- app_menu.append(&PredefinedMenuItem::services(app, None)?)?;
88
- app_menu.append(&PredefinedMenuItem::separator(app)?)?;
89
- app_menu.append(&PredefinedMenuItem::hide(app, None)?)?;
90
- app_menu.append(&PredefinedMenuItem::hide_others(app, None)?)?;
91
- app_menu.append(&PredefinedMenuItem::show_all(app, None)?)?;
92
- app_menu.append(&PredefinedMenuItem::separator(app)?)?;
93
- app_menu.append(&PredefinedMenuItem::quit(app, None)?)?;
94
-
95
- // File Menu
96
- let file_menu = Submenu::new(app, "File", true)?;
97
- file_menu.append(&PredefinedMenuItem::close_window(app, None)?)?;
98
- file_menu.append(&PredefinedMenuItem::separator(app)?)?;
99
- file_menu.append(&MenuItem::with_id(
100
- app,
101
- "clear_cache_restart",
102
- "Clear Cache & Restart",
103
- true,
104
- Some("CmdOrCtrl+Shift+Backspace"),
105
- )?)?;
106
-
107
- // Edit Menu
108
- let edit_menu = Submenu::new(app, "Edit", true)?;
109
- edit_menu.append(&PredefinedMenuItem::undo(app, None)?)?;
110
- edit_menu.append(&PredefinedMenuItem::redo(app, None)?)?;
111
- edit_menu.append(&PredefinedMenuItem::separator(app)?)?;
112
- edit_menu.append(&PredefinedMenuItem::cut(app, None)?)?;
113
- edit_menu.append(&PredefinedMenuItem::copy(app, None)?)?;
114
- edit_menu.append(&PredefinedMenuItem::paste(app, None)?)?;
115
- edit_menu.append(&PredefinedMenuItem::select_all(app, None)?)?;
116
- edit_menu.append(&PredefinedMenuItem::separator(app)?)?;
117
- edit_menu.append(&MenuItem::with_id(
118
- app,
119
- "copy_url",
120
- "Copy URL",
121
- true,
122
- Some("CmdOrCtrl+L"),
123
- )?)?;
124
-
125
- // View Menu
126
- let view_menu = Submenu::new(app, "View", true)?;
127
- view_menu.append(&MenuItem::with_id(
128
- app,
129
- "reload",
130
- "Reload",
131
- true,
132
- Some("CmdOrCtrl+R"),
133
- )?)?;
134
- view_menu.append(&PredefinedMenuItem::separator(app)?)?;
135
- view_menu.append(&MenuItem::with_id(
136
- app,
137
- "zoom_in",
138
- "Zoom In",
139
- true,
140
- Some("CmdOrCtrl+="),
141
- )?)?;
142
- view_menu.append(&MenuItem::with_id(
143
- app,
144
- "zoom_out",
145
- "Zoom Out",
146
- true,
147
- Some("CmdOrCtrl+-"),
148
- )?)?;
149
- view_menu.append(&MenuItem::with_id(
150
- app,
151
- "zoom_reset",
152
- "Actual Size",
153
- true,
154
- Some("CmdOrCtrl+0"),
155
- )?)?;
156
- view_menu.append(&PredefinedMenuItem::separator(app)?)?;
157
- view_menu.append(&PredefinedMenuItem::fullscreen(app, None)?)?;
158
- view_menu.append(&PredefinedMenuItem::separator(app)?)?;
159
- view_menu.append(&MenuItem::with_id(
160
- app,
161
- "toggle_devtools",
162
- "Toggle Developer Tools",
163
- cfg!(debug_assertions),
164
- Some("CmdOrCtrl+Option+I"),
165
- )?)?;
166
-
167
- // Navigation Menu
168
- let navigation_menu = Submenu::new(app, "Navigation", true)?;
169
- navigation_menu.append(&MenuItem::with_id(
170
- app,
171
- "go_back",
172
- "Back",
173
- true,
174
- Some("CmdOrCtrl+["),
175
- )?)?;
176
- navigation_menu.append(&MenuItem::with_id(
177
- app,
178
- "go_forward",
179
- "Forward",
180
- true,
181
- Some("CmdOrCtrl+]"),
182
- )?)?;
183
- navigation_menu.append(&MenuItem::with_id(
184
- app,
185
- "go_home",
186
- "Go Home",
187
- true,
188
- Some("CmdOrCtrl+Shift+H"),
189
- )?)?;
190
-
191
- // Window Menu
192
- let window_menu = Submenu::new(app, "Window", true)?;
193
- window_menu.append(&PredefinedMenuItem::minimize(app, None)?)?;
194
- window_menu.append(&PredefinedMenuItem::maximize(app, None)?)?;
195
- window_menu.append(&PredefinedMenuItem::separator(app)?)?;
196
- window_menu.append(&MenuItem::with_id(
197
- app,
198
- "always_on_top",
199
- "Toggle Always on Top",
200
- true,
201
- None::<&str>,
202
- )?)?;
203
- window_menu.append(&PredefinedMenuItem::separator(app)?)?;
204
- window_menu.append(&PredefinedMenuItem::close_window(app, None)?)?;
205
-
206
- // Help Menu (Custom)
207
- let help_menu = Submenu::new(app, "Help", true)?;
208
- let github_item = MenuItem::with_id(
209
- app,
210
- "pake_github_link",
211
- &pake_menu_item_title,
212
- true,
213
- None::<&str>,
214
- )?;
215
- help_menu.append(&github_item)?;
216
-
217
- // Construct the Menu Bar
218
- let menu = Menu::with_items(
219
- app,
220
- &[
221
- &app_menu,
222
- &file_menu,
223
- &edit_menu,
224
- &view_menu,
225
- &navigation_menu,
226
- &window_menu,
227
- &help_menu,
228
- ],
229
- )?;
230
-
72
+ let menu = app::menu::get_menu(app.app_handle());
231
73
  app.set_menu(menu)?;
232
74
 
233
75
  // Event Handling for Custom Menu Item
234
76
  app.on_menu_event(move |app_handle, event| {
235
- match event.id().as_ref() {
236
- "pake_github_link" => {
237
- let _ = app_handle
238
- .opener()
239
- .open_url("https://github.com/tw93/Pake", None::<&str>);
240
- }
241
- "reload" => {
242
- if let Some(window) = app_handle.get_webview_window("pake") {
243
- let _ = window.eval("window.location.reload()");
244
- }
245
- }
246
- "toggle_devtools" => {
247
- #[cfg(debug_assertions)] // Only allow in debug builds
248
- if let Some(window) = app_handle.get_webview_window("pake") {
249
- if window.is_devtools_open() {
250
- window.close_devtools();
251
- } else {
252
- window.open_devtools();
253
- }
254
- }
255
- }
256
- "zoom_in" => {
257
- if let Some(window) = app_handle.get_webview_window("pake") {
258
- let _ = window.eval("zoomIn()");
259
- }
260
- }
261
- "zoom_out" => {
262
- if let Some(window) = app_handle.get_webview_window("pake") {
263
- let _ = window.eval("zoomOut()");
264
- }
265
- }
266
- "zoom_reset" => {
267
- if let Some(window) = app_handle.get_webview_window("pake") {
268
- let _ = window.eval("setZoom('100%')");
269
- }
270
- }
271
- "go_back" => {
272
- if let Some(window) = app_handle.get_webview_window("pake") {
273
- let _ = window.eval("window.history.back()");
274
- }
275
- }
276
- "go_forward" => {
277
- if let Some(window) = app_handle.get_webview_window("pake") {
278
- let _ = window.eval("window.history.forward()");
279
- }
280
- }
281
- "go_home" => {
282
- if let Some(window) = app_handle.get_webview_window("pake") {
283
- let _ = window.eval("window.location.href = window.pakeConfig.url");
284
- }
285
- }
286
- "copy_url" => {
287
- if let Some(window) = app_handle.get_webview_window("pake") {
288
- let _ =
289
- window.eval("navigator.clipboard.writeText(window.location.href)");
290
- }
291
- }
292
- "clear_cache_restart" => {
293
- if let Some(window) = app_handle.get_webview_window("pake") {
294
- if let Ok(_) = window.clear_all_browsing_data() {
295
- app_handle.restart();
296
- }
297
- }
298
- }
299
- "always_on_top" => {
300
- if let Some(window) = app_handle.get_webview_window("pake") {
301
- let is_on_top = window.is_always_on_top().unwrap_or(false);
302
- let _ = window.set_always_on_top(!is_on_top);
303
- }
304
- }
305
- _ => {}
306
- }
77
+ app::menu::handle_menu_click(app_handle, event.id().as_ref());
307
78
  });
308
79
  // --- Menu Construction End ---
309
80
 
@@ -1,10 +0,0 @@
1
- [Desktop Entry]
2
- Encoding=UTF-8
3
- Categories=Office
4
- Exec=com-pake-weekly
5
- Icon=com-pake-weekly
6
- Name=com-pake-weekly
7
- Name[zh_CN]=潮流周刊
8
- StartupNotify=true
9
- Terminal=false
10
- Type=Application