diff --git a/app/src/main/kotlin/org/fossify/calendar/activities/MainActivity.kt b/app/src/main/kotlin/org/fossify/calendar/activities/MainActivity.kt index 50c547255..ff8223820 100644 --- a/app/src/main/kotlin/org/fossify/calendar/activities/MainActivity.kt +++ b/app/src/main/kotlin/org/fossify/calendar/activities/MainActivity.kt @@ -996,6 +996,22 @@ class MainActivity : SimpleActivity(), RefreshRecyclerViewListener { } } + fun openDayFromWeekly(dateTime: DateTime) { + if (currentFragments.last() is DayFragmentsHolder) { + return + } + + val fragment = DayFragmentsHolder() + currentFragments.add(fragment) + val bundle = Bundle() + bundle.putString(DAY_CODE, Formatter.getDayCodeFromDateTime(dateTime)) + fragment.arguments = bundle + supportFragmentManager.beginTransaction().add(R.id.fragments_holder, fragment).commitNow() + resetActionBarTitle() + binding.calendarFab.beVisible() + showBackNavigationArrow() + } + private fun getFragmentsHolder() = when (config.storedView) { DAILY_VIEW -> DayFragmentsHolder() MONTHLY_VIEW -> MonthFragmentsHolder() @@ -1013,7 +1029,10 @@ class MainActivity : SimpleActivity(), RefreshRecyclerViewListener { refreshEvents() } - binding.calendarFab.beGoneIf(currentFragments.size == 1 && config.storedView == YEARLY_VIEW) + binding.calendarFab.beGoneIf( + currentFragments.size == 1 && + (config.storedView == YEARLY_VIEW || config.storedView == WEEKLY_VIEW) + ) if (currentFragments.size > 1) { showBackNavigationArrow() } else { diff --git a/app/src/main/kotlin/org/fossify/calendar/fragments/WeekFragment.kt b/app/src/main/kotlin/org/fossify/calendar/fragments/WeekFragment.kt index 5335107ff..9f1a6be0c 100644 --- a/app/src/main/kotlin/org/fossify/calendar/fragments/WeekFragment.kt +++ b/app/src/main/kotlin/org/fossify/calendar/fragments/WeekFragment.kt @@ -232,6 +232,9 @@ class WeekFragment : Fragment(), WeeklyCalendar { if (todayCode == dayCode) { todayColumnIndex = i } + label.setOnClickListener { + (activity as MainActivity).openDayFromWeekly(Formatter.getDateTimeFromCode(dayCode)) + } binding.weekLettersHolder.addView(label) curDay = curDay.plusDays(1) diff --git a/app/src/main/res/layout/weekly_view_day_letter.xml b/app/src/main/res/layout/weekly_view_day_letter.xml index 9979d507a..91c228d0c 100644 --- a/app/src/main/res/layout/weekly_view_day_letter.xml +++ b/app/src/main/res/layout/weekly_view_day_letter.xml @@ -5,6 +5,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" + android:background="?selectableItemBackgroundBorderless" android:gravity="center_horizontal" android:textSize="@dimen/normal_text_size" tools:text="@string/monday_letter" />