Loading src/com/android/deskclock/timer/TimerAdapter.java +4 −1 Original line number Diff line number Diff line Loading @@ -41,9 +41,11 @@ class TimerAdapter extends RecyclerView.Adapter implements TimerListener { /** Maps each timer id to the corresponding {@link TimerViewHolder} that draws it. */ private final Map<Integer, TimerViewHolder> mHolders = new ArrayMap<>(); private final TimerClickHandler mTimerClickHandler; private final TimerBindHandler mTimerBindHandler; public TimerAdapter(TimerClickHandler timerClickHandler) { public TimerAdapter(TimerClickHandler timerClickHandler, TimerBindHandler timerBindHandler) { mTimerClickHandler = timerClickHandler; mTimerBindHandler = timerBindHandler; } @Override Loading @@ -65,6 +67,7 @@ class TimerAdapter extends RecyclerView.Adapter implements TimerListener { TimerViewHolder holder = (TimerViewHolder) itemViewHolder; mHolders.put(getTimer(position).getId(), holder); holder.onBind(getTimer(position).getId()); mTimerBindHandler.onBindTimer(); } @Override Loading src/com/android/deskclock/timer/TimerBindHandler.java 0 → 100644 +38 −0 Original line number Diff line number Diff line /* * Copyright (C) 2025 The LineageOS 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.deskclock.timer; import androidx.fragment.app.Fragment; import com.android.deskclock.data.Timer; import com.android.deskclock.timer.TimerFragment; /** * Handler to start updating time. */ public final class TimerBindHandler { private final TimerFragment mTimerFragment; public TimerBindHandler(TimerFragment timerFragment) { mTimerFragment = timerFragment; } public void onBindTimer() { mTimerFragment.onBindTimer(); } } src/com/android/deskclock/timer/TimerFragment.java +8 −2 Original line number Diff line number Diff line Loading @@ -80,6 +80,7 @@ public final class TimerFragment extends DeskClockFragment { private View mCurrentView; private RecyclerView mRecyclerView; private TimerClickHandler mTimerClickHandler; private TimerBindHandler mTimerBindHandler; private Serializable mTimerSetupState; Loading @@ -104,7 +105,8 @@ public final class TimerFragment extends DeskClockFragment { final View view = inflater.inflate(R.layout.timer_fragment, container, false); mTimerClickHandler = new TimerClickHandler(this); mAdapter = new TimerAdapter(mTimerClickHandler); mTimerBindHandler = new TimerBindHandler(this); mAdapter = new TimerAdapter(mTimerClickHandler, mTimerBindHandler); mRecyclerView = view.findViewById(R.id.recycler_view); mRecyclerView.setAdapter(mAdapter); mRecyclerView.setLayoutManager(getLayoutManager(view.getContext())); Loading Loading @@ -318,6 +320,10 @@ public final class TimerFragment extends DeskClockFragment { return super.onKeyDown(keyCode, event); } public void onBindTimer() { startUpdatingTime(); } /** * Display the view that creates a new timer. */ Loading Loading @@ -468,7 +474,7 @@ public final class TimerFragment extends DeskClockFragment { private Timer getTimer() { if (mAdapter == null) { TimerAdapter adapter = new TimerAdapter(mTimerClickHandler); TimerAdapter adapter = new TimerAdapter(mTimerClickHandler, mTimerBindHandler); return adapter.getItemCount() == 0 ? null : adapter.getTimer(0); } Loading src/com/android/deskclock/timer/TimerViewHolder.java +4 −3 Original line number Diff line number Diff line Loading @@ -56,7 +56,6 @@ public class TimerViewHolder extends RecyclerView.ViewHolder { public void onBind(int timerId) { mTimerId = timerId; updateTime(); } private void setLayoutParams(View view) { Loading @@ -78,9 +77,11 @@ public class TimerViewHolder extends RecyclerView.ViewHolder { final TimerItem view = mTimerItem; if (view != null) { final Timer timer = getTimer(); if (timer != null) { view.update(timer); return !timer.isReset(); } } return false; } Loading Loading
src/com/android/deskclock/timer/TimerAdapter.java +4 −1 Original line number Diff line number Diff line Loading @@ -41,9 +41,11 @@ class TimerAdapter extends RecyclerView.Adapter implements TimerListener { /** Maps each timer id to the corresponding {@link TimerViewHolder} that draws it. */ private final Map<Integer, TimerViewHolder> mHolders = new ArrayMap<>(); private final TimerClickHandler mTimerClickHandler; private final TimerBindHandler mTimerBindHandler; public TimerAdapter(TimerClickHandler timerClickHandler) { public TimerAdapter(TimerClickHandler timerClickHandler, TimerBindHandler timerBindHandler) { mTimerClickHandler = timerClickHandler; mTimerBindHandler = timerBindHandler; } @Override Loading @@ -65,6 +67,7 @@ class TimerAdapter extends RecyclerView.Adapter implements TimerListener { TimerViewHolder holder = (TimerViewHolder) itemViewHolder; mHolders.put(getTimer(position).getId(), holder); holder.onBind(getTimer(position).getId()); mTimerBindHandler.onBindTimer(); } @Override Loading
src/com/android/deskclock/timer/TimerBindHandler.java 0 → 100644 +38 −0 Original line number Diff line number Diff line /* * Copyright (C) 2025 The LineageOS 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.deskclock.timer; import androidx.fragment.app.Fragment; import com.android.deskclock.data.Timer; import com.android.deskclock.timer.TimerFragment; /** * Handler to start updating time. */ public final class TimerBindHandler { private final TimerFragment mTimerFragment; public TimerBindHandler(TimerFragment timerFragment) { mTimerFragment = timerFragment; } public void onBindTimer() { mTimerFragment.onBindTimer(); } }
src/com/android/deskclock/timer/TimerFragment.java +8 −2 Original line number Diff line number Diff line Loading @@ -80,6 +80,7 @@ public final class TimerFragment extends DeskClockFragment { private View mCurrentView; private RecyclerView mRecyclerView; private TimerClickHandler mTimerClickHandler; private TimerBindHandler mTimerBindHandler; private Serializable mTimerSetupState; Loading @@ -104,7 +105,8 @@ public final class TimerFragment extends DeskClockFragment { final View view = inflater.inflate(R.layout.timer_fragment, container, false); mTimerClickHandler = new TimerClickHandler(this); mAdapter = new TimerAdapter(mTimerClickHandler); mTimerBindHandler = new TimerBindHandler(this); mAdapter = new TimerAdapter(mTimerClickHandler, mTimerBindHandler); mRecyclerView = view.findViewById(R.id.recycler_view); mRecyclerView.setAdapter(mAdapter); mRecyclerView.setLayoutManager(getLayoutManager(view.getContext())); Loading Loading @@ -318,6 +320,10 @@ public final class TimerFragment extends DeskClockFragment { return super.onKeyDown(keyCode, event); } public void onBindTimer() { startUpdatingTime(); } /** * Display the view that creates a new timer. */ Loading Loading @@ -468,7 +474,7 @@ public final class TimerFragment extends DeskClockFragment { private Timer getTimer() { if (mAdapter == null) { TimerAdapter adapter = new TimerAdapter(mTimerClickHandler); TimerAdapter adapter = new TimerAdapter(mTimerClickHandler, mTimerBindHandler); return adapter.getItemCount() == 0 ? null : adapter.getTimer(0); } Loading
src/com/android/deskclock/timer/TimerViewHolder.java +4 −3 Original line number Diff line number Diff line Loading @@ -56,7 +56,6 @@ public class TimerViewHolder extends RecyclerView.ViewHolder { public void onBind(int timerId) { mTimerId = timerId; updateTime(); } private void setLayoutParams(View view) { Loading @@ -78,9 +77,11 @@ public class TimerViewHolder extends RecyclerView.ViewHolder { final TimerItem view = mTimerItem; if (view != null) { final Timer timer = getTimer(); if (timer != null) { view.update(timer); return !timer.isReset(); } } return false; } Loading