@@ -66,11 +66,8 @@ private void OnOpenWithExternalTools(object sender, RoutedEventArgs e)
6666 if ( sender is Button button && DataContext is ViewModels . Repository repo )
6767 {
6868 var menu = repo . CreateContextMenuForExternalTools ( ) ;
69- if ( menu != null )
70- {
71- menu . Open ( button ) ;
72- e . Handled = true ;
73- }
69+ button . OpenContextMenu ( menu ) ;
70+ e . Handled = true ;
7471 }
7572 }
7673
@@ -201,8 +198,7 @@ private void OnLocalBranchContextMenuRequested(object sender, ContextRequestedEv
201198 if ( node . IsBranch && DataContext is ViewModels . Repository repo )
202199 {
203200 var menu = repo . CreateContextMenuForLocalBranch ( node . Backend as Models . Branch ) ;
204- if ( menu != null )
205- menu . Open ( grid ) ;
201+ grid . OpenContextMenu ( menu ) ;
206202 }
207203 }
208204
@@ -218,14 +214,12 @@ private void OnRemoteBranchContextMenuRequested(object sender, ContextRequestedE
218214 if ( node . IsRemote )
219215 {
220216 var menu = repo . CreateContextMenuForRemote ( node . Backend as Models . Remote ) ;
221- if ( menu != null )
222- menu . Open ( grid ) ;
217+ grid . OpenContextMenu ( menu ) ;
223218 }
224219 else if ( node . IsBranch )
225220 {
226221 var menu = repo . CreateContextMenuForRemoteBranch ( node . Backend as Models . Branch ) ;
227- if ( menu != null )
228- menu . Open ( grid ) ;
222+ grid . OpenContextMenu ( menu ) ;
229223 }
230224 }
231225
@@ -238,8 +232,7 @@ private void OnTagContextRequested(object sender, ContextRequestedEventArgs e)
238232 {
239233 var tag = datagrid . SelectedItem as Models . Tag ;
240234 var menu = repo . CreateContextMenuForTag ( tag ) ;
241- if ( menu != null )
242- menu . Open ( datagrid ) ;
235+ datagrid . OpenContextMenu ( menu ) ;
243236 }
244237
245238 e . Handled = true ;
@@ -251,8 +244,7 @@ private void OnSubmoduleContextRequested(object sender, ContextRequestedEventArg
251244 {
252245 var submodule = datagrid . SelectedItem as string ;
253246 var menu = repo . CreateContextMenuForSubmodule ( submodule ) ;
254- if ( menu != null )
255- menu . Open ( datagrid ) ;
247+ datagrid . OpenContextMenu ( menu ) ;
256248 }
257249
258250 e . Handled = true ;
@@ -263,8 +255,7 @@ private void OpenGitFlowMenu(object sender, RoutedEventArgs e)
263255 if ( DataContext is ViewModels . Repository repo )
264256 {
265257 var menu = repo . CreateContextMenuForGitFlow ( ) ;
266- if ( menu != null )
267- menu . Open ( sender as Button ) ;
258+ ( sender as Control ) ? . OpenContextMenu ( menu ) ;
268259 }
269260
270261 e . Handled = true ;
0 commit comments