| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2012, Google Inc. All rights reserved. | 2 * Copyright (c) 2012, 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 are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 26 matching lines...) Expand all Loading... |
| 37 #include "SkColorFilter.h" | 37 #include "SkColorFilter.h" |
| 38 #include "SkShader.h" | 38 #include "SkShader.h" |
| 39 | 39 |
| 40 namespace blink { | 40 namespace blink { |
| 41 | 41 |
| 42 OpaqueRegionSkia::OpaqueRegionSkia() | 42 OpaqueRegionSkia::OpaqueRegionSkia() |
| 43 : m_opaqueRect(SkRect::MakeEmpty()) | 43 : m_opaqueRect(SkRect::MakeEmpty()) |
| 44 { | 44 { |
| 45 } | 45 } |
| 46 | 46 |
| 47 void OpaqueRegionSkia::reset() |
| 48 { |
| 49 ASSERT(m_canvasLayerStack.isEmpty()); |
| 50 m_opaqueRect = SkRect::MakeEmpty(); |
| 51 } |
| 52 |
| 47 IntRect OpaqueRegionSkia::asRect() const | 53 IntRect OpaqueRegionSkia::asRect() const |
| 48 { | 54 { |
| 49 // Returns the largest enclosed rect. | 55 // Returns the largest enclosed rect. |
| 50 // TODO: actually, this logic looks like its returning the smallest. | 56 // TODO: actually, this logic looks like its returning the smallest. |
| 51 // to return largest, shouldn't we take floor of left/top | 57 // to return largest, shouldn't we take floor of left/top |
| 52 // and the ceil of right/bottom? | 58 // and the ceil of right/bottom? |
| 53 int left = SkScalarCeilToInt(m_opaqueRect.fLeft); | 59 int left = SkScalarCeilToInt(m_opaqueRect.fLeft); |
| 54 int top = SkScalarCeilToInt(m_opaqueRect.fTop); | 60 int top = SkScalarCeilToInt(m_opaqueRect.fTop); |
| 55 int right = SkScalarFloorToInt(m_opaqueRect.fRight); | 61 int right = SkScalarFloorToInt(m_opaqueRect.fRight); |
| 56 int bottom = SkScalarFloorToInt(m_opaqueRect.fBottom); | 62 int bottom = SkScalarFloorToInt(m_opaqueRect.fBottom); |
| (...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 433 opaqueRect.setEmpty(); | 439 opaqueRect.setEmpty(); |
| 434 } | 440 } |
| 435 | 441 |
| 436 SkRect& OpaqueRegionSkia::currentTrackingOpaqueRect() | 442 SkRect& OpaqueRegionSkia::currentTrackingOpaqueRect() |
| 437 { | 443 { |
| 438 // If we are drawing into a canvas layer, then track the opaque rect in that
layer. | 444 // If we are drawing into a canvas layer, then track the opaque rect in that
layer. |
| 439 return m_canvasLayerStack.isEmpty() ? m_opaqueRect : m_canvasLayerStack.last
().opaqueRect; | 445 return m_canvasLayerStack.isEmpty() ? m_opaqueRect : m_canvasLayerStack.last
().opaqueRect; |
| 440 } | 446 } |
| 441 | 447 |
| 442 } // namespace blink | 448 } // namespace blink |
| OLD | NEW |