Index: media/video/capture/screen/differ.cc |
diff --git a/media/video/capture/screen/differ.cc b/media/video/capture/screen/differ.cc |
index 3296903824015b4d45275282e1a9f30385f0450f..addaea1bab260bf1724e0e647a5adbfd1cb3ca02 100644 |
--- a/media/video/capture/screen/differ.cc |
+++ b/media/video/capture/screen/differ.cc |
@@ -27,16 +27,7 @@ Differ::Differ(int width, int height, int bpp, int stride) { |
Differ::~Differ() {} |
void Differ::CalcDirtyRegion(const void* prev_buffer, const void* curr_buffer, |
- SkRegion* region) { |
- if (!region) { |
- return; |
- } |
- region->setEmpty(); |
- |
- if (!prev_buffer || !curr_buffer) { |
- return; |
- } |
- |
+ webrtc::DesktopRegion* region) { |
// Identify all the blocks that contain changed pixels. |
MarkDirtyBlocks(prev_buffer, curr_buffer); |
@@ -131,9 +122,8 @@ DiffInfo Differ::DiffPartialBlock(const uint8* prev_buffer, |
return 0; |
} |
-void Differ::MergeBlocks(SkRegion* region) { |
- DCHECK(region); |
- region->setEmpty(); |
+void Differ::MergeBlocks(webrtc::DesktopRegion* region) { |
+ region->Clear(); |
uint8* diff_info_row_start = static_cast<uint8*>(diff_info_.get()); |
int diff_info_stride = diff_info_width_ * sizeof(DiffInfo); |
@@ -195,8 +185,8 @@ void Differ::MergeBlocks(SkRegion* region) { |
if (top + height > height_) { |
height = height_ - top; |
} |
- region->op(SkIRect::MakeXYWH(left, top, width, height), |
- SkRegion::kUnion_Op); |
+ region->AddRect( |
+ webrtc::DesktopRect::MakeXYWH(left, top, width, height)); |
} |
// Increment to next block in this row. |