@@ -12,7 +12,7 @@ use tray_icon::{
1212
1313use crate :: {
1414 app:: { Message , tile:: ExtSender } ,
15- utils:: open_settings,
15+ utils:: { open_settings, open_url } ,
1616} ;
1717
1818use tokio:: runtime:: Runtime ;
@@ -29,10 +29,14 @@ pub fn menu_icon(hotkey: (Option<Modifiers>, Code), hotkey_id: u32, sender: ExtS
2929 let menu = Menu :: with_items ( & [
3030 & version_item ( ) ,
3131 & about_item ( image) ,
32+ & open_github_item ( ) ,
3233 & PredefinedMenuItem :: separator ( ) ,
3334 & refresh_item ( ) ,
3435 & open_item ( hotkey) ,
3536 & PredefinedMenuItem :: separator ( ) ,
37+ & open_issue_item ( ) ,
38+ & get_help_item ( ) ,
39+ & PredefinedMenuItem :: separator ( ) ,
3640 & open_settings_item ( ) ,
3741 & quit_item ( ) ,
3842 ] )
@@ -67,6 +71,9 @@ fn init_event_handler(sender: ExtSender, hotkey_id: u32) {
6771 sender. clone ( ) . try_send ( Message :: ReloadConfig ) . unwrap ( ) ;
6872 } ) ;
6973 }
74+ "open_issue_page" => {
75+ open_url ( "https://github.com/unsecretised/rustcast/issues/new" ) ;
76+ }
7077 "show_rustcast" => {
7178 runtime. spawn ( async move {
7279 sender
@@ -75,9 +82,15 @@ fn init_event_handler(sender: ExtSender, hotkey_id: u32) {
7582 . unwrap ( ) ;
7683 } ) ;
7784 }
85+ "open_help_page" => {
86+ open_url ( "https://github.com/unsecretised/rustcast/discussions" ) ;
87+ }
7888 "open_preferences" => {
7989 open_settings ( ) ;
8090 }
91+ "open_github_page" => {
92+ open_url ( "https://github.com/unsecretised/rustcast" ) ;
93+ }
8194 _ => { }
8295 }
8396 } ) ) ;
@@ -91,16 +104,34 @@ fn version_item() -> MenuItem {
91104fn open_item ( hotkey : ( Option < Modifiers > , Code ) ) -> MenuItem {
92105 MenuItem :: with_id (
93106 "show_rustcast" ,
94- "Toggle RustCast " ,
107+ "Toggle View " ,
95108 true ,
96109 Some ( Accelerator :: new ( hotkey. 0 , hotkey. 1 ) ) ,
97110 )
98111}
99112
113+ fn open_github_item ( ) -> MenuItem {
114+ MenuItem :: with_id (
115+ "open_github_page" ,
116+ "Star on Github" ,
117+ true ,
118+ None
119+ )
120+ }
121+
122+ fn open_issue_item ( ) -> MenuItem {
123+ MenuItem :: with_id (
124+ "open_issue_page" ,
125+ "Report an Issue" ,
126+ true ,
127+ None
128+ )
129+ }
130+
100131fn refresh_item ( ) -> MenuItem {
101132 MenuItem :: with_id (
102133 "refresh_rustcast" ,
103- "Refresh RustCast " ,
134+ "Refresh" ,
104135 true ,
105136 Some ( Accelerator :: new (
106137 Some ( Modifiers :: SUPER ) ,
@@ -118,8 +149,17 @@ fn open_settings_item() -> MenuItem {
118149 )
119150}
120151
152+ fn get_help_item ( ) -> MenuItem {
153+ MenuItem :: with_id (
154+ "open_help_page" ,
155+ "Help" ,
156+ true ,
157+ None
158+ )
159+ }
160+
121161fn quit_item ( ) -> PredefinedMenuItem {
122- PredefinedMenuItem :: quit ( Some ( "Quit RustCast " ) )
162+ PredefinedMenuItem :: quit ( Some ( "Quit" ) )
123163}
124164
125165fn about_item ( image : DynamicImage ) -> PredefinedMenuItem {
@@ -135,5 +175,5 @@ fn about_item(image: DynamicImage) -> PredefinedMenuItem {
135175 . license ( Some ( "MIT" ) )
136176 . build ( ) ;
137177
138- PredefinedMenuItem :: about ( Some ( "About RustCast " ) , Some ( about_metadata_builder) )
178+ PredefinedMenuItem :: about ( Some ( "About.. " ) , Some ( about_metadata_builder) )
139179}
0 commit comments