internal static void PopupClosed(ICodeCompletionWindow popup) { for (int num1 = PopupHookManager.Popups.Count - 1; num1 >= 0; num1--) { PopupWnd wnd1 = (PopupWnd)PopupHookManager.Popups[num1]; if (wnd1.Popup == popup) { wnd1.Release(); PopupHookManager.Popups.RemoveAt(num1); break; } } if (PopupHookManager.Popups.Count == 0) { PopupHookManager.RemoveHook(); } }
internal static void CheckMouse(Control control, Point mousePos) { for (int num1 = PopupHookManager.Popups.Count - 1; num1 >= 0; num1--) { PopupWnd wnd1 = (PopupWnd)PopupHookManager.Popups[num1]; Control control1 = (Control)wnd1.Popup; ICodeCompletionWindow window1 = wnd1.Popup; if (((window1 != null) && control1.Created) && control1.Visible) { Control control2 = control1.FindForm(); if ((((control2 != null) && !control2.Contains(control)) && ((control2 != control) && (control1 != control))) && (!control1.Contains(control) && !control1.Bounds.Contains(mousePos))) { window1.CloseDelayed(false); } } } }