OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2007, 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2007, 2008 Apple Inc. All rights reserved. |
3 * Copyright (C) 2009 Joseph Pecoraro | 3 * Copyright (C) 2009 Joseph Pecoraro |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * | 8 * |
9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. Redistributions of source code must retain the above copyright |
10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
(...skipping 447 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
458 /** | 458 /** |
459 * @param {!Console.ConsoleViewMessage} viewMessage | 459 * @param {!Console.ConsoleViewMessage} viewMessage |
460 */ | 460 */ |
461 _consoleMessageAddedForTest(viewMessage) { | 461 _consoleMessageAddedForTest(viewMessage) { |
462 } | 462 } |
463 | 463 |
464 /** | 464 /** |
465 * @param {!Console.ConsoleViewMessage} viewMessage | 465 * @param {!Console.ConsoleViewMessage} viewMessage |
466 */ | 466 */ |
467 _appendMessageToEnd(viewMessage) { | 467 _appendMessageToEnd(viewMessage) { |
468 var ignoreTextFilter = this._currentGroup.showAllChildren(); | 468 var lastGroup = this._currentGroup; |
469 if (!this._filter.shouldBeVisible(viewMessage, ignoreTextFilter)) { | 469 this._currentGroup = this._nextGroup(viewMessage); |
| 470 if (viewMessage.consoleMessage().type === ConsoleModel.ConsoleMessage.Messag
eType.EndGroup) |
| 471 return; |
| 472 if (!this._filter.shouldBeVisible(viewMessage, this._currentGroup.showAllChi
ldren())) { |
470 this._hiddenByFilterCount++; | 473 this._hiddenByFilterCount++; |
471 return; | 474 return; |
472 } | 475 } |
473 | 476 |
474 if (this._tryToCollapseMessages(viewMessage, this._visibleViewMessages.peekL
ast())) | 477 // Add ancestor titles before checking for repeats, since it affects the las
t visible message. |
| 478 this._appendParentGroupTitleMessages(lastGroup); |
| 479 |
| 480 var lastMessage = this._visibleViewMessages.peekLast(); |
| 481 if (this._tryToCollapseMessages(viewMessage, lastMessage)) |
475 return; | 482 return; |
476 | 483 |
| 484 if (!this._currentGroup.messagesHidden()) { |
| 485 var originatingMessage = viewMessage.consoleMessage().originatingMessage()
; |
| 486 if (lastMessage && originatingMessage && lastMessage.consoleMessage() ===
originatingMessage) |
| 487 lastMessage.toMessageElement().classList.add('console-adjacent-user-comm
and-result'); |
| 488 this._visibleViewMessages.push(viewMessage); |
| 489 this._searchMessage(this._visibleViewMessages.length - 1); |
| 490 |
| 491 if (viewMessage.consoleMessage().isGroupStartMessage()) |
| 492 this._currentGroup.setTitleVisible(); |
| 493 } |
| 494 this._messageAppendedForTests(); |
| 495 } |
| 496 |
| 497 /** |
| 498 * @param {!Console.ConsoleViewMessage} viewMessage |
| 499 * @return {!Console.ConsoleGroup} |
| 500 */ |
| 501 _nextGroup(viewMessage) { |
477 var lastMessage = this._visibleViewMessages.peekLast(); | 502 var lastMessage = this._visibleViewMessages.peekLast(); |
478 if (viewMessage.consoleMessage().type === ConsoleModel.ConsoleMessage.Messag
eType.EndGroup) { | 503 if (viewMessage.consoleMessage().type === ConsoleModel.ConsoleMessage.Messag
eType.EndGroup) { |
479 if (lastMessage && !this._currentGroup.messagesHidden()) | 504 if (lastMessage && !this._currentGroup.messagesHidden()) |
480 lastMessage.incrementCloseGroupDecorationCount(); | 505 lastMessage.incrementCloseGroupDecorationCount(); |
481 this._currentGroup = this._currentGroup.parentGroup() || this._currentGrou
p; | 506 return this._currentGroup.parentGroup() || this._currentGroup; |
482 return; | |
483 } | 507 } |
484 if (!this._currentGroup.messagesHidden()) { | 508 if (viewMessage.consoleMessage().isGroupStartMessage()) { |
485 var originatingMessage = viewMessage.consoleMessage().originatingMessage()
; | 509 var showAllChildren = this._currentGroup.showAllChildren() || this._filter
.matchesTextOrRegex(viewMessage); |
486 if (lastMessage && originatingMessage && lastMessage.consoleMessage() ===
originatingMessage) | 510 return new Console.ConsoleGroup(this._currentGroup, viewMessage, showAllCh
ildren); |
487 lastMessage.toMessageElement().classList.add('console-adjacent-user-comm
and-result'); | |
488 | |
489 this._visibleViewMessages.push(viewMessage); | |
490 this._searchMessage(this._visibleViewMessages.length - 1); | |
491 } | 511 } |
492 | 512 return this._currentGroup; |
493 if (viewMessage.consoleMessage().isGroupStartMessage()) { | |
494 var showAllChildren = ignoreTextFilter || this._filter.matchesTextOrRegex(
viewMessage); | |
495 this._currentGroup = new Console.ConsoleGroup(this._currentGroup, viewMess
age, showAllChildren); | |
496 } | |
497 | |
498 this._messageAppendedForTests(); | |
499 } | 513 } |
500 | 514 |
501 _messageAppendedForTests() { | 515 _messageAppendedForTests() { |
502 // This method is sniffed in tests. | 516 // This method is sniffed in tests. |
503 } | 517 } |
504 | 518 |
505 /** | 519 /** |
| 520 * @param {!Console.ConsoleGroup} parent |
| 521 */ |
| 522 _appendParentGroupTitleMessages(parent) { |
| 523 var ancestors = []; |
| 524 var ancestor = parent; |
| 525 while (ancestor && ancestor.titleMessage()) { |
| 526 // Do not include items under a collapsed group. |
| 527 if (ancestor.messagesHidden()) |
| 528 ancestors = []; |
| 529 if (ancestor.isTitleVisible()) |
| 530 break; |
| 531 ancestors.push(ancestor); |
| 532 ancestor = ancestor.parentGroup(); |
| 533 } |
| 534 |
| 535 // Append ancestors from highest to lowest. |
| 536 for (var i = ancestors.length - 1; i >= 0; i--) { |
| 537 ancestor = ancestors[i]; |
| 538 ancestor.setTitleVisible(); |
| 539 this._visibleViewMessages.push(ancestor.titleMessage()); |
| 540 this._searchMessage(this._visibleViewMessages.length - 1); |
| 541 this._hiddenByFilterCount--; |
| 542 } |
| 543 } |
| 544 |
| 545 /** |
506 * @param {!ConsoleModel.ConsoleMessage} message | 546 * @param {!ConsoleModel.ConsoleMessage} message |
507 * @return {!Console.ConsoleViewMessage} | 547 * @return {!Console.ConsoleViewMessage} |
508 */ | 548 */ |
509 _createViewMessage(message) { | 549 _createViewMessage(message) { |
510 var nestingLevel = this._currentGroup.nestingLevel(); | 550 var nestingLevel = this._currentGroup.nestingLevel(); |
511 switch (message.type) { | 551 switch (message.type) { |
512 case ConsoleModel.ConsoleMessage.MessageType.Command: | 552 case ConsoleModel.ConsoleMessage.MessageType.Command: |
513 return new Console.ConsoleCommand(message, this._linkifier, this._badgeP
ool, nestingLevel); | 553 return new Console.ConsoleCommand(message, this._linkifier, this._badgeP
ool, nestingLevel); |
514 case ConsoleModel.ConsoleMessage.MessageType.Result: | 554 case ConsoleModel.ConsoleMessage.MessageType.Result: |
515 return new Console.ConsoleCommandResult(message, this._linkifier, this._
badgePool, nestingLevel); | 555 return new Console.ConsoleCommandResult(message, this._linkifier, this._
badgePool, nestingLevel); |
(...skipping 634 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1150 if (message.runtimeModel() !== executionContext.runtimeModel) | 1190 if (message.runtimeModel() !== executionContext.runtimeModel) |
1151 return false; | 1191 return false; |
1152 if (message.executionContextId && message.executionContextId !== execution
Context.id) | 1192 if (message.executionContextId && message.executionContextId !== execution
Context.id) |
1153 return false; | 1193 return false; |
1154 } | 1194 } |
1155 | 1195 |
1156 if (this._hideNetworkMessagesSetting.get() && | 1196 if (this._hideNetworkMessagesSetting.get() && |
1157 viewMessage.consoleMessage().source === ConsoleModel.ConsoleMessage.Mess
ageSource.Network) | 1197 viewMessage.consoleMessage().source === ConsoleModel.ConsoleMessage.Mess
ageSource.Network) |
1158 return false; | 1198 return false; |
1159 | 1199 |
1160 if (viewMessage.consoleMessage().isGroupMessage()) | |
1161 return true; | |
1162 | |
1163 if (message.type === ConsoleModel.ConsoleMessage.MessageType.Result || | 1200 if (message.type === ConsoleModel.ConsoleMessage.MessageType.Result || |
1164 message.type === ConsoleModel.ConsoleMessage.MessageType.Command) | 1201 message.type === ConsoleModel.ConsoleMessage.MessageType.Command) |
1165 return true; | 1202 return true; |
1166 | 1203 |
1167 if (message.url && this._messageURLFiltersSetting.get()[message.url]) | 1204 if (message.url && this._messageURLFiltersSetting.get()[message.url]) |
1168 return false; | 1205 return false; |
1169 | 1206 |
1170 var levels = this._messageLevelFiltersSetting.get(); | 1207 var levels = this._messageLevelFiltersSetting.get(); |
1171 if (!levels[message.level]) | 1208 if (!levels[message.level]) |
1172 return false; | 1209 return false; |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1291 * @param {?Console.ConsoleGroup} parentGroup | 1328 * @param {?Console.ConsoleGroup} parentGroup |
1292 * @param {?Console.ConsoleViewMessage} groupMessage | 1329 * @param {?Console.ConsoleViewMessage} groupMessage |
1293 * @param {boolean} showAllChildren | 1330 * @param {boolean} showAllChildren |
1294 */ | 1331 */ |
1295 constructor(parentGroup, groupMessage, showAllChildren) { | 1332 constructor(parentGroup, groupMessage, showAllChildren) { |
1296 this._parentGroup = parentGroup; | 1333 this._parentGroup = parentGroup; |
1297 this._nestingLevel = parentGroup ? parentGroup.nestingLevel() + 1 : 0; | 1334 this._nestingLevel = parentGroup ? parentGroup.nestingLevel() + 1 : 0; |
1298 this._messagesHidden = | 1335 this._messagesHidden = |
1299 groupMessage && groupMessage.collapsed() || this._parentGroup && this._p
arentGroup.messagesHidden(); | 1336 groupMessage && groupMessage.collapsed() || this._parentGroup && this._p
arentGroup.messagesHidden(); |
1300 this._showAllChildren = showAllChildren; | 1337 this._showAllChildren = showAllChildren; |
| 1338 this._titleMessage = groupMessage; |
| 1339 this._isTitleVisible = !groupMessage; |
1301 } | 1340 } |
1302 | 1341 |
1303 /** | 1342 /** |
1304 * @return {!Console.ConsoleGroup} | 1343 * @return {!Console.ConsoleGroup} |
1305 */ | 1344 */ |
1306 static createTopGroup() { | 1345 static createTopGroup() { |
1307 return new Console.ConsoleGroup(null, null, false); | 1346 return new Console.ConsoleGroup(null, null, false); |
1308 } | 1347 } |
1309 | 1348 |
1310 /** | 1349 /** |
| 1350 * @return {?Console.ConsoleViewMessage} |
| 1351 */ |
| 1352 titleMessage() { |
| 1353 return this._titleMessage; |
| 1354 } |
| 1355 |
| 1356 /** |
1311 * @return {boolean} | 1357 * @return {boolean} |
1312 */ | 1358 */ |
| 1359 isTitleVisible() { |
| 1360 return this._isTitleVisible; |
| 1361 } |
| 1362 |
| 1363 setTitleVisible() { |
| 1364 this._isTitleVisible = true; |
| 1365 } |
| 1366 |
| 1367 /** |
| 1368 * @return {boolean} |
| 1369 */ |
1313 messagesHidden() { | 1370 messagesHidden() { |
1314 return this._messagesHidden; | 1371 return this._messagesHidden; |
1315 } | 1372 } |
1316 | 1373 |
1317 /** | 1374 /** |
1318 * @return {boolean} | 1375 * @return {boolean} |
1319 */ | 1376 */ |
1320 showAllChildren() { | 1377 showAllChildren() { |
1321 return this._showAllChildren; | 1378 return this._showAllChildren; |
1322 } | 1379 } |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1360 return true; | 1417 return true; |
1361 } | 1418 } |
1362 return false; | 1419 return false; |
1363 } | 1420 } |
1364 }; | 1421 }; |
1365 | 1422 |
1366 /** | 1423 /** |
1367 * @typedef {{messageIndex: number, matchIndex: number}} | 1424 * @typedef {{messageIndex: number, matchIndex: number}} |
1368 */ | 1425 */ |
1369 Console.ConsoleView.RegexMatchRange; | 1426 Console.ConsoleView.RegexMatchRange; |
OLD | NEW |