diff options
author | Michael W <baddaemon87@gmail.com> | 2022-12-28 18:46:34 +0100 |
---|---|---|
committer | Michael W <baddaemon87@gmail.com> | 2023-01-20 18:44:20 +0100 |
commit | b9186997c9328a95164c0544e7e8ef8fc6db36d6 (patch) | |
tree | c9536bf6b05010a0ad39219a089dc4a81ff9feb5 | |
parent | 8324effb1d1c2d354e48cb6d049402c44fe3e6ee (diff) |
DeskClock: Cleanup: Add/Fix annotations
Change-Id: I0908a41a0b13a5c86d33b54cb0837cea2f7d34c7
28 files changed, 89 insertions, 45 deletions
diff --git a/src/com/android/alarmclock/DigitalAppWidgetProvider.java b/src/com/android/alarmclock/DigitalAppWidgetProvider.java index 2c18db737..a258580c8 100644 --- a/src/com/android/alarmclock/DigitalAppWidgetProvider.java +++ b/src/com/android/alarmclock/DigitalAppWidgetProvider.java @@ -529,6 +529,7 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider { return new Sizes(mTargetWidthPx, mTargetHeightPx, mLargestClockFontSizePx); } + @NonNull @Override public String toString() { final StringBuilder builder = new StringBuilder(1000); diff --git a/src/com/android/deskclock/AlarmClockFragment.java b/src/com/android/deskclock/AlarmClockFragment.java index 2cb611d15..efc56fb2f 100644 --- a/src/com/android/deskclock/AlarmClockFragment.java +++ b/src/com/android/deskclock/AlarmClockFragment.java @@ -255,7 +255,7 @@ public final class AlarmClockFragment extends DeskClockFragment implements } @Override - public void onSaveInstanceState(Bundle outState) { + public void onSaveInstanceState(@NonNull Bundle outState) { super.onSaveInstanceState(outState); mAlarmTimeClickHandler.saveInstance(outState); outState.putLong(KEY_EXPANDED_ID, mExpandedAlarmId); @@ -272,13 +272,14 @@ public final class AlarmClockFragment extends DeskClockFragment implements mAlarmUpdateHandler.asyncUpdateAlarm(alarm, false, true); } + @NonNull @Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { return Alarm.getAlarmsCursorLoader(getActivity()); } @Override - public void onLoadFinished(Loader<Cursor> cursorLoader, Cursor data) { + public void onLoadFinished(@NonNull Loader<Cursor> cursorLoader, Cursor data) { final List<AlarmItemHolder> itemHolders = new ArrayList<>(data.getCount()); for (data.moveToFirst(); !data.isAfterLast(); data.moveToNext()) { final Alarm alarm = new Alarm(data); @@ -380,7 +381,7 @@ public final class AlarmClockFragment extends DeskClockFragment implements } @Override - public void onLoaderReset(Loader<Cursor> cursorLoader) { + public void onLoaderReset(@NonNull Loader<Cursor> cursorLoader) { } @Override @@ -434,7 +435,7 @@ public final class AlarmClockFragment extends DeskClockFragment implements private final class ScrollPositionWatcher extends RecyclerView.OnScrollListener implements View.OnLayoutChangeListener { @Override - public void onScrolled(RecyclerView recyclerView, int dx, int dy) { + public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) { setTabScrolledToTop(Utils.isScrolledToTop(mRecyclerView)); } diff --git a/src/com/android/deskclock/AlarmRecyclerView.java b/src/com/android/deskclock/AlarmRecyclerView.java index 13bffcfbb..57469813d 100644 --- a/src/com/android/deskclock/AlarmRecyclerView.java +++ b/src/com/android/deskclock/AlarmRecyclerView.java @@ -17,6 +17,8 @@ package com.android.deskclock; import android.content.Context; + +import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.recyclerview.widget.RecyclerView; import android.util.AttributeSet; @@ -42,7 +44,7 @@ public class AlarmRecyclerView extends RecyclerView { super(context, attrs, defStyle); addOnItemTouchListener(new RecyclerView.SimpleOnItemTouchListener() { @Override - public boolean onInterceptTouchEvent(RecyclerView rv, MotionEvent e) { + public boolean onInterceptTouchEvent(@NonNull RecyclerView rv, @NonNull MotionEvent e) { // Disable scrolling/user action to prevent choppy animations. return rv.getItemAnimator().isRunning(); } diff --git a/src/com/android/deskclock/ClockFragment.java b/src/com/android/deskclock/ClockFragment.java index c78e9cd50..79821ce3e 100644 --- a/src/com/android/deskclock/ClockFragment.java +++ b/src/com/android/deskclock/ClockFragment.java @@ -94,7 +94,7 @@ public final class ClockFragment extends DeskClockFragment { } @Override - public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle icicle) { + public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle icicle) { super.onCreateView(inflater, container, icicle); final View fragmentView = inflater.inflate(R.layout.clock_fragment, container, false); @@ -291,7 +291,7 @@ public final class ClockFragment extends DeskClockFragment { private final class ScrollPositionWatcher extends RecyclerView.OnScrollListener implements View.OnLayoutChangeListener { @Override - public void onScrolled(RecyclerView recyclerView, int dx, int dy) { + public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) { setTabScrolledToTop(Utils.isScrolledToTop(mCityList)); } @@ -339,8 +339,9 @@ public final class ClockFragment extends DeskClockFragment { return WORLD_CLOCK; } + @NonNull @Override - public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { + public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { final View view = mInflater.inflate(viewType, parent, false); switch (viewType) { case WORLD_CLOCK: @@ -353,7 +354,7 @@ public final class ClockFragment extends DeskClockFragment { } @Override - public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { + public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) { final int viewType = getItemViewType(position); switch (viewType) { case WORLD_CLOCK: diff --git a/src/com/android/deskclock/DeskClock.java b/src/com/android/deskclock/DeskClock.java index d5f36cff7..a5a7beae2 100644 --- a/src/com/android/deskclock/DeskClock.java +++ b/src/com/android/deskclock/DeskClock.java @@ -475,8 +475,8 @@ public class DeskClock extends BaseActivity } @Override - public void onRequestPermissionsResult(int requestCode, String[] permissions, - int[] grantResults) { + public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, + @NonNull int[] grantResults) { if (requestCode == CODE_FOR_ALARM_PERMISSION) { if (hasEssentialPermissions()) { LogUtils.i("Essential permissions granted!"); diff --git a/src/com/android/deskclock/DropShadowController.java b/src/com/android/deskclock/DropShadowController.java index 53edd7711..96f95a249 100644 --- a/src/com/android/deskclock/DropShadowController.java +++ b/src/com/android/deskclock/DropShadowController.java @@ -17,6 +17,8 @@ package com.android.deskclock; import android.animation.ValueAnimator; + +import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; import android.view.View; import android.widget.AbsListView; @@ -148,7 +150,7 @@ public final class DropShadowController { // RecyclerView scrolled. @Override - public void onScrolled(RecyclerView view, int dx, int dy) { + public void onScrolled(@NonNull RecyclerView view, int dx, int dy) { updateDropShadow(!Utils.isScrolledToTop(view)); } diff --git a/src/com/android/deskclock/ItemAdapter.java b/src/com/android/deskclock/ItemAdapter.java index a41763694..ca4765343 100644 --- a/src/com/android/deskclock/ItemAdapter.java +++ b/src/com/android/deskclock/ItemAdapter.java @@ -200,6 +200,7 @@ public class ItemAdapter<T extends ItemAdapter.ItemHolder> * @param itemHolder the item holder to add * @return this object, allowing calls to methods in this class to be chained */ + @SuppressWarnings("unused") public ItemAdapter addItem(int position, @NonNull T itemHolder) { itemHolder.addOnItemChangedListener(mItemChangedNotifier); position = Math.min(position, mItemHolders.size()); @@ -257,8 +258,9 @@ public class ItemAdapter<T extends ItemAdapter.ItemHolder> return mItemHolders.get(position).getItemViewType(); } + @NonNull @Override - public ItemViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { + public ItemViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { final ItemViewHolder.Factory factory = mFactoriesByViewType.get(viewType); if (factory != null) { return factory.createViewHolder(parent, viewType); @@ -365,6 +367,7 @@ public class ItemAdapter<T extends ItemAdapter.ItemHolder> * Invokes {@link OnItemChangedListener#onItemChanged(ItemHolder, Object)} for all * listeners added via {@link #addOnItemChangedListener(OnItemChangedListener)}. */ + @SuppressWarnings("unused") public final void notifyItemChanged(Object payload) { for (OnItemChangedListener listener : mOnItemChangedListeners) { listener.onItemChanged(this, payload); diff --git a/src/com/android/deskclock/ItemAnimator.java b/src/com/android/deskclock/ItemAnimator.java index 756d4e951..0a01f147f 100644 --- a/src/com/android/deskclock/ItemAnimator.java +++ b/src/com/android/deskclock/ItemAnimator.java @@ -289,7 +289,7 @@ public class ItemAnimator extends SimpleItemAnimator { } @Override - public void endAnimation(ViewHolder holder) { + public void endAnimation(@NonNull ViewHolder holder) { final Animator animator = mAnimators.get(holder); mAnimators.remove(holder); @@ -337,6 +337,7 @@ public class ItemAnimator extends SimpleItemAnimator { return itemHolderInfo; } + @NonNull @Override public ItemHolderInfo obtainHolderInfo() { return new PayloadItemHolderInfo(); diff --git a/src/com/android/deskclock/LabelDialogFragment.java b/src/com/android/deskclock/LabelDialogFragment.java index d997cdb78..408d65122 100644 --- a/src/com/android/deskclock/LabelDialogFragment.java +++ b/src/com/android/deskclock/LabelDialogFragment.java @@ -117,6 +117,7 @@ public class LabelDialogFragment extends DialogFragment { } } + @NonNull @Override public Dialog onCreateDialog(Bundle savedInstanceState) { final Bundle args = getArguments() == null ? Bundle.EMPTY : getArguments(); diff --git a/src/com/android/deskclock/Utils.java b/src/com/android/deskclock/Utils.java index 03c7fcd50..368f5e482 100644 --- a/src/com/android/deskclock/Utils.java +++ b/src/com/android/deskclock/Utils.java @@ -51,6 +51,7 @@ import android.widget.TextView; import androidx.annotation.AnyRes; import androidx.annotation.DrawableRes; +import androidx.annotation.NonNull; import androidx.annotation.StringRes; import androidx.core.os.BuildCompat; import androidx.core.view.AccessibilityDelegateCompat; @@ -552,7 +553,8 @@ public class Utils { } @Override - public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) { + public void onInitializeAccessibilityNodeInfo(@NonNull View host, + @NonNull AccessibilityNodeInfoCompat info) { super.onInitializeAccessibilityNodeInfo(host, info); if (mIsAlwaysAccessibilityVisible) { info.setVisibleToUser(true); diff --git a/src/com/android/deskclock/alarms/TimePickerDialogFragment.java b/src/com/android/deskclock/alarms/TimePickerDialogFragment.java index f82bea96b..7fb1e0144 100644 --- a/src/com/android/deskclock/alarms/TimePickerDialogFragment.java +++ b/src/com/android/deskclock/alarms/TimePickerDialogFragment.java @@ -23,6 +23,8 @@ import android.content.DialogInterface; import android.os.Bundle; import android.text.format.DateFormat; import android.widget.TimePicker; + +import androidx.annotation.NonNull; import androidx.appcompat.app.AlertDialog; import androidx.fragment.app.DialogFragment; import androidx.fragment.app.Fragment; @@ -45,8 +47,8 @@ public class TimePickerDialogFragment extends DialogFragment { private static final String ARG_HOUR = TAG + "_hour"; private static final String ARG_MINUTE = TAG + "_minute"; + @NonNull @Override - @SuppressWarnings("deprecation") public Dialog onCreateDialog(Bundle savedInstanceState) { final OnTimeSetListener listener = ((OnTimeSetListener) getParentFragment()); diff --git a/src/com/android/deskclock/controller/EventController.java b/src/com/android/deskclock/controller/EventController.java index 457756a2e..729b9180a 100644 --- a/src/com/android/deskclock/controller/EventController.java +++ b/src/com/android/deskclock/controller/EventController.java @@ -31,6 +31,7 @@ class EventController { mEventTrackers.add(eventTracker); } + @SuppressWarnings("unused") void removeEventTracker(EventTracker eventTracker) { mEventTrackers.remove(eventTracker); } diff --git a/src/com/android/deskclock/data/City.java b/src/com/android/deskclock/data/City.java index 7a41d087c..e45248b05 100644 --- a/src/com/android/deskclock/data/City.java +++ b/src/com/android/deskclock/data/City.java @@ -16,6 +16,8 @@ package com.android.deskclock.data; +import androidx.annotation.NonNull; + import java.text.Collator; import java.util.Comparator; import java.util.Locale; @@ -101,6 +103,7 @@ public final class City { return getNameUpperCaseNoSpecialCharacters().startsWith(upperCaseQueryNoSpecialCharacters); } + @NonNull @Override public String toString() { return String.format(Locale.US, diff --git a/src/com/android/deskclock/data/DataModel.java b/src/com/android/deskclock/data/DataModel.java index ae8f1aeb1..5cab97063 100644 --- a/src/com/android/deskclock/data/DataModel.java +++ b/src/com/android/deskclock/data/DataModel.java @@ -65,9 +65,7 @@ public final class DataModel { /** Indicates the reason alarms may not fire or may fire silently. */ public enum SilentSetting { - @SuppressWarnings("unchecked") DO_NOT_DISTURB(R.string.alarms_blocked_by_dnd, 0, Predicate.FALSE, null), - @SuppressWarnings("unchecked") MUTED_VOLUME(R.string.alarm_volume_muted, R.string.unmute_alarm_volume, Predicate.TRUE, @@ -76,7 +74,6 @@ public final class DataModel { R.string.change_setting_action, new ChangeSoundActionPredicate(), new ChangeSoundSettingsListener()), - @SuppressWarnings("unchecked") BLOCKED_NOTIFICATIONS(R.string.app_notifications_blocked, R.string.change_setting_action, Predicate.TRUE, diff --git a/src/com/android/deskclock/data/Weekdays.java b/src/com/android/deskclock/data/Weekdays.java index b5ba73b97..118a6b0a9 100644 --- a/src/com/android/deskclock/data/Weekdays.java +++ b/src/com/android/deskclock/data/Weekdays.java @@ -17,6 +17,8 @@ package com.android.deskclock.data; import android.content.Context; + +import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; import android.util.ArrayMap; @@ -242,6 +244,7 @@ public final class Weekdays { return mBits; } + @NonNull @Override public String toString() { final StringBuilder builder = new StringBuilder(19); diff --git a/src/com/android/deskclock/provider/Alarm.java b/src/com/android/deskclock/provider/Alarm.java index f560dea5d..5e0832509 100644 --- a/src/com/android/deskclock/provider/Alarm.java +++ b/src/com/android/deskclock/provider/Alarm.java @@ -26,6 +26,8 @@ import android.media.RingtoneManager; import android.net.Uri; import android.os.Parcel; import android.os.Parcelable; + +import androidx.annotation.NonNull; import android.os.ParcelUuid; import androidx.loader.content.CursorLoader; @@ -464,6 +466,7 @@ public final class Alarm implements Parcelable, ClockContract.AlarmsColumns { return Long.valueOf(id).hashCode(); } + @NonNull @Override public String toString() { return "Alarm{" + diff --git a/src/com/android/deskclock/provider/AlarmInstance.java b/src/com/android/deskclock/provider/AlarmInstance.java index a7502b740..d0a99168e 100644 --- a/src/com/android/deskclock/provider/AlarmInstance.java +++ b/src/com/android/deskclock/provider/AlarmInstance.java @@ -25,6 +25,8 @@ import android.database.Cursor; import android.media.RingtoneManager; import android.net.Uri; +import androidx.annotation.NonNull; + import com.android.deskclock.LogUtils; import com.android.deskclock.R; import com.android.deskclock.alarms.AlarmStateManager; @@ -466,6 +468,7 @@ public final class AlarmInstance implements ClockContract.InstancesColumns { return Long.valueOf(mId).hashCode(); } + @NonNull @Override public String toString() { return "AlarmInstance{" + diff --git a/src/com/android/deskclock/ringtone/RingtonePickerActivity.java b/src/com/android/deskclock/ringtone/RingtonePickerActivity.java index 94dc9baad..a6d7f2d43 100644 --- a/src/com/android/deskclock/ringtone/RingtonePickerActivity.java +++ b/src/com/android/deskclock/ringtone/RingtonePickerActivity.java @@ -44,6 +44,7 @@ import android.provider.MediaStore; import android.view.LayoutInflater; import android.view.MenuItem; +import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; import androidx.appcompat.app.AlertDialog; import androidx.recyclerview.widget.LinearLayoutManager; @@ -181,7 +182,7 @@ public class RingtonePickerActivity extends CollapsingToolbarBaseActivity mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() { @Override - public void onScrollStateChanged(RecyclerView recyclerView, int newState) { + public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) { if (mIndexOfRingtoneToRemove != RecyclerView.NO_POSITION) { closeContextMenu(); } @@ -241,7 +242,7 @@ public class RingtonePickerActivity extends CollapsingToolbarBaseActivity } @Override - protected void onSaveInstanceState(Bundle outState) { + protected void onSaveInstanceState(@NonNull Bundle outState) { super.onSaveInstanceState(outState); outState.putBoolean(STATE_KEY_PLAYING, mIsPlaying); @@ -330,7 +331,7 @@ public class RingtonePickerActivity extends CollapsingToolbarBaseActivity return null; } - @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE) + @VisibleForTesting RingtoneHolder getSelectedRingtoneHolder() { return getRingtoneHolder(mSelectedRingtoneUri); } diff --git a/src/com/android/deskclock/settings/SimpleMenuPreference.java b/src/com/android/deskclock/settings/SimpleMenuPreference.java index faead0f0f..9c8437f3f 100644 --- a/src/com/android/deskclock/settings/SimpleMenuPreference.java +++ b/src/com/android/deskclock/settings/SimpleMenuPreference.java @@ -54,6 +54,7 @@ public class SimpleMenuPreference extends DropDownPreference { super(context, attrs, defStyleAttr, defStyleRes); } + @NonNull @Override protected ArrayAdapter createAdapter() { mAdapter = new SimpleMenuAdapter(getContext(), R.layout.simple_menu_dropdown_item); diff --git a/src/com/android/deskclock/stopwatch/LapsAdapter.java b/src/com/android/deskclock/stopwatch/LapsAdapter.java index c20e10703..733ec766a 100644 --- a/src/com/android/deskclock/stopwatch/LapsAdapter.java +++ b/src/com/android/deskclock/stopwatch/LapsAdapter.java @@ -17,6 +17,8 @@ package com.android.deskclock.stopwatch; import android.content.Context; + +import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; import androidx.recyclerview.widget.RecyclerView; import android.text.format.DateUtils; @@ -78,14 +80,15 @@ class LapsAdapter extends RecyclerView.Adapter<LapsAdapter.LapItemHolder> { return currentLapCount + lapCount; } + @NonNull @Override - public LapItemHolder onCreateViewHolder(ViewGroup parent, int viewType) { + public LapItemHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { final View v = mInflater.inflate(R.layout.lap_view, parent, false /* attachToRoot */); return new LapItemHolder(v); } @Override - public void onBindViewHolder(LapItemHolder viewHolder, int position) { + public void onBindViewHolder(@NonNull LapItemHolder viewHolder, int position) { final long lapTime; final int lapNumber; final long totalTime; diff --git a/src/com/android/deskclock/stopwatch/StopwatchFragment.java b/src/com/android/deskclock/stopwatch/StopwatchFragment.java index ea04a167b..9bd6bda40 100644 --- a/src/com/android/deskclock/stopwatch/StopwatchFragment.java +++ b/src/com/android/deskclock/stopwatch/StopwatchFragment.java @@ -359,7 +359,6 @@ public final class StopwatchFragment extends DeskClockFragment { final String text = mLapsAdapter.getShareText(); @SuppressLint("InlinedApi") - @SuppressWarnings("deprecation") final Intent shareIntent = new Intent(Intent.ACTION_SEND) .addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT) .putExtra(Intent.EXTRA_SUBJECT, subject) @@ -649,7 +648,7 @@ public final class StopwatchFragment extends DeskClockFragment { private final class ScrollPositionWatcher extends RecyclerView.OnScrollListener implements View.OnLayoutChangeListener { @Override - public void onScrolled(RecyclerView recyclerView, int dx, int dy) { + public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) { setTabScrolledToTop(Utils.isScrolledToTop(mLapsList)); } @@ -715,7 +714,7 @@ public final class StopwatchFragment extends DeskClockFragment { } @Override - public void onDrawOver(Canvas c, RecyclerView parent, RecyclerView.State state) { + public void onDrawOver(@NonNull Canvas c, @NonNull RecyclerView parent, @NonNull RecyclerView.State state) { super.onDrawOver(c, parent, state); final int w = parent.getWidth(); diff --git a/src/com/android/deskclock/timer/TimerFragment.java b/src/com/android/deskclock/timer/TimerFragment.java index 702962703..ab74f4f04 100644 --- a/src/com/android/deskclock/timer/TimerFragment.java +++ b/src/com/android/deskclock/timer/TimerFragment.java @@ -227,7 +227,7 @@ public final class TimerFragment extends DeskClockFragment { } @Override - public void onSaveInstanceState(Bundle outState) { + public void onSaveInstanceState(@NonNull Bundle outState) { super.onSaveInstanceState(outState); // If the timer creation view is visible, store the input for later restoration. diff --git a/src/com/android/deskclock/timer/TimerItemFragment.java b/src/com/android/deskclock/timer/TimerItemFragment.java index 33b904285..ba52d4446 100644 --- a/src/com/android/deskclock/timer/TimerItemFragment.java +++ b/src/com/android/deskclock/timer/TimerItemFragment.java @@ -21,6 +21,8 @@ import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; + +import androidx.annotation.NonNull; import androidx.fragment.app.Fragment; import com.android.deskclock.LabelDialogFragment; @@ -54,8 +56,8 @@ public class TimerItemFragment extends Fragment { } @Override - public View onCreateView(LayoutInflater inflater, ViewGroup container, - Bundle savedInstanceState) { + public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { final Timer timer = getTimer(); if (timer == null) { return null; diff --git a/src/com/android/deskclock/timer/TimerPagerAdapter.java b/src/com/android/deskclock/timer/TimerPagerAdapter.java index f678866aa..2d9cf3f1d 100644 --- a/src/com/android/deskclock/timer/TimerPagerAdapter.java +++ b/src/com/android/deskclock/timer/TimerPagerAdapter.java @@ -20,6 +20,8 @@ import android.annotation.SuppressLint; import android.util.ArrayMap; import android.view.View; import android.view.ViewGroup; + +import androidx.annotation.NonNull; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentTransaction; @@ -58,12 +60,12 @@ class TimerPagerAdapter extends PagerAdapter implements TimerListener { } @Override - public boolean isViewFromObject(View view, Object object) { + public boolean isViewFromObject(@NonNull View view, @NonNull Object object) { return ((Fragment) object).getView() == view; } @Override - public int getItemPosition(Object object) { + public int getItemPosition(@NonNull Object object) { final TimerItemFragment fragment = (TimerItemFragment) object; final Timer timer = fragment.getTimer(); @@ -71,9 +73,10 @@ class TimerPagerAdapter extends PagerAdapter implements TimerListener { return position == -1 ? POSITION_NONE : position; } + @NonNull @Override @SuppressLint("CommitTransaction") - public Fragment instantiateItem(ViewGroup container, int position) { + public Fragment instantiateItem(@NonNull ViewGroup container, int position) { if (mCurrentTransaction == null) { mCurrentTransaction = mFragmentManager.beginTransaction(); } @@ -104,7 +107,7 @@ class TimerPagerAdapter extends PagerAdapter implements TimerListener { @Override @SuppressLint("CommitTransaction") - public void destroyItem(ViewGroup container, int position, Object object) { + public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) { final TimerItemFragment fragment = (TimerItemFragment) object; if (mCurrentTransaction == null) { @@ -116,7 +119,7 @@ class TimerPagerAdapter extends PagerAdapter implements TimerListener { } @Override - public void setPrimaryItem(ViewGroup container, int position, Object object) { + public void setPrimaryItem(@NonNull ViewGroup container, int position, @NonNull Object object) { final Fragment fragment = (Fragment) object; if (fragment != mCurrentPrimaryItem) { if (mCurrentPrimaryItem != null) { @@ -132,7 +135,7 @@ class TimerPagerAdapter extends PagerAdapter implements TimerListener { } @Override - public void finishUpdate(ViewGroup container) { + public void finishUpdate(@NonNull ViewGroup container) { if (mCurrentTransaction != null) { mCurrentTransaction.commitAllowingStateLoss(); mCurrentTransaction = null; diff --git a/src/com/android/deskclock/uidata/UiDataModel.java b/src/com/android/deskclock/uidata/UiDataModel.java index c0d780696..8db9549e3 100644 --- a/src/com/android/deskclock/uidata/UiDataModel.java +++ b/src/com/android/deskclock/uidata/UiDataModel.java @@ -19,6 +19,8 @@ package com.android.deskclock.uidata; import android.content.Context; import android.content.SharedPreferences; import android.graphics.Typeface; + +import androidx.annotation.IdRes; import androidx.annotation.IntegerRes; import androidx.annotation.StringRes; @@ -45,7 +47,7 @@ public final class UiDataModel { STOPWATCH(StopwatchFragment.class, R.id.page_stopwatch, R.string.menu_stopwatch); private final String mFragmentClassName; - private final @IntegerRes int mPageResId; + private final @IdRes int mPageResId; private final @StringRes int mLabelResId; Tab(Class fragmentClass, @IntegerRes int pageResId, @StringRes int labelResId) { @@ -55,7 +57,7 @@ public final class UiDataModel { } public String getFragmentClassName() { return mFragmentClassName; } - public @IntegerRes int getPageResId() { return mPageResId; } + public @IdRes int getPageResId() { return mPageResId; } public @StringRes int getLabelResId() { return mLabelResId; } } diff --git a/src/com/android/deskclock/widget/TextTime.java b/src/com/android/deskclock/widget/TextTime.java index e0cea474b..e5a7b10d9 100644 --- a/src/com/android/deskclock/widget/TextTime.java +++ b/src/com/android/deskclock/widget/TextTime.java @@ -46,9 +46,9 @@ public class TextTime extends TextView { /** UTC does not have DST rules and will not alter the {@link #mHour} and {@link #mMinute}. */ private static final TimeZone UTC = TimeZone.getTimeZone("UTC"); - @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE) + @VisibleForTesting static final CharSequence DEFAULT_FORMAT_12_HOUR = "h:mm a"; - @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE) + @VisibleForTesting static final CharSequence DEFAULT_FORMAT_24_HOUR = "H:mm"; private CharSequence mFormat12; diff --git a/src/com/android/deskclock/widget/toast/SnackbarSlidingBehavior.java b/src/com/android/deskclock/widget/toast/SnackbarSlidingBehavior.java index 84cbcfffb..5db029d94 100644 --- a/src/com/android/deskclock/widget/toast/SnackbarSlidingBehavior.java +++ b/src/com/android/deskclock/widget/toast/SnackbarSlidingBehavior.java @@ -18,6 +18,7 @@ package com.android.deskclock.widget.toast; import android.content.Context; import androidx.annotation.Keep; +import androidx.annotation.NonNull; import androidx.coordinatorlayout.widget.CoordinatorLayout; import com.google.android.material.snackbar.Snackbar; import android.util.AttributeSet; @@ -33,23 +34,27 @@ public final class SnackbarSlidingBehavior extends CoordinatorLayout.Behavior<Vi } @Override - public boolean layoutDependsOn(CoordinatorLayout parent, View child, View dependency) { + public boolean layoutDependsOn(@NonNull CoordinatorLayout parent, @NonNull View child, + @NonNull View dependency) { return dependency instanceof Snackbar.SnackbarLayout; } @Override - public boolean onDependentViewChanged(CoordinatorLayout parent, View child, View dependency) { + public boolean onDependentViewChanged(@NonNull CoordinatorLayout parent, @NonNull View child, + @NonNull View dependency) { updateTranslationY(parent, child); return false; } @Override - public void onDependentViewRemoved(CoordinatorLayout parent, View child, View dependency) { + public void onDependentViewRemoved(@NonNull CoordinatorLayout parent, @NonNull View child, + @NonNull View dependency) { updateTranslationY(parent, child); } @Override - public boolean onLayoutChild(CoordinatorLayout parent, View child, int layoutDirection) { + public boolean onLayoutChild(@NonNull CoordinatorLayout parent, @NonNull View child, + int layoutDirection) { updateTranslationY(parent, child); return false; } diff --git a/src/com/android/deskclock/worldclock/CitySelectionActivity.java b/src/com/android/deskclock/worldclock/CitySelectionActivity.java index d923ad8fa..ef6fbf1fa 100644 --- a/src/com/android/deskclock/worldclock/CitySelectionActivity.java +++ b/src/com/android/deskclock/worldclock/CitySelectionActivity.java @@ -18,6 +18,8 @@ package com.android.deskclock.worldclock; import android.content.Context; import android.os.Bundle; + +import androidx.annotation.NonNull; import androidx.appcompat.widget.SearchView; import android.text.TextUtils; import android.text.format.DateFormat; @@ -134,7 +136,7 @@ public final class CitySelectionActivity extends BaseActivity { } @Override - public void onSaveInstanceState(Bundle bundle) { + public void onSaveInstanceState(@NonNull Bundle bundle) { super.onSaveInstanceState(bundle); mSearchMenuItemController.saveInstance(bundle); } |