Skip to content

Commit 16054e1

Browse files
committed
#33 - Fix integration into context menu when other form than FormBrowse is started.
1 parent e68c53c commit 16054e1

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

src/GitExtensions.BundleBackuper/Plugin.cs

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -109,16 +109,20 @@ public override void Register(IGitUICommands commands)
109109

110110
private bool TryGetCommitContextMenu(IGitUICommands commands, out RevisionGridControl revisionGrid, out ContextMenuStrip contextMenu)
111111
{
112-
BindingFlags bindingFlags = BindingFlags.Instance | BindingFlags.NonPublic;
113-
FieldInfo revisionGridField = typeof(FormBrowse).GetField("RevisionGrid", bindingFlags);
114-
if (revisionGridField != null)
112+
FormBrowse form = FindForm(commands);
113+
if (form != null)
115114
{
116-
revisionGrid = (RevisionGridControl)revisionGridField.GetValue(FindForm(commands));
117-
FieldInfo contextMenuField = typeof(RevisionGridControl).GetField("mainContextMenu", bindingFlags);
118-
if (contextMenuField != null)
115+
BindingFlags bindingFlags = BindingFlags.Instance | BindingFlags.NonPublic;
116+
FieldInfo revisionGridField = typeof(FormBrowse).GetField("RevisionGrid", bindingFlags);
117+
if (revisionGridField != null)
119118
{
120-
contextMenu = (ContextMenuStrip)contextMenuField.GetValue(revisionGrid);
121-
return true;
119+
revisionGrid = (RevisionGridControl)revisionGridField.GetValue(form);
120+
FieldInfo contextMenuField = typeof(RevisionGridControl).GetField("mainContextMenu", bindingFlags);
121+
if (contextMenuField != null)
122+
{
123+
contextMenu = (ContextMenuStrip)contextMenuField.GetValue(revisionGrid);
124+
return true;
125+
}
122126
}
123127
}
124128

0 commit comments

Comments
 (0)