@@ -590,6 +590,20 @@ public ContextMenu CreateContextMenuForUnstagedChanges(string selectedSingleFold
590
590
var change = _selectedUnstaged [ 0 ] ;
591
591
var path = Native . OS . GetAbsPath ( _repo . FullPath , change . Path ) ;
592
592
593
+ var diffWithMerger = new MenuItem ( ) ;
594
+ diffWithMerger . Header = App . Text ( "DiffWithMerger" ) ;
595
+ diffWithMerger . Icon = App . CreateMenuIcon ( "Icons.OpenWith" ) ;
596
+ diffWithMerger . Click += ( sender , ev ) =>
597
+ {
598
+ var toolType = Preferences . Instance . ExternalMergeToolType ;
599
+ var toolPath = Preferences . Instance . ExternalMergeToolPath ;
600
+ var opt = new Models . DiffOption ( change , true ) ;
601
+
602
+ _ = Commands . MergeTool . OpenForDiffAsync ( _repo . FullPath , toolType , toolPath , opt ) ;
603
+ ev . Handled = true ;
604
+ } ;
605
+ menu . Items . Add ( diffWithMerger ) ;
606
+
593
607
var explore = new MenuItem ( ) ;
594
608
explore . Header = App . Text ( "RevealFile" ) ;
595
609
explore . Icon = App . CreateMenuIcon ( "Icons.Explore" ) ;
@@ -1239,6 +1253,19 @@ public ContextMenu CreateContextMenuForStagedChanges(string selectedSingleFolder
1239
1253
var change = _selectedStaged [ 0 ] ;
1240
1254
var path = Native . OS . GetAbsPath ( _repo . FullPath , change . Path ) ;
1241
1255
1256
+ var diffWithMerger = new MenuItem ( ) ;
1257
+ diffWithMerger . Header = App . Text ( "DiffWithMerger" ) ;
1258
+ diffWithMerger . Icon = App . CreateMenuIcon ( "Icons.OpenWith" ) ;
1259
+ diffWithMerger . Click += ( sender , ev ) =>
1260
+ {
1261
+ var toolType = Preferences . Instance . ExternalMergeToolType ;
1262
+ var toolPath = Preferences . Instance . ExternalMergeToolPath ;
1263
+ var opt = new Models . DiffOption ( change , false ) ;
1264
+
1265
+ _ = Commands . MergeTool . OpenForDiffAsync ( _repo . FullPath , toolType , toolPath , opt ) ;
1266
+ ev . Handled = true ;
1267
+ } ;
1268
+
1242
1269
var explore = new MenuItem ( ) ;
1243
1270
explore . IsEnabled = File . Exists ( path ) || Directory . Exists ( path ) ;
1244
1271
explore . Header = App . Text ( "RevealFile" ) ;
@@ -1305,6 +1332,7 @@ public ContextMenu CreateContextMenuForStagedChanges(string selectedSingleFolder
1305
1332
e . Handled = true ;
1306
1333
} ;
1307
1334
1335
+ menu . Items . Add ( diffWithMerger ) ;
1308
1336
menu . Items . Add ( explore ) ;
1309
1337
menu . Items . Add ( openWith ) ;
1310
1338
menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
0 commit comments