Changeset 51341 in webkit


Ignore:
Timestamp:
Nov 24, 2009 9:53:59 AM (14 years ago)
Author:
Joseph Pecoraro
Message:

2009-11-24 Joseph Pecoraro <Joseph Pecoraro>

Reviewed by Pavel Feldman.

Web Inspector: Keyboard Shortcut to Clear Console Messages
https://bugs.webkit.org/show_bug.cgi?id=31780

All Platforms: Ctrl+L = Clear Console Messages
Mac Only: Cmd+K = Clear Console Messages

  • inspector/front-end/ConsoleView.js: (WebInspector.ConsoleView): create shortcuts (WebInspector.ConsoleView.prototype._promptKeyDown): handle shortcuts
  • inspector/front-end/KeyboardShortcut.js: (WebInspector.KeyboardShortcut.makeKey): convenience conversion of "a-z" character to keyCode
  • inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel): style fixes for keyboard shortcuts
Location:
trunk/WebCore
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r51340 r51341  
     12009-11-24  Joseph Pecoraro  <joepeck@webkit.org>
     2
     3        Reviewed by Pavel Feldman.
     4
     5        Web Inspector: Keyboard Shortcut to Clear Console Messages
     6        https://bugs.webkit.org/show_bug.cgi?id=31780
     7
     8        All Platforms:  Ctrl+L  = Clear Console Messages
     9        Mac Only:       Cmd+K   = Clear Console Messages
     10
     11        * inspector/front-end/ConsoleView.js:
     12        (WebInspector.ConsoleView): create shortcuts
     13        (WebInspector.ConsoleView.prototype._promptKeyDown): handle shortcuts
     14        * inspector/front-end/KeyboardShortcut.js:
     15        (WebInspector.KeyboardShortcut.makeKey): convenience conversion of "a-z" character to keyCode
     16        * inspector/front-end/ScriptsPanel.js:
     17        (WebInspector.ScriptsPanel): style fixes for keyboard shortcuts
     18
    1192009-11-24  Pavel Feldman  <pfeldman@chromium.org>
    220
  • trunk/WebCore/inspector/front-end/ConsoleView.js

    r51250 r51341  
    9393
    9494    this.filter(this.allElement, false);
     95
     96    this._shortcuts = {};
     97
     98    var shortcut;
     99    var handler = this.clearMessages.bind(this, true);
     100
     101    shortcut = WebInspector.KeyboardShortcut.makeKey("k", WebInspector.KeyboardShortcut.Modifiers.Meta);
     102    this._shortcuts[shortcut] = handler;
     103    this._shortcuts[shortcut].isMacOnly = true;
     104    shortcut = WebInspector.KeyboardShortcut.makeKey("l", WebInspector.KeyboardShortcut.Modifiers.Ctrl);
     105    this._shortcuts[shortcut] = handler;
    95106}
    96107
     
    393404            return;
    394405        }
     406
    395407        if (isFnKey(event)) {
    396408            if (WebInspector.currentPanel && WebInspector.currentPanel.handleKeyEvent) {
    397409                WebInspector.currentPanel.handleKeyEvent(event);
     410                return;
     411            }
     412        }
     413
     414        var shortcut = WebInspector.KeyboardShortcut.makeKeyFromEvent(event);
     415        var handler = this._shortcuts[shortcut];
     416        if (handler) {
     417            if (!this._shortcuts[shortcut].isMacOnly || WebInspector.isMac()) {
     418                handler();
     419                event.preventDefault();
    398420                return;
    399421            }
  • trunk/WebCore/inspector/front-end/KeyboardShortcut.js

    r45460 r51341  
    7777/**
    7878 * Creates a number encoding keyCode in the lower 8 bits and modifiers mask in the higher 8 bits.
    79  * It is usefull for matching pressed keys.
    80  * @param {number} keyCode Code of the key.
    81  * @param {number} optModifiers Optional list of modifiers passed as additional paramerters.
     79 * It is useful for matching pressed keys.
     80 * keyCode is the Code of the key, or a character "a-z" which is converted to a keyCode value.
     81 * optModifiers is an Optional list of modifiers passed as additional paramerters.
    8282 */
    8383WebInspector.KeyboardShortcut.makeKey = function(keyCode, optModifiers)
    8484{
     85    if (typeof keyCode === "string")
     86        keyCode = keyCode.charCodeAt(0) - 32;
    8587    var modifiers = WebInspector.KeyboardShortcut.Modifiers.None;
    8688    for (var i = 1; i < arguments.length; i++)
  • trunk/WebCore/inspector/front-end/ScriptsPanel.js

    r51250 r51341  
    162162
    163163    this._shortcuts = {};
    164 
     164    var handler, shortcut;
    165165    var platformSpecificModifier = WebInspector.isMac() ? WebInspector.KeyboardShortcut.Modifiers.Meta : WebInspector.KeyboardShortcut.Modifiers.Ctrl;
    166166
    167167    // Continue.
    168     var handler = this.pauseButton.click.bind(this.pauseButton);
    169     var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.F8);
     168    handler = this.pauseButton.click.bind(this.pauseButton);
     169    shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.F8);
    170170    this._shortcuts[shortcut] = handler;
    171     var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.Slash, platformSpecificModifier);
     171    shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.Slash, platformSpecificModifier);
    172172    this._shortcuts[shortcut] = handler;
    173173
    174174    // Step over.
    175     var handler = this.stepOverButton.click.bind(this.stepOverButton);
    176     var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.F10);
     175    handler = this.stepOverButton.click.bind(this.stepOverButton);
     176    shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.F10);
    177177    this._shortcuts[shortcut] = handler;
    178     var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.SingleQuote, platformSpecificModifier);
     178    shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.SingleQuote, platformSpecificModifier);
    179179    this._shortcuts[shortcut] = handler;
    180180
    181181    // Step into.
    182     var handler = this.stepIntoButton.click.bind(this.stepIntoButton);
    183     var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.F11);
     182    handler = this.stepIntoButton.click.bind(this.stepIntoButton);
     183    shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.F11);
    184184    this._shortcuts[shortcut] = handler;
    185     var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.Semicolon, platformSpecificModifier);
     185    shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.Semicolon, platformSpecificModifier);
    186186    this._shortcuts[shortcut] = handler;
    187187
    188188    // Step out.
    189     var handler = this.stepOutButton.click.bind(this.stepOutButton);
    190     var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.F11, WebInspector.KeyboardShortcut.Modifiers.Shift);
     189    handler = this.stepOutButton.click.bind(this.stepOutButton);
     190    shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.F11, WebInspector.KeyboardShortcut.Modifiers.Shift);
    191191    this._shortcuts[shortcut] = handler;
    192     var shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.Semicolon, WebInspector.KeyboardShortcut.Modifiers.Shift, platformSpecificModifier);
     192    shortcut = WebInspector.KeyboardShortcut.makeKey(WebInspector.KeyboardShortcut.KeyCodes.Semicolon, WebInspector.KeyboardShortcut.Modifiers.Shift, platformSpecificModifier);
    193193    this._shortcuts[shortcut] = handler;
    194194
Note: See TracChangeset for help on using the changeset viewer.