-
Sorry I wasn't clear, I didn't mean show the days of week and repeat symbol, I meant show just the symbol, since you need to tap on the alarm to actually do anything with it, and days of week are listed inside. But I can see that having the days of week on the main menu would be useful, sorry to cause confusion.
No problem!
I like Gordon's idea to colour the icon, that should be nice and clear. Depending on the colours, the whole text could be 'greyed out', but I know dithered text doesn't look great so this may not be an option.
I'll make some experiments :-D
You could remove the Alarm/Timer text and still make it clear which are alarms and which are timers by changing the formatting. Show alarms as time, e.g. 12:45, 07:00. Show timers as durations, e.g. 5m, 1h20, 12h.
Exactly what I have in mind!
-
One option might be to replace just the MTWTFSS case with an icon, but I wonder if that's just needlessly complex.
The
MTWTFSS
is localized, an icon is not.but we also have color to play with - a disabled alarm could be grey (dithered) and an enabled one black.
Right, I hadn't thought about colors!
-
I agree with user140377 - the checkbox is very clear on the tiny screen. Worth remembering when looking at giant icons on a computer that the real icon is ~3mm tall, and if the only change is a ~1mm tick or cross in the centre it could be hard to spot, especially if the user has bad eyesigh
It was an idea to workaround the fact that we cannot directly check/uncheck an alarm AND open it because the API is quite limited now (but maybe I'm wrong).
For the same reason, I liked the previous 'repeat' symbol. Nice and clear, obvious what it means, and symbols don't need translating.
Imho the repeat symbol is not needed. In
07:00 MTWTF__ [X]
obviosly the alarm is "repeated". The current version showsAlarm 7:00 (R) [X]
: ok, the alarm is on repeat, but when?The problem with a repeat symbol is that it eats too many space: time + days of week + repeat icon = two lines and I'd like to keep all the info on one line.
I could add an option so the user can choose compact view vs full view:
(this is only a quick mock with the variants mixed up)
(the underscores are needed to move the text to the right as spaces does not work ( @Gordon : this is the issue I was referring to in the PR))
I do like the idea to hide the Bulk Actions behind another layer though, it was making me nervous having a DELETE ALL button there that I might accidentally press!
All actions require a confirm ;-)
-
But indeed an icon showing if enabled or not is necessary
Sure. I mean, we could show an icon for "alarm enabled" and a different icon for "alarm disabled"
Examples:
Alarm ON
https://icons8.com/icon/116217/alarm-on)
Alarm OFF
https://icons8.com/icon/116215/alarm-off
This way the icon won't look like a call to action (like a checkbox does)!
-
Thanks to both of you!
A nice thing would also to be able to enable and disable directlty with the checkboxes
Maybe the edit can be enabled with an extended tap?
I don't know if the component supports this :-/
The checkbox rubs me the wrong way too and makes me think I can enable/disable directly with a tap.
What about replacing the checkbox with a different icon? Eg.:
It's only an example, this icon is too big and it's opaque. Without the checkbox the user won't think about enable/disable with a tap.
-
Hello!
In the last days I made some changes to the default Alarms & Timers app and I'd like to make a few more changes to improve the user experience. My ideas are scattered among issue comments, pull request comments, personal branches, etc. so I'd like to take stock of the situation and involve the community in the discussion.
This is the UI now:
I'd like to add a way to see when an alarm is ON at glance, eg.:
In this configuration:
- The first alarm has been configured to fire every day
- The second alarm will fire once (flag repeat is false)
- The third alarm will fire monday to friday
- The fourth alarm will fire saturday and sunday
This way you can see at glance the days an alarm in configured. No days = no repeat (Moreover the repeat icon is no more needed)
I thought about using labels as "weekends"/"workdays" but there could be some issue with translations (eg. "workdays" in italian is "giorni lavorativi", too long)
Moreover I'd like to clean up the interface, eg.:
- I'd move New Alarm & New Timer in a sub menu
- I'd move all the bulk actions in a submenu
What do you think? Suggestions?
- The first alarm has been configured to fire every day
-
This is included in Android integration app but there is (was) a bug in Gadgetbridge. The bug has been fixed some weeks ago and we're waiting their new release.
-
A widget already exists.
-
It's the Bluetooth ID widget ;)
-
-
-
-
BTW in the testing app loader you can find alarms 0.24 (with huge usability improvements) and scheduler 0.07.
-
Hello!
What versions are you using? (both Alarms & Timers and Scheduler)
In the Alarm/Timer app, I can create new alarms (only their time, not the day(s) they should sound) and as well new timers.
There's a menu "Days" that allows yout to select the days (I'm working on some improvements about this)
Then I don't see any list of these newly created alarms.
You should see all your alarms & timers when you open the app, just below the New Alarm / New Timer menu items.
The options of the Scheduler application, accessible from Settings/Apps, only allow to set buzzes and snoozes as well as their duration and repetition. Nothing else apparently.
These are the global settings for the "sched" lib (so if you want to add a timer to your clock you can use those settings instead of reinveinting the wheel)
A small ergonomic remark : most menus now use the red button for an exit from the menu or a return to the parent menu. It would save the space of a line if we did the same for these two apps.
They already do... What versions are you using?
-
Hello @HughB
If you choose to do that for your app then I think it should be made clear in the README file that the widgets wont be loaded and the Pedometer App will not count steps while your App is running. Otherwise we could start to get people saying the step counter is under counting etc.
This should not be a problem because people usually don't keep the launcher opened while walking but you're right. Soon I'll send a PR about it :-)
Now that we can use Bangle.getHealthStatus("day").steps in a widget there is no need to count steps using Bangle.on('step'). This is an argument for phasing out use of the old Pedometer widgets in my opinion. As far as I know the Pedometer widget is the only widget that has to be running all the time to produce an accurate result.
Agree. I made this change on Pebble Clock some days ago.
-
If you don't want widgets in the launcher, don't call Bangle.loadWidgets();/Bangle.drawWidgets();. I think that's the best bet - hiding the widgets is
a bit of a hack that's done so that the clocks can still access them (eg for the pedometer).Yeah, it makes sense.
Probably thefor (let wd of WIDGETS) { wd.draw = () => {}; wd.area = ""; }
hack will die after #1466 (I haven't deepened yet on this issue but I'd like to work on it).I guess the underlying issue is the messages widget buzzes in the draw handler though, so if you erase the draw handler it won't buzz.
Pebble Clock erase the draw handler but it buzzes. Anyway I'm fine with not loading/drawing the widgets in fullscreen mode :-)
Thank you!
-
And/or why not include the wpedom app on the bangle app loader?
If I'm not missing something there is!
I think the confusion is that the widpedom is sometimes called wpedom.
-
Hello!
I'm trying to add a fullscreen mode to the default Launcher. The code is in this branch and it works. I'll send a PR to upstream later.I noticed that other fullscreen apps load the widgets overriding the draw method using this code:
for (let wd of WIDGETS) { wd.draw = () => {}; wd.area = ""; }
I like the idea so I updated the code:
Bangle.loadWidgets(); if (settings.fullscreen) { for (let wd of WIDGETS) { wd.draw = () => {}; wd.area = ""; } } else { Bangle.drawWidgets(); }
I did some tests: the fullscreen mode works but I don't receive the notifications. The same approach works in other apps (like the Pebble Clock).
Am I missing something?
Thank you :-)
-
Any updates to this?
This PR has been merged and there there is this open issue.
In one comment on Codeberg Gordon said
"I finally got the App Loader working inside Gadgetbridge too (not in this PR yet) so it should make a really big improvement to the usability of Bangle.js."
so release should be close.
-
-
-
I know I can set a timer to go off every sixty seconds, but is there a way to start at 0 seconds past the minute? Or on exactly 0 seconds and 30 seconds past?
Clocks usually use the
setTimeout
method like this: https://github.com/espruino/BangleApps/blob/c4f9d7757912442df66b21038322ee65acf53b53/apps/waveclk/app.js#L21-L24The 60000 - (Date.now() % 60000) part returns the millis to the next minute.
-
There's a work in progress about alarms, take a look here!
-
What about merging "Repeat" and "Days" menus?
→
The menu provides some standard dow (Workdays → MTWTF__, etc.)
Custom
opens the current days of week list.If the default repeat (from
sched.newDefaultAlarm()
) is true then the alarm is preconfigured with all days enabled, else the alarm is preconfigured with "once".Tomorrow I'll publish a demo in my app loader.