In the Browse view (i.e. add from other repos), if you select an app to add, then page through to the second page, the app you added on the first page isn’t added.
This is a regression that was introduced when we decided to add apps only when pressing Done.
If we want to keep this behavior we need to store the list of apps to be added somewhere (e.g. the user session).
A simpler solution could be to add an app right away when Add was clicked and then disable the button, so the user can not add the same app again (or remove the app from the list).
Depending on how #98 (closed) will be implemented, the bug might be solved by that when the user has JavaScript enabled.
For example, if you select 10 APKs and there is an error only with one, how do you deal with it? I'm not even sure what happens at the moment. Are the first apps you clicked added up to the one with an error? Or are all added except the one with an error?
What I know happens at the moment is that all stay selected and you get an error that doesn't tell you which APK had the problem. So you need to deselect the one by one and try again to find the one causing the error.
If we want to keep this behavior we need to store the list of apps to be added somewhere (e.g. the user session).
+1
A simpler solution could be to add an app right away when Add was clicked and then disable the button, so the user can not add the same app again (or remove the app from the list).
This was how it worked before but then we decided to remove it on another click.
For example, if you select 10 APKs and there is an error only with one, how do you deal with it? I'm not even sure what happens at the moment. Are the first apps you clicked added up to the one with an error?
This is how it is done currently.
Or are all added except the one with an error?
This could be implemented quite easily.
What I know happens at the moment is that all stay selected and you get an error that doesn't tell you which APK had the problem.
That's harder to implement because at the moment we only say all succeeded or one or more apps failed.
I can revert the changes that apps are added when pressing "Done" but this will likely block the workflow on enduser's devices because SQLite is locked. If we decide to not care about SQLite's problems, then the only outstanding question is what happens when you remove an app that is currently processed.
This was how it worked before but then we decided to remove it on another click.
No, before you could click the button again to add the app again and then received an error. So we had two options to solve this: delay the adding or disable the button. You chose to delay it.
I can revert the changes that apps are added when pressing "Done" but this will likely block the workflow on enduser's devices because SQLite is locked.
Let's not worry about that as we need to find a solution to this problem anyway.