diff --git a/app/src/main/kotlin/com/simplemobiletools/clock/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/clock/activities/MainActivity.kt index 3ea84987..e960c841 100644 --- a/app/src/main/kotlin/com/simplemobiletools/clock/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/clock/activities/MainActivity.kt @@ -128,6 +128,10 @@ class MainActivity : SimpleActivity() { } } + fun updateClockTabAlarm() { + getViewPagerAdapter()?.updateClockTabAlarm() + } + private fun getViewPagerAdapter() = view_pager.adapter as? ViewPagerAdapter private fun initFragments() { diff --git a/app/src/main/kotlin/com/simplemobiletools/clock/adapters/ViewPagerAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/clock/adapters/ViewPagerAdapter.kt index 4516fbc2..3ecbf0a7 100644 --- a/app/src/main/kotlin/com/simplemobiletools/clock/adapters/ViewPagerAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/clock/adapters/ViewPagerAdapter.kt @@ -10,6 +10,7 @@ import com.simplemobiletools.clock.fragments.StopwatchFragment import com.simplemobiletools.clock.fragments.TimerFragment import com.simplemobiletools.clock.helpers.TABS_COUNT import com.simplemobiletools.clock.helpers.TAB_ALARM +import com.simplemobiletools.clock.helpers.TAB_CLOCK import com.simplemobiletools.clock.helpers.TAB_TIMER import com.simplemobiletools.commons.models.AlarmSound @@ -37,6 +38,10 @@ class ViewPagerAdapter(fm: FragmentManager) : FragmentStatePagerAdapter(fm) { else -> throw RuntimeException("Trying to fetch unknown fragment id $position") } + fun updateClockTabAlarm() { + (fragments[TAB_CLOCK] as ClockFragment).updateAlarm() + } + fun updateAlarmTabAlarmSound(alarmSound: AlarmSound) { (fragments[TAB_ALARM] as AlarmFragment).updateAlarmSound(alarmSound) } diff --git a/app/src/main/kotlin/com/simplemobiletools/clock/fragments/AlarmFragment.kt b/app/src/main/kotlin/com/simplemobiletools/clock/fragments/AlarmFragment.kt index 4a9d7697..a4885a98 100644 --- a/app/src/main/kotlin/com/simplemobiletools/clock/fragments/AlarmFragment.kt +++ b/app/src/main/kotlin/com/simplemobiletools/clock/fragments/AlarmFragment.kt @@ -6,6 +6,7 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import com.simplemobiletools.clock.R +import com.simplemobiletools.clock.activities.MainActivity import com.simplemobiletools.clock.activities.SimpleActivity import com.simplemobiletools.clock.adapters.AlarmsAdapter import com.simplemobiletools.clock.dialogs.EditAlarmDialog @@ -105,6 +106,7 @@ class AlarmFragment : Fragment(), ToggleAlarmInterface { } else { context?.cancelAlarmClock(alarm) } + (activity as? MainActivity)?.updateClockTabAlarm() } fun updateAlarmSound(alarmSound: AlarmSound) { diff --git a/app/src/main/kotlin/com/simplemobiletools/clock/fragments/ClockFragment.kt b/app/src/main/kotlin/com/simplemobiletools/clock/fragments/ClockFragment.kt index 591cee04..855d379a 100644 --- a/app/src/main/kotlin/com/simplemobiletools/clock/fragments/ClockFragment.kt +++ b/app/src/main/kotlin/com/simplemobiletools/clock/fragments/ClockFragment.kt @@ -11,10 +11,7 @@ import com.simplemobiletools.clock.activities.SimpleActivity import com.simplemobiletools.clock.adapters.TimeZonesAdapter import com.simplemobiletools.clock.dialogs.AddTimeZonesDialog import com.simplemobiletools.clock.dialogs.EditTimeZoneDialog -import com.simplemobiletools.clock.extensions.config -import com.simplemobiletools.clock.extensions.getAllTimeZonesModified -import com.simplemobiletools.clock.extensions.getFormattedDate -import com.simplemobiletools.clock.extensions.getFormattedTime +import com.simplemobiletools.clock.extensions.* import com.simplemobiletools.clock.helpers.getPassedSeconds import com.simplemobiletools.clock.models.MyTimeZone import com.simplemobiletools.commons.extensions.beVisibleIf @@ -64,6 +61,7 @@ class ClockFragment : Fragment() { passedSeconds = getPassedSeconds() updateCurrentTime() updateDate() + updateAlarm() setupViews() } @@ -109,6 +107,15 @@ class ClockFragment : Fragment() { (view.time_zones_list.adapter as? TimeZonesAdapter)?.todayDateString = formattedDate } + fun updateAlarm() { + view.apply { + val nextAlarm = context!!.getNextAlarm() + clock_alarm.beVisibleIf(nextAlarm.isNotEmpty()) + clock_alarm.text = nextAlarm + clock_alarm.colorLeftDrawable(context!!.config.textColor) + } + } + private fun updateTimeZones() { val selectedTimeZones = context!!.config.selectedTimeZones view.time_zones_list.beVisibleIf(selectedTimeZones.isNotEmpty()) diff --git a/app/src/main/res/layout/fragment_clock.xml b/app/src/main/res/layout/fragment_clock.xml index 50624364..bab04dca 100644 --- a/app/src/main/res/layout/fragment_clock.xml +++ b/app/src/main/res/layout/fragment_clock.xml @@ -16,7 +16,7 @@ android:id="@+id/clock_time" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginTop="@dimen/big_margin" + android:layout_marginTop="@dimen/activity_margin" android:gravity="center_horizontal" android:textSize="@dimen/clock_text_size" tools:text="00:00:00"/> @@ -30,12 +30,25 @@ android:textSize="@dimen/big_text_size" tools:text="Mon, 1 January"/> + +