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

Side by Side Diff: cc/trees/layer_tree_host_impl.cc

Issue 2810813004: Hide fullscreen rotation jank (Closed)
Patch Set: Build error fixes 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 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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 "cc/trees/layer_tree_host_impl.h" 5 #include "cc/trees/layer_tree_host_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <algorithm> 10 #include <algorithm>
(...skipping 1589 matching lines...) Expand 10 before | Expand all | Expand 10 after
1600 } 1600 }
1601 1601
1602 CompositorFrameMetadata LayerTreeHostImpl::MakeCompositorFrameMetadata() const { 1602 CompositorFrameMetadata LayerTreeHostImpl::MakeCompositorFrameMetadata() const {
1603 CompositorFrameMetadata metadata; 1603 CompositorFrameMetadata metadata;
1604 metadata.device_scale_factor = active_tree_->painted_device_scale_factor() * 1604 metadata.device_scale_factor = active_tree_->painted_device_scale_factor() *
1605 active_tree_->device_scale_factor(); 1605 active_tree_->device_scale_factor();
1606 1606
1607 metadata.page_scale_factor = active_tree_->current_page_scale_factor(); 1607 metadata.page_scale_factor = active_tree_->current_page_scale_factor();
1608 metadata.scrollable_viewport_size = active_tree_->ScrollableViewportSize(); 1608 metadata.scrollable_viewport_size = active_tree_->ScrollableViewportSize();
1609 metadata.root_layer_size = active_tree_->ScrollableSize(); 1609 metadata.root_layer_size = active_tree_->ScrollableSize();
1610 metadata.device_viewport_size = active_tree_->device_viewport_size();
1610 metadata.min_page_scale_factor = active_tree_->min_page_scale_factor(); 1611 metadata.min_page_scale_factor = active_tree_->min_page_scale_factor();
1611 metadata.max_page_scale_factor = active_tree_->max_page_scale_factor(); 1612 metadata.max_page_scale_factor = active_tree_->max_page_scale_factor();
1612 metadata.top_controls_height = 1613 metadata.top_controls_height =
1613 browser_controls_offset_manager_->TopControlsHeight(); 1614 browser_controls_offset_manager_->TopControlsHeight();
1614 metadata.top_controls_shown_ratio = 1615 metadata.top_controls_shown_ratio =
1615 browser_controls_offset_manager_->TopControlsShownRatio(); 1616 browser_controls_offset_manager_->TopControlsShownRatio();
1616 metadata.bottom_controls_height = 1617 metadata.bottom_controls_height =
1617 browser_controls_offset_manager_->BottomControlsHeight(); 1618 browser_controls_offset_manager_->BottomControlsHeight();
1618 metadata.bottom_controls_shown_ratio = 1619 metadata.bottom_controls_shown_ratio =
1619 browser_controls_offset_manager_->BottomControlsShownRatio(); 1620 browser_controls_offset_manager_->BottomControlsShownRatio();
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
1652 1653
1653 metadata.root_overflow_x_hidden |= 1654 metadata.root_overflow_x_hidden |=
1654 !InnerViewportScrollLayer()->user_scrollable_horizontal(); 1655 !InnerViewportScrollLayer()->user_scrollable_horizontal();
1655 metadata.root_overflow_y_hidden |= 1656 metadata.root_overflow_y_hidden |=
1656 !InnerViewportScrollLayer()->user_scrollable_vertical(); 1657 !InnerViewportScrollLayer()->user_scrollable_vertical();
1657 1658
1658 // TODO(miletus) : Change the metadata to hold ScrollOffset. 1659 // TODO(miletus) : Change the metadata to hold ScrollOffset.
1659 metadata.root_scroll_offset = 1660 metadata.root_scroll_offset =
1660 gfx::ScrollOffsetToVector2dF(active_tree_->TotalScrollOffset()); 1661 gfx::ScrollOffsetToVector2dF(active_tree_->TotalScrollOffset());
1661 1662
1663 metadata.is_fullscreen = is_fullscreen_;
1664
1662 return metadata; 1665 return metadata;
1663 } 1666 }
1664 1667
1665 bool LayerTreeHostImpl::DrawLayers(FrameData* frame) { 1668 bool LayerTreeHostImpl::DrawLayers(FrameData* frame) {
1666 DCHECK(CanDraw()); 1669 DCHECK(CanDraw());
1667 DCHECK_EQ(frame->has_no_damage, frame->render_passes.empty()); 1670 DCHECK_EQ(frame->has_no_damage, frame->render_passes.empty());
1668 1671
1669 TRACE_EVENT0("cc,benchmark", "LayerTreeHostImpl::DrawLayers"); 1672 TRACE_EVENT0("cc,benchmark", "LayerTreeHostImpl::DrawLayers");
1670 1673
1671 ResetRequiresHighResToDraw(); 1674 ResetRequiresHighResToDraw();
(...skipping 518 matching lines...) Expand 10 before | Expand all | Expand 10 after
2190 if (visible_) { 2193 if (visible_) {
2191 // TODO(crbug.com/469175): Replace with RequiresHighResToDraw. 2194 // TODO(crbug.com/469175): Replace with RequiresHighResToDraw.
2192 SetRequiresHighResToDraw(); 2195 SetRequiresHighResToDraw();
2193 } else { 2196 } else {
2194 EvictAllUIResources(); 2197 EvictAllUIResources();
2195 // Call PrepareTiles to evict tiles when we become invisible. 2198 // Call PrepareTiles to evict tiles when we become invisible.
2196 PrepareTiles(); 2199 PrepareTiles();
2197 } 2200 }
2198 } 2201 }
2199 2202
2203 void LayerTreeHostImpl::SetIsFullscreen(bool is_fullscreen) {
2204 DCHECK(task_runner_provider_->IsImplThread());
2205
2206 is_fullscreen_ = is_fullscreen;
2207 }
2208
2200 void LayerTreeHostImpl::SetNeedsOneBeginImplFrame() { 2209 void LayerTreeHostImpl::SetNeedsOneBeginImplFrame() {
2201 // TODO(miletus): This is just the compositor-thread-side call to the 2210 // TODO(miletus): This is just the compositor-thread-side call to the
2202 // SwapPromiseMonitor to say something happened that may cause a swap in the 2211 // SwapPromiseMonitor to say something happened that may cause a swap in the
2203 // future. The name should not refer to SetNeedsRedraw but it does for now. 2212 // future. The name should not refer to SetNeedsRedraw but it does for now.
2204 NotifySwapPromiseMonitorsOfSetNeedsRedraw(); 2213 NotifySwapPromiseMonitorsOfSetNeedsRedraw();
2205 client_->SetNeedsOneBeginImplFrameOnImplThread(); 2214 client_->SetNeedsOneBeginImplFrameOnImplThread();
2206 } 2215 }
2207 2216
2208 void LayerTreeHostImpl::SetNeedsRedraw() { 2217 void LayerTreeHostImpl::SetNeedsRedraw() {
2209 NotifySwapPromiseMonitorsOfSetNeedsRedraw(); 2218 NotifySwapPromiseMonitorsOfSetNeedsRedraw();
(...skipping 2155 matching lines...) Expand 10 before | Expand all | Expand 10 after
4365 4374
4366 void LayerTreeHostImpl::ShowScrollbarsForImplScroll(ElementId element_id) { 4375 void LayerTreeHostImpl::ShowScrollbarsForImplScroll(ElementId element_id) {
4367 if (!element_id) 4376 if (!element_id)
4368 return; 4377 return;
4369 if (ScrollbarAnimationController* animation_controller = 4378 if (ScrollbarAnimationController* animation_controller =
4370 ScrollbarAnimationControllerForElementId(element_id)) 4379 ScrollbarAnimationControllerForElementId(element_id))
4371 animation_controller->DidScrollUpdate(); 4380 animation_controller->DidScrollUpdate();
4372 } 4381 }
4373 4382
4374 } // namespace cc 4383 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698