@@ -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" ) ;
@@ -1243,6 +1257,19 @@ public ContextMenu CreateContextMenuForStagedChanges(string selectedSingleFolder
1243
1257
var change = _selectedStaged [ 0 ] ;
1244
1258
var path = Native . OS . GetAbsPath ( _repo . FullPath , change . Path ) ;
1245
1259
1260
+ var diffWithMerger = new MenuItem ( ) ;
1261
+ diffWithMerger . Header = App . Text ( "DiffWithMerger" ) ;
1262
+ diffWithMerger . Icon = App . CreateMenuIcon ( "Icons.OpenWith" ) ;
1263
+ diffWithMerger . Click += ( sender , ev ) =>
1264
+ {
1265
+ var toolType = Preferences . Instance . ExternalMergeToolType ;
1266
+ var toolPath = Preferences . Instance . ExternalMergeToolPath ;
1267
+ var opt = new Models . DiffOption ( change , false ) ;
1268
+
1269
+ _ = Commands . MergeTool . OpenForDiffAsync ( _repo . FullPath , toolType , toolPath , opt ) ;
1270
+ ev . Handled = true ;
1271
+ } ;
1272
+
1246
1273
var explore = new MenuItem ( ) ;
1247
1274
explore . IsEnabled = File . Exists ( path ) || Directory . Exists ( path ) ;
1248
1275
explore . Header = App . Text ( "RevealFile" ) ;
@@ -1310,6 +1337,7 @@ public ContextMenu CreateContextMenuForStagedChanges(string selectedSingleFolder
1310
1337
e . Handled = true ;
1311
1338
} ;
1312
1339
1340
+ menu . Items . Add ( diffWithMerger ) ;
1313
1341
menu . Items . Add ( explore ) ;
1314
1342
menu . Items . Add ( openWith ) ;
1315
1343
menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
0 commit comments