| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010, Google Inc. All rights reserved. | 2 * Copyright (C) 2010, Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 499 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 510 bool isInitialFrontendLoad = styleSheetsUpdateType == InitialFrontendLoad; | 510 bool isInitialFrontendLoad = styleSheetsUpdateType == InitialFrontendLoad; |
| 511 | 511 |
| 512 HashSet<CSSStyleSheet*>* documentCSSStyleSheets = m_documentToCSSStyleSheets
.get(document); | 512 HashSet<CSSStyleSheet*>* documentCSSStyleSheets = m_documentToCSSStyleSheets
.get(document); |
| 513 if (!documentCSSStyleSheets) { | 513 if (!documentCSSStyleSheets) { |
| 514 documentCSSStyleSheets = new HashSet<CSSStyleSheet*>(); | 514 documentCSSStyleSheets = new HashSet<CSSStyleSheet*>(); |
| 515 OwnPtr<HashSet<CSSStyleSheet*> > documentCSSStyleSheetsPtr = adoptPtr(do
cumentCSSStyleSheets); | 515 OwnPtr<HashSet<CSSStyleSheet*> > documentCSSStyleSheetsPtr = adoptPtr(do
cumentCSSStyleSheets); |
| 516 m_documentToCSSStyleSheets.set(document, documentCSSStyleSheetsPtr.relea
se()); | 516 m_documentToCSSStyleSheets.set(document, documentCSSStyleSheetsPtr.relea
se()); |
| 517 } | 517 } |
| 518 | 518 |
| 519 HashSet<CSSStyleSheet*> removedSheets(*documentCSSStyleSheets); | 519 HashSet<CSSStyleSheet*> removedSheets(*documentCSSStyleSheets); |
| 520 | 520 Vector<CSSStyleSheet*> addedSheets; |
| 521 HashSet<CSSStyleSheet*> addedSheets; | |
| 522 for (Vector<CSSStyleSheet*>::const_iterator it = allSheetsVector.begin(); it
!= allSheetsVector.end(); ++it) { | 521 for (Vector<CSSStyleSheet*>::const_iterator it = allSheetsVector.begin(); it
!= allSheetsVector.end(); ++it) { |
| 523 CSSStyleSheet* cssStyleSheet = *it; | 522 CSSStyleSheet* cssStyleSheet = *it; |
| 524 if (removedSheets.contains(cssStyleSheet)) { | 523 if (removedSheets.contains(cssStyleSheet)) { |
| 525 removedSheets.remove(cssStyleSheet); | 524 removedSheets.remove(cssStyleSheet); |
| 526 if (isInitialFrontendLoad) | 525 if (isInitialFrontendLoad) |
| 527 addedSheets.add(cssStyleSheet); | 526 addedSheets.append(cssStyleSheet); |
| 528 } else { | 527 } else { |
| 529 addedSheets.add(cssStyleSheet); | 528 addedSheets.append(cssStyleSheet); |
| 530 } | 529 } |
| 531 } | 530 } |
| 532 | 531 |
| 533 for (HashSet<CSSStyleSheet*>::iterator it = removedSheets.begin(); it != rem
ovedSheets.end(); ++it) { | 532 for (HashSet<CSSStyleSheet*>::iterator it = removedSheets.begin(); it != rem
ovedSheets.end(); ++it) { |
| 534 CSSStyleSheet* cssStyleSheet = *it; | 533 CSSStyleSheet* cssStyleSheet = *it; |
| 535 RefPtr<InspectorStyleSheet> inspectorStyleSheet = m_cssStyleSheetToInspe
ctorStyleSheet.get(cssStyleSheet); | 534 RefPtr<InspectorStyleSheet> inspectorStyleSheet = m_cssStyleSheetToInspe
ctorStyleSheet.get(cssStyleSheet); |
| 536 ASSERT(inspectorStyleSheet); | 535 ASSERT(inspectorStyleSheet); |
| 537 | 536 |
| 538 documentCSSStyleSheets->remove(cssStyleSheet); | 537 documentCSSStyleSheets->remove(cssStyleSheet); |
| 539 if (m_idToInspectorStyleSheet.contains(inspectorStyleSheet->id())) { | 538 if (m_idToInspectorStyleSheet.contains(inspectorStyleSheet->id())) { |
| 540 String id = unbindStyleSheet(inspectorStyleSheet.get()); | 539 String id = unbindStyleSheet(inspectorStyleSheet.get()); |
| 541 if (m_frontend && !isInitialFrontendLoad) | 540 if (m_frontend && !isInitialFrontendLoad) |
| 542 m_frontend->styleSheetRemoved(id); | 541 m_frontend->styleSheetRemoved(id); |
| 543 } | 542 } |
| 544 } | 543 } |
| 545 | 544 |
| 546 for (HashSet<CSSStyleSheet*>::iterator it = addedSheets.begin(); it != added
Sheets.end(); ++it) { | 545 for (Vector<CSSStyleSheet*>::iterator it = addedSheets.begin(); it != addedS
heets.end(); ++it) { |
| 547 CSSStyleSheet* cssStyleSheet = *it; | 546 CSSStyleSheet* cssStyleSheet = *it; |
| 548 bool isNew = isInitialFrontendLoad || !m_cssStyleSheetToInspectorStyleSh
eet.contains(cssStyleSheet); | 547 bool isNew = isInitialFrontendLoad || !m_cssStyleSheetToInspectorStyleSh
eet.contains(cssStyleSheet); |
| 549 if (isNew) { | 548 if (isNew) { |
| 550 InspectorStyleSheet* newStyleSheet = bindStyleSheet(cssStyleSheet); | 549 InspectorStyleSheet* newStyleSheet = bindStyleSheet(cssStyleSheet); |
| 551 documentCSSStyleSheets->add(cssStyleSheet); | 550 documentCSSStyleSheets->add(cssStyleSheet); |
| 552 if (m_frontend) | 551 if (m_frontend) |
| 553 m_frontend->styleSheetAdded(newStyleSheet->buildObjectForStyleSh
eetInfo()); | 552 m_frontend->styleSheetAdded(newStyleSheet->buildObjectForStyleSh
eetInfo()); |
| 554 } | 553 } |
| 555 } | 554 } |
| 556 | 555 |
| (...skipping 837 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1394 documentsToChange.add(element->ownerDocument()); | 1393 documentsToChange.add(element->ownerDocument()); |
| 1395 } | 1394 } |
| 1396 | 1395 |
| 1397 m_nodeIdToForcedPseudoState.clear(); | 1396 m_nodeIdToForcedPseudoState.clear(); |
| 1398 for (HashSet<Document*>::iterator it = documentsToChange.begin(), end = docu
mentsToChange.end(); it != end; ++it) | 1397 for (HashSet<Document*>::iterator it = documentsToChange.begin(), end = docu
mentsToChange.end(); it != end; ++it) |
| 1399 (*it)->setNeedsStyleRecalc(SubtreeStyleChange); | 1398 (*it)->setNeedsStyleRecalc(SubtreeStyleChange); |
| 1400 } | 1399 } |
| 1401 | 1400 |
| 1402 } // namespace WebCore | 1401 } // namespace WebCore |
| 1403 | 1402 |
| OLD | NEW |