Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8b948e54 authored by Yeabkal Wubshit's avatar Yeabkal Wubshit
Browse files

Refactor enable_touch_scroll_feedback flag

The flag was read-write, but that caused a performance regression (see
b/364725557), so we changed it to read-only. However, the flag ramp
process has been blocked due to this property change.
https://screenshot.googleplex.com/7AqAsAqnHdhtACx
To mitigate this, this change renames the flag, to generate a new flag
ramp process. In addition, we're also changing the namespace to align to
the team that's the primary consumer of the feature, and using a more
specific bug ID.

Flag: android.view.flags.enable_scroll_feedback_for_touch
Test: presubmit
Bug: 382135785
Change-Id: I7adb09dcc6e73996ff69453d770c9fc42f34d5ae
parent ed1b1036
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -591,7 +591,7 @@ public class ViewConfiguration {
                res.getBoolean(
                res.getBoolean(
                        com.android.internal.R.bool.config_viewBasedRotaryEncoderHapticsEnabled);
                        com.android.internal.R.bool.config_viewBasedRotaryEncoderHapticsEnabled);
        mViewTouchScreenHapticScrollFeedbackEnabled =
        mViewTouchScreenHapticScrollFeedbackEnabled =
                Flags.enableTouchScrollFeedback()
                Flags.enableScrollFeedbackForTouch()
                        ? res.getBoolean(
                        ? res.getBoolean(
                        com.android.internal.R.bool
                        com.android.internal.R.bool
                                .config_viewTouchScreenHapticScrollFeedbackEnabled)
                                .config_viewTouchScreenHapticScrollFeedbackEnabled)
+3 −3
Original line number Original line Diff line number Diff line
@@ -17,10 +17,10 @@ flag {
}
}


flag {
flag {
    namespace: "toolkit"
    namespace: "wear_frameworks"
    name: "enable_touch_scroll_feedback"
    name: "enable_scroll_feedback_for_touch"
    description: "Enables touchscreen haptic scroll feedback"
    description: "Enables touchscreen haptic scroll feedback"
    bug: "331830899"
    bug: "382135785"
    is_fixed_read_only: true
    is_fixed_read_only: true
}
}


+3 −3
Original line number Original line Diff line number Diff line
@@ -16,7 +16,7 @@


package android.widget;
package android.widget;


import static android.view.flags.Flags.enableTouchScrollFeedback;
import static android.view.flags.Flags.enableScrollFeedbackForTouch;
import static android.view.flags.Flags.scrollFeedbackApi;
import static android.view.flags.Flags.scrollFeedbackApi;
import static android.view.flags.Flags.viewVelocityApi;
import static android.view.flags.Flags.viewVelocityApi;


@@ -3737,7 +3737,7 @@ public abstract class AbsListView extends AdapterView<ListAdapter> implements Te
                    atEdge = trackMotionScroll(deltaY, incrementalDeltaY);
                    atEdge = trackMotionScroll(deltaY, incrementalDeltaY);


                    // TODO: b/360198915 - Add unit testing for using ScrollFeedbackProvider
                    // TODO: b/360198915 - Add unit testing for using ScrollFeedbackProvider
                    if (enableTouchScrollFeedback()) {
                    if (enableScrollFeedbackForTouch()) {
                        initHapticScrollFeedbackProviderIfNotExists();
                        initHapticScrollFeedbackProviderIfNotExists();
                        mHapticScrollFeedbackProvider.onScrollProgress(
                        mHapticScrollFeedbackProvider.onScrollProgress(
                                vtev.getDeviceId(), vtev.getSource(), MotionEvent.AXIS_Y,
                                vtev.getDeviceId(), vtev.getSource(), MotionEvent.AXIS_Y,
@@ -3779,7 +3779,7 @@ public abstract class AbsListView extends AdapterView<ListAdapter> implements Te
                                    mTouchMode = TOUCH_MODE_OVERSCROLL;
                                    mTouchMode = TOUCH_MODE_OVERSCROLL;
                                }
                                }


                                if (enableTouchScrollFeedback()) {
                                if (enableScrollFeedbackForTouch()) {
                                    initHapticScrollFeedbackProviderIfNotExists();
                                    initHapticScrollFeedbackProviderIfNotExists();
                                    mHapticScrollFeedbackProvider.onScrollLimit(
                                    mHapticScrollFeedbackProvider.onScrollLimit(
                                            vtev.getDeviceId(), vtev.getSource(),
                                            vtev.getDeviceId(), vtev.getSource(),
+2 −2
Original line number Original line Diff line number Diff line
@@ -16,7 +16,7 @@


package android.widget;
package android.widget;


import static android.view.flags.Flags.enableTouchScrollFeedback;
import static android.view.flags.Flags.enableScrollFeedbackForTouch;
import static android.view.flags.Flags.viewVelocityApi;
import static android.view.flags.Flags.viewVelocityApi;


import android.annotation.ColorInt;
import android.annotation.ColorInt;
@@ -909,7 +909,7 @@ public class ScrollView extends FrameLayout {
                }
                }


                // TODO: b/360198915 - Add unit tests.
                // TODO: b/360198915 - Add unit tests.
                if (enableTouchScrollFeedback()) {
                if (enableScrollFeedbackForTouch()) {
                    if (hitTopLimit || hitBottomLimit) {
                    if (hitTopLimit || hitBottomLimit) {
                        initHapticScrollFeedbackProviderIfNotExists();
                        initHapticScrollFeedbackProviderIfNotExists();
                        mHapticScrollFeedbackProvider.onScrollLimit(vtev.getDeviceId(),
                        mHapticScrollFeedbackProvider.onScrollLimit(vtev.getDeviceId(),