Changeset 146901 in webkit


Ignore:
Timestamp:
Mar 26, 2013 10:12:36 AM (11 years ago)
Author:
commit-queue@webkit.org
Message:

Web Inspector: Remove remainings of CSS-based console message filtering.
https://bugs.webkit.org/show_bug.cgi?id=112710

Patch by Dmitry Zvorygin <zvorygin@chromium.org> on 2013-03-26
Reviewed by Pavel Feldman.

Source/WebCore:

  • inspector/front-end/ConsoleView.js:

(WebInspector.ConsoleView.get this):
(WebInspector.ConsoleView.prototype.):
(WebInspector.ConsoleView.prototype.filter):
(WebInspector.ConsoleView.prototype._consoleMessageAdded):
(WebInspector.ConsoleView.prototype._appendConsoleMessage):
(WebInspector.ConsoleView.prototype._consoleCleared):
(WebInspector.ConsoleView.prototype._shouldBeVisible):
(WebInspector.ConsoleView.prototype._updateMessageList):
(WebInspector.ConsoleView.prototype._promptKeyDown):
(WebInspector.ConsoleView.prototype._printResult):
(WebInspector.ConsoleCommand.prototype.highlightSearchResults):

  • inspector/front-end/inspector.css:

(.console-debug-level.repeated-message):

LayoutTests:

  • inspector/console/console-preserve-log.html:
Location:
trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r146897 r146901  
     12013-03-26  Dmitry Zvorygin  <zvorygin@chromium.org>
     2
     3        Web Inspector: Remove remainings of CSS-based console message filtering.
     4        https://bugs.webkit.org/show_bug.cgi?id=112710
     5
     6        Reviewed by Pavel Feldman.
     7
     8        * inspector/console/console-preserve-log.html:
     9
    1102013-03-26  Alexander Pavlov  <apavlov@chromium.org>
    211
  • trunk/LayoutTests/inspector/console/console-preserve-log.html

    r98456 r146901  
    66function test()
    77{
    8     WebInspector.console.addMessage(WebInspector.ConsoleMessage.create(WebInspector.ConsoleMessage.MessageSource.Other, WebInspector.ConsoleMessage.MessageLevel, "PASS"));
     8    WebInspector.console.addMessage(WebInspector.ConsoleMessage.create(WebInspector.ConsoleMessage.MessageSource.Other, WebInspector.ConsoleMessage.MessageLevel.Log, "PASS"));
    99    WebInspector.settings.preserveConsoleLog.set(true);
    1010    InspectorTest.reloadPage(function() {
  • trunk/Source/WebCore/ChangeLog

    r146900 r146901  
     12013-03-26  Dmitry Zvorygin  <zvorygin@chromium.org>
     2
     3        Web Inspector: Remove remainings of CSS-based console message filtering.
     4        https://bugs.webkit.org/show_bug.cgi?id=112710
     5
     6        Reviewed by Pavel Feldman.
     7
     8        * inspector/front-end/ConsoleView.js:
     9        (WebInspector.ConsoleView.get this):
     10        (WebInspector.ConsoleView.prototype.):
     11        (WebInspector.ConsoleView.prototype.filter):
     12        (WebInspector.ConsoleView.prototype._consoleMessageAdded):
     13        (WebInspector.ConsoleView.prototype._appendConsoleMessage):
     14        (WebInspector.ConsoleView.prototype._consoleCleared):
     15        (WebInspector.ConsoleView.prototype._shouldBeVisible):
     16        (WebInspector.ConsoleView.prototype._updateMessageList):
     17        (WebInspector.ConsoleView.prototype._promptKeyDown):
     18        (WebInspector.ConsoleView.prototype._printResult):
     19        (WebInspector.ConsoleCommand.prototype.highlightSearchResults):
     20        * inspector/front-end/inspector.css:
     21        (.console-debug-level.repeated-message):
     22
    1232013-03-26  Peter Rybin  <prybin@chromium.org>
    224
  • trunk/Source/WebCore/inspector/front-end/ConsoleView.js

    r146220 r146901  
    4040    this._messageURLFilters = WebInspector.settings.messageURLFilters.get();
    4141    this._visibleMessages = [];
     42    this._messages = [];
    4243    this._urlToMessageCount = {};
    4344
     
    5253        this._contextSelector.element.addStyleClass("hidden");
    5354    }
     55
     56    this._messageLevelFilters = {};
    5457
    5558    this.messagesElement = document.createElement("div");
     
    98101    this.allElement = createFilterElement.call(this, "all", WebInspector.UIString("All"));
    99102    createDividerElement.call(this);
    100     this.errorElement = createFilterElement.call(this, "errors", WebInspector.UIString("Errors"));
    101     this.warningElement = createFilterElement.call(this, "warnings", WebInspector.UIString("Warnings"));
    102     this.logElement = createFilterElement.call(this, "logs", WebInspector.UIString("Logs"));
     103    this.errorElement = createFilterElement.call(this, "error", WebInspector.UIString("Errors"));
     104    this.warningElement = createFilterElement.call(this, "warning", WebInspector.UIString("Warnings"));
     105    this.logElement = createFilterElement.call(this, "log", WebInspector.UIString("Logs"));
    103106    this.debugElement = createFilterElement.call(this, "debug", WebInspector.UIString("Debug"));
    104107
     
    129132
    130133WebInspector.ConsoleView.Events = {
    131   ConsoleCleared: "console-cleared",
    132   EntryAdded: "console-entry-added",
     134    ConsoleCleared: "console-cleared",
     135    EntryAdded: "console-entry-added",
    133136}
    134137
     
    260263        function unselectAll()
    261264        {
     265            this._messageLevelFilters = {};
     266
    262267            this.allElement.removeStyleClass("selected");
    263268            this.errorElement.removeStyleClass("selected");
     
    265270            this.logElement.removeStyleClass("selected");
    266271            this.debugElement.removeStyleClass("selected");
    267 
    268             this.messagesElement.classList.remove("filter-all", "filter-errors", "filter-warnings", "filter-logs", "filter-debug");
    269         }
    270 
    271         var targetFilterClass = "filter-" + target.category;
     272        }
    272273
    273274        if (target.category === "all") {
    274             if (target.hasStyleClass("selected")) {
    275                 // We can't unselect all, so we break early here
    276                 return;
    277             }
    278 
    279275            unselectAll.call(this);
     276            target.addStyleClass("selected");
     277            this._messageLevelFilters = {error: true, warning: true, log: true, debug: true};
    280278        } else {
    281279            // Something other than all is being selected, so we want to unselect all
    282280            if (this.allElement.hasStyleClass("selected")) {
     281                this._messageLevelFilters = {};
    283282                this.allElement.removeStyleClass("selected");
    284                 this.messagesElement.removeStyleClass("filter-all");
    285283            }
    286         }
    287 
    288         if (!selectMultiple) {
    289             // If multiple selection is off, we want to unselect everything else
    290             // and just select ourselves.
    291             unselectAll.call(this);
    292 
    293             target.addStyleClass("selected");
    294             this.messagesElement.addStyleClass(targetFilterClass);
    295 
    296             return;
    297         }
    298 
    299         if (target.hasStyleClass("selected")) {
    300             // If selectMultiple is turned on, and we were selected, we just
    301             // want to unselect ourselves.
    302             target.removeStyleClass("selected");
    303             this.messagesElement.removeStyleClass(targetFilterClass);
    304         } else {
    305             // If selectMultiple is turned on, and we weren't selected, we just
    306             // want to select ourselves.
    307             target.addStyleClass("selected");
    308             this.messagesElement.addStyleClass(targetFilterClass);
    309         }
     284
     285            if (!selectMultiple) {
     286                // If multiple selection is off, we want to unselect everything else
     287                // and just select ourselves.
     288                unselectAll.call(this);
     289
     290                target.addStyleClass("selected");
     291
     292                this._messageLevelFilters = {};
     293                this._messageLevelFilters[target.category] = true;
     294            } else {
     295
     296                if (target.hasStyleClass("selected")) {
     297                    // If selectMultiple is turned on, and we were selected, we just
     298                    // want to unselect ourselves.
     299                    target.removeStyleClass("selected");
     300
     301                    if (this._messageLevelFilters[target.category])
     302                        delete this._messageLevelFilters[target.category];
     303
     304                } else {
     305                    // If selectMultiple is turned on, and we weren't selected, we just
     306                    // want to select ourselves.
     307                    target.addStyleClass("selected");
     308
     309                    this._messageLevelFilters[target.category] = true;
     310                }
     311            }
     312        }
     313
     314        this._updateMessageList();
    310315    },
    311316
     
    361366            this.promptElement.scrollIntoView(true);
    362367        }
     368
    363369        this._scrollIntoViewTimer = setTimeout(scrollIntoView.bind(this), 20);
    364370    },
     
    385391    {
    386392        var message = /** @type {WebInspector.ConsoleMessage} */ (event.data);
     393        this._messages.push(message);
     394
    387395        if (this._urlToMessageCount[message.url])
    388396            this._urlToMessageCount[message.url]++;
     
    404412
    405413        if (message.type === WebInspector.ConsoleMessage.MessageType.EndGroup) {
    406             var parentGroup = this.currentGroup.parentGroup
     414            var parentGroup = this.currentGroup.parentGroup;
    407415            if (parentGroup)
    408416                this.currentGroup = parentGroup;
     
    412420                this.currentGroup.messagesElement.appendChild(group.element);
    413421                this.currentGroup = group;
     422                message.group = group;
    414423            }
    415424            this.currentGroup.addMessage(message);
     
    425434            this._visibleMessages[i].willHide();
    426435        this._visibleMessages = [];
     436        this._messages = [];
    427437
    428438        this.currentGroup = this.topGroup;
     
    451461            WebInspector.settings.monitoringXHREnabled.set(!WebInspector.settings.monitoringXHREnabled.get());
    452462        }
     463
    453464        contextMenu.appendCheckboxItem(WebInspector.UIString("Log XMLHttpRequests"), monitoringXHRItemAction.bind(this), WebInspector.settings.monitoringXHREnabled.get());
    454465
     
    457468            WebInspector.settings.preserveConsoleLog.set(!WebInspector.settings.preserveConsoleLog.get());
    458469        }
     470
    459471        contextMenu.appendCheckboxItem(WebInspector.UIString(WebInspector.useLowerCaseMenuTitles() ? "Preserve log upon navigation" : "Preserve Log upon Navigation"), preserveLogItemAction.bind(this), WebInspector.settings.preserveConsoleLog.get());
    460472
     
    528540    _shouldBeVisible: function(message)
    529541    {
    530         return !message.url || !this._messageURLFilters[message.url];
     542        return (message.type === WebInspector.ConsoleMessage.MessageType.StartGroup || message.type === WebInspector.ConsoleMessage.MessageType.StartGroupCollapsed || message.type === WebInspector.ConsoleMessage.MessageType.EndGroup) ||
     543            ((!message.url || !this._messageURLFilters[message.url]) && (!message.level || this._messageLevelFilters[message.level]));
    531544    },
    532545
     
    536549    _updateMessageList: function()
    537550    {
    538         var sourceMessages = WebInspector.console.messages;
     551        var group = this.topGroup;
     552        var sourceMessages = this._messages;
    539553        var visibleMessageIndex = 0;
    540554        var newVisibleMessages = [];
     555        var anchor = null;
    541556        for (var i = 0; i < sourceMessages.length; i++) {
    542557            var sourceMessage = sourceMessages[i];
     
    545560            if (visibleMessage === sourceMessage) {
    546561                visibleMessageIndex++;
    547                 if (this._shouldBeVisible(visibleMessage))
     562                if (this._shouldBeVisible(visibleMessage)) {
    548563                    newVisibleMessages.push(visibleMessage);
    549                 else {
     564                    if (sourceMessage.type === WebInspector.ConsoleMessage.MessageType.EndGroup) {
     565                        anchor = group.element;
     566                        group = group.parentGroup || group;
     567                    } else if (sourceMessage.type === WebInspector.ConsoleMessage.MessageType.StartGroup || sourceMessage.type === WebInspector.ConsoleMessage.MessageType.StartGroupCollapsed) {
     568                        group = sourceMessage.group;
     569                        anchor = group.messagesElement.firstChild;
     570                    }
     571                } else {
    550572                    visibleMessage.willHide();
    551                     visibleMessage.toMessageElement().removeSelf();                   
     573                    visibleMessage.toMessageElement().removeSelf();
    552574                }
    553575            } else {
    554576                if (this._shouldBeVisible(sourceMessage)) {
    555                     this.currentGroup.addMessage(sourceMessage, visibleMessage ? visibleMessage.toMessageElement() : null);
     577                    group.addMessage(sourceMessage, anchor ? anchor.nextSibling : group.messagesElement.firstChild);
    556578                    newVisibleMessages.push(sourceMessage);
     579                    anchor = sourceMessage.toMessageElement();
    557580                }
    558581            }
     
    627650            handler();
    628651            event.preventDefault();
    629             return;
    630652        }
    631653    },
     
    655677        if (!result)
    656678            return;
    657 
    658         this._appendConsoleMessage(new WebInspector.ConsoleCommandResult(result, wasThrown, originatingCommand, this._linkifier));
     679        var message = new WebInspector.ConsoleCommandResult(result, wasThrown, originatingCommand, this._linkifier);
     680        this._messages.push(message);
     681        this._appendConsoleMessage(message);
    659682    },
    660683
     
    664687            var commandMessage = new WebInspector.ConsoleCommand(text);
    665688            WebInspector.console.interruptRepeatCount();
     689            this._messages.push(commandMessage);
    666690            this._appendConsoleMessage(commandMessage);
    667691        }
     
    677701                WebInspector.settings.consoleHistory.set(this.prompt.historyData.slice(-30));
    678702            }
    679            
     703
    680704            this._printResult(result, wasThrown, commandMessage);
    681705        }
     706
    682707        WebInspector.runtimeModel.evaluate(text, "console", useCommandLineAPI, false, false, true, printResult.bind(this));
    683708
     
    723748        var text = this.command;
    724749        var match = regexObject.exec(text);
    725         var offset = 0;
    726750        var matchRanges = [];
    727751        while (match) {
     
    762786 * @extends {WebInspector.ConsoleMessageImpl}
    763787 * @constructor
     788 * @param {object} result
     789 * @param {boolean} wasThrown
     790 * @param {WebInspector.ConsoleCommand} originatingCommand
    764791 * @param {WebInspector.Linkifier} linkifier
    765792 */
  • trunk/Source/WebCore/inspector/front-end/inspector.css

    r146871 r146901  
    19391939}
    19401940
    1941 .console-warning-level, .console-error-level, .console-log-level, .console-debug-level {
    1942     display: none;
    1943 }
    1944 
    1945 .filter-all .console-warning-level, .filter-warnings .console-warning-level,
    1946 .filter-all .console-error-level, .filter-errors .console-error-level,
    1947 .filter-all .console-log-level, .filter-logs .console-log-level,
    1948 .filter-all .console-debug-level, .filter-debug .console-debug-level {
    1949     display: block;
    1950 }
    1951 
    1952 .filter-all .console-warning-level.repeated-message, .filter-warnings .console-warning-level.repeated-message,
    1953 .filter-all .console-error-level.repeated-message, .filter-errors .console-error-level.repeated-message,
    1954 .filter-all .console-log-level.repeated-message, .filter-logs .console-log-level.repeated-message,
    1955 .filter-all .console-debug-level.repeated-message, .filter-debug .console-debug-level.repeated-message {
     1941
     1942.console-warning-level.repeated-message,
     1943.console-error-level.repeated-message,
     1944.console-log-level.repeated-message,
     1945.console-debug-level.repeated-message{
    19561946    display: -webkit-flex;
    19571947}
Note: See TracChangeset for help on using the changeset viewer.