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

Side by Side Diff: ui/gfx/font_render_params_win.cc

Issue 1308823002: Move Singleton and related structs to namespace base (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: ToT Created 5 years, 3 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 | « ui/gfx/font_fallback_win.cc ('k') | ui/gfx/sys_color_change_listener.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 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 "base/bind.h" 5 #include "base/bind.h"
6 #include "base/bind_helpers.h" 6 #include "base/bind_helpers.h"
7 #include "base/files/file_path.h" 7 #include "base/files/file_path.h"
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "base/memory/singleton.h" 9 #include "base/memory/singleton.h"
10 #include "base/win/registry.h" 10 #include "base/win/registry.h"
(...skipping 29 matching lines...) Expand all
40 } 40 }
41 41
42 // No explicit ClearType settings, default to RGB. 42 // No explicit ClearType settings, default to RGB.
43 return FontRenderParams::SUBPIXEL_RENDERING_RGB; 43 return FontRenderParams::SUBPIXEL_RENDERING_RGB;
44 } 44 }
45 45
46 // Caches font render params and updates them on system notifications. 46 // Caches font render params and updates them on system notifications.
47 class CachedFontRenderParams { 47 class CachedFontRenderParams {
48 public: 48 public:
49 static CachedFontRenderParams* GetInstance() { 49 static CachedFontRenderParams* GetInstance() {
50 return Singleton<CachedFontRenderParams>::get(); 50 return base::Singleton<CachedFontRenderParams>::get();
51 } 51 }
52 52
53 const FontRenderParams& GetParams() { 53 const FontRenderParams& GetParams() {
54 if (params_) 54 if (params_)
55 return *params_; 55 return *params_;
56 56
57 params_.reset(new FontRenderParams()); 57 params_.reset(new FontRenderParams());
58 params_->antialiasing = false; 58 params_->antialiasing = false;
59 params_->subpixel_positioning = false; 59 params_->subpixel_positioning = false;
60 params_->autohinter = false; 60 params_->autohinter = false;
(...skipping 13 matching lines...) Expand all
74 params_->subpixel_rendering = GetSubpixelRenderingGeometry(); 74 params_->subpixel_rendering = GetSubpixelRenderingGeometry();
75 } 75 }
76 } 76 }
77 singleton_hwnd_observer_.reset(new SingletonHwndObserver( 77 singleton_hwnd_observer_.reset(new SingletonHwndObserver(
78 base::Bind(&CachedFontRenderParams::OnWndProc, 78 base::Bind(&CachedFontRenderParams::OnWndProc,
79 base::Unretained(this)))); 79 base::Unretained(this))));
80 return *params_; 80 return *params_;
81 } 81 }
82 82
83 private: 83 private:
84 friend struct DefaultSingletonTraits<CachedFontRenderParams>; 84 friend struct base::DefaultSingletonTraits<CachedFontRenderParams>;
85 85
86 CachedFontRenderParams() {} 86 CachedFontRenderParams() {}
87 ~CachedFontRenderParams() {} 87 ~CachedFontRenderParams() {}
88 88
89 void OnWndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam) { 89 void OnWndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam) {
90 if (message == WM_SETTINGCHANGE) { 90 if (message == WM_SETTINGCHANGE) {
91 params_.reset(); 91 params_.reset();
92 singleton_hwnd_observer_.reset(nullptr); 92 singleton_hwnd_observer_.reset(nullptr);
93 } 93 }
94 } 94 }
95 95
96 scoped_ptr<FontRenderParams> params_; 96 scoped_ptr<FontRenderParams> params_;
97 scoped_ptr<SingletonHwndObserver> singleton_hwnd_observer_; 97 scoped_ptr<SingletonHwndObserver> singleton_hwnd_observer_;
98 98
99 DISALLOW_COPY_AND_ASSIGN(CachedFontRenderParams); 99 DISALLOW_COPY_AND_ASSIGN(CachedFontRenderParams);
100 }; 100 };
101 101
102 } // namespace 102 } // namespace
103 103
104 FontRenderParams GetFontRenderParams(const FontRenderParamsQuery& query, 104 FontRenderParams GetFontRenderParams(const FontRenderParamsQuery& query,
105 std::string* family_out) { 105 std::string* family_out) {
106 if (family_out) 106 if (family_out)
107 NOTIMPLEMENTED(); 107 NOTIMPLEMENTED();
108 // Customized font rendering settings are not supported, only defaults. 108 // Customized font rendering settings are not supported, only defaults.
109 return CachedFontRenderParams::GetInstance()->GetParams(); 109 return CachedFontRenderParams::GetInstance()->GetParams();
110 } 110 }
111 111
112 } // namespace gfx 112 } // namespace gfx
OLDNEW
« no previous file with comments | « ui/gfx/font_fallback_win.cc ('k') | ui/gfx/sys_color_change_listener.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698