From c5fefb0e06e0a9ad6b44ed10f3c5821eb0649a62 Mon Sep 17 00:00:00 2001 From: Tommaso Berlose Date: Wed, 14 Oct 2020 01:41:43 +0200 Subject: [PATCH] Update the glance section --- .../components/GlanceSettingsDialog.kt | 137 +++++++++++++----- .../helpers/GlanceProviderHelper.kt | 8 +- .../ui/fragments/GlanceTabFragment.kt | 28 ++-- .../ui/fragments/MainFragment.kt | 10 +- .../round_run_circle_white_18.png | Bin 0 -> 386 bytes .../round_run_circle_white_24.png | Bin 0 -> 475 bytes .../round_run_circle_white_36.png | Bin 0 -> 697 bytes .../round_run_circle_white_48.png | Bin 0 -> 905 bytes .../res/drawable-hdpi/round_sticky_note_2.png | Bin 0 -> 347 bytes .../round_sticky_note_2_white_18.png | Bin 0 -> 237 bytes .../round_sticky_note_2_white_24.png | Bin 0 -> 259 bytes .../round_sticky_note_2_white_48.png | Bin 0 -> 398 bytes .../round_run_circle_white_18.png | Bin 0 -> 269 bytes .../round_run_circle_white_24.png | Bin 0 -> 326 bytes .../round_run_circle_white_36.png | Bin 0 -> 475 bytes .../round_run_circle_white_48.png | Bin 0 -> 634 bytes .../res/drawable-mdpi/round_sticky_note_2.png | Bin 0 -> 259 bytes .../round_sticky_note_2_white_18.png | Bin 0 -> 179 bytes .../round_sticky_note_2_white_24.png | Bin 0 -> 171 bytes .../round_sticky_note_2_white_48.png | Bin 0 -> 280 bytes .../round_run_circle_white_18.png | Bin 0 -> 475 bytes .../round_run_circle_white_24.png | Bin 0 -> 634 bytes .../round_run_circle_white_36.png | Bin 0 -> 905 bytes .../round_run_circle_white_48.png | Bin 0 -> 1155 bytes .../drawable-xhdpi/round_sticky_note_2.png | Bin 0 -> 398 bytes .../round_sticky_note_2_white_18.png | Bin 0 -> 259 bytes .../round_sticky_note_2_white_24.png | Bin 0 -> 280 bytes .../round_sticky_note_2_white_48.png | Bin 0 -> 482 bytes .../round_run_circle_white_18.png | Bin 0 -> 697 bytes .../round_run_circle_white_24.png | Bin 0 -> 905 bytes .../round_run_circle_white_36.png | Bin 0 -> 1277 bytes .../round_run_circle_white_48.png | Bin 0 -> 1613 bytes .../drawable-xxhdpi/round_sticky_note_2.png | Bin 0 -> 593 bytes .../round_sticky_note_2_white_18.png | Bin 0 -> 347 bytes .../round_sticky_note_2_white_24.png | Bin 0 -> 398 bytes .../round_sticky_note_2_white_48.png | Bin 0 -> 730 bytes .../round_run_circle_white_18.png | Bin 0 -> 905 bytes .../round_run_circle_white_24.png | Bin 0 -> 1155 bytes .../round_run_circle_white_36.png | Bin 0 -> 1613 bytes .../round_run_circle_white_48.png | Bin 0 -> 2020 bytes .../drawable-xxxhdpi/round_sticky_note_2.png | Bin 0 -> 730 bytes .../round_sticky_note_2_white_18.png | Bin 0 -> 398 bytes .../round_sticky_note_2_white_24.png | Bin 0 -> 482 bytes .../round_sticky_note_2_white_48.png | Bin 0 -> 938 bytes .../main/res/drawable/round_run_circle.xml | 10 ++ .../res/drawable/round_sticky_note_2_24.xml | 10 ++ .../res/layout/fragment_glance_settings.xml | 13 +- .../main/res/layout/glance_provider_item.xml | 19 +-- .../glance_provider_settings_layout.xml | 29 +++- app/src/main/res/values-it/strings.xml | 5 + app/src/main/res/values/strings.xml | 5 + 51 files changed, 186 insertions(+), 88 deletions(-) create mode 100644 app/src/main/res/drawable-hdpi/round_run_circle_white_18.png create mode 100644 app/src/main/res/drawable-hdpi/round_run_circle_white_24.png create mode 100644 app/src/main/res/drawable-hdpi/round_run_circle_white_36.png create mode 100644 app/src/main/res/drawable-hdpi/round_run_circle_white_48.png create mode 100644 app/src/main/res/drawable-hdpi/round_sticky_note_2.png create mode 100644 app/src/main/res/drawable-hdpi/round_sticky_note_2_white_18.png create mode 100644 app/src/main/res/drawable-hdpi/round_sticky_note_2_white_24.png create mode 100644 app/src/main/res/drawable-hdpi/round_sticky_note_2_white_48.png create mode 100644 app/src/main/res/drawable-mdpi/round_run_circle_white_18.png create mode 100644 app/src/main/res/drawable-mdpi/round_run_circle_white_24.png create mode 100644 app/src/main/res/drawable-mdpi/round_run_circle_white_36.png create mode 100644 app/src/main/res/drawable-mdpi/round_run_circle_white_48.png create mode 100644 app/src/main/res/drawable-mdpi/round_sticky_note_2.png create mode 100644 app/src/main/res/drawable-mdpi/round_sticky_note_2_white_18.png create mode 100644 app/src/main/res/drawable-mdpi/round_sticky_note_2_white_24.png create mode 100644 app/src/main/res/drawable-mdpi/round_sticky_note_2_white_48.png create mode 100644 app/src/main/res/drawable-xhdpi/round_run_circle_white_18.png create mode 100644 app/src/main/res/drawable-xhdpi/round_run_circle_white_24.png create mode 100644 app/src/main/res/drawable-xhdpi/round_run_circle_white_36.png create mode 100644 app/src/main/res/drawable-xhdpi/round_run_circle_white_48.png create mode 100644 app/src/main/res/drawable-xhdpi/round_sticky_note_2.png create mode 100644 app/src/main/res/drawable-xhdpi/round_sticky_note_2_white_18.png create mode 100644 app/src/main/res/drawable-xhdpi/round_sticky_note_2_white_24.png create mode 100644 app/src/main/res/drawable-xhdpi/round_sticky_note_2_white_48.png create mode 100644 app/src/main/res/drawable-xxhdpi/round_run_circle_white_18.png create mode 100644 app/src/main/res/drawable-xxhdpi/round_run_circle_white_24.png create mode 100644 app/src/main/res/drawable-xxhdpi/round_run_circle_white_36.png create mode 100644 app/src/main/res/drawable-xxhdpi/round_run_circle_white_48.png create mode 100644 app/src/main/res/drawable-xxhdpi/round_sticky_note_2.png create mode 100644 app/src/main/res/drawable-xxhdpi/round_sticky_note_2_white_18.png create mode 100644 app/src/main/res/drawable-xxhdpi/round_sticky_note_2_white_24.png create mode 100644 app/src/main/res/drawable-xxhdpi/round_sticky_note_2_white_48.png create mode 100644 app/src/main/res/drawable-xxxhdpi/round_run_circle_white_18.png create mode 100644 app/src/main/res/drawable-xxxhdpi/round_run_circle_white_24.png create mode 100644 app/src/main/res/drawable-xxxhdpi/round_run_circle_white_36.png create mode 100644 app/src/main/res/drawable-xxxhdpi/round_run_circle_white_48.png create mode 100644 app/src/main/res/drawable-xxxhdpi/round_sticky_note_2.png create mode 100644 app/src/main/res/drawable-xxxhdpi/round_sticky_note_2_white_18.png create mode 100644 app/src/main/res/drawable-xxxhdpi/round_sticky_note_2_white_24.png create mode 100644 app/src/main/res/drawable-xxxhdpi/round_sticky_note_2_white_48.png create mode 100644 app/src/main/res/drawable/round_run_circle.xml create mode 100644 app/src/main/res/drawable/round_sticky_note_2_24.xml diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/components/GlanceSettingsDialog.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/components/GlanceSettingsDialog.kt index 842c80f..4ea2338 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/components/GlanceSettingsDialog.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/components/GlanceSettingsDialog.kt @@ -29,6 +29,7 @@ import com.tommasoberlose.anotherwidget.receivers.ActivityDetectionReceiver import com.tommasoberlose.anotherwidget.ui.activities.MusicPlayersFilterActivity import com.tommasoberlose.anotherwidget.utils.checkGrantedPermission import kotlinx.android.synthetic.main.glance_provider_settings_layout.view.* +import kotlinx.coroutines.* class GlanceSettingsDialog(val context: Activity, val provider: Constants.GlanceProviderId, private val statusCallback: (() -> Unit)?) : BottomSheetDialog(context, R.style.BottomSheetDialogTheme) { @@ -77,7 +78,9 @@ class GlanceSettingsDialog(val context: Activity, val provider: Constants.Glance /* GOOGLE STEPS */ view.action_toggle_google_fit.isVisible = provider == Constants.GlanceProviderId.GOOGLE_FIT_STEPS if (provider == Constants.GlanceProviderId.GOOGLE_FIT_STEPS) { + view.warning_container.isVisible = false checkFitnessPermission(view) + checkGoogleFitConnection(view) } /* BATTERY INFO */ @@ -111,48 +114,64 @@ class GlanceSettingsDialog(val context: Activity, val provider: Constants.Glance Constants.GlanceProviderId.GREETINGS -> Preferences.showGreetings } + var job: Job? = null + view.provider_switch.setOnCheckedChangeListener { _, isChecked -> - when (provider) { - Constants.GlanceProviderId.PLAYING_SONG -> { - Preferences.showMusic = isChecked - checkNotificationPermission(view) - } - Constants.GlanceProviderId.NEXT_CLOCK_ALARM -> { - Preferences.showNextAlarm = isChecked - checkNextAlarm(view) - } - Constants.GlanceProviderId.BATTERY_LEVEL_LOW -> { - Preferences.showBatteryCharging = isChecked - } - Constants.GlanceProviderId.NOTIFICATIONS -> { - Preferences.showNotifications = isChecked - checkLastNotificationsPermission(view) - } - Constants.GlanceProviderId.GREETINGS -> { - Preferences.showGreetings = isChecked - } - Constants.GlanceProviderId.GOOGLE_FIT_STEPS -> { - if (isChecked) { - val account: GoogleSignInAccount? = GoogleSignIn.getLastSignedInAccount(context) - if (!GoogleSignIn.hasPermissions(account, - ActivityDetectionReceiver.FITNESS_OPTIONS - )) { - val mGoogleSignInClient = GoogleSignIn.getClient(context, GoogleSignInOptions.Builder( - GoogleSignInOptions.DEFAULT_SIGN_IN).addExtension( - ActivityDetectionReceiver.FITNESS_OPTIONS - ).build()) - context.startActivityForResult(mGoogleSignInClient.signInIntent, 2) - } else { - Preferences.showDailySteps = true + job?.cancel() + job = GlobalScope.launch(Dispatchers.IO) { + delay(300) + withContext(Dispatchers.Main) { + when (provider) { + Constants.GlanceProviderId.PLAYING_SONG -> { + Preferences.showMusic = isChecked + checkNotificationPermission(view) + } + Constants.GlanceProviderId.NEXT_CLOCK_ALARM -> { + Preferences.showNextAlarm = isChecked + checkNextAlarm(view) + } + Constants.GlanceProviderId.BATTERY_LEVEL_LOW -> { + Preferences.showBatteryCharging = isChecked + } + Constants.GlanceProviderId.NOTIFICATIONS -> { + Preferences.showNotifications = isChecked + checkLastNotificationsPermission(view) + } + Constants.GlanceProviderId.GREETINGS -> { + Preferences.showGreetings = isChecked + } + Constants.GlanceProviderId.GOOGLE_FIT_STEPS -> { + if (isChecked) { + val account: GoogleSignInAccount? = + GoogleSignIn.getLastSignedInAccount(context) + if (!GoogleSignIn.hasPermissions(account, + ActivityDetectionReceiver.FITNESS_OPTIONS + ) + ) { + val mGoogleSignInClient = + GoogleSignIn.getClient(context, GoogleSignInOptions.Builder( + GoogleSignInOptions.DEFAULT_SIGN_IN).addExtension( + ActivityDetectionReceiver.FITNESS_OPTIONS + ).build()) + context.startActivityForResult(mGoogleSignInClient.signInIntent, + 2) + } else { + Preferences.showDailySteps = true + } + } else { + Preferences.showDailySteps = false + } + + view.warning_container.isVisible = false + checkFitnessPermission(view) + checkGoogleFitConnection(view) + } + else -> { } - } else { - Preferences.showDailySteps = false } - checkFitnessPermission(view) + statusCallback?.invoke() } - else -> {} } - statusCallback?.invoke() } setContentView(view) @@ -180,7 +199,6 @@ class GlanceSettingsDialog(val context: Activity, val provider: Constants.Glance } private fun checkNotificationPermission(view: View) { - Log.d("ciao", NotificationManagerCompat.getEnabledListenerPackages(context).toString()) when { NotificationManagerCompat.getEnabledListenerPackages(context).contains(context.packageName) -> { view.warning_container.isVisible = false @@ -223,7 +241,6 @@ class GlanceSettingsDialog(val context: Activity, val provider: Constants.Glance if (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q || context.checkGrantedPermission( Manifest.permission.ACTIVITY_RECOGNITION) ) { - view.warning_container.isVisible = false if (Preferences.showDailySteps) { ActivityDetectionReceiver.registerFence(context) } else { @@ -238,11 +255,51 @@ class GlanceSettingsDialog(val context: Activity, val provider: Constants.Glance } } else { ActivityDetectionReceiver.unregisterFence(context) - view.warning_container.isVisible = false } statusCallback?.invoke() } + private fun checkGoogleFitConnection(view: View) { + val account: GoogleSignInAccount? = GoogleSignIn.getLastSignedInAccount(context) + if (!GoogleSignIn.hasPermissions(account, + ActivityDetectionReceiver.FITNESS_OPTIONS + )) { + view.warning_container.isVisible = true + view.warning_title.text = context.getString(R.string.settings_request_fitness_access) + view.warning_container.setOnClickListener { + GoogleSignIn.requestPermissions( + context, + 1, + account, + ActivityDetectionReceiver.FITNESS_OPTIONS) + } + view.action_connect_to_google_fit.isVisible = true + view.action_disconnect_to_google_fit.isVisible = false + view.action_connect_to_google_fit.setOnClickListener { + GoogleSignIn.requestPermissions( + context, + 1, + account, + ActivityDetectionReceiver.FITNESS_OPTIONS) + } + view.action_disconnect_to_google_fit.setOnClickListener(null) + view.google_fit_status_label.text = context.getString(R.string.google_fit_account_not_connected) + } else { + view.action_connect_to_google_fit.isVisible = false + view.action_disconnect_to_google_fit.isVisible = true + view.action_connect_to_google_fit.setOnClickListener(null) + view.action_disconnect_to_google_fit.setOnClickListener { + GoogleSignIn.getClient(context, GoogleSignInOptions.Builder( + GoogleSignInOptions.DEFAULT_SIGN_IN).addExtension( + ActivityDetectionReceiver.FITNESS_OPTIONS + ).build()).signOut().addOnCompleteListener { + show() + } + } + view.google_fit_status_label.text = context.getString(R.string.google_fit_account_connected) + } + } + private fun requireFitnessPermission(view: View) { Dexter.withContext(context) .withPermissions( diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/helpers/GlanceProviderHelper.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/helpers/GlanceProviderHelper.kt index ee55308..f252029 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/helpers/GlanceProviderHelper.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/helpers/GlanceProviderHelper.kt @@ -43,19 +43,19 @@ object GlanceProviderHelper { Constants.GlanceProviderId.NEXT_CLOCK_ALARM -> { GlanceProvider(providerId.id, context.getString(R.string.settings_show_next_alarm_title), - R.drawable.round_alarm + R.drawable.round_access_alarm ) } Constants.GlanceProviderId.PLAYING_SONG -> { GlanceProvider(providerId.id, context.getString(R.string.settings_show_music_title), - R.drawable.round_music_note + R.drawable.round_radio ) } Constants.GlanceProviderId.CUSTOM_INFO -> { GlanceProvider(providerId.id, context.getString(R.string.settings_custom_notes_title), - R.drawable.round_notes + R.drawable.round_sticky_note_2 ) } Constants.GlanceProviderId.BATTERY_LEVEL_LOW -> { @@ -67,7 +67,7 @@ object GlanceProviderHelper { Constants.GlanceProviderId.GOOGLE_FIT_STEPS -> { GlanceProvider(providerId.id, context.getString(R.string.settings_daily_steps_title), - R.drawable.round_directions_walk + R.drawable.round_run_circle ) } Constants.GlanceProviderId.NOTIFICATIONS -> { diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/GlanceTabFragment.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/GlanceTabFragment.kt index 5a1673e..46f0ce1 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/GlanceTabFragment.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/GlanceTabFragment.kt @@ -202,8 +202,9 @@ class GlanceTabFragment : Fragment() { injector.visibility(R.id.info_icon, View.VISIBLE) } Constants.GlanceProviderId.GOOGLE_FIT_STEPS -> { - if (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q || activity?.checkGrantedPermission( - Manifest.permission.ACTIVITY_RECOGNITION) == true + val account: GoogleSignInAccount? = GoogleSignIn.getLastSignedInAccount(context) + if (GoogleSignIn.hasPermissions(account, FITNESS_OPTIONS) && (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q || activity?.checkGrantedPermission( + Manifest.permission.ACTIVITY_RECOGNITION) == true) ) { injector.text(R.id.label, if (Preferences.showDailySteps) getString(R.string.settings_visible) else getString( @@ -361,14 +362,12 @@ class GlanceTabFragment : Fragment() { 1 -> { if (resultCode == Activity.RESULT_OK) { adapter.notifyItemRangeChanged(0, adapter.data.size) - if (dialog != null) { - dialog?.show() - } } else { Preferences.showDailySteps = false - if (dialog != null) { - dialog?.show() - } + } + + if (dialog != null) { + dialog?.show() } } 2 -> { @@ -383,16 +382,14 @@ class GlanceTabFragment : Fragment() { FITNESS_OPTIONS) } else { adapter.notifyItemRangeChanged(0, adapter.data.size) - if (dialog != null) { - dialog?.show() - } } } catch (e: ApiException) { e.printStackTrace() Preferences.showDailySteps = false - if (dialog != null) { - dialog?.show() - } + } + + if (dialog != null) { + dialog?.show() } } } @@ -410,5 +407,8 @@ class GlanceTabFragment : Fragment() { override fun onResume() { super.onResume() adapter.notifyItemRangeChanged(0, adapter.data.size) + if (dialog != null) { + dialog?.show() + } } } diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/MainFragment.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/MainFragment.kt index 1e81b23..60f2d51 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/MainFragment.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/MainFragment.kt @@ -30,11 +30,8 @@ import com.tommasoberlose.anotherwidget.R import com.tommasoberlose.anotherwidget.components.MaterialBottomSheetDialog import com.tommasoberlose.anotherwidget.global.Constants import com.tommasoberlose.anotherwidget.global.Preferences -import com.tommasoberlose.anotherwidget.helpers.BitmapHelper -import com.tommasoberlose.anotherwidget.helpers.ColorHelper +import com.tommasoberlose.anotherwidget.helpers.* import com.tommasoberlose.anotherwidget.helpers.ColorHelper.isColorDark -import com.tommasoberlose.anotherwidget.helpers.WeatherHelper -import com.tommasoberlose.anotherwidget.helpers.WidgetHelper import com.tommasoberlose.anotherwidget.receivers.ActivityDetectionReceiver import com.tommasoberlose.anotherwidget.ui.activities.MainActivity import com.tommasoberlose.anotherwidget.ui.adapters.ViewPagerAdapter @@ -360,12 +357,13 @@ class MainFragment : Fragment(), SharedPreferences.OnSharedPreferenceChangeList false } - // Music error indicator + // Glance error indicator tabs?.getTabAt(4)?.orCreateBadge?.apply { backgroundColor = ContextCompat.getColor(requireContext(), R.color.errorColorText) badgeGravity = BadgeDrawable.TOP_END }?.isVisible = ((Preferences.showMusic || Preferences.showNotifications) && !NotificationManagerCompat.getEnabledListenerPackages(requireContext()).contains(requireContext().packageName)) || - (Preferences.showDailySteps && !(Build.VERSION.SDK_INT < Build.VERSION_CODES.Q || requireActivity().checkGrantedPermission(Manifest.permission.ACTIVITY_RECOGNITION))) + (Preferences.showDailySteps && !(Build.VERSION.SDK_INT < Build.VERSION_CODES.Q || requireActivity().checkGrantedPermission(Manifest.permission.ACTIVITY_RECOGNITION))) || + (AlarmHelper.isAlarmProbablyWrong(requireContext())) } override fun onResume() { diff --git a/app/src/main/res/drawable-hdpi/round_run_circle_white_18.png b/app/src/main/res/drawable-hdpi/round_run_circle_white_18.png new file mode 100644 index 0000000000000000000000000000000000000000..ea71028f1324e220c774b053bf751502707e291c GIT binary patch literal 386 zcmV-|0e$|7P)rUfLVR7@QiauydR(u8s|j5S-=% zx4EI){E#*gyy^>`<6WLHZtx*)o7^F0^3CuULAP=0<+b{?SYfN*TUTr-?FIi(76+*H zyN<;gX@4-p{4oCu18k&CVzITf-`HSzn4hA?878{bvDil18o^=dSOIo;)@>P!J;`%} z0UqUPVzIeAB^s1i>Gu$e-HUt0CGPMaX9%cK=~u;K7YO2>F~bN`z#=2I@BBrukS`}T zExO9#}Je_rwg?8OCCMGj1yE?{)Z0c{=Uz5j5gcep^1)?$Y9;;V3hd(82K g4c2HdL|Oc3pQey(X-d(DoB#j-07*qoM6N<$g6yxRt^fc4 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-hdpi/round_run_circle_white_24.png b/app/src/main/res/drawable-hdpi/round_run_circle_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..1b8099548e5d2622e0aaa637589063424a795906 GIT binary patch literal 475 zcmV<10VMv3P)gB!b9c=vp$Gy+rch80Y!W*1pj0Y^R#u{@JxWif75gm-Mk?s-KZNv<)QeTOS zreemLaln_?exgG2rgeiR+LN~_T&m{^pHPZBB;P4?v6XKbD!6f6+4dzq-~#XPTbk>X z?d;^+V~&+Pk0Azqc^0@quR4E%r95Y`pnGXb)gW}y3l)68LAtwG&{CRl_5KV`IIW&P zqJtrJ(iE|vO=b{mLj~Vapo1O?$IT-_$$sH8;O7e)E-}Q&aqIk`xJjtsNxn@iXe-|U zo$CBlzC|pklrK$b~NEnpcFn z(8Wx1Cg_CM!U#L{ZE+czgdV2YOSi)q-Ov`CV1OA)Yyq&r68Gp=A^)~Fe*so-R5ZZ`*KOij{|rw|MO31c{-$C<^YmG(JI#XHE& zajBe(vY`f+V}^ZfVWgV9GQn=GzsnNKd#EYCqMbd5NL80EbSl6%)ji?|y8oHuSd76U z!ETgykN#VG4L$^w`?&aFv6?Trv5xTbm6Cr{&2!OUJF5AVjWfg?@GCdR;fqbWi+k0y z3Y~_7f}O}FTFD~t5cDPL4=gFzb+RaoM2ipBFB7bRyEP7Wm6U~pH4e6$ zRDm1ujvFA~uC8|xt@)bMC|v_nd0Sw8iU0xm46!WV8FA(O@% zzGEB5csIWx_KIAThtlX_W6FRVLl3nO8=BH-gemYOj*AczwvkDv6{f(gI0jK?H?*ZS zn(`O>g1&efAqE^+j1G2C!zo_GHHuP|pksA4W7HR!blz}@BYeZFV)es3aH4nvG;uKP z(;`7gpRaFmrx+RTar~!m66_#ToFDTHq(gBHaE>n_2V5)8+vmrM_>N~E1I_-aV;wJw zvlH?{U1U>={R_O#3J(Ob*3pWJ^lwsU!TYUU-&9cjjqrI_>h-9AjJT zl#=X98qG4FeVv65Xy7<~7p@*})QE2{d_Wf&zD}I~w*ksDY8;E>4bR9hX@s>Y3-fS% zc*Txl?T5Uuj*IDI?;NFUJ8NH;ptOAt_o-4FvFRxqGe zhz0vA7SIS=Atv0eP(W8TqHaEi?04RI982-~=|7#W(_T$Xq7 z57KF4J1iRjsZ@Rgg(JO{49FdL00000NkvXXu0mjf$?TGF literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-hdpi/round_sticky_note_2.png b/app/src/main/res/drawable-hdpi/round_sticky_note_2.png new file mode 100644 index 0000000000000000000000000000000000000000..1642349c4ca5cdeff6743d2be8136da74f3ce261 GIT binary patch literal 347 zcmeAS@N?(olHy`uVBq!ia0vp^W+2SL1|)l2v+go5Fe-VvIEGX(zP%<`z|1J%aIx9R zAYi$Zf?eZ*$_?iV+kc339ZgygG2daK#BvA401Xi)_Vs?|XYZbiv;LhfCNB5ZEHpIq zs%c`M>8&M^iDqgUt&20SJZv}`5Ym0_%P+Z>!zW9uW4d=4zqLBEu5s(K`>*yNy457Q zCV_Rf%p1{M>u_M8F?hQAxvXgqj>G@cwRTsnP%OxGH{V-?4^ z^&Gp?bW5Dqv6=*(QFlPle|MCo{T98gr~v|NKJq&%1Xyhl-yCYl#)a z))XHJc$JcWCtZ$1yWDEp4rBh!KaO)ccSh*9sKs<0`LgiH47({3lbws!9G=!&3~k!G$mgF9z!rT+b(`i$QQ9Sf5}qr;E8e=M#qO^W-x%^KIMyLFb)0{=oU* zZ@u1D;ebbszxx9210l>kBbKxWKFRC73)6cv^EZw?C-Y`vktw>O9?UYk~j(002ov JPDHLkV1n7xY%~A> literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-hdpi/round_sticky_note_2_white_48.png b/app/src/main/res/drawable-hdpi/round_sticky_note_2_white_48.png new file mode 100644 index 0000000000000000000000000000000000000000..9aa04365bf6d57b396af06623af91ccdcb2c318e GIT binary patch literal 398 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@Zgyv2U<~ziaSW+oe0y6yz$Hn+cIvhWyt;T(zUm^Iexm=g7804+KqJ| zUVC$OaJVcEq%zoTnA3%Ank-qv_A=^9*{qKG&SGN1u9GXk%fg<9FBWbN zRWiy7wta#VtM{Ds4U>F7%h7dvsA&g-d!Y~XSU`GfYVMpiyVSq3M7={6cAq)_P5I(dA;+1ce zfF6DTfAoIMrd3_n3)onV9dM9Bp{YQO<!N3_gHjrJrhJ5I150zN=y`>OJbD^8KW-#=1yLh7A1K!x5c8k5Z&_wzHep4Oc TbbT)}00000NkvXXu0mjf(radt literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-mdpi/round_run_circle_white_24.png b/app/src/main/res/drawable-mdpi/round_run_circle_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..172a46f0305c1ad0e54b47b710c33043129d01a4 GIT binary patch literal 326 zcmV-M0lEH(P)gB!b9c=vp$Gy+rch80Y!W*1pj0Y^R#u{@JxWif75gm-Mk?s-KZNv<)QeTOS zreemLaln_?exgG2rgeiR+LN~_T&m{^pHPZBB;P4?v6XKbD!6f6+4dzq-~#XPTbk>X z?d;^+V~&+Pk0Azqc^0@quR4E%r95Y`pnGXb)gW}y3l)68LAtwG&{CRl_5KV`IIW&P zqJtrJ(iE|vO=b{mLj~Vapo1O?$IT-_$$sH8;O7e)E-}Q&aqIk`xJjtsNxn@iXe-|U zo$CBlzC|pklrK$b~NEnpcFn z(8Wx1Cg_CM!U#L{ZE+czgdV2YOSi)q-Ov`CV1OA)Yyq&r68Gp=A^)~Fe*so-7eD2C#22#O&nio*~L#c&u7K`;!%At;7oI21!L z6hl!2y+7V~9!K8Gmn_JiA66Fc+uFRBdR;Pgbsdk#513(v6l**y84_G$ieXz8JwSvE zHWhe4h~9fFyoXD?qG~Ug!Eb8u0dh$97n8adAEC|)T-34fK5o%eSMVhVNYHdwQj1^U zy}GEn_;W~<;S2$uEI$*ID);yuBswwfVzzfD-(`R$q#A42{RG=)wu>L(0I5=pae~Zo zv+LOm5Tk8{HUn%?r2|rYg)g)TK9pVjDO_9Q2ZlB5Ck2Le9v8lue~AAax%Y5wT4sPd zSf~Adhz*|1#cOvV*CDRU4DeWSfVX}dXQ?el>gO>M6tF2NGe9mhz+8K6qF&1}(O#dz zrmV~Wu7%25pS5d#hu$xoIlNt;-3PF5P{Y2Gml@y%RofcZoI|2@nE^JaTB3beeZl`i zT4sQIRBf*9DT&~N(MtLhdO(cCIDULl*GkpTv35w*6F!yNA9rK(83FV$I!UIG$1AIgQkpu>K#lZHdY}KLxE?u69N7%Pu zfZX{DVD)e!RjAk&coqqKphb%$zM1p!2TgY?`Q7NK;UN^-F0 z;oNH?^_E%*ZFUDNG4PsB?btWSVcQllMqV3Ir`RR#u`!3~k!G$mgF9z!rT+b(`i$QQ9Sf5}qr;E8e=M#qO^W-x%^KIMyLFb)0{=oU* zZ@u1D;ebbszxx9210l>kBbKxWKFRC73)6cv^EZw?C-Y`vktw>O9?UYk~j(002ov JPDHLkV1n7xY%~A> literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-mdpi/round_sticky_note_2_white_18.png b/app/src/main/res/drawable-mdpi/round_sticky_note_2_white_18.png new file mode 100644 index 0000000000000000000000000000000000000000..f28d94691432e70e5874d8fa3f12664b02d135d6 GIT binary patch literal 179 zcmeAS@N?(olHy`uVBq!ia0vp^LLkh+1|-AI^@RheDo+>3kP60Ri9HYg|NpP$U?bh} zUAXgiV+7M|$J75O^ZnW=xn(|2^S8@q7rd-ERAi;e7R&yqO6JF}168~y_}s7iuDia? z`Dh(;q4}gAg++U>^)4}!$SN?lWV@;?&E(yaBH40ZpvCbur$mX&enpOEABQ%<6D!X0 cI0K#V_{ZEs3L%^cKvyt$y85}Sb4q9e05qXP2mk;8 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-mdpi/round_sticky_note_2_white_24.png b/app/src/main/res/drawable-mdpi/round_sticky_note_2_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..dd928e9249cfaf1ba6cc99753c64294de334f5ad GIT binary patch literal 171 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjMV>B>Ar*{oCmD)181S%8Y~)aR zz^FM@$Z%={3!B>#8Dr-P`AKUn8Ozu2pJ^A!puOSqd_JB0#%7DV{3?cF2U-qq@L0gv z7*_w_&0OJ(fA>xbbFQD=Xsr9-B%?PE$0rAe3G7U}{z&e)@bQV=fo1L@m5K$-HZPp- UoHhS&0%$vfr>mdKI;Vst034Y-2LJ#7 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-mdpi/round_sticky_note_2_white_48.png b/app/src/main/res/drawable-mdpi/round_sticky_note_2_white_48.png new file mode 100644 index 0000000000000000000000000000000000000000..ed44990f8be9c1bb3294c74a953cf970847cacf1 GIT binary patch literal 280 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpUt`<^b2Ar*{oX9x-$b`W8G95UZ& zLxEpw)t$Mo-U-jQV&^{kgQct0iuKXvubN-antp$<_ORZa|K|HYtF{OJoty*ba+ zbHH)x`^Kr?_AKQ{IMg1<8SybOkZFy_0dY|NDf}ls-&I)f;`3eQ1>(!8^MG8(20airn?btXVZwEWcWldxWgoEQ*nRqS^Z{c|+b6}A bgahoW^j9!;hL(r`y~^O}>gTe~DWM4fZZ&cW literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/round_run_circle_white_18.png b/app/src/main/res/drawable-xhdpi/round_run_circle_white_18.png new file mode 100644 index 0000000000000000000000000000000000000000..1b8099548e5d2622e0aaa637589063424a795906 GIT binary patch literal 475 zcmV<10VMv3P)gB!b9c=vp$Gy+rch80Y!W*1pj0Y^R#u{@JxWif75gm-Mk?s-KZNv<)QeTOS zreemLaln_?exgG2rgeiR+LN~_T&m{^pHPZBB;P4?v6XKbD!6f6+4dzq-~#XPTbk>X z?d;^+V~&+Pk0Azqc^0@quR4E%r95Y`pnGXb)gW}y3l)68LAtwG&{CRl_5KV`IIW&P zqJtrJ(iE|vO=b{mLj~Vapo1O?$IT-_$$sH8;O7e)E-}Q&aqIk`xJjtsNxn@iXe-|U zo$CBlzC|pklrK$b~NEnpcFn z(8Wx1Cg_CM!U#L{ZE+czgdV2YOSi)q-Ov`CV1OA)Yyq&r68Gp=A^)~Fe*so-7eD2C#22#O&nio*~L#c&u7K`;!%At;7oI21!L z6hl!2y+7V~9!K8Gmn_JiA66Fc+uFRBdR;Pgbsdk#513(v6l**y84_G$ieXz8JwSvE zHWhe4h~9fFyoXD?qG~Ug!Eb8u0dh$97n8adAEC|)T-34fK5o%eSMVhVNYHdwQj1^U zy}GEn_;W~<;S2$uEI$*ID);yuBswwfVzzfD-(`R$q#A42{RG=)wu>L(0I5=pae~Zo zv+LOm5Tk8{HUn%?r2|rYg)g)TK9pVjDO_9Q2ZlB5Ck2Le9v8lue~AAax%Y5wT4sPd zSf~Adhz*|1#cOvV*CDRU4DeWSfVX}dXQ?el>gO>M6tF2NGe9mhz+8K6qF&1}(O#dz zrmV~Wu7%25pS5d#hu$xoIlNt;-3PF5P{Y2Gml@y%RofcZoI|2@nE^JaTB3beeZl`i zT4sQIRBf*9DT&~N(MtLhdO(cCIDULl*GkpTv35w*6F!yNA9rK(83FV$I!UIG$1AIgQkpu>K#lZHdY}KLxE?u69N7%Pu zfZX{DVD)e!RjAk&coqqKphb%$zM1p!2TgY?`Q7NK;UN^-F0 z;oNH?^_E%*ZFUDNG4PsB?btWSVcQllMqV3Ir`RR#u`!vFA~uC8|xt@)bMC|v_nd0Sw8iU0xm46!WV8FA(O@% zzGEB5csIWx_KIAThtlX_W6FRVLl3nO8=BH-gemYOj*AczwvkDv6{f(gI0jK?H?*ZS zn(`O>g1&efAqE^+j1G2C!zo_GHHuP|pksA4W7HR!blz}@BYeZFV)es3aH4nvG;uKP z(;`7gpRaFmrx+RTar~!m66_#ToFDTHq(gBHaE>n_2V5)8+vmrM_>N~E1I_-aV;wJw zvlH?{U1U>={R_O#3J(Ob*3pWJ^lwsU!TYUU-&9cjjqrI_>h-9AjJT zl#=X98qG4FeVv65Xy7<~7p@*})QE2{d_Wf&zD}I~w*ksDY8;E>4bR9hX@s>Y3-fS% zc*Txl?T5Uuj*IDI?;NFUJ8NH;ptOAt_o-4FvFRxqGe zhz0vA7SIS=Atv0eP(W8TqHaEi?04RI982-~=|7#W(_T$Xq7 z57KF4J1iRjsZ@Rgg(JO{49FdL00000NkvXXu0mjf$?TGF literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/round_run_circle_white_48.png b/app/src/main/res/drawable-xhdpi/round_run_circle_white_48.png new file mode 100644 index 0000000000000000000000000000000000000000..e1a910c6997edd12f1084c05423a3ab1a3584b52 GIT binary patch literal 1155 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD3?#3*wSy!M2l#}z0_p!l92{)Xoe%VeV@Z%- zFawW)dwl)$^~diYUOl~;a0=eNCC`pdUp zf1Lkb;q`Kp{pT&RPd9f5hfA$g*}%ZStmoC7jeU`rs=)4@J5N5f7wKABv^2^z>#N(sn_0@vbMtl{XZZZi zuHDDRMk-|UuV%$dQoWKVH%x5H4S22DzeFw7E8?=^q#0**xxR{dAK4aV+;*15uvGV0 zQl8-Pyz@KOFh7~*u4a(yoKcjdG*!~YN?I)>(>dXKdQvdQlo^K@qnMW^<}OT(zG77# z{qyuxuV*Y1=cH$aPG@+~B4Xz4Qn~OR$3E_>VjUm68dYm5SAA{c`0myyQ!|-m^RA^X z!u#}`BPv^N?3_|i&alD8_>8cVh{j{H;?sdsALgu>J5!L^OWW(qy=9`WcouG2Fz;e4 z(~pX@EsP;%S5}D0f4F=qX^EYPT2IQk+@IRlPd(hrb~y6*Z?k`<#*#1P-b?aaEq}D{ z>iZAp0t`e}U-J7AWpaCCobU%8Y3aU??&lJwh&An+b>O!B{XdiAEwbVw7+rlE=5g1g zG0$_KypW4ymN%1`4PRwLdf5si7iLHQNe6`H37)K!p7(7^Rw+xZ7>n5lS&vI+4?hlA zEA~3{6~pTKc~uLKuR6~lazsDGO~YEZSw;S#^k?M!B+xuH4G{A(e@t`jyC}oZHq6cP{&E zY5&`>U}DCnTVno}Ck-|F7qGATy6*qK9aqaQ+F$|XurA7qp1HpHI&3&;jOuXo>2N;u_3qKSrI|GQZ>^>wqvci&db%gb9*#}M(Q Wjp2g!z9?WeWbkzLb6Mw<&;$TcBXY|C literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/round_sticky_note_2.png b/app/src/main/res/drawable-xhdpi/round_sticky_note_2.png new file mode 100644 index 0000000000000000000000000000000000000000..9aa04365bf6d57b396af06623af91ccdcb2c318e GIT binary patch literal 398 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@Zgyv2U<~ziaSW+oe0y6yz$Hn+cIvhWyt;T(zUm^Iexm=g7804+KqJ| zUVC$OaJVcEq%zoTnA3%Ank-qv_A=^9*{qKG&SGN1u9GXk%fg<9FBWbN zRWiy7wta#VtM{3~k!G$mgF9z!rT+b(`i$QQ9Sf5}qr;E8e=M#qO^W-x%^KIMyLFb)0{=oU* zZ@u1D;ebbszxx9210l>kBbKxWKFRC73)6cv^EZw?C-Y`vktw>O9?UYk~j(002ov JPDHLkV1n7xY%~A> literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/round_sticky_note_2_white_24.png b/app/src/main/res/drawable-xhdpi/round_sticky_note_2_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..ed44990f8be9c1bb3294c74a953cf970847cacf1 GIT binary patch literal 280 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpUt`<^b2Ar*{oX9x-$b`W8G95UZ& zLxEpw)t$Mo-U-jQV&^{kgQct0iuKXvubN-antp$<_ORZa|K|HYtF{OJoty*ba+ zbHH)x`^Kr?_AKQ{IMg1<8SybOkZFy_0dY|NDf}ls-&I)f;`3eQ1>(!8^MG8(20airn?btXVZwEWcWldxWgoEQ*nRqS^Z{c|+b6}A bgahoW^j9!;hL(r`y~^O}>gTe~DWM4fZZ&cW literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/round_sticky_note_2_white_48.png b/app/src/main/res/drawable-xhdpi/round_sticky_note_2_white_48.png new file mode 100644 index 0000000000000000000000000000000000000000..d8adee2cc4051012df28630b85b3f362e0046573 GIT binary patch literal 482 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7Ro>U|i|x;uuoF`1X!s&LIW~)`wgw zi-bC7IQWE|N$0ey==En6vYg*}((}olW9dxuJGqXi2sQ4|^x3Q?ykz~F@0DNqF8||g z{pU4F#S@4QFn?gGVRHYspX~;7biy>5I;K60;>TX|fQ$y71O~|i4BwA2xF_)1h$T9(UOAAd z!zi^thmCCp^KwI$2vKI%E6E%Id=?I-Z48$g*&})s4-_3>yq3&Sz@Ww~v!A68$m-p| zvW!`>j@87jgLgh7+-!jdwhR9LvpZ7FV8HMGL5|_dlL~$Yt)e~b4BQ|hn`saGmV5WV zpQv{D{dX_pC8qm|j9VFk@W;aq=?UyL*89LA dJL$?>_R=W_RGCD@wSjTR;OXk;vd$@?2>_f7xzhju literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/round_run_circle_white_18.png b/app/src/main/res/drawable-xxhdpi/round_run_circle_white_18.png new file mode 100644 index 0000000000000000000000000000000000000000..eb7fa175baa37a12e47df85ba4ace29011b1fe45 GIT binary patch literal 697 zcmV;q0!ICbP)R5ZZ`*KOij{|rw|MO31c{-$C<^YmG(JI#XHE& zajBe(vY`f+V}^ZfVWgV9GQn=GzsnNKd#EYCqMbd5NL80EbSl6%)ji?|y8oHuSd76U z!ETgykN#VG4L$^w`?&aFv6?Trv5xTbm6Cr{&2!OUJF5AVjWfg?@GCdR;fqbWi+k0y z3Y~_7f}O}FTFD~t5cDPL4=gFzb+RaoM2ipBFB7bRyEP7Wm6U~pH4e6$ zRDm1ujvFA~uC8|xt@)bMC|v_nd0Sw8iU0xm46!WV8FA(O@% zzGEB5csIWx_KIAThtlX_W6FRVLl3nO8=BH-gemYOj*AczwvkDv6{f(gI0jK?H?*ZS zn(`O>g1&efAqE^+j1G2C!zo_GHHuP|pksA4W7HR!blz}@BYeZFV)es3aH4nvG;uKP z(;`7gpRaFmrx+RTar~!m66_#ToFDTHq(gBHaE>n_2V5)8+vmrM_>N~E1I_-aV;wJw zvlH?{U1U>={R_O#3J(Ob*3pWJ^lwsU!TYUU-&9cjjqrI_>h-9AjJT zl#=X98qG4FeVv65Xy7<~7p@*})QE2{d_Wf&zD}I~w*ksDY8;E>4bR9hX@s>Y3-fS% zc*Txl?T5Uuj*IDI?;NFUJ8NH;ptOAt_o-4FvFRxqGe zhz0vA7SIS=Atv0eP(W8TqHaEi?04RI982-~=|7#W(_T$Xq7 z57KF4J1iRjsZ@Rgg(JO{49FdL00000NkvXXu0mjf$?TGF literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/round_run_circle_white_36.png b/app/src/main/res/drawable-xxhdpi/round_run_circle_white_36.png new file mode 100644 index 0000000000000000000000000000000000000000..49f551c8a11f3bd331d527550b2c2b7753487357 GIT binary patch literal 1277 zcmeAS@N?(olHy`uVBq!ia0vp^IUvlz3?z5#SpFYK9S-mbaRt)FbZ*KfHQ!wX=>0$Lz=dZ}&T}2t+Uc{Cd7WPx|iP-_P$?k+FDwUE_Uw z{^sq;HVWC^&D|!K%TI>~FD`c6vhxK41M><`7srqa#C3Kq zdu6`8mFJg*i3W;r3G7-JARicg>WsnF9(tlNF#MEFv(O#8W6rfR1Z zPkq%iWJ~xPGn0E$wpEs6@1Yv{}+x>52+sImyr>Wj^cHw2q6j|w#g;&p5r8%zOeb!7&!O!sa4UWPqdZ%wN zeVn6{T&WTvb#zL~i_52Pi*T_Q?R_iNDdW}3yt8kAqeJIR4X2btJa?Rq{XNlrSDRz) z_B|KQwca@P%yrx9HTTx0{hwC)cj8Lhp2QP#4VEr!+9`DTgWSZf?EZ B&}aYv literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/round_run_circle_white_48.png b/app/src/main/res/drawable-xxhdpi/round_run_circle_white_48.png new file mode 100644 index 0000000000000000000000000000000000000000..2d2942c253057f0222d952211cdd706f6afe1fe2 GIT binary patch literal 1613 zcmdUv`9Bj30LEuFjZt#F8D8~9YQllIo?yQ}EL2CXV zs_}{kW52FHBpVNQCTc4eq*4~dr>%J7xyQ%!-kq##@cI-&_l zGRxz+35{+5u!vmXO}3jFWs?fJ+1*jcUu^IAzNiWE1c&Ejj7{jaS&PSkm>mk{2YF$L z@)La((zqvS)A#%kzA76mLev+r_EplHySl1b)V2V&Iuu>*f8FyLCHxpoysWQ$Ej=6+ z(pg}^F-QDOpP_eOAJ`bKdL+G@f1c37B+S%$E=JT+2o~jN-pKD&YEn_dC7~!^DYuJ0#{(=k3%xyrsv{cS#;@c80YF$xUd{Don8pzAx(%VtV zP^1E3O79bf*`81Ph*D=*@x$+*$SQ+2F3z%hNMOi2to)=toFs=PGu(`|3k^w;&L{OJ zXV@G{iig$oPg&MZe4p#}_>%H2U3ZrK5#{?28kTB{xEMw#lML#|1yUY#@Z;=5^g+yH zUS3*guLDg`P%?+p;k5N+9y@%Lqv7x2EJ@PD;eg+R;4R6>o{F-%J3nuG!uwV#d_SSb z+4Nu2xP}p;3sVL1HC7ti0p6LZWnGCr4BWtUgp2n;prDJILLbhg$~kQY+9krPFLd}* z31`*0h*K~wyqZJS(V7mdIp?=AH&mOY@|+8Yq?)!?_QL;kiDKTtCh2$lSPUaT_@NPkXNWL2a!0sHY{R4@ z)2@`~uo@e}RMub%@<9QO_1U)K`Kfa#b*1;^xIREov%?v_yFNGxjzeqg;T20!Wf!l& ztauGz-5zc@XKO{(#yUQ1l~<&QlJ=T(R7(8{&0n< zWhozB2(OWgJ>0$?))W`tDgk#n?@*TUIo{dSj4rJ)zD3`uz?HA7#rACDZI2P>^KeIY z@W&f>TaoF<3H!niZb z!2mqXHtC(d@Y~_mNVZI-8oaZQk)q02%0NO&Io6w~1lm00g))3%xAA z-^ivJB{a)={!)EWAyh?}1e|YFrso-8VH{)2Vw9|EN5w3Jo@qsKGtYh2LmH#~LB#ic zUon$#WZ>$o&wCT8?S-fGY>&AmC=D+aia?)V0S}8a^Sd+mpWxcNz9H#NfYe5#o!k8E z&-TyqAHe=BkN~Z@NA~wu0J1V@S*DE&th}gE( z_+p8kf$SD6h^ze2d-LAgA?#m4vRA2Hvy=w^-gzeLz-ElCxXA>w5o}}qgDvP>wa?0A S7@V|wr~p?dFUMwkQs#eRJX?VP literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/round_sticky_note_2.png b/app/src/main/res/drawable-xxhdpi/round_sticky_note_2.png new file mode 100644 index 0000000000000000000000000000000000000000..d889787ed90cdd00f351f8bfa5cb1c733d13bd07 GIT binary patch literal 593 zcmeAS@N?(olHy`uVBq!ia0vp^IUvlz1|<8_!p|}=FiCj2IEGX(zP-zsA|1%k{?R#* z<)DEGGtWT-9%s%r1||-MrUe>o77Pvy0wT;J20R8l0W1b00wPBRL=Kv>NR-sBto~kp z|2SjA{OZ2{A7`Z-BLK4<6ZZqD4EA3!jKv9;!j}kMVB){A|1PukgEjv7SNN*e>3&#e zc1=B@|8GA3)e8+9-4gAL zu(k;DNtme)K#9;W}@IR8L; z!j;SCf9f9)bJ*ahiey_vD~qvsdIHaxhS>%NK!zaOvqwC4SQ>X)FmF}>3OsPyu;8fV z3^tI!YXOjeki~`fF>@L@FHB43oOX#Zf;l+h&#C_nceuX&ikR+O=^D{A_4>5~LTmPT zvg#c4THV3ALF7$q=#eOMR?caysu2>?5)vbtS`#_N+KA+Y%56}x|FmIGkfHo(Z|~Ph zmAV@ujyG&SusFhzG5CQ(nA|P-ji36C^L|hX3pl_rgE_v@>_enkY=>pDh!^kelF{r5}E)AvgSSj literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/round_sticky_note_2_white_18.png b/app/src/main/res/drawable-xxhdpi/round_sticky_note_2_white_18.png new file mode 100644 index 0000000000000000000000000000000000000000..1642349c4ca5cdeff6743d2be8136da74f3ce261 GIT binary patch literal 347 zcmeAS@N?(olHy`uVBq!ia0vp^W+2SL1|)l2v+go5Fe-VvIEGX(zP%<`z|1J%aIx9R zAYi$Zf?eZ*$_?iV+kc339ZgygG2daK#BvA401Xi)_Vs?|XYZbiv;LhfCNB5ZEHpIq zs%c`M>8&M^iDqgUt&20SJZv}`5Ym0_%P+Z>!zW9uW4d=4zqLBEu5s(K`>*yNy457Q zCV_Rf%p1{M>u_M8F?hQAxvXn+cIvhWyt;T(zUm^Iexm=g7804+KqJ| zUVC$OaJVcEq%zoTnA3%Ank-qv_A=^9*{qKG&SGN1u9GXk%fg<9FBWbN zRWiy7wta#VtM{Ay>Eakt!T9z@YpJs%k4xaplxIiIoO!o@_Y{NQ*Y9zjUHw4risZ~7FU_S> zf+jxw)S7fsIAmQ&cIoM;#Wz2-Y_*p3yt_?(-IdKeU!&*k`PR<*{bkQBTkf0-WnN2n zwVIX$$#Q2sSaYkCJM+nwEU}=YnW4H%CS6_?;c;%Y58Fc)ArFN{2=Oat7Hh|O;!(6Z<5k^VwL%vTF0xi*oU5~|SSTPn zcjDJ5Plvjhks;Sxmoxr+Yqw#IZJ%#!^#lhdPL&A`w^9=-4|43zxmhMtIz3nB_}x_N z@Mi=( osCKwqU3l=j1~6j0G+BQ!@!Gtv{$QjX4onaXp00i_>zopr05pS+?f?J) literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxxhdpi/round_run_circle_white_18.png b/app/src/main/res/drawable-xxxhdpi/round_run_circle_white_18.png new file mode 100644 index 0000000000000000000000000000000000000000..06ac432fc22da68ba7063088a47c3c93e458c57a GIT binary patch literal 905 zcmV;419tq0P)vFA~uC8|xt@)bMC|v_nd0Sw8iU0xm46!WV8FA(O@% zzGEB5csIWx_KIAThtlX_W6FRVLl3nO8=BH-gemYOj*AczwvkDv6{f(gI0jK?H?*ZS zn(`O>g1&efAqE^+j1G2C!zo_GHHuP|pksA4W7HR!blz}@BYeZFV)es3aH4nvG;uKP z(;`7gpRaFmrx+RTar~!m66_#ToFDTHq(gBHaE>n_2V5)8+vmrM_>N~E1I_-aV;wJw zvlH?{U1U>={R_O#3J(Ob*3pWJ^lwsU!TYUU-&9cjjqrI_>h-9AjJT zl#=X98qG4FeVv65Xy7<~7p@*})QE2{d_Wf&zD}I~w*ksDY8;E>4bR9hX@s>Y3-fS% zc*Txl?T5Uuj*IDI?;NFUJ8NH;ptOAt_o-4FvFRxqGe zhz0vA7SIS=Atv0eP(W8TqHaEi?04RI982-~=|7#W(_T$Xq7 z57KF4J1iRjsZ@Rgg(JO{49FdL00000NkvXXu0mjf$?TGF literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxxhdpi/round_run_circle_white_24.png b/app/src/main/res/drawable-xxxhdpi/round_run_circle_white_24.png new file mode 100644 index 0000000000000000000000000000000000000000..e1a910c6997edd12f1084c05423a3ab1a3584b52 GIT binary patch literal 1155 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD3?#3*wSy!M2l#}z0_p!l92{)Xoe%VeV@Z%- zFawW)dwl)$^~diYUOl~;a0=eNCC`pdUp zf1Lkb;q`Kp{pT&RPd9f5hfA$g*}%ZStmoC7jeU`rs=)4@J5N5f7wKABv^2^z>#N(sn_0@vbMtl{XZZZi zuHDDRMk-|UuV%$dQoWKVH%x5H4S22DzeFw7E8?=^q#0**xxR{dAK4aV+;*15uvGV0 zQl8-Pyz@KOFh7~*u4a(yoKcjdG*!~YN?I)>(>dXKdQvdQlo^K@qnMW^<}OT(zG77# z{qyuxuV*Y1=cH$aPG@+~B4Xz4Qn~OR$3E_>VjUm68dYm5SAA{c`0myyQ!|-m^RA^X z!u#}`BPv^N?3_|i&alD8_>8cVh{j{H;?sdsALgu>J5!L^OWW(qy=9`WcouG2Fz;e4 z(~pX@EsP;%S5}D0f4F=qX^EYPT2IQk+@IRlPd(hrb~y6*Z?k`<#*#1P-b?aaEq}D{ z>iZAp0t`e}U-J7AWpaCCobU%8Y3aU??&lJwh&An+b>O!B{XdiAEwbVw7+rlE=5g1g zG0$_KypW4ymN%1`4PRwLdf5si7iLHQNe6`H37)K!p7(7^Rw+xZ7>n5lS&vI+4?hlA zEA~3{6~pTKc~uLKuR6~lazsDGO~YEZSw;S#^k?M!B+xuH4G{A(e@t`jyC}oZHq6cP{&E zY5&`>U}DCnTVno}Ck-|F7qGATy6*qK9aqaQ+F$|XurA7qp1HpHI&3&;jOuXo>2N;u_3qKSrI|GQZ>^>wqvci&db%gb9*#}M(Q Wjp2g!z9?WeWbkzLb6Mw<&;$TcBXY|C literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxxhdpi/round_run_circle_white_36.png b/app/src/main/res/drawable-xxxhdpi/round_run_circle_white_36.png new file mode 100644 index 0000000000000000000000000000000000000000..2d2942c253057f0222d952211cdd706f6afe1fe2 GIT binary patch literal 1613 zcmdUv`9Bj30LEuFjZt#F8D8~9YQllIo?yQ}EL2CXV zs_}{kW52FHBpVNQCTc4eq*4~dr>%J7xyQ%!-kq##@cI-&_l zGRxz+35{+5u!vmXO}3jFWs?fJ+1*jcUu^IAzNiWE1c&Ejj7{jaS&PSkm>mk{2YF$L z@)La((zqvS)A#%kzA76mLev+r_EplHySl1b)V2V&Iuu>*f8FyLCHxpoysWQ$Ej=6+ z(pg}^F-QDOpP_eOAJ`bKdL+G@f1c37B+S%$E=JT+2o~jN-pKD&YEn_dC7~!^DYuJ0#{(=k3%xyrsv{cS#;@c80YF$xUd{Don8pzAx(%VtV zP^1E3O79bf*`81Ph*D=*@x$+*$SQ+2F3z%hNMOi2to)=toFs=PGu(`|3k^w;&L{OJ zXV@G{iig$oPg&MZe4p#}_>%H2U3ZrK5#{?28kTB{xEMw#lML#|1yUY#@Z;=5^g+yH zUS3*guLDg`P%?+p;k5N+9y@%Lqv7x2EJ@PD;eg+R;4R6>o{F-%J3nuG!uwV#d_SSb z+4Nu2xP}p;3sVL1HC7ti0p6LZWnGCr4BWtUgp2n;prDJILLbhg$~kQY+9krPFLd}* z31`*0h*K~wyqZJS(V7mdIp?=AH&mOY@|+8Yq?)!?_QL;kiDKTtCh2$lSPUaT_@NPkXNWL2a!0sHY{R4@ z)2@`~uo@e}RMub%@<9QO_1U)K`Kfa#b*1;^xIREov%?v_yFNGxjzeqg;T20!Wf!l& ztauGz-5zc@XKO{(#yUQ1l~<&QlJ=T(R7(8{&0n< zWhozB2(OWgJ>0$?))W`tDgk#n?@*TUIo{dSj4rJ)zD3`uz?HA7#rACDZI2P>^KeIY z@W&f>TaoF<3H!niZb z!2mqXHtC(d@Y~_mNVZI-8oaZQk)q02%0NO&Io6w~1lm00g))3%xAA z-^ivJB{a)={!)EWAyh?}1e|YFrso-8VH{)2Vw9|EN5w3Jo@qsKGtYh2LmH#~LB#ic zUon$#WZ>$o&wCT8?S-fGY>&AmC=D+aia?)V0S}8a^Sd+mpWxcNz9H#NfYe5#o!k8E z&-TyqAHe=BkN~Z@NA~wu0J1V@S*DE&th}gE( z_+p8kf$SD6h^ze2d-LAgA?#m4vRA2Hvy=w^-gzeLz-ElCxXA>w5o}}qgDvP>wa?0A S7@V|wr~p?dFUMwkQs#eRJX?VP literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxxhdpi/round_run_circle_white_48.png b/app/src/main/res/drawable-xxxhdpi/round_run_circle_white_48.png new file mode 100644 index 0000000000000000000000000000000000000000..9e99ac450bbe6b08971a98fd5dda851650844214 GIT binary patch literal 2020 zcmdUw`#%#3AIE1ynhD2kiXKBRqmj|1m2hk>XRH}YC~UkCt(9ahZx(gWOKe+^VCw6DcN_V#j%&zvB76UZ3y#^XuoQ_s;~pogDZ$7ytmsIoM-}hvfYm z8PMVP2Ns|X(M51{#U4`pe}4Q#!=l3(*7t~b7l4ehOE{ybV|e;?Yg*`Kgrs?Jvv|Bd zU~~N$Tw{?leu`2+8G{XU7 z?Mjnad%Nhd;;1b3Ay;c{1Zb3F(Cu7)q&5C-o0z#*eaangUuW9KXbXSN@|$8=*jEsr zx*FvER6*2tpg%d^yKr|mx@3ppy-PH@TI(9Dnl)T~t}YpSP#ocU$t=@rf$y8fnkuwa z>l+QeH}%d_>}QOLpJ1Qbt3bPf`l$E+CTW$Wp-Jahj_REu6fJz(T_$WRpWN-A83r%5 zP}ezDQ&6g)cOj87_NJuxD^i3GCQi(&h?WZpEH2b0JA#?H`MlqJK=vhptKOU!371k z%KLH;#4#Ix@KLkH6xiGiq^hBk_KIOo`E*k3jiMJpQ!;~*KI!;GHRJsZ#Wxm719@A5 zl{@d*mKi@2RCQ7bDzai^zbJsLBUyt{Tv1%dFJC?e(;(RD3^dIhkK<^h!g+&BqxlC= zYfWMg;KG<_5h&rN@0X;>5ZPUaDU{j6CK^jG=ifQwJ0TdYF9=hqKs+zQcTCyrjF-Fh(AdgOK(3<-pMU1hIko3e1Jt1WvNCkZMzC;6$Oc5!K-umHFS~|Zl{h4 zN5pUeR}z4rl@l9bze!%@rmHFiRCXxn{$})2Zp+s+!i)3CVkoPV`6j9KvGZ53*t8B3 zo%dq;7jK z*>f4}0e;j3c8U3jbzl5w=j9X<6%IRz%%S9L`*O%2R^%=EpDENI3I)#@jv}RH_nW!u zW|2E91+WGkM1cB)uUm75$>-cJJcWU!eru{}y-wDN=m2EePCNO8nbos8Va(7M4kbm> zpY}FUminNo-NME{l2#vRQl&!+?UeeE?Ah}Dz+YA*XC_>xlO#e~ygr3U9#c+u@nIf| z;7L=~-tYNvx~*=0Hc^wMZd7O&CgD*387x_7c8~2JmuJ?0Al0UcYJg`vUjPE8l`%N8 z`vbW<7k^cgHKxBlDn4i0_26?sJHWI>J@0992g=bosZ66pXqvhkn^FUm%x0< zTu=6VWHc11u_MY!&R0x`_#RE^NX9L&!z~v@i)wAg#qm;rS^a5<*nNp=M3HdE?YX8S z0J04FK5>rubn%f;bnzTnB;kjTaRNWNDf>Jz%}F0i3v%g^^{Rze0M20hp`HF#`VrS9 z_Nb?WA&=Q9IxS(}l(R-vd>&~w<~0E{Q>#eh96~&z&5M9JQ>tcuv!~7)Yj45X-20ft|5jWtA=xUxI91f`~u^q9;{=XduK36sqF> z<##3DuD+rz;kZiHsM8d1xnT@nKH%0WTT39-q02E;5GX10uEAp2bCT}bDPQ3F62Gbf)pbwt)PY<_ z+gK$@|7u;yz-+GNluwmP@1wO{-WuPPx4`rcAxYt?rCaYviF?~A@0{W?^$m;T zGTqV>Lw&5}H?tJYy{wD)DV?cqfvAV2x?urU&5(yjkmVk4`2)!HqMO@2vzLPh6J7(CMq6PogB>xl2fwZ7cP{z}a+dcFgzyXWL J)c)ub{|{6%Bs%~A literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxxhdpi/round_sticky_note_2.png b/app/src/main/res/drawable-xxxhdpi/round_sticky_note_2.png new file mode 100644 index 0000000000000000000000000000000000000000..d5a11b655a4bdf38435ec2b57a63a5d3aada0cc6 GIT binary patch literal 730 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cxp1o(uw0_p#Q2~1;<`~Y;5K}nEb zFoQ_)`qPj9-#@%KoJV5%@6Yw#Ci%hsD)Y;iN9!o8e(wI=AijIMjE!^q?CTEis|ETO z*UKzsU|>Ay>Eakt!T9z@YpJs%k4xaplxIiIoO!o@_Y{NQ*Y9zjUHw4risZ~7FU_S> zf+jxw)S7fsIAmQ&cIoM;#Wz2-Y_*p3yt_?(-IdKeU!&*k`PR<*{bkQBTkf0-WnN2n zwVIX$$#Q2sSaYkCJM+nwEU}=YnW4H%CS6_?;c;%Y58Fc)ArFN{2=Oat7Hh|O;!(6Z<5k^VwL%vTF0xi*oU5~|SSTPn zcjDJ5Plvjhks;Sxmoxr+Yqw#IZJ%#!^#lhdPL&A`w^9=-4|43zxmhMtIz3nB_}x_N z@Mi=( osCKwqU3l=j1~6j0G+BQ!@!Gtv{$QjX4onaXp00i_>zopr05pS+?f?J) literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxxhdpi/round_sticky_note_2_white_18.png b/app/src/main/res/drawable-xxxhdpi/round_sticky_note_2_white_18.png new file mode 100644 index 0000000000000000000000000000000000000000..9aa04365bf6d57b396af06623af91ccdcb2c318e GIT binary patch literal 398 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@Zgyv2U<~ziaSW+oe0y6yz$Hn+cIvhWyt;T(zUm^Iexm=g7804+KqJ| zUVC$OaJVcEq%zoTnA3%Ank-qv_A=^9*{qKG&SGN1u9GXk%fg<9FBWbN zRWiy7wta#VtM{U|i|x;uuoF`1X!s&LIW~)`wgw zi-bC7IQWE|N$0ey==En6vYg*}((}olW9dxuJGqXi2sQ4|^x3Q?ykz~F@0DNqF8||g z{pU4F#S@4QFn?gGVRHYspX~;7biy>5I;K60;>TX|fQ$y71O~|i4BwA2xF_)1h$T9(UOAAd z!zi^thmCCp^KwI$2vKI%E6E%Id=?I-Z48$g*&})s4-_3>yq3&Sz@Ww~v!A68$m-p| zvW!`>j@87jgLgh7+-!jdwhR9LvpZ7FV8HMGL5|_dlL~$Yt)e~b4BQ|hn`saGmV5WV zpQv{D{dX_pC8qm|j9VFk@W;aq=?UyL*89LA dJL$?>_R=W_RGCD@wSjTR;OXk;vd$@?2>_f7xzhju literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxxhdpi/round_sticky_note_2_white_48.png b/app/src/main/res/drawable-xxxhdpi/round_sticky_note_2_white_48.png new file mode 100644 index 0000000000000000000000000000000000000000..ed8a0e75a346e451e34366cbec61af7319a2f62d GIT binary patch literal 938 zcmeAS@N?(olHy`uVBq!ia0vp^2SAvE8Azrw%`pX1a{_!qT!Hle!3riTTu1@B&!i;C zFPMSFp?mY`$N%piUR`e>(f^v`^Yi56%XxIp%Y2{jzxZ~wg+lZ1;^^%C!5aDRuTOTK z-EMPP#pm}rCI$wkPEQxdkP61Px7a5=au9I2=oF%{?Ds!D4o10^Qp@d zYsY^ZR&Y&ZE|F>(boFo`T+VAXIyX4){`zWXnM-%929riBfcccwZ%$y8=s zexzxqiD1FjhD$#fi@7!R7qf?mT`{aWaInd15qm^L`*yhv9dZ*Q1Af0?6z9$ow|$VN zxOLk_=0ACib8YJ!KHh8c^y6izDBSL_Zh2ds-+jHAwr>K?esx?7v0Q-z>XH|B4EugF z&)UKNWaZ->@0i7p7v5zLy4PU&?_Iz04t^O~_fmO}4CX_7et%}y$zV46b64KIK>o%> zwmTon>m?4>K6qoX?6*Tvk<7)~2V8H|ckna3|EI$!@TcBQUW$`ppK`-rAD~Yf{8-6@6y`+9~A|67e2fT9dgN;dqR!U&O1W!Ny^ z2)pz-p!Rg2G*I_>pzh~D-NiuNmO$NefVv4uH$?n?yV%}+&EIb)=PO^U+x@fn$gTYO ze=U>VZr7LN-5@_fe9CXec+Kz3n^d3H9WX!jx8dcSBKw5Epm*#w`aoemdyVhR%jWw7 pRoVYm2T7+I>973O-2nxEnAlnFS2)F{d;unE22WQ%mvv4FO#tT^ + + diff --git a/app/src/main/res/drawable/round_sticky_note_2_24.xml b/app/src/main/res/drawable/round_sticky_note_2_24.xml new file mode 100644 index 0000000..960c91e --- /dev/null +++ b/app/src/main/res/drawable/round_sticky_note_2_24.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/layout/fragment_glance_settings.xml b/app/src/main/res/layout/fragment_glance_settings.xml index 784944e..31603b0 100644 --- a/app/src/main/res/layout/fragment_glance_settings.xml +++ b/app/src/main/res/layout/fragment_glance_settings.xml @@ -103,27 +103,28 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/small_clock_warning" - android:padding="10dp" + android:padding="8dp" android:layout_marginTop="16dp" android:layout_marginBottom="24dp" android:orientation="horizontal"> diff --git a/app/src/main/res/layout/glance_provider_item.xml b/app/src/main/res/layout/glance_provider_item.xml index fa06269..18def7d 100644 --- a/app/src/main/res/layout/glance_provider_item.xml +++ b/app/src/main/res/layout/glance_provider_item.xml @@ -14,8 +14,8 @@ - \ No newline at end of file diff --git a/app/src/main/res/layout/glance_provider_settings_layout.xml b/app/src/main/res/layout/glance_provider_settings_layout.xml index 895c8bd..5e57c41 100644 --- a/app/src/main/res/layout/glance_provider_settings_layout.xml +++ b/app/src/main/res/layout/glance_provider_settings_layout.xml @@ -7,7 +7,7 @@ + android:text="@string/google_fit"/> + + diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 82d47da..3c13f2a 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -204,6 +204,11 @@ Allarme impostato da %s La prossima sveglia sembra impostata da un\'app errata. Disinstalla l\'app che imposta allarmi errati. La prossima sveglia sembra corretta. + Account collegato + Account non collegato + Google Fit + Collega + Scollega Condividi diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 7f2da05..d125542 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -221,6 +221,11 @@ Take a quick view of the last notifications showed up on your device. Greetings View some cool phrase when you don\'t expect it. + Account connected + Account not connected + Google Fit + Connect + Disconnect Share