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

Side by Side Diff: ash/display/display_info.cc

Issue 42863003: cros: Default to natural scrolling if the internal diplay is a touchscreen. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 7 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 | Annotate | Revision Log
« no previous file with comments | « ash/display/display_info.h ('k') | ash/display/display_manager.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 (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 <stdio.h> 5 #include <stdio.h>
6 #include <string> 6 #include <string>
7 #include <vector> 7 #include <vector>
8 8
9 #include "ash/display/display_info.h" 9 #include "ash/display/display_info.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
130 130
131 DVLOG(1) << "DisplayInfoFromSpec info=" << display_info.ToString() 131 DVLOG(1) << "DisplayInfoFromSpec info=" << display_info.ToString()
132 << ", spec=" << spec; 132 << ", spec=" << spec;
133 return display_info; 133 return display_info;
134 } 134 }
135 135
136 DisplayInfo::DisplayInfo() 136 DisplayInfo::DisplayInfo()
137 : id_(gfx::Display::kInvalidDisplayID), 137 : id_(gfx::Display::kInvalidDisplayID),
138 has_overscan_(false), 138 has_overscan_(false),
139 rotation_(gfx::Display::ROTATE_0), 139 rotation_(gfx::Display::ROTATE_0),
140 touch_support_(gfx::Display::TOUCH_SUPPORT_UNKNOWN),
140 device_scale_factor_(1.0f), 141 device_scale_factor_(1.0f),
141 overscan_insets_in_dip_(0, 0, 0, 0), 142 overscan_insets_in_dip_(0, 0, 0, 0),
142 ui_scale_(1.0f), 143 ui_scale_(1.0f),
143 native_(false) { 144 native_(false) {
144 } 145 }
145 146
146 DisplayInfo::DisplayInfo(int64 id, 147 DisplayInfo::DisplayInfo(int64 id,
147 const std::string& name, 148 const std::string& name,
148 bool has_overscan) 149 bool has_overscan)
149 : id_(id), 150 : id_(id),
150 name_(name), 151 name_(name),
151 has_overscan_(has_overscan), 152 has_overscan_(has_overscan),
152 rotation_(gfx::Display::ROTATE_0), 153 rotation_(gfx::Display::ROTATE_0),
154 touch_support_(gfx::Display::TOUCH_SUPPORT_UNKNOWN),
153 device_scale_factor_(1.0f), 155 device_scale_factor_(1.0f),
154 overscan_insets_in_dip_(0, 0, 0, 0), 156 overscan_insets_in_dip_(0, 0, 0, 0),
155 ui_scale_(1.0f), 157 ui_scale_(1.0f),
156 native_(false) { 158 native_(false) {
157 } 159 }
158 160
159 DisplayInfo::~DisplayInfo() { 161 DisplayInfo::~DisplayInfo() {
160 } 162 }
161 163
162 void DisplayInfo::Copy(const DisplayInfo& native_info) { 164 void DisplayInfo::Copy(const DisplayInfo& native_info) {
163 DCHECK(id_ == native_info.id_); 165 DCHECK(id_ == native_info.id_);
164 name_ = native_info.name_; 166 name_ = native_info.name_;
165 has_overscan_ = native_info.has_overscan_; 167 has_overscan_ = native_info.has_overscan_;
166 168
167 DCHECK(!native_info.bounds_in_native_.IsEmpty()); 169 DCHECK(!native_info.bounds_in_native_.IsEmpty());
168 bounds_in_native_ = native_info.bounds_in_native_; 170 bounds_in_native_ = native_info.bounds_in_native_;
169 size_in_pixel_ = native_info.size_in_pixel_; 171 size_in_pixel_ = native_info.size_in_pixel_;
170 device_scale_factor_ = native_info.device_scale_factor_; 172 device_scale_factor_ = native_info.device_scale_factor_;
171 resolutions_ = native_info.resolutions_; 173 resolutions_ = native_info.resolutions_;
174 touch_support_ = native_info.touch_support_;
172 175
173 // Copy overscan_insets_in_dip_ if it's not empty. This is for test 176 // Copy overscan_insets_in_dip_ if it's not empty. This is for test
174 // cases which use "/o" annotation which sets the overscan inset 177 // cases which use "/o" annotation which sets the overscan inset
175 // to native, and that overscan has to be propagated. This does not 178 // to native, and that overscan has to be propagated. This does not
176 // happen on the real environment. 179 // happen on the real environment.
177 if (!native_info.overscan_insets_in_dip_.empty()) 180 if (!native_info.overscan_insets_in_dip_.empty())
178 overscan_insets_in_dip_ = native_info.overscan_insets_in_dip_; 181 overscan_insets_in_dip_ = native_info.overscan_insets_in_dip_;
179 182
180 // Rotation_ and ui_scale_ are given by preference, or unit 183 // Rotation_ and ui_scale_ are given by preference, or unit
181 // tests. Don't copy if this native_info came from 184 // tests. Don't copy if this native_info came from
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
218 } 221 }
219 222
220 gfx::Insets DisplayInfo::GetOverscanInsetsInPixel() const { 223 gfx::Insets DisplayInfo::GetOverscanInsetsInPixel() const {
221 return overscan_insets_in_dip_.Scale(device_scale_factor_); 224 return overscan_insets_in_dip_.Scale(device_scale_factor_);
222 } 225 }
223 226
224 std::string DisplayInfo::ToString() const { 227 std::string DisplayInfo::ToString() const {
225 int rotation_degree = static_cast<int>(rotation_) * 90; 228 int rotation_degree = static_cast<int>(rotation_) * 90;
226 return base::StringPrintf( 229 return base::StringPrintf(
227 "DisplayInfo[%lld] native bounds=%s, size=%s, scale=%f, " 230 "DisplayInfo[%lld] native bounds=%s, size=%s, scale=%f, "
228 "overscan=%s, rotation=%d, ui-scale=%f", 231 "overscan=%s, rotation=%d, ui-scale=%f, touchscreen=%s",
229 static_cast<long long int>(id_), 232 static_cast<long long int>(id_),
230 bounds_in_native_.ToString().c_str(), 233 bounds_in_native_.ToString().c_str(),
231 size_in_pixel_.ToString().c_str(), 234 size_in_pixel_.ToString().c_str(),
232 device_scale_factor_, 235 device_scale_factor_,
233 overscan_insets_in_dip_.ToString().c_str(), 236 overscan_insets_in_dip_.ToString().c_str(),
234 rotation_degree, 237 rotation_degree,
235 ui_scale_); 238 ui_scale_,
239 touch_support_ == gfx::Display::TOUCH_SUPPORT_AVAILABLE ? "yes" :
240 touch_support_ == gfx::Display::TOUCH_SUPPORT_UNAVAILABLE ? "no" :
241 "unknown");
236 } 242 }
237 243
238 std::string DisplayInfo::ToFullString() const { 244 std::string DisplayInfo::ToFullString() const {
239 std::string resolutions_str; 245 std::string resolutions_str;
240 std::vector<Resolution>::const_iterator iter = resolutions_.begin(); 246 std::vector<Resolution>::const_iterator iter = resolutions_.begin();
241 for (; iter != resolutions_.end(); ++iter) { 247 for (; iter != resolutions_.end(); ++iter) {
242 if (!resolutions_str.empty()) 248 if (!resolutions_str.empty())
243 resolutions_str += ","; 249 resolutions_str += ",";
244 resolutions_str += iter->size.ToString(); 250 resolutions_str += iter->size.ToString();
245 if (iter->interlaced) 251 if (iter->interlaced)
246 resolutions_str += "(i)"; 252 resolutions_str += "(i)";
247 } 253 }
248 return ToString() + ", resolutions=" + resolutions_str; 254 return ToString() + ", resolutions=" + resolutions_str;
249 } 255 }
250 256
251 } // namespace internal 257 } // namespace internal
252 } // namespace ash 258 } // namespace ash
OLDNEW
« no previous file with comments | « ash/display/display_info.h ('k') | ash/display/display_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698