InfiniTimeOrg / InfiniTime

Firmware for Pinetime smartwatch written in C++ and based on FreeRTOS
GNU General Public License v3.0
2.76k stars 944 forks source link

Bluetooth setting is not accessible enough #1930

Open TailyFair opened 11 months ago

TailyFair commented 11 months ago

Verification

Introduce the issue

I think Bluetooth enable/disable setting is not accessible enough and that it should be easier to toggle.

Most of operating systems make Bluetooth settings very easy to change, I don't see why this case is different. I often turn off Bluetooth to preserve battery when I don't need it. But now it's at the bottom of the settings list and accessing it requires 5 actions!

Curious if I'm the outlier here and if others feel the same.

Preferred solution

I see these solutions:

  1. Move from bottom of the list to the top. Maybe could be switched with "Time format", how often Time format needs to be changed?
  2. Replace Flashlight Quick Setting with Bluetooth toggle. I think watch flashlight is very impractical, but maybe it's just me. 2.1. Allow to configure 1 quick setting button action - either Flashlight or Bluetooth or maybe something else?

Version

1.13

minacode commented 11 months ago

In case you want to open a PR, src/displayapp/screens/settings/Settings.h is the relevant file where you can find the list at the bottom. Just change the order to what you would like more.

I would like it a little more accessible, too. But I would not want to change it against the flashlight.

minacode commented 11 months ago

Let's gather some alternatives. This is my attempt:

Battery
Firmware
Bluetooth
Steps

Watch Face
Display
Wake up
Shake Calib.

Date&Time
Time format
Chimes
About
JustScott commented 10 months ago

Here's mine:

Bluetooth
Battery
Steps
Watch face

Weather
Wake Up
Display
Date&Time

Time format
Chimes
Shake Calib.
Firmware

About

With the Heartrate setting inserted above weather (will be available in 1.15)

minacode commented 10 months ago

@JustScott, yours is more sorted by importance and mine is more ordered such that individual screens make more sense, right?

JustScott commented 10 months ago

@minacode Yes, mine is ordered by my most used. Everyone's most used will be different though, so as a default for the upstream your approach will probably be better suited.

However, another approach could be to shrink the quick settings button sizes to fit 2 more settings on the page. One being Bluetooth, and the other being open for discussion.

thun11o commented 4 months ago

@TailyFair what is the use case to access the Bluetooth serting?

My previous watch had an airplane mode option which I turned on while I sleep. So either removing the flashlight or adding a fourth option to the notification button in the quick settings would be my preference.

TailyFair commented 4 months ago

PineTime does not support Wi-Fi or cellular, so not sure why Airplane mode is even relevant here. Besides it falls out of this issue scope, airplane mode should be discussed separately. Use-case is that Bluetooth is not always needed, so like very other system, toggling it should be pretty accessible (which is not right now).

thun11o commented 4 months ago

I've mentioned it because airplane mode used to turn off any radio including Bluetooth. But yeah probably a different thread.

minacode commented 4 months ago

Making settings an app in the app menu and using the quick settings slot for bluetooth sounds reasonable to me.