mjaakko / NeoStumbler

New stumbler application for contributing data to Mozilla Location Services
MIT License
102 stars 8 forks source link

Minor statistics tab UI/UX issues #153

Open rprusa opened 1 month ago

rprusa commented 1 month ago

There are a few very minor purely cosmetic issues with the Statistics tab, some of these are my suggestions, and subject to personal preference. Neither of these issues in any way impacts the core functionality of the app, or it's usability in meaningful ways.

  1. The dates are truncated when 7+ days are graphed. I'm using a Pixel 8 Pro with GrapheneOS, not sure if this happens on other screen sizes.
  2. When many days a large number of Wi-Fis/Cells/Beacons are graphed, it becomes hard to extrapolate data from it. Maybe a bar graph would be more suited to this purpose? The graph could also show an exact number when the user taps on a specific bar.
  3. On any tab, the app does not reach all the way down to the bottom. Not sure if this needs to be fixed, as it seems that apps targeting Android 15 be edge-to-edge by default.
  4. Would you consider using Material You system accent colors for the app's accent bars?

statspage

mjaakko commented 1 month ago
  1. I'll see what can be done. Unfortunately the chart library wasn't quite easy to use when configuring how to display the x-axis
  2. Good idea. Maybe there could be a toggle or something for switching between the current line chart and the bar chart
  3. I'm planning on doing some overhaul to the UI in general, will take a look at this then
  4. I don't see problem with that, maybe create a separate issue for it?
rprusa commented 1 month ago
  1. I'll let you know if the chart gets any more broken when I add more days.
  2. I was going to suggest this, but didn't want to over complicate things.
  3. The documentation of Android 15 changes has this note to it:

"Apps using Material 3 Compose components might not be negatively impacted because most components apply insets. Apps using Material 2 Compose components might be negatively impacted because Material 2 components don't automatically apply insets."

Now, I'm too stupid to understand what that actually means, but I wanted to see if perhaps just changing the targetSdk would automatically make NeoStumbler display as shown in the documentation. I went into Android Studio, opened build.gradle changed targetSdk to 35, ran Gradle Sync, and ran the app inside an API 35 emulator. This did not make NeoStumbler display edge-to-edge, but it also didn't break the UI in any immediately noticeable way.

  1. I made #155
rprusa commented 1 month ago

This is what the tab looks like after another week:

Screenshot_20240729-172337