Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(33)

Side by Side Diff: remoting/client/plugin/pepper_video_renderer_2d.cc

Issue 1827043004: Remove shaped desktop support from remoting host and client. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "remoting/client/plugin/pepper_video_renderer_2d.h" 5 #include "remoting/client/plugin/pepper_video_renderer_2d.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <utility> 9 #include <utility>
10 10
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
152 } 152 }
153 153
154 154
155 if (size_changed || !source_dpi_.equals(frame->dpi())) { 155 if (size_changed || !source_dpi_.equals(frame->dpi())) {
156 source_dpi_ = frame->dpi(); 156 source_dpi_ = frame->dpi();
157 157
158 // Notify JavaScript of the change in source size. 158 // Notify JavaScript of the change in source size.
159 event_handler_->OnVideoSize(source_size_, source_dpi_); 159 event_handler_->OnVideoSize(source_size_, source_dpi_);
160 } 160 }
161 161
162 const webrtc::DesktopRegion* shape = frame->shape();
163 if (shape) {
164 if (!source_shape_ || !source_shape_->Equals(*shape)) {
165 source_shape_ = make_scoped_ptr(new webrtc::DesktopRegion(*shape));
166 event_handler_->OnVideoShape(source_shape_.get());
167 }
168 } else if (source_shape_) {
169 source_shape_ = nullptr;
170 event_handler_->OnVideoShape(nullptr);
171 }
172
173 // If Debug dirty region is enabled then emit it. 162 // If Debug dirty region is enabled then emit it.
174 if (debug_dirty_region_) 163 if (debug_dirty_region_)
175 event_handler_->OnVideoFrameDirtyRegion(frame->updated_region()); 164 event_handler_->OnVideoFrameDirtyRegion(frame->updated_region());
176 165
177 const pp::ImageData& image_data = 166 const pp::ImageData& image_data =
178 static_cast<PepperDesktopFrame*>(frame.get())->buffer(); 167 static_cast<PepperDesktopFrame*>(frame.get())->buffer();
179 for (webrtc::DesktopRegion::Iterator i(frame->updated_region()); !i.IsAtEnd(); 168 for (webrtc::DesktopRegion::Iterator i(frame->updated_region()); !i.IsAtEnd();
180 i.Advance()) { 169 i.Advance()) {
181 graphics2d_.PaintImageData(image_data, pp::Point(0, 0), 170 graphics2d_.PaintImageData(image_data, pp::Point(0, 0),
182 pp::Rect(i.rect().left(), i.rect().top(), 171 pp::Rect(i.rect().left(), i.rect().top(),
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 flush_pending_ = false; 214 flush_pending_ = false;
226 215
227 // Call all callbacks for the frames we've just flushed. 216 // Call all callbacks for the frames we've just flushed.
228 flushing_frames_done_callbacks_.clear(); 217 flushing_frames_done_callbacks_.clear();
229 218
230 // Flush again if necessary. 219 // Flush again if necessary.
231 Flush(); 220 Flush();
232 } 221 }
233 222
234 } // namespace remoting 223 } // namespace remoting
OLDNEW
« no previous file with comments | « remoting/client/plugin/pepper_video_renderer_2d.h ('k') | remoting/client/plugin/pepper_video_renderer_3d.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698