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

Commit aa88bca2 authored by Daniel Huang's avatar Daniel Huang Committed by Android (Google) Code Review
Browse files

Merge "Integrate UI with APIs for trackpad settgins."

parents 149cbf04 6125f9a9
Loading
Loading
Loading
Loading
+11 −5
Original line number Diff line number Diff line
@@ -24,39 +24,45 @@
        android:title="@string/trackpad_go_back_title"
        android:summary="@string/trackpad_go_back_summary"
        android:icon="@drawable/ic_trackpad_gesture_back"
        android:order="10"/>
        android:order="10"
        settings:controller="com.android.settings.inputmethod.TrackpadGoBackPreferenceController"/>

    <SwitchPreference
        android:key="gesture_go_home"
        android:title="@string/trackpad_go_home_title"
        android:summary="@string/trackpad_go_home_summary"
        android:icon="@drawable/ic_trackpad_gesture_home"
        android:order="20"/>
        android:order="20"
        settings:controller="com.android.settings.inputmethod.TrackpadGoHomePreferenceController"/>

    <SwitchPreference
        android:key="gesture_recent_apps"
        android:title="@string/trackpad_recent_apps_title"
        android:summary="@string/trackpad_recent_apps_summary"
        android:icon="@drawable/ic_trackpad_gesture_recent_apps"
        android:order="30"/>
        android:order="30"
        settings:controller="com.android.settings.inputmethod.TrackpadRecentAppsPreferenceController"/>

    <SwitchPreference
        android:key="gesture_notifications"
        android:title="@string/trackpad_notifications_title"
        android:summary="@string/trackpad_notifications_summary"
        android:icon="@drawable/ic_trackpad_gesture_notifications"
        android:order="40"/>
        android:order="40"
        settings:controller="com.android.settings.inputmethod.TrackpadNotificationsPreferenceController"/>

    <SwitchPreference
        android:key="gesture_switch_apps"
        android:title="@string/trackpad_switch_apps_title"
        android:summary="@string/trackpad_switch_apps_summary"
        android:icon="@drawable/ic_trackpad_gesture_switch_apps"
        android:order="50"/>
        android:order="50"
        settings:controller="com.android.settings.inputmethod.TrackpadSwitchAppsPreferenceController"/>

    <com.android.settingslib.widget.ButtonPreference
        android:key="trackpad_touch_gesture_developer_mode"
        android:title="@string/trackpad_touch_gesture"
        android:icon="@drawable/ic_trackpad_touch_gestures_inverse"
        android:order="100"
        settings:controller="com.android.settings.inputmethod.TouchGesturesButtonPreferenceController"/>
</PreferenceScreen>
 No newline at end of file
+4 −3
Original line number Diff line number Diff line
@@ -32,6 +32,7 @@
        android:key="trackpad_tap_to_click"
        android:title="@string/trackpad_tap_to_click"
        android:icon="@drawable/ic_trackpad_tap_to_click"
        settings:controller="com.android.settings.inputmethod.TrackpadTapToClickPreferenceController"
        android:order="10"/>

    <SwitchPreference
@@ -39,6 +40,7 @@
        android:title="@string/trackpad_reverse_scrolling_title"
        android:summary="@string/trackpad_reverse_scrolling_summary"
        android:icon="@drawable/ic_trackpad_reverse_scrolling"
        settings:controller="com.android.settings.inputmethod.TrackpadReverseScrollingPreferenceController"
        android:order="20"/>

    <SwitchPreference
@@ -46,6 +48,7 @@
        android:title="@string/trackpad_bottom_right_tap_title"
        android:summary="@string/trackpad_bottom_right_tap_summary"
        android:icon="@drawable/ic_trackpad_reverse_scrolling"
        settings:controller="com.android.settings.inputmethod.TrackpadBottomPreferenceController"
        android:order="30"/>

    <com.android.settings.widget.SeekBarPreference
@@ -54,9 +57,7 @@
        android:icon="@drawable/ic_trackpad_pointer_speed"
        android:order="40"
        android:selectable="false"
        android:max="100"
        android:min="0"
        android:defaultValue="50"/>
        settings:controller="com.android.settings.inputmethod.TrackpadPointerSpeedPreferenceController"/>

    <com.android.settingslib.widget.ButtonPreference
        android:key="trackpad_touch_gesture"
+55 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2023 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.settings.inputmethod;

import android.content.Context;
import android.hardware.input.InputManager;

import com.android.settings.R;
import com.android.settings.core.TogglePreferenceController;

public class TrackpadBottomPreferenceController extends TogglePreferenceController {

    private InputManager mIm;

    public TrackpadBottomPreferenceController(Context context, String key) {
        super(context, key);

        mIm =  context.getSystemService(InputManager.class);
    }

    @Override
    public boolean isChecked() {
        return mIm.useTouchpadRightClickZone(mContext);
    }

    @Override
    public boolean setChecked(boolean isChecked) {
        mIm.setTouchpadRightClickZone(mContext, isChecked);
        return true;
    }

    @Override
    public int getAvailabilityStatus() {
        return AVAILABLE;
    }

    @Override
    public int getSliceHighlightMenuRes() {
        return R.string.menu_key_system;
    }
}
+53 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2023 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.settings.inputmethod;

import android.content.Context;
import android.provider.Settings;

import com.android.settings.R;
import com.android.settings.core.TogglePreferenceController;

public class TrackpadGoBackPreferenceController extends TogglePreferenceController {

    private static final String SETTING_KEY = Settings.Secure.TRACKPAD_GESTURE_BACK_ENABLED;

    public TrackpadGoBackPreferenceController(Context context, String key) {
        super(context, key);
    }

    @Override
    public boolean isChecked() {
        return Settings.Secure.getInt(mContext.getContentResolver(), SETTING_KEY, 1) != 0;
    }

    @Override
    public boolean setChecked(boolean isChecked) {
        Settings.Secure.putInt(mContext.getContentResolver(), SETTING_KEY, isChecked ? 1 : 0);
        return true;
    }

    @Override
    public int getAvailabilityStatus() {
        return AVAILABLE;
    }

    @Override
    public int getSliceHighlightMenuRes() {
        return R.string.menu_key_system;
    }
}
+53 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2023 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.settings.inputmethod;

import android.content.Context;
import android.provider.Settings;

import com.android.settings.R;
import com.android.settings.core.TogglePreferenceController;

public class TrackpadGoHomePreferenceController extends TogglePreferenceController {

    private static final String SETTING_KEY = Settings.Secure.TRACKPAD_GESTURE_HOME_ENABLED;

    public TrackpadGoHomePreferenceController(Context context, String key) {
        super(context, key);
    }

    @Override
    public boolean isChecked() {
        return Settings.Secure.getInt(mContext.getContentResolver(), SETTING_KEY, 1) != 0;
    }

    @Override
    public boolean setChecked(boolean isChecked) {
        Settings.Secure.putInt(mContext.getContentResolver(), SETTING_KEY, isChecked ? 1 : 0);
        return true;
    }

    @Override
    public int getAvailabilityStatus() {
        return AVAILABLE;
    }

    @Override
    public int getSliceHighlightMenuRes() {
        return R.string.menu_key_system;
    }
}
Loading