@@ -591,27 +591,30 @@ public ContextMenu CreateContextMenuForUnstagedChanges(string selectedSingleFold
591591 var change = _selectedUnstaged [ 0 ] ;
592592 var path = Native . OS . GetAbsPath ( _repo . FullPath , change . Path ) ;
593593
594- var openMerger = new MenuItem ( ) ;
595- openMerger . Header = App . Text ( "OpenInExternalMergeTool" ) ;
596- openMerger . Icon = App . CreateMenuIcon ( "Icons.OpenWith" ) ;
597- openMerger . Tag = OperatingSystem . IsMacOS ( ) ? "⌘+⇧+D" : "Ctrl+Shift+D" ;
598- openMerger . Click += async ( _ , e ) =>
594+ if ( ! change . IsConflicted || change . ConflictReason is Models . ConflictReason . BothAdded or Models . ConflictReason . BothModified )
599595 {
600- if ( change . IsConflicted )
601- {
602- await UseExternalMergeTool ( change ) ;
603- }
604- else
596+ var openMerger = new MenuItem ( ) ;
597+ openMerger . Header = App . Text ( "OpenInExternalMergeTool" ) ;
598+ openMerger . Icon = App . CreateMenuIcon ( "Icons.OpenWith" ) ;
599+ openMerger . Tag = OperatingSystem . IsMacOS ( ) ? "⌘+⇧+D" : "Ctrl+Shift+D" ;
600+ openMerger . Click += async ( _ , e ) =>
605601 {
606- var toolType = Preferences . Instance . ExternalMergeToolType ;
607- var toolPath = Preferences . Instance . ExternalMergeToolPath ;
608- var opt = new Models . DiffOption ( change , true ) ;
609- new Commands . DiffTool ( _repo . FullPath , toolType , toolPath , opt ) . Open ( ) ;
610- }
602+ if ( change . IsConflicted )
603+ {
604+ await UseExternalMergeTool ( change ) ;
605+ }
606+ else
607+ {
608+ var toolType = Preferences . Instance . ExternalMergeToolType ;
609+ var toolPath = Preferences . Instance . ExternalMergeToolPath ;
610+ var opt = new Models . DiffOption ( change , true ) ;
611+ new Commands . DiffTool ( _repo . FullPath , toolType , toolPath , opt ) . Open ( ) ;
612+ }
611613
612- e . Handled = true ;
613- } ;
614- menu . Items . Add ( openMerger ) ;
614+ e . Handled = true ;
615+ } ;
616+ menu . Items . Add ( openMerger ) ;
617+ }
615618
616619 var openWith = new MenuItem ( ) ;
617620 openWith . Header = App . Text ( "OpenWith" ) ;
0 commit comments