@@ -834,6 +834,8 @@ public void ExecCustomAction(Models.CustomAction action, object scope)
834834 popup = new ExecuteCustomAction ( this , action , b ) ;
835835 else if ( scope is Models . Commit c )
836836 popup = new ExecuteCustomAction ( this , action , c ) ;
837+ else if ( scope is Models . Tag t )
838+ popup = new ExecuteCustomAction ( this , action , t ) ;
837839 else
838840 popup = new ExecuteCustomAction ( this , action ) ;
839841
@@ -2388,6 +2390,41 @@ public ContextMenu CreateContextMenuForTag(Models.Tag tag)
23882390 ev . Handled = true ;
23892391 } ;
23902392
2393+ var menu = new ContextMenu ( ) ;
2394+ menu . Items . Add ( createBranch ) ;
2395+ menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
2396+ menu . Items . Add ( pushTag ) ;
2397+ menu . Items . Add ( deleteTag ) ;
2398+ menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
2399+ menu . Items . Add ( archive ) ;
2400+ menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
2401+
2402+ var actions = GetCustomActions ( Models . CustomActionScope . Tag ) ;
2403+ if ( actions . Count > 0 )
2404+ {
2405+ var custom = new MenuItem ( ) ;
2406+ custom . Header = App . Text ( "TagCM.CustomAction" ) ;
2407+ custom . Icon = App . CreateMenuIcon ( "Icons.Action" ) ;
2408+
2409+ foreach ( var action in actions )
2410+ {
2411+ var dup = action ;
2412+ var item = new MenuItem ( ) ;
2413+ item . Icon = App . CreateMenuIcon ( "Icons.Action" ) ;
2414+ item . Header = dup . Name ;
2415+ item . Click += ( _ , e ) =>
2416+ {
2417+ ExecCustomAction ( dup , tag ) ;
2418+ e . Handled = true ;
2419+ } ;
2420+
2421+ custom . Items . Add ( item ) ;
2422+ }
2423+
2424+ menu . Items . Add ( custom ) ;
2425+ menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
2426+ }
2427+
23912428 var copy = new MenuItem ( ) ;
23922429 copy . Header = App . Text ( "TagCM.Copy" ) ;
23932430 copy . Icon = App . CreateMenuIcon ( "Icons.Copy" ) ;
@@ -2407,14 +2444,6 @@ public ContextMenu CreateContextMenuForTag(Models.Tag tag)
24072444 ev . Handled = true ;
24082445 } ;
24092446
2410- var menu = new ContextMenu ( ) ;
2411- menu . Items . Add ( createBranch ) ;
2412- menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
2413- menu . Items . Add ( pushTag ) ;
2414- menu . Items . Add ( deleteTag ) ;
2415- menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
2416- menu . Items . Add ( archive ) ;
2417- menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
24182447 menu . Items . Add ( copy ) ;
24192448 menu . Items . Add ( copyMessage ) ;
24202449 return menu ;
0 commit comments