/// <inheritdoc /> public override bool WindowIsDialogInstance(Window candidateWindow) { bool windowIsDialog = candidateWindow.Text.ToLower().Contains("vbscript"); if (windowIsDialog) { IList<Window> buttons = candidateWindow.GetChildWindows(w => w.ClassName == WindowFactory.GetWindowClassForRole(AccessibleRole.PushButton, true)); IList<Window> staticLabel = candidateWindow.GetChildWindows(w => w.ClassName == WindowFactory.GetWindowClassForRole(AccessibleRole.Label, true) && w.ItemId == 0xFFFF); if (buttons.Count == 1 && buttons[0].ItemId == 2 && staticLabel.Count == 1) { this.Kind = NativeDialogConstants.VBScriptOKOnlyDialog; windowIsDialog = true; } else if (buttons.Count == 2 && staticLabel.Count == 1) { this.Kind = NativeDialogConstants.VBScriptOKCancelDialog; if (buttons[0].ItemId == 4 && buttons[1].ItemId == 2) { this.Kind = NativeDialogConstants.VBScriptRetryCancelDialog; } else if (buttons[0].ItemId == 6 && buttons[1].ItemId == 7) { this.Kind = NativeDialogConstants.VBScriptYesNoDialog; } windowIsDialog = true; } else if (buttons.Count == 3 && staticLabel.Count == 1) { this.Kind = NativeDialogConstants.VBScriptYesNoCancelDialog; if (buttons[0].ItemId == 3 && buttons[1].ItemId == 4 && buttons[2].ItemId == 5) { this.Kind = NativeDialogConstants.VBScriptAbortRetryIgnoreDialog; } windowIsDialog = true; } WindowFactory.DisposeWindows(buttons); WindowFactory.DisposeWindows(staticLabel); } return windowIsDialog; }
/// <inheritdoc /> public override bool WindowIsDialogInstance(Window candidateWindow) { bool windowIsDialog = false; IList<Window> buttons = candidateWindow.GetChildWindows(w => w.ClassName == WindowFactory.GetWindowClassForRole(AccessibleRole.PushButton, false)); if (buttons.Count == 2 && candidateWindow.Text.StartsWith("Firefox - ")) { windowIsDialog = true; } WindowFactory.DisposeWindows(buttons); return windowIsDialog; }
private Window GetSysCredentialWindow(Window parentWindow) { Window sysCredentialWindow = null; IList<Window> credentialWindowList = parentWindow.GetChildWindows(w => w.ClassName == SysCredentialWindowClass); if (credentialWindowList.Count > 0) { sysCredentialWindow = credentialWindowList[0]; credentialWindowList.Remove(sysCredentialWindow); } WindowFactory.DisposeWindows(credentialWindowList); return sysCredentialWindow; }
/// <inheritdoc /> public override bool WindowIsDialogInstance(Window candidateWindow) { bool windowIsDialog = false; IList<Window> childWindowList = candidateWindow.GetChildWindows(w => w.ClassName == AccessibleRole.PasswordText.ToString()); if (childWindowList.Count > 0) { windowIsDialog = true; } WindowFactory.DisposeWindows(childWindowList); return windowIsDialog; }
/// <inheritdoc /> public override bool WindowIsDialogInstance(Window candidateWindow) { bool windowIsDialog = false; if (!candidateWindow.Text.ToLower().Contains("vbscript")) { IList<Window> buttons = candidateWindow.GetChildWindows(w => w.ClassName == WindowFactory.GetWindowClassForRole(AccessibleRole.PushButton, true)); IList<Window> staticLabel = candidateWindow.GetChildWindows(w => w.ClassName == WindowFactory.GetWindowClassForRole(AccessibleRole.Label, true) && w.ItemId == 0xFFFF); if (buttons.Count == 1 && buttons[0].ItemId == 2 && staticLabel.Count == 1) { this.Kind = NativeDialogConstants.JavaScriptAlertDialog; windowIsDialog = true; } else if (buttons.Count == 2 && buttons[0].ItemId == 1 && buttons[1].ItemId == 2 && staticLabel.Count == 1) { this.Kind = NativeDialogConstants.JavaScriptConfirmDialog; windowIsDialog = true; } WindowFactory.DisposeWindows(buttons); WindowFactory.DisposeWindows(staticLabel); } return windowIsDialog; }
/// <inheritdoc /> public override bool WindowIsDialogInstance(Window candidateWindow) { bool windowIsDialog = false; IList<Window> buttons = candidateWindow.GetChildWindows(w => w.ClassName == WindowFactory.GetWindowClassForRole(AccessibleRole.PushButton, false)); IList<Window> staticLabel = candidateWindow.GetChildWindows(w => w.ClassName == this.messageLabelClass); if (buttons.Count == 1 && buttons[0].ItemId == this.okButtonId && staticLabel.Count == 1) { this.Kind = NativeDialogConstants.JavaScriptAlertDialog; windowIsDialog = true; } else if (buttons.Count == 2 && buttons[0].ItemId == this.okButtonId && buttons[1].ItemId == this.cancelButtonId && staticLabel.Count == 1) { this.Kind = NativeDialogConstants.JavaScriptConfirmDialog; windowIsDialog = true; } WindowFactory.DisposeWindows(buttons); WindowFactory.DisposeWindows(staticLabel); return windowIsDialog; }