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

Commit 7fe45b31 authored by Bharath's avatar Bharath
Browse files

Add support to configure double line clock in lockscreen [2/2]



This keeps the Settings entry under Lockscreen Settings for
Double line clock to be configurable.

As a result, this is now consistent with previous Android versions.

Co-authored-by: default avatarLuca Weiss <luca.weiss@fairphone.com>
Bug: 277244307
Test: atest SettingsRoboTests:com.android.settings.display.LockscreenClockPreferenceControllerTest
Change-Id: I08121a1a658cb4045aa30d0bd93e18ca22c3db6d
parent 29ee5744
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -37,7 +37,8 @@ public class LockscreenClockPreferenceController extends TogglePreferenceControl

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

    @Override
@@ -67,4 +68,9 @@ public class LockscreenClockPreferenceController extends TogglePreferenceControl
    public int getSliceHighlightMenuRes() {
        return R.string.menu_key_display;
    }

    protected int getDoublelineClockDefault() {
        return mContext.getResources()
            .getInteger(com.android.internal.R.integer.config_doublelineClockDefault);
    }
}
+15 −0
Original line number Diff line number Diff line
@@ -16,10 +16,14 @@

package com.android.settings.display;

import static org.mockito.Mockito.when;
import static org.mockito.Mockito.spy;

import static com.google.common.truth.Truth.assertThat;

import android.content.ContentResolver;
import android.content.Context;
import android.content.res.Resources;
import android.provider.Settings;

import androidx.preference.Preference;
@@ -42,6 +46,8 @@ public class LockscreenClockPreferenceControllerTest {
    private ContentResolver mContentResolver;
    private LockscreenClockPreferenceController mController;

    private Resources mResources;

    @Mock
    private Preference mPreference;

@@ -51,12 +57,18 @@ public class LockscreenClockPreferenceControllerTest {
        mContext = RuntimeEnvironment.application;
        mContentResolver = mContext.getContentResolver();
        mController = new LockscreenClockPreferenceController(mContext, TEST_KEY);
        mResources = spy(mContext.getResources());
        Context mClockContext = org.mockito.Mockito.mock(Context.class);
        when(mClockContext.getResources()).thenReturn(mResources);
    }

    @Test
    public void isChecked_SettingIs1_returnTrue() {
        Settings.Secure.putInt(mContentResolver, SETTING_KEY, 1);

        when(mResources.getInteger(com.android.internal.R.integer.config_doublelineClockDefault))
            .thenReturn(1);

        assertThat(mController.isChecked()).isTrue();
    }

@@ -64,6 +76,9 @@ public class LockscreenClockPreferenceControllerTest {
    public void isChecked_SettingIs0_returnFalse() {
        Settings.Secure.putInt(mContentResolver, SETTING_KEY, 0);

        when(mResources.getInteger(com.android.internal.R.integer.config_doublelineClockDefault))
            .thenReturn(0);

        assertThat(mController.isChecked()).isFalse();
    }