Giter VIP home page Giter VIP logo

reluct's People

Contributors

binishmatheww avatar racka98 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

reluct's Issues

Title on Tasks Card overlaps the time

Describe the bug
In case of a long title the title can cut through the time and it will not be visible.
See screenshots

Expected behavior
Title should not cut through time

Screenshots
image

Computer (please complete the following information):

  • OS: Android
  • Version: 13

Provide a Reduce Animations setting

Describe the solution you'd like
A toggle to reduce animations in settings will be helpful for accessibility and those on low end devices so they wont have huge performance hit.

Describe alternatives you've considered
PR #60 has already returned the animations. What's left is providing a toggle and linking it to the various animations

Add Swipe support for Tab layouts

Is your feature request related to a problem? Please describe.
Naturally someone would attempt to swipe left or right when they are on tabbed layout. This feature should be implemented

Describe the solution you'd like
Enable swiping left or right to switch between the different tab destinations. Fetch relavant data as you swipe to a new destination so the memory footprint will remain small and manageable.

Failure to clear navigation stacks when going back to Dashboard via Bottom Nav Bar

Describe the bug
You can't go back to the dashboard by using the bottom nav bar button when you navigate to one the items linked in the dashboard overview or statistics

Expected behavior
Clear all stacks and go back to Dashboard regardless of the current destination

How to reproduce
Clicking on the Screen Time card on the Dashboard will navigate to Screen Time bottom nav bar destination but clicking Dashboard again won't update the state.

Device:

  • OS: Android
  • Version: 13

Investigate Settings Crash on requesting Overlay permission on Tecno

Describe the bug
Some users report that requesting Draw Over other apps settings intent crashes the phone's Settings app

Reports on Tecno devices running Android 10

Screenshots
If applicable, add screenshots to help explain your problem.

Device: Tecno Devices

  • OS: Android
  • Version: 10

Task Labels

Is your feature request related to a problem? Please describe.
Would love to tag and label my Tasks so I can organize them more clearly.

Describe the solution you'd like
Provide labels for Tasks that can be color coded. They should serve as a means of sorting tasks and organizing things.
Preferably should also be an option for filtering the tasks by labels.
Labels should be stored on the device so they can be used by multiple Task without having to manually write them every time.

Describe alternatives you've considered
No other alternative at the moment.

Reduce Item Animations on lists

Describe the bug
Items that carry their own states for animations can cause performance reduction on low end device. Considering to reduce them.

State Preservation in ViewModel for Task Add/Edit screen

Currently the state of the currently edited Task is not handled by the view model. It was a mistake that got left out when I was testing things out. With this mistake, the state of the task is not saved on config changes and process restoration.

Device:

  • OS: Android
  • Version: All supported versions

Memomry leak caused by ComposeView detected by LeakCanary

Describe the bug
After the ComposeView in AppScreenTimeOverlayUI is detached from the Window it stays in memory and leaks.

All details match this issue that hasn't been fixed yet: https://issuetracker.google.com/issues/240975572

To Reproduce
Steps to reproduce the behavior:

  1. Set a screen time limit for an App
  2. Open the app so the block overlay ui shows up
  3. Exit the Overlay using the Exit Button or Home button
  4. Leak canary will be observing the ComposeView instance and report that it's leaking

Expected behavior
ComposeView for AppScreenTimeOverlayUI should be destroyed and should not stay in memory

Screenshots
Will attach stack trace later

Device:

  • Model: Pixel 4a 5G
  • OS: Android
  • Version: 13 (API 33)
  • App version: 1.0.0-alpha07

Additional context
None at the moment

Reduce Font Size

Font sizes appear too big on 720p and lower devices.

Considering reducing overall sizes for some of the fonts

Replace all List<T> & Map<T, R> to ImmutableList<T> & ImmutableMap<T, R> for all Compose parameters.

Describe the bug
List in Compose functions cause the composable to not be skippable. Means that they are re-evaluated every time the parent Composable recomposes. This can affect performance. Performance for screens that uses lists heavily like Tasks, Statistics and Goals can be affect when the lists change every time.

To Reproduce
No Applicable

Expected behavior
All Compose related models and parameters with List or Map<T, R> should be replaced with ImmutableList & ImmutableMap<T, R> respectively.

Additional context
All Composables that receive List or Map<T, R> do not pass lint checks and detekt with Twitter Compose Rules

App Crash when going back from one of bottom nav bar destinations

Describe the bug
App would sometimes crash when going back from one of the bottom nav bar destinations.
It happens when the previous destination was left in a scrolled state and bottom nav bar was currently not visible.

To Reproduce
Steps to reproduce the behavior:

  1. Go to Goals or Screen Time destination
  2. Scroll until the bottom nav bar is not visible
  3. Press the back button on the device
  4. App will crash

It might not happen on first try, do it a couple of time and it will crash. It's also more likely to happen on low end devices.

Expected behavior
App should not crash; it should navigate to the Dashboard page and show the bottom nav bar if it was previously hidden.

Firebase Stack trace

androidx.navigation.NavBackStackEntry.getViewModelStore (NavBackStackEntry.kt:202)
com.google.accompanist.navigation.animation.AnimatedNavHostKt.AnimatedNavHost (AnimatedNavHost.kt:141)
com.google.accompanist.navigation.animation.AnimatedNavHostKt.AnimatedNavHost (AnimatedNavHost.kt:88)
work.racka.reluct.android.compose.navigation.navhost.graphs.goals.GoalsNavHostKt$GoalsNavHost$2.invoke (GoalsNavHost.kt:74)
work.racka.reluct.android.compose.navigation.navhost.graphs.goals.GoalsNavHostKt$GoalsNavHost$2.invoke (GoalsNavHost.kt:73)
androidx.compose.runtime.internal.ComposableLambdaImpl.invoke (ComposableLambda.jvm.kt:116)
androidx.compose.runtime.internal.ComposableLambdaImpl$invoke$1.invoke (ComposableLambda.jvm.kt:127)
androidx.compose.runtime.internal.ComposableLambdaImpl$invoke$1.invoke (ComposableLambda.jvm.kt:127)
androidx.compose.runtime.RecomposeScopeImpl.compose (RecomposeScopeImpl.kt:145)
androidx.compose.runtime.ComposerImpl.recomposeToGroupEnd (Composer.kt:2375)
androidx.compose.runtime.ComposerImpl.skipCurrentGroup (Composer.kt:2643)
androidx.compose.runtime.ComposerImpl$doCompose$2$5.invoke (Composer.kt:3260)
androidx.compose.runtime.ComposerImpl$doCompose$2$5.invoke (Composer.kt:3238)
androidx.compose.runtime.SnapshotStateKt__DerivedStateKt.observeDerivedStateRecalculations (DerivedState.kt:341)
androidx.compose.runtime.SnapshotStateKt.observeDerivedStateRecalculations (Unknown Source:1)
androidx.compose.runtime.ComposerImpl.doCompose (Composer.kt:3238)
androidx.compose.runtime.ComposerImpl.recompose$runtime_release (Composer.kt:3203)
androidx.compose.runtime.CompositionImpl.recompose (Composition.kt:771)
androidx.compose.runtime.Recomposer.performRecompose (Recomposer.kt:1031)
androidx.compose.runtime.Recomposer.access$performRecompose (Recomposer.kt:125)
androidx.compose.runtime.Recomposer$runRecomposeAndApplyChanges$2$2.invoke (Recomposer.kt:534)
androidx.compose.runtime.Recomposer$runRecomposeAndApplyChanges$2$2.invoke (Recomposer.kt:503)
androidx.compose.ui.platform.AndroidUiFrameClock$withFrameNanos$2$callback$1.doFrame (AndroidUiFrameClock.android.kt:34)
androidx.compose.ui.platform.AndroidUiDispatcher.performFrameDispatch (AndroidUiDispatcher.android.kt:109)
androidx.compose.ui.platform.AndroidUiDispatcher.access$performFrameDispatch (AndroidUiDispatcher.android.kt:41)
androidx.compose.ui.platform.AndroidUiDispatcher$dispatchCallback$1.doFrame (AndroidUiDispatcher.android.kt:69)
android.view.Choreographer$CallbackRecord.run (Choreographer.java:1229)
android.view.Choreographer$CallbackRecord.run (Choreographer.java:1239)
android.view.Choreographer.doCallbacks (Choreographer.java:899)
android.view.Choreographer.doFrame (Choreographer.java:827)
android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.java:1214)
android.os.Handler.handleCallback (Handler.java:942)
android.os.Handler.dispatchMessage (Handler.java:99)
android.os.Looper.loopOnce (Looper.java:201)
android.os.Looper.loop (Looper.java:288)
android.app.ActivityThread.main (ActivityThread.java:7898)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:548)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:936)

Device:

  • OS: Android
  • OEM + Model: Pixel 6 Pro, Pixel 4a 5G, Tecno Pop 4
  • Version: Android 10 & 13

Additional context
Bug likely happens on all Android versions. It's particularly prevalent on times of reduced performance.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.