Commit 4cbff265 authored by Nicholas Hollingum's avatar Nicholas Hollingum Committed by Commit Bot

Add a flag to enable/disable ordinal motion in Exo

In crrev.com/c/2277694, mouse movement events on CrOS will have ordinal
motion. We add a flag that will be used to control whether Exo reads
those, or just continues to use accelerated motion.

We want a flag in the short term because the hardware units we get on
CrOS are too small, and we require some investigation in how to scale
them appropriately.

Bug: b/161755250
Change-Id: I3ac45b020d033a8fe180789bd979e7a50a68e0ef
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2370683
Commit-Queue: Nic Hollingum <hollingum@google.com>
Reviewed-by: default avatarJun Mukai <mukai@chromium.org>
Cr-Commit-Position: refs/heads/master@{#804835}
parent e96bb06c
......@@ -5816,6 +5816,12 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kMacCoreLocationImplementation)},
#endif
#if defined(OS_CHROMEOS)
{"exo-ordinal-motion", flag_descriptions::kExoOrdinalMotionName,
flag_descriptions::kExoOrdinalMotionDescription, kOsCrOS,
FEATURE_VALUE_TYPE(chromeos::features::kExoOrdinalMotion)},
#endif // defined(OS_CHROMEOS)
#if defined(OS_CHROMEOS)
{"exo-pointer-lock", flag_descriptions::kExoPointerLockName,
flag_descriptions::kExoPointerLockDescription, kOsCrOS,
......
......@@ -2418,6 +2418,11 @@
"owners": [ "cthomp" ],
"expiry_milestone": 83
},
{
"name": "exo-ordinal-motion",
"owners": [ "hollingum@google.com" ],
"expiry_milestone": 90
},
{
"name": "exo-pointer-lock",
"owners": [ "hollingum@google.com" ],
......
......@@ -4006,6 +4006,11 @@ const char kEnterpriseReportingInChromeOSDescription[] =
"Enable the enterprise cloud reporting in Chrome OS. This feature requires "
"user level cloud management.";
const char kExoOrdinalMotionName[] =
"Raw (unaccelerated) motion for Linux applications";
const char kExoOrdinalMotionDescription[] =
"Send unaccelerated values as raw motion events to linux applications.";
const char kExoPointerLockName[] = "Pointer lock for Linux applications";
const char kExoPointerLockDescription[] =
"Allow Linux applications to request a pointer lock, i.e. exclusive use of "
......
......@@ -2321,6 +2321,9 @@ extern const char kEnableSuggestedFilesDescription[];
extern const char kEnterpriseReportingInChromeOSName[];
extern const char kEnterpriseReportingInChromeOSDescription[];
extern const char kExoOrdinalMotionName[];
extern const char kExoOrdinalMotionDescription[];
extern const char kExoPointerLockName[];
extern const char kExoPointerLockDescription[];
......
......@@ -189,6 +189,10 @@ const base::Feature kEmojiSuggestAddition{"EmojiSuggestAddition",
const base::Feature kEolWarningNotifications{"EolWarningNotifications",
base::FEATURE_ENABLED_BY_DEFAULT};
// Enable or disable use of ordinal (unaccelerated) motion by Exo clients.
const base::Feature kExoOrdinalMotion{"ExoOrdinalMotion",
base::FEATURE_DISABLED_BY_DEFAULT};
// Enable or disable pointer lock for Crostini windows.
const base::Feature kExoPointerLock{"ExoPointerLock",
base::FEATURE_DISABLED_BY_DEFAULT};
......
......@@ -88,6 +88,8 @@ extern const base::Feature kEmojiSuggestAddition;
COMPONENT_EXPORT(CHROMEOS_CONSTANTS)
extern const base::Feature kEolWarningNotifications;
COMPONENT_EXPORT(CHROMEOS_CONSTANTS)
extern const base::Feature kExoOrdinalMotion;
COMPONENT_EXPORT(CHROMEOS_CONSTANTS)
extern const base::Feature kExoPointerLock;
COMPONENT_EXPORT(CHROMEOS_CONSTANTS) extern const base::Feature kFilesNG;
COMPONENT_EXPORT(CHROMEOS_CONSTANTS) extern const base::Feature kFilesSWA;
......
......@@ -42197,6 +42197,7 @@ from previous Chrome versions.
<int value="-299841473" label="top-document-isolation:enabled"/>
<int value="-297716805"
label="CrossOriginMediaPlaybackRequiresUserGesture:disabled"/>
<int value="-296762162" label="ExoOrdinalMotion:enabled"/>
<int value="-296179618" label="CookiesWithoutSameSiteMustBeSecure:enabled"/>
<int value="-295237704" label="EnableRemovingAllThirdPartyCookies:enabled"/>
<int value="-290672626" label="enable-asm-wasm"/>
......@@ -43179,6 +43180,7 @@ from previous Chrome versions.
<int value="736911267" label="ExperimentalCrostiniUI:disabled"/>
<int value="737421745" label="enable-accessibility-object-model"/>
<int value="738868972" label="GdiTextPrinting:disabled"/>
<int value="738962107" label="ExoOrdinalMotion:disabled"/>
<int value="739938466"
label="WebPaymentsPerMethodCanMakePaymentQuota:disabled"/>
<int value="740056959" label="ImeServiceConnectable:enabled"/>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment