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

Commit b2944f3e authored by Yuhan Yang's avatar Yuhan Yang Committed by Android (Google) Code Review
Browse files

Merge "Add metric for mouse scrolling setting changes" into main

parents fe44ea6c d168aaf1
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.settings.inputmethod;

import android.app.settings.SettingsEnums;
import android.content.Context;
import android.hardware.input.InputSettings;

@@ -23,12 +24,17 @@ import androidx.annotation.NonNull;

import com.android.settings.R;
import com.android.settings.core.TogglePreferenceController;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;

public class MouseScrollingAccelerationPreferenceController extends TogglePreferenceController {

    private final MetricsFeatureProvider mMetricsFeatureProvider;

    public MouseScrollingAccelerationPreferenceController(
            @NonNull Context context, @NonNull String key) {
        super(context, key);
        mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
    }

    @Override
@@ -39,6 +45,9 @@ public class MouseScrollingAccelerationPreferenceController extends TogglePrefer
    @Override
    public boolean setChecked(boolean isChecked) {
        InputSettings.setMouseScrollingAcceleration(mContext, !isChecked);
        mMetricsFeatureProvider.action(mContext,
                isChecked ? SettingsEnums.ACTION_MOUSE_SCROLLING_ACCELERATION_DISABLED :
                            SettingsEnums.ACTION_MOUSE_SCROLLING_ACCELERATION_ENABLED);
        return true;
    }

+8 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.settings.inputmethod;

import android.app.settings.SettingsEnums;
import android.content.ContentResolver;
import android.content.Context;
import android.database.ContentObserver;
@@ -30,7 +31,9 @@ import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;

import com.android.settings.core.SliderPreferenceController;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.widget.SeekBarPreference;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;
@@ -39,6 +42,8 @@ import com.android.settingslib.core.lifecycle.events.OnStop;
public class MouseScrollingSpeedPreferenceController extends SliderPreferenceController implements
        Preference.OnPreferenceChangeListener, LifecycleObserver, OnStop, OnStart  {

    private final MetricsFeatureProvider mMetricsFeatureProvider;

    private final ContentResolver mContentResolver;
    private final ContentObserver mContentObserver;

@@ -48,6 +53,7 @@ public class MouseScrollingSpeedPreferenceController extends SliderPreferenceCon
    public MouseScrollingSpeedPreferenceController(@NonNull Context context, @NonNull String key) {
        super(context, key);

        mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
        mContentResolver = context.getContentResolver();
        mContentObserver = new ContentObserver(new Handler(Looper.getMainLooper())) {
            @Override
@@ -81,6 +87,8 @@ public class MouseScrollingSpeedPreferenceController extends SliderPreferenceCon
            return false;
        }
        InputSettings.setMouseScrollingSpeed(mContext, position);
        mMetricsFeatureProvider.action(
                mContext, SettingsEnums.ACTION_MOUSE_SCROLLING_SPEED_CHANGED, position);

        return true;
    }