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

Side by Side Diff: ui/display/display_list.h

Issue 2434923002: Handle modified displays in mustash. (Closed)
Patch Set: Fix PlatformScreenStub for tests. Created 4 years, 1 month 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
« no previous file with comments | « services/ui/ws/window_tree_client_unittest.cc ('k') | ui/display/display_list.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #ifndef UI_DISPLAY_DISPLAY_LIST_H_ 5 #ifndef UI_DISPLAY_DISPLAY_LIST_H_
6 #define UI_DISPLAY_DISPLAY_LIST_H_ 6 #define UI_DISPLAY_DISPLAY_LIST_H_
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <memory> 10 #include <memory>
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 Displays::const_iterator FindDisplayById(int64_t id) const; 58 Displays::const_iterator FindDisplayById(int64_t id) const;
59 Displays::iterator FindDisplayById(int64_t id); 59 Displays::iterator FindDisplayById(int64_t id);
60 60
61 Displays::const_iterator GetPrimaryDisplayIterator() const; 61 Displays::const_iterator GetPrimaryDisplayIterator() const;
62 62
63 // Internally increments a counter that while non-zero results in observers 63 // Internally increments a counter that while non-zero results in observers
64 // not being called for any changes to the displays. It is assumed once 64 // not being called for any changes to the displays. It is assumed once
65 // callers release the last lock they call the observers appropriately. 65 // callers release the last lock they call the observers appropriately.
66 std::unique_ptr<DisplayListObserverLock> SuspendObserverUpdates(); 66 std::unique_ptr<DisplayListObserverLock> SuspendObserverUpdates();
67 67
68 // Updates the cached id based on display.id() as well as whether the Display 68 // Updates the cached display based on display.id().
69 // is the primary display. 69 void UpdateDisplay(const display::Display& display);
70
71 // Updates the cached display based on display.id(). Also updates the primary
72 // display if |type| indicates |display| is the primary display.
70 void UpdateDisplay(const display::Display& display, Type type); 73 void UpdateDisplay(const display::Display& display, Type type);
71 74
72 // Adds a new Display. 75 // Adds a new Display.
73 void AddDisplay(const display::Display& display, Type type); 76 void AddDisplay(const display::Display& display, Type type);
74 77
75 // Removes the Display with the specified id. 78 // Removes the Display with the specified id.
76 void RemoveDisplay(int64_t id); 79 void RemoveDisplay(int64_t id);
77 80
78 base::ObserverList<display::DisplayObserver>* observers() { 81 base::ObserverList<display::DisplayObserver>* observers() {
79 return &observers_; 82 return &observers_;
80 } 83 }
81 84
82 private: 85 private:
83 friend class DisplayListObserverLock; 86 friend class DisplayListObserverLock;
84 87
85 bool should_notify_observers() const { 88 bool should_notify_observers() const {
86 return observer_suspend_lock_count_ == 0; 89 return observer_suspend_lock_count_ == 0;
87 } 90 }
88 void IncrementObserverSuspendLockCount(); 91 void IncrementObserverSuspendLockCount();
89 void DecrementObserverSuspendLockCount(); 92 void DecrementObserverSuspendLockCount();
90 93
94 Type GetTypeByDisplayId(int64_t display_id) const;
95
91 std::vector<display::Display> displays_; 96 std::vector<display::Display> displays_;
92 int primary_display_index_ = -1; 97 int primary_display_index_ = -1;
93 base::ObserverList<display::DisplayObserver> observers_; 98 base::ObserverList<display::DisplayObserver> observers_;
94 99
95 int observer_suspend_lock_count_ = 0; 100 int observer_suspend_lock_count_ = 0;
96 101
97 DISALLOW_COPY_AND_ASSIGN(DisplayList); 102 DISALLOW_COPY_AND_ASSIGN(DisplayList);
98 }; 103 };
99 104
100 } // namespace display 105 } // namespace display
101 106
102 #endif // UI_DISPLAY_DISPLAY_LIST_H_ 107 #endif // UI_DISPLAY_DISPLAY_LIST_H_
OLDNEW
« no previous file with comments | « services/ui/ws/window_tree_client_unittest.cc ('k') | ui/display/display_list.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698