diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 97be030..b107b4b 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -12,8 +12,8 @@ android { applicationId = "com.denizk0461.weserplaner" minSdk = 24 targetSdk = 34 - versionCode = 10 - versionName = "1.2.0" + versionCode = 11 + versionName = "1.2.1" resourceConfigurations += arrayOf("en", "de") diff --git a/app/src/main/java/com/denizk0461/weserplaner/db/AppRepository.kt b/app/src/main/java/com/denizk0461/weserplaner/db/AppRepository.kt index 659e794..cd568db 100644 --- a/app/src/main/java/com/denizk0461/weserplaner/db/AppRepository.kt +++ b/app/src/main/java/com/denizk0461/weserplaner/db/AppRepository.kt @@ -407,6 +407,13 @@ class AppRepository(app: Application) { setPreference(SettingsPreferences.NEW_FEATURE_TIMETABLES, newValue) } + fun getPreferenceFeatureDate(): Boolean = getBooleanPreference( + SettingsPreferences.NEW_FEATURE_DATES, + ) + fun setPreferenceFeatureDate(newValue: Boolean) { + setPreference(SettingsPreferences.NEW_FEATURE_DATES, newValue) + } + /** * This value determines which fragment the user wants the app to start with. Order is equal to * the order that the items are arranged in in the bottom nav bar. diff --git a/app/src/main/java/com/denizk0461/weserplaner/fragment/CanteenFragment.kt b/app/src/main/java/com/denizk0461/weserplaner/fragment/CanteenFragment.kt index 7c7e5b0..28fb8e8 100644 --- a/app/src/main/java/com/denizk0461/weserplaner/fragment/CanteenFragment.kt +++ b/app/src/main/java/com/denizk0461/weserplaner/fragment/CanteenFragment.kt @@ -266,6 +266,14 @@ class CanteenFragment : AppFragment() { // Save that the canteen has been opened before viewModel.preferenceHasOpenedCanteen = true } + + if (!viewModel.getPreferenceFirstLaunch() && !viewModel.getPreferenceFeatureDate()) { + openBottomSheet(getTextSheet( + getString(R.string.new_feature_timetables_header), + getString(R.string.new_feature_dates_content), + )) + viewModel.setPreferenceFeatureDate(true) + } } /** diff --git a/app/src/main/java/com/denizk0461/weserplaner/values/SettingsPreferences.kt b/app/src/main/java/com/denizk0461/weserplaner/values/SettingsPreferences.kt index de961f6..b748115 100644 --- a/app/src/main/java/com/denizk0461/weserplaner/values/SettingsPreferences.kt +++ b/app/src/main/java/com/denizk0461/weserplaner/values/SettingsPreferences.kt @@ -19,6 +19,11 @@ enum class SettingsPreferences(val key: String) { */ NEW_FEATURE_TIMETABLES("new_feature_timetables"), + /** + * Whether the user has been notified about the new canteen screen date display format. + */ + NEW_FEATURE_DATES("new_feature_dates"), + /** * Which allergens the user wants displayed or hidden. */ diff --git a/app/src/main/java/com/denizk0461/weserplaner/viewmodel/CanteenViewModel.kt b/app/src/main/java/com/denizk0461/weserplaner/viewmodel/CanteenViewModel.kt index c5e1d29..40388a7 100644 --- a/app/src/main/java/com/denizk0461/weserplaner/viewmodel/CanteenViewModel.kt +++ b/app/src/main/java/com/denizk0461/weserplaner/viewmodel/CanteenViewModel.kt @@ -101,4 +101,8 @@ class CanteenViewModel(app: Application) : AppViewModel(app) { */ val preferenceCanteenDate: Int get() = repo.getPreferenceCanteenDate() + + fun getPreferenceFirstLaunch(): Boolean = repo.getPreferenceFirstLaunch() + fun getPreferenceFeatureDate(): Boolean = repo.getPreferenceFeatureDate() + fun setPreferenceFeatureDate(newValue: Boolean) { repo.setPreferenceFeatureDate(newValue) } } \ No newline at end of file diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 9f3341e..f6d479e 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -242,6 +242,7 @@ Neues Feature! Da das neue Semester in ein paar Wochen startet, kannst du dich vorbereiten, indem du deinen neuen Stundenplan einträgst! Du kannst jetzt so viele Stundenpläne in die App eintragen wie du möchtest.\n\nGehe in die Einstellungen, um die neue \'Stundenplan\'-Option zu nutzen! + Damit du einfacher die Mensaangebote über die Woche verteilt einsehen kannst, werden in den Reitern oben am Bildschirm jetzt die Tage neben dem Datum angezeigt!\n\nBeispiel: \"Fr., 12.01.\"\n\nIn den Einstellungen kannst du weitere Optionen finden, falls dir das doch nicht gefällt, oder falls du volle Namen für die Tage lieber hast!\n\nP.S.: falls dir Fragezeichen \'?\' angezeigt werden, musst du eventuell deinen Mensaplan aktualisieren – dann sollten die Fragezeichen verschwinden!\n\nDanke, dass du weiterhin meine App nutzt :)\n~Deniz Allgemein Stud.IP-Stundenplan diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 78fdd10..856af80 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -247,6 +247,7 @@ Heads up, new feature! As the new semester will start in a couple of weeks, you can prepare in advance by adding your new schedule! You can now add as many schedules to the app as you like.\n\nHead into the settings to find the new \'schedules\' option! + In order to make it easier to discover canteen offerings across the week, the headers at the top of the screen now show the day alongside the date!\n\nExample: \"Fr., 12.01.\"\n\nThere are more options to select in the settings if you wish to disable this, or if you prefer to show the full day names instead!\n\nSidenote: if you see a question mark \'?\' you may need to refresh your canteen plan once – then the question marks should disappear!\n\nThank you for still using my app :)\n~Deniz General Stud.IP Schedule