1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "third_party/blink/renderer/platform/graphics/paint_invalidation_reason.h" 6 7 #include "third_party/blink/renderer/platform/wtf/assertions.h" 8 9 namespace blink { 10 PaintInvalidationReasonToString(PaintInvalidationReason reason)11const char* PaintInvalidationReasonToString(PaintInvalidationReason reason) { 12 switch (reason) { 13 case PaintInvalidationReason::kNone: 14 return "none"; 15 case PaintInvalidationReason::kIncremental: 16 return "incremental"; 17 case PaintInvalidationReason::kRectangle: 18 return "invalidate paint rectangle"; 19 case PaintInvalidationReason::kHitTest: 20 return "hit testing change"; 21 case PaintInvalidationReason::kFull: 22 return "full"; 23 case PaintInvalidationReason::kStyle: 24 return "style change"; 25 case PaintInvalidationReason::kBackplate: 26 return "backplate"; 27 case PaintInvalidationReason::kGeometry: 28 return "geometry"; 29 case PaintInvalidationReason::kCompositing: 30 return "compositing update"; 31 case PaintInvalidationReason::kBackground: 32 return "background"; 33 case PaintInvalidationReason::kAppeared: 34 return "appeared"; 35 case PaintInvalidationReason::kDisappeared: 36 return "disappeared"; 37 case PaintInvalidationReason::kScroll: 38 return "scroll"; 39 case PaintInvalidationReason::kScrollControl: 40 return "scroll control"; 41 case PaintInvalidationReason::kSelection: 42 return "selection"; 43 case PaintInvalidationReason::kOutline: 44 return "outline"; 45 case PaintInvalidationReason::kSubtree: 46 return "subtree"; 47 case PaintInvalidationReason::kSVGResource: 48 return "SVG resource change"; 49 case PaintInvalidationReason::kCaret: 50 return "caret"; 51 case PaintInvalidationReason::kDocumentMarker: 52 return "DocumentMarker change"; 53 case PaintInvalidationReason::kImage: 54 return "image"; 55 case PaintInvalidationReason::kUncacheable: 56 return "uncacheable"; 57 case PaintInvalidationReason::kJustCreated: 58 return "just created"; 59 case PaintInvalidationReason::kReordered: 60 return "reordered"; 61 case PaintInvalidationReason::kChunkAppeared: 62 return "chunk appeared"; 63 case PaintInvalidationReason::kChunkDisappeared: 64 return "chunk disappeared"; 65 case PaintInvalidationReason::kChunkUncacheable: 66 return "chunk uncacheable"; 67 case PaintInvalidationReason::kChunkReordered: 68 return "chunk reordered"; 69 case PaintInvalidationReason::kPaintProperty: 70 return "paint property change"; 71 case PaintInvalidationReason::kFullLayer: 72 return "full layer"; 73 case PaintInvalidationReason::kForTesting: 74 return "for testing"; 75 } 76 NOTREACHED(); 77 return ""; 78 } 79 operator <<(std::ostream & out,PaintInvalidationReason reason)80std::ostream& operator<<(std::ostream& out, PaintInvalidationReason reason) { 81 return out << PaintInvalidationReasonToString(reason); 82 } 83 84 } // namespace blink 85