mishraaditya595 / ScanIt

The intelligent, effective, All-In-One Android Scanner
BSD 3-Clause "New" or "Revised" License
89 stars 78 forks source link

Improve the User Interface for Floating Add Button #59

Closed leoshrey closed 3 years ago

leoshrey commented 3 years ago

Current Problem

Whenever the user clicks on the Add button (Floating Button) on home screen which is having documents listed. A jam-packed and frustrating interface appears where the text/description of floating items (Open Camera, Open Files) overlaps the background text (can be seen below). Which doesn’t look like a good interface.

Solution

we can reduce the background visibility on floating button click. This will improve the visibility and hence the more clear UI. Just for an example I am attaching the screenshot for the same thing implemented in skype application - which is making the background blur/less visible :

So, I want to make the background blur which will make it look a lot beautiful and more focused on buttons, and hence making more handy and clearer UI to the user.

@mishraaditya595 What are your thoughts regarding this ?

If it is okay can you please assign me the issue so that I can move forward solving this issue ?

mishraaditya595 commented 3 years ago

Sounds good to me, You can start working.

codeakki commented 3 years ago

@leoshrey

Hey I wanted to work in this issue under Gssoc21

codeakki commented 3 years ago

Just provide me the reference file

leoshrey commented 3 years ago

@codeakki, good to see that you want to contribute, but this issue is already in progress.
Please look for some other open issues you can contribute to.

mishraaditya595 commented 3 years ago

Hey @leoshrey, what is the status of the issue?

leoshrey commented 3 years ago

@mishraaditya595, It's in progress. I've been engaged in some college stuff for a day. Now back in flow.

leoshrey commented 3 years ago

Hey @mishraaditya595, I tried some possible ways to make the background blur when floating action button gets touched. But whenever I run the app it crashes and throws NullPointerException. Cause I think as FAB is in a Fragment instead of Activity, it is not allowing to invoke that method. I think, to make it possible first we need to use FAB in Activity that means we've to refactor the code for FAB.

What are your thoughts in this ? Also if possible please suggest if there is a way to use the method within a Fragment.

mishraaditya595 commented 3 years ago

Can you let me where exactly does the app crash? And what parameters does the function demand?

leoshrey commented 3 years ago

Can you let me where exactly does the app crash? And what parameters does the function demand?

It crashes just after the opening animation of ScanIt. And throws this log:

E/AndroidRuntime: FATAL EXCEPTION: main Process: com.vob.scanit, PID: 2266 java.lang.NullPointerException: Attempt to invoke virtual method 'void com.getbase.floatingactionbutton.FloatingActionsMenu.setOnFloatingActionsMenuUpdateListener(com.getbase.floatingactionbutton.FloatingActionsMenu$OnFloatingActionsMenuUpdateListener)' on a null object reference at com.vob.scanit.ui.fragments.HomeFragment.onCreate(HomeFragment.kt:56) at androidx.fragment.app.Fragment.performCreate(Fragment.java:2684) at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:280) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1175) at androidx.fragment.app.FragmentTransition.addToFirstInLastOut(FragmentTransition.java:1255) at androidx.fragment.app.FragmentTransition.calculateFragments(FragmentTransition.java:1138) at androidx.fragment.app.FragmentTransition.startTransitions(FragmentTransition.java:136) at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1989) at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1947) at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1849) at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2629) at androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:2577) at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:247) at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:541) at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:210) at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1433) at android.app.Activity.performStart(Activity.java:7924) at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3332) at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221) at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201) at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2044) at android.os.Handler.dispatchMessage(Handler.java:107) at android.os.Looper.loop(Looper.java:224) at android.app.ActivityThread.main(ActivityThread.java:7560) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950) I/Process: Sending signal. PID: 2266 SIG: 9

deepsjuneja commented 3 years ago

Hey! Can I work on this issue?

mishraaditya595 commented 3 years ago

Hey @leoshrey, any updates on your work? else it will be assigned to @deepsjuneja.

leoshrey commented 3 years ago

Hey @leoshrey, any updates on your work? else it will be assigned to @deepsjuneja.

Based on https://github.com/mishraaditya595/ScanIt/issues/59#issuecomment-808759678, I am facing build issues. If you can look into it, that's good. Otherwise you can unassign me.

mishraaditya595 commented 3 years ago

It runs fine on my and other machines.

mishraaditya595 commented 3 years ago

@deepsjuneja you can start working

deepsjuneja commented 3 years ago

@deepsjuneja you can start working

Okay. Thanks!

mishraaditya595 commented 3 years ago

Hello @deepsjuneja, any updates?

deepsjuneja commented 3 years ago

Hello @deepsjuneja, any updates?

Apologies for the delay. Couldn't work for a few days owing to bad health. I have partially achieved implementing the desired feature, but I'm still working on it to make it even better. Hopefully, I'll make the pull request soon. I'm also trying to solve the problem associated with scoped storage. If I am able to tackle it, then I'll inform you.

mishraaditya595 commented 3 years ago

Ok! Take care.

deepsjuneja commented 3 years ago

@mishraaditya595 I think that the issue should be under Level 2. Can you please review it once?

mishraaditya595 commented 3 years ago

Hey @deepsjuneja, do not worry about it. I will provide an appropriate level according to the work done by you in the PR.

deepsjuneja commented 3 years ago

Okay.

deepsjuneja commented 3 years ago

@mishraaditya595 I've generated the pull request. Kindly review.

Also, do I need to fill this Google form too? https://docs.google.com/forms/d/e/1FAIpQLSd_hEKAJpjRBR7Jh4O76TVbY3MIUhCPiutK-4f20RjENC4z9A/viewform If yes, kindly tell what does DWOC specify?

mishraaditya595 commented 3 years ago

Just make a PR and attach the apk file or provide the link to the file. That's it.

deepsjuneja commented 3 years ago

Here's the link: https://drive.google.com/file/d/1oemEGHXxnUdjfmkUp8I-ZLcOUGi8YSSt/view?usp=sharing

I've filled the Google Form as well.

deepsjuneja commented 3 years ago

Hey @mishraaditya595 ! You haven't updated the level. Kindly review that before uploading my score. Thanks.