/* Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ */ "use strict"; /* import-globals-from file_ime_state_test_helper.js */ class IMEStateInContentEditableOnReadonlyChangeTester { // Runner only fields. #mEditingHost; #mFocusElement; #mWindow; // Tester only fields. #mTIPWrapper; #mWindowUtils; clear() { this.#mTIPWrapper?.clearFocusBlurNotifications(); this.#mTIPWrapper = null; } #flushPendingIMENotifications() { return new Promise(resolve => this.#mWindow.requestAnimationFrame(() => this.#mWindow.requestAnimationFrame(resolve) ) ); } #getExpectedIMEState() { // Although if this.#mFocusElement is a