Demo/bin/Debug/front_end/ui/HistoryInput.js

(开头部分) 2KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

// Copyright (c) 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

/**
 * @constructor
 * @extends {HTMLInputElement}
 */
WebInspector.HistoryInput = function()
{
}

/**
 * @return {!WebInspector.HistoryInput}
 */
WebInspector.HistoryInput.create = function()
{
    if (!WebInspector.HistoryInput._constructor)
        WebInspector.HistoryInput._constructor = registerCustomElement("input", "history-input", WebInspector.HistoryInput.prototype);

    return /** @type {!WebInspector.HistoryInput} */(new WebInspector.HistoryInput._constructor());
}

WebInspector.HistoryInput.prototype = {
    createdCallback: function()
    {
        this._history = [""];
        this._historyPosition = 0;
        this.addEventListener("keydown", this._onKeyDown.bind(this), false);
        this.addEventListener("input", this._onInput.bind(this), false);
    },

    /**
     * @param {!Event} event
     */
    _onInput: function(event)
    {
        if (this._history.length === this._historyPosition + 1)
            this._history[this._history.length - 1] = this.value;
    },

    /**
     * @param {!Event} event
     */
    _onKeyDown: function(event)
    {
        if (event.keyCode === WebInspector.KeyboardShortcut.Keys.Up.code) {
            this._historyPosition = Math.max(this._historyPosition - 1, 0);
            this.value = this._history[this._historyPosition];
            this.dispatchEvent(createEvent("input", true, true));
            event.consume(true);
        } else if (event.keyCode === WebInspector.KeyboardShortcut.Keys.Down.code) {
            this._historyPosition = Math.min(this._historyPosition + 1, this._history.length - 1);
            this.value = this._history[this._historyPosition];
            this.dispatchEvent(createEvent("input", true, true));
            event.consume(true);
        } else if (event.keyCode === WebInspector.KeyboardShortcut.Keys.Enter.code) {
            this._saveToHistory();
        }
    },
后面还有 13 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。