Skip to content

Commit 68ef9a1

Browse files
author
Arpit Singh
committed
Add dev option override flag to connected display cursor flag
Adding the dev option flag that guards the dev option UI before checking the override value. We will fall back to connected displays cursor flag if dev option override is not available. Test: manual and presubmit Bug: 401213103 Flag: EXEMPT only changes the flagging logic Change-Id: Ib9fb9a66deaf1d58b36218039d1854e287be7ce5
1 parent c93479c commit 68ef9a1

3 files changed

Lines changed: 20 additions & 1 deletion

File tree

include/input/InputFlags.h

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,21 @@ class InputFlags {
2222
public:
2323
/**
2424
* Check if connected displays feature is enabled, either via the feature flag or settings
25-
* override.
25+
* override. Developer setting override allows enabling all the "desktop experiences" features
26+
* including input related connected_displays_cursor flag.
27+
*
28+
* The developer settings override is prioritised over aconfig flags. Any tests that require
29+
* applicable aconfig flags to be disabled with SCOPED_FLAG_OVERRIDE also need this developer
30+
* option to be reset locally.
31+
*
32+
* Also note the developer setting override is only applicable to the desktop experiences
33+
* related features.
34+
*
35+
* To enable only the input flag run:
36+
* adb shell aflags enable com.android.input.flags.connected_displays_cursor
37+
* To override this flag and enable all "desktop experiences" features run:
38+
* adb shell aflags enable com.android.window.flags.enable_desktop_mode_through_dev_option
39+
* adb shell setprop persist.wm.debug.desktop_experience_devopts 1
2640
*/
2741
static bool connectedDisplaysCursorEnabled();
2842

libs/input/Android.bp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,7 @@ cc_library {
270270

271271
shared_libs: [
272272
"android.companion.virtualdevice.flags-aconfig-cc",
273+
"com.android.window.flags.window-aconfig_flags_c_lib",
273274
"libPlatformProperties",
274275
"libaconfig_storage_read_api_cc",
275276
"libbase",

libs/input/InputFlags.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,17 @@
1818

1919
#include <android-base/logging.h>
2020
#include <com_android_input_flags.h>
21+
#include <com_android_window_flags.h>
2122
#include <cutils/properties.h>
2223

2324
#include <string>
2425

2526
namespace android {
2627

2728
bool InputFlags::connectedDisplaysCursorEnabled() {
29+
if (!com::android::window::flags::enable_desktop_mode_through_dev_option()) {
30+
return com::android::input::flags::connected_displays_cursor();
31+
}
2832
static std::optional<bool> cachedDevOption;
2933
if (!cachedDevOption.has_value()) {
3034
char value[PROPERTY_VALUE_MAX];

0 commit comments

Comments
 (0)