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

Side by Side Diff: content/browser/renderer_host/delegated_frame_host.cc

Issue 2848223003: Enforce constant size and device scale factor for surfaces (Closed)
Patch Set: Address comments Created 3 years, 7 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 2014 The Chromium Authors. All rights reserved. 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 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 "content/browser/renderer_host/delegated_frame_host.h" 5 #include "content/browser/renderer_host/delegated_frame_host.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 #include <utility> 9 #include <utility>
10 #include <vector> 10 #include <vector>
(...skipping 438 matching lines...) Expand 10 before | Expand all | Expand 10 after
449 } else { 449 } else {
450 ImageTransportFactory* factory = ImageTransportFactory::GetInstance(); 450 ImageTransportFactory* factory = ImageTransportFactory::GetInstance();
451 cc::SurfaceManager* manager = 451 cc::SurfaceManager* manager =
452 factory->GetContextFactoryPrivate()->GetSurfaceManager(); 452 factory->GetContextFactoryPrivate()->GetSurfaceManager();
453 453
454 frame.metadata.latency_info.insert(frame.metadata.latency_info.end(), 454 frame.metadata.latency_info.insert(frame.metadata.latency_info.end(),
455 skipped_latency_info_list_.begin(), 455 skipped_latency_info_list_.begin(),
456 skipped_latency_info_list_.end()); 456 skipped_latency_info_list_.end());
457 skipped_latency_info_list_.clear(); 457 skipped_latency_info_list_.clear();
458 458
459 support_->SubmitCompositorFrame(local_surface_id, std::move(frame)); 459 bool result =
460 support_->SubmitCompositorFrame(local_surface_id, std::move(frame));
461 DCHECK(result);
460 462
461 if (local_surface_id != local_surface_id_ || !has_frame_) { 463 if (local_surface_id != local_surface_id_ || !has_frame_) {
462 // manager must outlive compositors using it. 464 // manager must outlive compositors using it.
463 cc::SurfaceId surface_id(frame_sink_id_, local_surface_id); 465 cc::SurfaceId surface_id(frame_sink_id_, local_surface_id);
464 cc::SurfaceInfo surface_info(surface_id, frame_device_scale_factor, 466 cc::SurfaceInfo surface_info(surface_id, frame_device_scale_factor,
465 frame_size); 467 frame_size);
466 client_->DelegatedFrameHostGetLayer()->SetShowPrimarySurface( 468 client_->DelegatedFrameHostGetLayer()->SetShowPrimarySurface(
467 surface_info, manager->reference_factory()); 469 surface_info, manager->reference_factory());
468 current_surface_size_ = frame_size; 470 current_surface_size_ = frame_size;
469 current_scale_factor_ = frame_device_scale_factor; 471 current_scale_factor_ = frame_device_scale_factor;
(...skipping 392 matching lines...) Expand 10 before | Expand all | Expand 10 after
862 } 864 }
863 865
864 if (!skipped_frames_) { 866 if (!skipped_frames_) {
865 latest_confirmed_begin_frame_source_id_ = ack.source_id; 867 latest_confirmed_begin_frame_source_id_ = ack.source_id;
866 latest_confirmed_begin_frame_sequence_number_ = 868 latest_confirmed_begin_frame_sequence_number_ =
867 ack.latest_confirmed_sequence_number; 869 ack.latest_confirmed_sequence_number;
868 } 870 }
869 } 871 }
870 872
871 } // namespace content 873 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698