mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-08-20 19:33:08 +09:00
74 lines
2.5 KiB
JavaScript
74 lines
2.5 KiB
JavaScript
/* vim: set ft=javascript ts=2 et sw=2 tw=80: */
|
|
/* Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
"use strict";
|
|
|
|
// Test that depending where the user last clicked in the inspector, the right search
|
|
// field is focused when ctrl+F is pressed.
|
|
|
|
add_task(function* () {
|
|
let {inspector} = yield openInspectorForURL("data:text/html;charset=utf-8,Search!");
|
|
|
|
info("Check that by default, the inspector search field gets focused");
|
|
pressCtrlF();
|
|
isInInspectorSearchBox(inspector);
|
|
|
|
info("Click somewhere in the rule-view");
|
|
clickInRuleView(inspector);
|
|
|
|
info("Check that the rule-view search field gets focused");
|
|
pressCtrlF();
|
|
isInRuleViewSearchBox(inspector);
|
|
|
|
info("Click in the inspector again");
|
|
yield clickContainer("head", inspector);
|
|
|
|
info("Check that now we're back in the inspector, its search field gets focused");
|
|
pressCtrlF();
|
|
isInInspectorSearchBox(inspector);
|
|
|
|
info("Switch to the computed view, and click somewhere inside it");
|
|
selectComputedView(inspector);
|
|
clickInComputedView(inspector);
|
|
|
|
info("Check that the computed-view search field gets focused");
|
|
pressCtrlF();
|
|
isInComputedViewSearchBox(inspector);
|
|
|
|
info("Click in the inspector yet again");
|
|
yield clickContainer("body", inspector);
|
|
|
|
info("We're back in the inspector again, check the inspector search field focuses");
|
|
pressCtrlF();
|
|
isInInspectorSearchBox(inspector);
|
|
});
|
|
|
|
function pressCtrlF() {
|
|
EventUtils.synthesizeKey("f", {accelKey: true});
|
|
}
|
|
|
|
function clickInRuleView(inspector) {
|
|
let el = inspector.panelDoc.querySelector("#sidebar-panel-ruleview");
|
|
EventUtils.synthesizeMouseAtCenter(el, {}, inspector.panelDoc.defaultView);
|
|
}
|
|
|
|
function clickInComputedView(inspector) {
|
|
let el = inspector.panelDoc.querySelector("#sidebar-panel-computedview");
|
|
EventUtils.synthesizeMouseAtCenter(el, {}, inspector.panelDoc.defaultView);
|
|
}
|
|
|
|
function isInInspectorSearchBox(inspector) {
|
|
// Focus ends up in an anonymous child of the XUL textbox.
|
|
ok(inspector.panelDoc.activeElement.closest("#inspector-searchbox"),
|
|
"The inspector search field is focused when ctrl+F is pressed");
|
|
}
|
|
|
|
function isInRuleViewSearchBox(inspector) {
|
|
is(inspector.panelDoc.activeElement, inspector.ruleview.view.searchField,
|
|
"The rule-view search field is focused when ctrl+F is pressed");
|
|
}
|
|
|
|
function isInComputedViewSearchBox(inspector) {
|
|
is(inspector.panelDoc.activeElement, inspector.computedview.computedView.searchField,
|
|
"The computed-view search field is focused when ctrl+F is pressed");
|
|
}
|