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

Side by Side Diff: ash/display/display_layout_store.h

Issue 2223063003: Move DisplayLayoutStore from ash to ui. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase/add TODO. Created 4 years, 4 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
« no previous file with comments | « ash/display/display_change_observer_chromeos.cc ('k') | ash/display/display_layout_store.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef ASH_DISPLAY_DISPLAY_LAYOUT_STORE_H_
6 #define ASH_DISPLAY_DISPLAY_LAYOUT_STORE_H_
7
8 #include <stdint.h>
9
10 #include <map>
11 #include <memory>
12
13 #include "ash/ash_export.h"
14 #include "base/macros.h"
15 #include "ui/display/manager/display_layout.h"
16
17 namespace ash {
18
19 class ASH_EXPORT DisplayLayoutStore {
20 public:
21 DisplayLayoutStore();
22 ~DisplayLayoutStore();
23
24 void SetDefaultDisplayPlacement(const display::DisplayPlacement& placement);
25
26 // Registeres the display layout info for the specified display(s).
27 void RegisterLayoutForDisplayIdList(
28 const display::DisplayIdList& list,
29 std::unique_ptr<display::DisplayLayout> layout);
30
31 // If no layout is registered, it creatas new layout using
32 // |default_display_layout_|.
33 const display::DisplayLayout& GetRegisteredDisplayLayout(
34 const display::DisplayIdList& list);
35
36 // Update the multi display state in the display layout for
37 // |display_list|. This creates new display layout if no layout is
38 // registered for |display_list|.
39 void UpdateMultiDisplayState(const display::DisplayIdList& display_list,
40 bool mirrored,
41 bool default_unified);
42
43 private:
44 // Creates new layout for display list from |default_display_layout_|.
45 display::DisplayLayout* CreateDefaultDisplayLayout(
46 const display::DisplayIdList& display_list);
47
48 // The default display placement.
49 display::DisplayPlacement default_display_placement_;
50
51 // Display layout per list of devices.
52 std::map<display::DisplayIdList, std::unique_ptr<display::DisplayLayout>>
53 layouts_;
54
55 DISALLOW_COPY_AND_ASSIGN(DisplayLayoutStore);
56 };
57
58 } // namespace ash
59
60 #endif // ASH_DISPLAY_DISPLAY_LAYOUT_STORE_H_
OLDNEW
« no previous file with comments | « ash/display/display_change_observer_chromeos.cc ('k') | ash/display/display_layout_store.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698