Commit graph

38435 commits

Author SHA1 Message Date
Dana Conrad
534460611f ErosQNative: Update and clarify manual
Rework installation instructions, add blind users button
description, and generally clean up and make more readable.

Change-Id: I81fd4a7abf2ccc886cdc029afb73b1d0a71a35d1
2025-06-24 09:27:00 -04:00
Solomon Peachy
cc4e3b098d FS#13638: Updated Ukranian Translation (Pavlo Rudy)
Change-Id: I84c1367f9726515aaca6cc544a3925cf27c9c77b
2025-06-23 17:47:15 -04:00
Solomon Peachy
c145f41658 theme_menu: Error out gracefully when a directory doesn't exist
Normally we can't browse into a directory that doesn't exist; hwoever
the theme menu lets us directly browse (eg) fonts, themes, etc.  If the
target directory is not present (due to a broken installation) we
actually crash!

So, um, check and bail gracefully.

Should fix FS#13636

Change-Id: Idb28c55cf0ce3954114d056725f9992ceaf1db20
2025-06-17 18:40:06 -04:00
Solomon Peachy
9265d43a56 FS#13637: Minor update for Romanian translations (Mihai Alexandru Vasiliu)
Change-Id: I74a6daf7f71bd6bf15d834a12d70ae605c05530e
2025-06-17 18:22:05 -04:00
Christian Soffke
5f593fb000 album art setting: use settings callback
Since even Shuffle and Repeat are now immediately applied
from the Quickscreen, I suppose it makes sense to do the
same for the album art setting as the remaining holdout.

Change-Id: Ib1b56c31f28d8197e001901296d9897a23134564
2025-06-15 11:30:59 -04:00
Christian Soffke
fbbf08575f quickscreen: remove callback
this isn't used by anything anymore

Change-Id: Ia94b34a5e72b3b78e5e65f0a7a75c4aa347f0100
2025-06-15 11:30:59 -04:00
Christian Soffke
5f05d66853 quickscreen: fix disappearing elements in misbehaved themes
Adjusting certain settings from the Quickscreen causes a
GUI_EVENT_NEED_UI_UPDATE event to be sent. For example:
Changing the Repeat or Shuffle setting while music is playing
or paused (which results in audio being flushed and tracks
being reloaded immediately since commit 1c80f53)

This creates an issue with themes such as Terminal(Two),
FreshOS, or Themify, which appear to have viewports that
overlap with the UI viewport, thereby wiping out the
Quickscreen viewports.

We now redraw the Quickscreen when a full SBS update is
requested, similar to how it is done by lists. You'll still
see the viewport flash in case of misbehaved themes, so,
ideally, these themes would receive an update by their authors,
removing any viewports that overlap the UI viewport.

Change-Id: I7affbb70fc2e72fd6e1418196559204aec125e12
2025-06-15 11:30:59 -04:00
Solomon Peachy
19056b50d4 WPS: As a general rule, Use 16bit WPS resources on 24/32bpp targets
This pulled in some missing backgroups, selectors, and icon sets
on various 24|32bpp targets.

Change-Id: I913a64a30f3ef276619c920ae1068a4f24bfc993
2025-06-12 11:48:08 -04:00
Solomon Peachy
5d207bfd3e aigoerosq: Specify a font for our default CabbieV2 WPS
Without this, no font gets installed into the generated zip files

Change-Id: Ie8ebf3eaa31269f940576c0f90f1915037400094
2025-06-12 11:24:28 -04:00
Christian Soffke
91c724dc19 plugins: clock: adjust defaults, don't restore color
- Default to round border in analog mode
- Default to segmented LCD style in digital and binary mode
- Default to date format most fitting for current language
  (instead of D-M-Y)
- Don't forcibly set a light background before menu is
  displayed or when quitting
- Update manual

Change-Id: Ifb6a41bb99701ae8f8cbf5fa0db2a3a332085f43
2025-06-08 11:31:14 -04:00
Christian Soffke
8d4efb6cf2 plugins: clock: simplify settings
- Use system time format and remove separate setting
- Hide timer until started & eliminate setting for it
- Simplify menu, reorder settings, keep theme enabled
- Make dialog for resetting settings more consistent
  with other reset dialogs

Change-Id: I0fd38612b0592cd5a650c8985f377acc70a48eb7
2025-06-08 11:31:14 -04:00
Christian Soffke
ab161a3d89 plugins: clock: remove messages when starting/quitting
- When loading or saving clock settings,
  only show message if an error occurred
- Eliminate error message that was displayed
  when clock settings file didn't exist (yet).

Change-Id: I6d9c646d3895dba1f18ef3c2f9e73fa15fbc2c1c
2025-06-08 11:31:14 -04:00
Christian Soffke
2d00292df5 plugins: clock: fix fd not closed when file size differs
Change-Id: I12716c650703c47f8db825b1ae7e6fe62c039258
2025-06-08 11:31:14 -04:00
Christian Soffke
1812d15416 plugins: calculator: remove delay when quitting
Change-Id: Ie419e19302c6ec7d2f452fad4aa3e51a0325e899
2025-06-08 11:31:14 -04:00
Christian Soffke
9593dca0ef plugins: stopwatch: use UI viewport, fix vp not cleared
- lap times were not cleared after reset
- fix stuck lap scroll position after reset
- the running counter displayed stuck pixels
  depending on the font's character width

Change-Id: I0427bb2257ae8646ae675ae92ae3a5601083c4d1
2025-06-07 19:01:45 +02:00
Christian Soffke
42e5fa3ea5 shortcuts: Fix garbled title after language change
Change-Id: I09517c2f143e16b8874b8b8df7d3f8125686ff7a
2025-06-07 02:19:34 +02:00
Christian Soffke
855c4d666a shortcuts: voice: fix name isn't ignored when timedata.sleep_timeout < 0
regression introduced in 94cf340

Change-Id: Ib214021413d500b5538e38a38edfe620d3fd3a7b
2025-06-06 22:49:40 +02:00
Christian Soffke
94cf3403e2 shortcuts: add missing voice for sleep shortcuts without name
Change-Id: I1178be8c82671d64746297306b27ee9ccb50c1a2
2025-06-06 19:12:07 +02:00
Christian Soffke
e9d0be5dfd shortcuts: Don't require name for 'time' (i.e. talk or sleep) shortcuts
Change-Id: I5b0777c10527f6a49ac7305ca0ba1d4c269333fe
2025-06-06 18:12:06 +02:00
Christian Soffke
19dc2466c8 action: fix "first keypress enables display only" ignored in plugins
Change-Id: I131887e4b7d72022026dcd4adbfc6bd3e8bd2ee2
2025-06-05 16:09:29 -04:00
Christian Soffke
2bf929c7ae plugins: disktidy: use UI viewport, limit UI updates
- Show stats when finished
- Keep stats on screen until Cancel or Menu
  button is pressed
- Limiting progress updates to 10fps results
  in a big speedup

Change-Id: Iebffaead6e1212306edaa42aad925458d13a5f82
2025-06-05 16:08:58 -04:00
Paul Sauro
e3fb41919d metronome: increase rectangle sizes to use a greater portion of the screen
Change-Id: I6c0b3faa173f5b68282c8e75b039e61d2362f749
2025-06-04 09:44:31 -04:00
Christian Soffke
4ebf2edf32 plugins: pictureflow: fix backlight setting requires restart
Change-Id: I6a2f0fe1ab3909ab831f89f92988d82b5a7c9b14
2025-06-04 12:43:48 +02:00
William Wilgus
4811e48026 [Bugfix] make theme menu reset browse context
we try to reuse the browse context to return to folders in the plugin browser

but in the browse_folder() case we want to load the root directory
so reset the current browse context and force the browse
to be reloaded

Change-Id: I416ee40411cdce4e404b6119b33d91ff6ba533c8
2025-06-03 11:10:53 -04:00
William Wilgus
380e8c2687 [BugFix] lua add stub for splash() to splashf()
Change-Id: If3fbcae201fd950c60eedc9e090cca5f9ca45bae
2025-06-03 01:45:18 -04:00
Christian Soffke
5c2a33bba3 Hide extension in Rename dialog when viewing single file type
Hides the file name extension when renaming a file in
places other than the File Browser, such as in the
Playlists menu, where only a single file type is displayed.

Otherwise, a file can disappear from view if its extension
is accidentally changed.

Plus, it becomes a little easier to edit playlist names,
because  you don't have to skip past the extension in the
keyboard picker anymore.

Change-Id: I39fc2b008d5504080e0aa728acf88ceedc2b4617
2025-06-02 21:05:32 -04:00
Christian Soffke
d9feabc720 voice: replace splashf with talk equivalent
Add voice equivalent to splashf messages that require
pauses between individual announcements, or that need
to include their arguments

Change-Id: Ie72326a2371f242de8999761278b22080ba33c81
2025-06-02 21:04:19 -04:00
Christian Soffke
60010b52a2 voice: Use "All" prefix for final progress announcement
Use "All" prefix when the final item count is announced
in display_playlist_count and search_playlist
("All 2000 tracks saved"), to make it possible to tell
when the operation has finished.

Change-Id: I90419599fb30da511ee4671b8f0f7f92e2098fd0
2025-06-02 21:04:06 -04:00
Christian Soffke
4e50ae5e6e voice: database: interrupt for LANG_RANDOM_SHUFFLE_RANDOM_SELECTIVE_SONGS_SUMMARY
Change-Id: I7450d98323d377bebbd58521748b54e73a1646cd
2025-06-02 21:03:39 -04:00
Solomon Peachy
123d3b9a23 talk: Keep QUEUE_SIZE at 64 for smallmem devices
Change-Id: I03fb48b4dadbe0079f699d1fa9d994efd7fe4f68
2025-06-02 12:44:44 -04:00
Christian Soffke
36a5501d74 talk: Increase QUEUE_SIZE from 64 to 128
Ensures that fewer spelled-out strings
will run into this limit

Change-Id: I66cc1bcaffc7b63ee4a9908a59d157e4d2b7e598
2025-06-01 20:35:54 -04:00
Christian Soffke
ae1dc0adf8 talk: Keep UI responsive when spelling out long strings
Commit 3b1230b ensured that strings exceeding QUEUE_SIZE
were spelled out completely, but also resulted in the UI
becoming unresponsive.

We now check for any button presses, and truncate the
spelled-out string in that case.

Change-Id: Ibbd4f630cb5b88c9c133fdaf3a591e1a38f61e82
2025-06-01 19:59:57 -04:00
Christian Soffke
c51ca1eeb5 voice: splash_progress
Says "Loading x%" in previously unvoiced splash_progress

Change-Id: I81780e3baf6ea8a8871a4433e1a733100b8cd5f6
2025-06-02 00:03:42 +02:00
Solomon Peachy
a001d76afe More translation updates
* Moldavian: Mihai Alexandru Vasiliu
 * Romanian:  Mihai Alexandru Vasiliu
 * Slovak: Matej Golian

Change-Id: I63585940fc1b517c3ad399db4d3afe1dc515745b
2025-06-01 15:09:05 -04:00
Roman Artiukhin
2334e08d72 Codecs: Fix stuck buffer when advance_buffer fails
Fixes FS#9186 (constant noise at the end of truncated flac file)

Change-Id: I516282e48cecb2be009b5779115395a50edb6fdc
2025-06-01 12:11:53 +03:00
Vencislav Atanasov
c464a81e00 iPod S5L87xx bootloader: Add code for dumping the boot flash to UART
Change-Id: I9513cac0a9463f033456fd7ba7c3db648edf691b
2025-05-31 11:49:51 -04:00
Vencislav Atanasov
6a626a2cae iPod S5L87xx bootloader: Implement the development menu as a list selector
This allows more than 5 items to be added, as every item was bound to a physical button.

Change-Id: Ib03ffe8e7c5f356e170a72bedf35f143051d1eaf
2025-05-31 11:49:51 -04:00
Solomon Peachy
bda1fc9003 Multiple translation updates:
- US English (myself)
 - Simplified Chinese (王吉)
 - Italian (Alessio Lenzi)
 - Korean (Hoseok Seo)
 - Latvian (Renalds Belaks)
 - Polish (Adam Rak)

Change-Id: I93b8650835c6f7209c0264ad039f7a6c329ce58a
2025-05-31 11:39:15 -04:00
Christian Soffke
8ba02932b3 voice: splashf 39f8685 add missing voice phrase
Two of the splashf messages that were converted
to support voicing in commit 39f8685 didn't have
a voice string yet. Translations tbd for:
* LANG_READ_FAILED
* LANG_FM_SCANNING

Change-Id: I73fc609348f319f84d1e94cc9673685c75958bbc
2025-05-30 08:30:58 -04:00
Christian Soffke
4346a1e8e7 playlist catalog: sort independently from file browser
Allow independent sorting of playlists in the
playlist catalog, using the context menu.

You may want to usually sort playlists by their date
(modified), but sort audio tracks alphabetically.
This is now possible without having to constantly
adjust a setting.

The fact that 'Sort Files' applied to both the file
browser and playlist catalog seems more like a side
effect of the implementation, rather than behavior
that is wanted. Additionally, the 'By Type' sorting
makes no sense when only a single type is displayed.

Since many of the other File View settings don't
apply to the playlist catalog, hide the menu there.

Change-Id: Ic35038015d0860998ae117f472ce23ce3bc80cfa
2025-05-30 08:30:47 -04:00
Christian Soffke
6e06319988 addendum to 498d581
two more that I missed

Change-Id: I48863fb870375328228d2c4caf1ea83931ccc218
2025-05-28 12:52:45 +02:00
Christian Soffke
498d581ca6 voice: fix regression 39f8685 (already voiced)
Some of the splashf messages that were converted
to support voicing in commit 39f8685 already had
a voice equivalent that was more appropriate,
since it also voiced parameters, and included
pauses between announcements where necessary.

Change-Id: Ia91a01c82acd6148afb4afadd64b1105802aea36
2025-05-28 11:18:29 +02:00
Christian Soffke
348054712d fix red f3d127f372
Change-Id: I62e7f16c49d8e6f7f8645e1f27ee4fa0cfecee66
2025-05-27 05:46:19 +02:00
Christian Soffke
f3d127f372 Minor confirm prompt adjustments
* Rename LANG_RESET_ASK to LANG_ARE_YOU_SURE,
  so that it matches the actual language string
  (translations remain valid), and can be repurposed
  for generic confirmation prompts, where the
  first line says "Are you sure?", and the second
  line reiterates the selected action

* Add "Reset Settings" as second line to the prompt
  shown before resetting settings, instead of just
  asking "Are you sure?"

* Make Shuffle prompt consistent between WPS and
  Playlist Viewer, and ask whether user is sure they
  want to Shuffle instead of warning them that the
  current playlist will be erased, which was a bit
  misleading

* Explicitly say "Cancelled" when user answers NO to
  erasing the current playlist or to overwriting a file.
  Improves consistency with other prompts that are
  displayed for potentially destructive actions, e.g.
  before items are deleted, renamed, saved, or reset.

* PictureFlow: Prompt before rebuilding/updating cache

Change-Id: Id8ae36db7187315eb1a374701307e6ab4dcdbd1d
2025-05-26 23:15:53 -04:00
Solomon Peachy
57f3f290c9 warble: Fix build in light of ci.strip_filesize
Change-Id: I8fb7b04c71f588258496cf353fb01df3b38da227
2025-05-26 11:51:26 -04:00
Roman Artiukhin
38105860dc Codecs: mp3: Move strip tags to codec
Another fix for FS#13626 (replacement for 2bd88936f7)

Change-Id: Ife5f65539457559fd908d0048d4df94649b0b894
2025-05-26 10:59:56 -04:00
Roman Artiukhin
78903e9d38 Reapply "buffering: remove bufgettail/bufcuttail"
This reverts commit 2bd88936f7. Strip tags functionlity will be moved to codec.

Change-Id: Iff28ff7a29da09632ceed30a7959cc1ee8bf3cc8
2025-05-26 10:59:56 -04:00
Christian Soffke
e7110c0beb macos: tools: configure: use GCC 15
Matches updated GCC Homebrew formula:
https://formulae.brew.sh/formula/gcc

Change-Id: I9b8e66a16ccfaf840fd50bbe313cae33e44d4f11
2025-05-25 14:46:16 -04:00
Solomon Peachy
efefe143bd ibasso: Fix a build warning that got lost
Change-Id: I51287f5cdd7f07d9407ed6aac949d4e389d6df0e
2025-05-25 11:02:27 -04:00
Solomon Peachy
adb49159ce winsim: Build fixes for current mingw64 cross compiles
Change-Id: I5d523a4aa0ca9044b8f83ae6aafd4f3705ff96d6
2025-05-25 07:56:05 -04:00