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.
5 #include "ui/base/touch/touch_enabled.h"
6 #include "base/command_line.h"
7 #include "base/logging.h"
8 #include "ui/base/touch/touch_device.h"
9 #include "ui/base/ui_base_switches.h"
10 #include "ui/events/event_switches.h"
14 bool AreTouchEventsEnabled() {
15 const CommandLine
& command_line
= *CommandLine::ForCurrentProcess();
16 const std::string touch_enabled_switch
=
17 command_line
.HasSwitch(switches::kTouchEvents
) ?
18 command_line
.GetSwitchValueASCII(switches::kTouchEvents
) :
19 switches::kTouchEventsAuto
;
21 if (touch_enabled_switch
.empty() ||
22 touch_enabled_switch
== switches::kTouchEventsEnabled
)
24 if (touch_enabled_switch
== switches::kTouchEventsAuto
)
25 return IsTouchDevicePresent();
26 if (touch_enabled_switch
!= switches::kTouchEventsDisabled
)
27 LOG(ERROR
) << "Invalid --touch-events option: " << touch_enabled_switch
;