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

Commit be0d05c5 authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka Committed by Android (Google) Code Review
Browse files

Merge "Move important notice version to resource"

parents d245f6c9 5b8ffad2
Loading
Loading
Loading
Loading
+24 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
**
** Copyright 2014, 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.
*/
-->

<resources>
    <integer name="config_important_notice_version">0</integer>
    <!-- TODO: Add important notice title and description string resources. -->
</resources>
+8 −6
Original line number Diff line number Diff line
@@ -22,13 +22,11 @@ import android.provider.Settings;
import android.provider.Settings.SettingNotFoundException;
import android.util.Log;

import com.android.inputmethod.latin.R;

public final class ImportantNoticeUtils {
    private static final String TAG = ImportantNoticeUtils.class.getSimpleName();

    // The current version number of an important notice.
    // This number must be incremented whenever users should see a new important notice.
    private static final int CURRENT_IMPORTANT_NOTICE_VERSION = 0;

    // {@link SharedPreferences} name to save the last important notice version that has been
    // displayed to users.
    private static final String PREFERENCE_NAME = "important_notice";
@@ -60,16 +58,20 @@ public final class ImportantNoticeUtils {
        return context.getSharedPreferences(PREFERENCE_NAME, Context.MODE_PRIVATE);
    }

    private static int getCurrentImportantNoticeVersion(final Context context) {
        return context.getResources().getInteger(R.integer.config_important_notice_version);
    }

    public static boolean hasNewImportantNotice(final Context context) {
        final SharedPreferences prefs = getImportantNoticePreferences(context);
        final int lastVersion = prefs.getInt(KEY_IMPORTANT_NOTICE_VERSION, 0);
        return CURRENT_IMPORTANT_NOTICE_VERSION > lastVersion;
        return getCurrentImportantNoticeVersion(context) > lastVersion;
    }

    public static void updateLastImportantNoticeVersion(final Context context) {
        final SharedPreferences prefs = getImportantNoticePreferences(context);
        prefs.edit()
                .putInt(KEY_IMPORTANT_NOTICE_VERSION, CURRENT_IMPORTANT_NOTICE_VERSION)
                .putInt(KEY_IMPORTANT_NOTICE_VERSION, getCurrentImportantNoticeVersion(context))
                .apply();
    }
}