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

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

Issue 1766053002: Clean LayerImpl's scroll offset callers in unit tests. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 4 years, 9 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 <stddef.h> 5 #include <stddef.h>
6 6
7 #include <set> 7 #include <set>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 1469 matching lines...) Expand 10 before | Expand all | Expand 10 after
1480 // TODO(sunxd): Make this function private once scroll offset access is fully 1480 // TODO(sunxd): Make this function private once scroll offset access is fully
1481 // directed to scroll tree. 1481 // directed to scroll tree.
1482 SyncedScrollOffset* ScrollTree::synced_scroll_offset(int layer_id) { 1482 SyncedScrollOffset* ScrollTree::synced_scroll_offset(int layer_id) {
1483 if (layer_id_to_scroll_offset_map_.find(layer_id) == 1483 if (layer_id_to_scroll_offset_map_.find(layer_id) ==
1484 layer_id_to_scroll_offset_map_.end()) { 1484 layer_id_to_scroll_offset_map_.end()) {
1485 layer_id_to_scroll_offset_map_[layer_id] = new SyncedScrollOffset; 1485 layer_id_to_scroll_offset_map_[layer_id] = new SyncedScrollOffset;
1486 } 1486 }
1487 return layer_id_to_scroll_offset_map_[layer_id].get(); 1487 return layer_id_to_scroll_offset_map_[layer_id].get();
1488 } 1488 }
1489 1489
1490 const SyncedScrollOffset* ScrollTree::synced_scroll_offset(int layer_id) const {
1491 if (layer_id_to_scroll_offset_map_.find(layer_id) ==
1492 layer_id_to_scroll_offset_map_.end()) {
1493 return nullptr;
1494 }
1495 return layer_id_to_scroll_offset_map_.at(layer_id).get();
1496 }
1497
1490 gfx::ScrollOffset ScrollTree::PullDeltaForMainThread( 1498 gfx::ScrollOffset ScrollTree::PullDeltaForMainThread(
1491 SyncedScrollOffset* scroll_offset) { 1499 SyncedScrollOffset* scroll_offset) {
1492 // TODO(miletus): Remove all this temporary flooring machinery when 1500 // TODO(miletus): Remove all this temporary flooring machinery when
1493 // Blink fully supports fractional scrolls. 1501 // Blink fully supports fractional scrolls.
1494 gfx::ScrollOffset current_offset = 1502 gfx::ScrollOffset current_offset =
1495 scroll_offset->Current(property_trees()->is_active); 1503 scroll_offset->Current(property_trees()->is_active);
1496 gfx::ScrollOffset current_delta = property_trees()->is_active 1504 gfx::ScrollOffset current_delta = property_trees()->is_active
1497 ? scroll_offset->Delta() 1505 ? scroll_offset->Delta()
1498 : scroll_offset->PendingDelta().get(); 1506 : scroll_offset->PendingDelta().get();
1499 gfx::ScrollOffset floored_delta(floor(current_delta.x()), 1507 gfx::ScrollOffset floored_delta(floor(current_delta.x()),
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
1586 1594
1587 bool ScrollTree::SetScrollOffset(int layer_id, 1595 bool ScrollTree::SetScrollOffset(int layer_id,
1588 const gfx::ScrollOffset& scroll_offset) { 1596 const gfx::ScrollOffset& scroll_offset) {
1589 if (property_trees()->is_main_thread) 1597 if (property_trees()->is_main_thread)
1590 return synced_scroll_offset(layer_id)->PushFromMainThread(scroll_offset); 1598 return synced_scroll_offset(layer_id)->PushFromMainThread(scroll_offset);
1591 else if (property_trees()->is_active) 1599 else if (property_trees()->is_active)
1592 return synced_scroll_offset(layer_id)->SetCurrent(scroll_offset); 1600 return synced_scroll_offset(layer_id)->SetCurrent(scroll_offset);
1593 return false; 1601 return false;
1594 } 1602 }
1595 1603
1604 bool ScrollTree::UpdateScrollOffsetBaseForTesting(
1605 int layer_id,
1606 const gfx::ScrollOffset& offset) {
1607 DCHECK(!property_trees()->is_main_thread);
1608 bool changed = synced_scroll_offset(layer_id)->PushFromMainThread(offset);
1609 if (property_trees()->is_active)
1610 changed |= synced_scroll_offset(layer_id)->PushPendingToActive();
1611 return changed;
1612 }
1613
1614 const gfx::ScrollOffset ScrollTree::GetScrollOffsetBaseForTesting(
1615 int layer_id) const {
1616 DCHECK(!property_trees()->is_main_thread);
1617 if (synced_scroll_offset(layer_id))
1618 return property_trees()->is_active
1619 ? synced_scroll_offset(layer_id)->ActiveBase()
1620 : synced_scroll_offset(layer_id)->PendingBase();
1621 else
1622 return gfx::ScrollOffset();
1623 }
1624
1596 PropertyTrees::PropertyTrees() 1625 PropertyTrees::PropertyTrees()
1597 : needs_rebuild(true), 1626 : needs_rebuild(true),
1598 non_root_surfaces_enabled(true), 1627 non_root_surfaces_enabled(true),
1599 changed(false), 1628 changed(false),
1600 full_tree_damaged(false), 1629 full_tree_damaged(false),
1601 sequence_number(0), 1630 sequence_number(0),
1602 is_main_thread(true), 1631 is_main_thread(true),
1603 is_active(false) { 1632 is_active(false) {
1604 transform_tree.SetPropertyTrees(this); 1633 transform_tree.SetPropertyTrees(this);
1605 effect_tree.SetPropertyTrees(this); 1634 effect_tree.SetPropertyTrees(this);
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
1737 break; 1766 break;
1738 case ALL_TREES: 1767 case ALL_TREES:
1739 transform_tree.ResetChangeTracking(); 1768 transform_tree.ResetChangeTracking();
1740 effect_tree.ResetChangeTracking(); 1769 effect_tree.ResetChangeTracking();
1741 } 1770 }
1742 changed = false; 1771 changed = false;
1743 full_tree_damaged = false; 1772 full_tree_damaged = false;
1744 } 1773 }
1745 1774
1746 } // namespace cc 1775 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698