1
0
Fork 0
forked from len0rd/rockbox
Commit graph

38236 commits

Author SHA1 Message Date
Christian Soffke
ce417b3e1b fileop: check dst path length during pre-scan
Use the known difference in path length between src
and dst in order to detect an insufficient
buffer size not just for the source, but also for
the destination path during the pre-scan already.

Change-Id: I9e4caeb9b9d2cb1e9577f418f2b777ab17718acf
2024-08-11 19:32:55 +02:00
Christian Soffke
48400b6ec1 fileop: fix slow pre-scan & flashing progress bar
Scanning files before a delete or copy operation was
slowed down by splashf() being called too frequently.

- Delay and update splashf every 0.5s (the scan will
  often be finished in a split second)
- Only clear screen buffer before scan info is redrawn
- Display name of *top* level item only, to prevent bar
  from jumping around due to the string length changing
- Use item size for progress bar, so that the overall
  progress isn't interrupted by each file's progress
- Display processed & total file sizes (KiB if total
  is < 10MiB, or MiB otherwise)
- Move delete confirmation before scan to provide
  instant UI feedback

Change-Id: I882a8db4161a46aca2d398e371ec4ed018fc8501
2024-08-11 13:18:50 -04:00
Christian Soffke
28badc5703 Fix yellow from commit 52b9656ed6
Change-Id: I449396e4a43a6909738912ae2a6284acdf16352a
2024-08-11 18:49:47 +02:00
Christian Soffke
52b9656ed6 Fix red/yellow from commit 8dcd781291
Change-Id: Ie5761f8f31f1d3648ba67220299cbcba582ed69d
2024-08-11 18:09:50 +02:00
Christian Soffke
8dcd781291 plugins: Playing Time: Add 'Remaining' and 'Single Mode' options
1) Remaining:
Sometimes, you may only be interested in how
much time is left in a playlist, but don't care
about the progress already made.

The new option will disregard already played tracks,
which can be much faster, depending on your position
in the playlist.

2) Single Mode:
When 'Single Mode' is enabled (and set to something
other than 'Track'), you now have the option to see
the time elapsed and remaining specifically for
that section of the playlist (e.g. the playing album).

Change-Id: I786eaababc537f565ab3fa4de1c46b7d5f3d1101
2024-08-11 17:30:19 +02:00
Franklin Wei
1f7ea715db puzzles: resync to ee5e327 (Simon's 1c1899e) and update documentation.
Updates URLs of relevant upstream repos to longer-lived Github URLs instead
of my personal site.

Change-Id: I08bba5c12193c999f252b4ea70ae40c9d1a3552d
2024-08-08 23:49:33 -04:00
Franklin Wei
ab3982247d puzzles: remove timestamp from genhelp.sh output.
This will reduce noise in the Rockbox commit history.

Change-Id: I2d6d02cd3ae7e742b30ecd9db9335fb386c33f3a
2024-08-08 23:47:48 -04:00
Solomon Peachy
66fa10f1ba FS#13463: Updated Italian translation (Alessio Lenzi)
Change-Id: I22d97140773292402301b1a9642a6852976f05da
2024-08-04 14:48:22 -04:00
Christian Soffke
a7f9557c9c list: Fix interrupted playback when scrolling l/r
Change-Id: I2d054a8cec4e680d5ff5ce62e7ea94c00b13ebf1
2024-08-01 16:53:57 +02:00
Solomon Peachy
d471cd1e7b FS#13462: Update Chinese translation (王吉)
Change-Id: I19b040eb34343efef26dbbb86e252046119879a8
2024-07-31 08:56:09 -04:00
Solomon Peachy
82a3b21b96 Update multiple translations
- english-us (myself)
 - polski (Adam Rak)
 - korean (Hoseok Seo)

Change-Id: I2d307062a148532493ff93af44a2fd9eff9026d5
2024-07-30 18:23:24 -04:00
Christian Soffke
2f8cab9190 plugins: properties: keep theme enabled
Launching a themed plugin can cause the screen to
flash due to the theme being disabled, before it
is re-enabled right away. For the Properties plugin
in particular, this seems a bit annoying and
unnecessary.

Change-Id: Ifa0275b453369051cc63a3c626551f54120fdb41
2024-07-30 22:08:18 +02:00
Christian Soffke
cb7ae38fcd plugins: properties: fix and refactor
- prevent buffer overflow that could theoretically
  happen if an input file's dirname were larger
  than sizeof(str_dirname)
- remove has_pl_extension, use existing filetype_get_attr
- move determination of props type to single function, and
  eliminate need for redundantly reading the container dir
  for a file

Change-Id: Ice7cfcb9d891d22a8eb549439569dda126435bc2
2024-07-30 16:07:40 -04:00
Christian Soffke
a430120b3f plugins: properties: delay UI viewport update
Looks a little nicer whenever loading takes
less than 0.5s

Change-Id: Ied6c03fa8b06009f442d8c51aeaa49ad09b89db1
2024-07-30 16:05:29 -04:00
William Wilgus
e3097bf92c [Feature] File Picker Plugin
allows viewers to pop a file browser to let the user pick a relevant file
which then gets run by the viewer

(only lua so far)

Change-Id: I7e6b4c2827fab5e9f596d336f546100636c4b871
2024-07-30 14:55:07 -04:00
Dana Conrad
ef9490f683 ErosQNative: Debounce jack detection and make Line-Out default
Making line-out default output should allow detection to work
correctly. Headphone detection should work whether or not
headphone is currently the active output due to the
low impedance (relatively) of the headphones. Line-Out sinks
will likely be high impedance, so we need the output
as a pull-down for detection.

Debounce detection to prevent false triggers due to voltage swings
during playback.

Change-Id: If5e497d900330f64d0f49a135e953ee6b0499668
2024-07-30 11:39:47 -04:00
Solomon Peachy
4d26f559ee fonts: Rename COPYING to COPYING-fonts.txt in the fonts zip
Change-Id: I45c4a768de5a3c9b57e632bf796f08246a035cc3
2024-07-30 10:18:18 -04:00
Solomon Peachy
ea1ad28cfc fonts: Include fonts/COPYING license text in fonts zip packages
Change-Id: I9352bdfac0012c3bf97e6a4cac20aad64604d774
2024-07-30 10:10:11 -04:00
Solomon Peachy
1a54398a33 fonts: Forgot to add the additonal Terminus sizes to the config
Change-Id: Ifffbc1252213c7cdef8c926cd5a2ed7c7bde0fa9
2024-07-30 08:15:24 -04:00
Solomon Peachy
ea5e494ae9 fonts: Update to v4.49.1 of the Terminus font family
Doubles the number of glyphs (691->1356) and adds 18 and 22px sizes

Change-Id: I722399c124e3a8c29d9a738bf48f72731db49994
2024-07-29 22:18:31 -04:00
Solomon Peachy
ddb3cc2b7d Fonts: Update README
Mainly to eliminate the now-16-year-old mapping from old to new names

Change-Id: I0d576c453b16ff88425f1461267c62c628761ae6
2024-07-29 22:18:31 -04:00
Roman Artiukhin
b918ec531b QuickScreen: stop for first/last entry on repeated actions
Stops on first/last setting value when you switch quick setting using long button press. Useful for long settings list (like Skip Length).

Change-Id: Id7ddae4f70554e7f523661e5f0e09f5e4d5d32fd
2024-07-29 18:20:39 +03:00
Solomon Peachy
cff56c8e8c builds: Temporarily switch nightly Bulgarian voice back to 'espeak'
Turns out the 'gtts' tool on the buildserver is too old to support
Bulgarian.  Once this is dealt with, go ahead and switch back.

Change-Id: I507b3b736a722569a2050a2e1f61ed4dce210a44
2024-07-29 07:25:26 -04:00
Solomon Peachy
e722334ab1 init_volume_names() has to be called AFTER storage_init()
...So just move that call into storage_init and be done with it!

Hopefully this doesn't cause any functional regressions.

Change-Id: I08700fbd1613638606a23ee3a0c2149123c2c24a
2024-07-28 21:15:41 -04:00
Solomon Peachy
2363c7b095 genlang: Remove ability to output a sorted lang file.
This is handled by updatelang (if desired) and helps simplify genlang

Change-Id: I69b02c831fcfe5d06086c4f33472c890c7092fac
2024-07-28 20:45:37 -04:00
Solomon Peachy
3c2a110728 updatelang: Add the ability to sort output file in the English file's order
Change-Id: Ia115549b96365cbee6f1f96c5b0351dcec538955
2024-07-28 20:45:34 -04:00
Solomon Peachy
d5a4230901 talk: Make talk_fullpath() do the right thing when voicing a directory
The component after the final '/' can be a directory, so don't
unconditionally treat it as a file.

Also check to make sure there is something after the final '/' otherwise
we end up voicing it as '//'

Change-Id: I56d69ea3f299e524df29c328ec9eeb3cfc22ff42
2024-07-28 17:02:43 -04:00
Solomon Peachy
c5e1539c74 talk: When mangling paths, use PATH_SEPCH/SEPSTR
Strictly speaking all of our paths need to work this way..

Change-Id: Id30d26cccdb80eceb7daf9ad04dfd53591b1921f
2024-07-28 17:02:28 -04:00
Solomon Peachy
86bff6214d properties: Use talk_fullpath() for voicing directory names
Change-Id: Ib40c881e7b3053e7e4ef5c5adbe5c3bfec27efed
2024-07-28 17:01:53 -04:00
Solomon Peachy
78283bda64 talk: Voice the volume name when browsing and when voicing full paths
Change-Id: I56660e168edd135a09cd5c021504a58ec9d40093
2024-07-28 16:54:33 -04:00
Christian Soffke
70b96193e7 plugins: properties: use UI viewport for displaying progress
Prevent switching to a fullscreen view when scanning
a directory, which could be a bit jarring, depending
on your theme of choice.

Also pop context menu activity immediately, without
refreshing, so it isn't redrawn when returning from
plugin.

Change-Id: I021e5880505e7f121163851ae732eb47509cc5d8
2024-07-28 20:18:43 +02:00
Christian Soffke
545271c4de plugins: extract redundant functionality from stats/properties
Also:

- Enables cpu boosting for Stats
(*much* faster on some players)

- Displays file size in Stats

Change-Id: I888ba054e1f8c2985fbf8dca36e11e6ef130e7ca
2024-07-28 20:18:41 +02:00
Christian Soffke
6d19214eeb list: remove redundant setting of icon callback to NULL
gui_synclist_init already does this for us

Change-Id: I1288d389c6191416cbc3da37a333b1cad84ee779
2024-07-28 15:33:11 +02:00
Christian Soffke
68fc5b4a7a plugins: playing time: fix missing voice
appears to be a regression from 5d39d987c0

Change-Id: I7b6907338aa647ba3253d56c304a143ab75d7aa0
2024-07-27 19:45:56 +02:00
Solomon Peachy
adbb005fd2 builds: Switch default Bulgarian voice to 'gtts'
I don't like hitting an external service but the voice pool makes
this largely a one-off.

Change-Id: Icbf7951800ef4cdf863f1e7eef7c490f2329f504
2024-07-27 08:31:31 -04:00
Solomon Peachy
566d99aced voice: Switch default English Piper voice to 'en_GB-semaine-medium'
The former one ('cori') had some very pathological corner cases
especiallly when voicing single letters. This one is just
better all around.

Change-Id: I275256a637cf70ba196aafdecc24038bfe841955
2024-07-27 07:47:12 -04:00
Solomon Peachy
2dddf16e2c voice: Shorten silence threshold to 250ms (from 500ms)
Change-Id: I32ef8691f9e0adad1af4fce3c167cfcd950ca120
2024-07-26 21:03:29 -04:00
Solomon Peachy
f95427c081 FS#13457: Korean translation for the Rockbox Utility (Hoseok Seo)
Change-Id: I0a3ed46279a4606d6f6428131aadb4e6381ced7d
2024-07-26 20:51:27 -04:00
Christian Soffke
a64faae09e plugins: properties: optimize slightly
- We only have to update stats->dirname when entering
a new directory, or when id3cb needs to be called
- Reduce frequency for calling get_action and LCD update
- Replace dir_stats->len and hardcoded MAX_PATH with
sizeof
- Don't show paths in Properties during scanning
- Don't show error when user cancels

Change-Id: I4afbeba561e69188e8039fa8d91eb1e91318bdab
2024-07-26 21:16:13 +02:00
Christian Soffke
b52e72db36 plugins: playing time: improve precision
Add up length and size of tracks in ms & Bytes,
then only convert units to s & KiB at the end.
Otherwise, the result can be noticeably off when
dealing with a large enough number of tracks.

Change-Id: I2a3e502508089830f63b24c3bbdbb0ab8f57cabe
2024-07-26 21:16:13 +02:00
Christian Soffke
23e5f77ab0 Remove mp3info function & remove list_do_action from plugin_api
Change-Id: Ia9a2d6889679832f23b19a989927277ba886cba4
2024-07-26 15:15:06 -04:00
Solomon Peachy
13830439fa Fix multidrive/multivolume hosted builds.
Generalize the fix in 2348779ae6 to apply to hosted as well as simulator
builds.  Original regression introduced in c0ac043c6d

Change-Id: Ia786533cc318555e3bb842eb21a73a1f76888379
2024-07-26 10:54:07 -04:00
William Wilgus
e94f778f1c plugin argparse update to add userdata to callback
fix a couple of gotchas if you aren't using NULL terminated strings

Change-Id: If5d2a60c0c3e1653e26df50bfda7d3191989bca9
2024-07-26 00:56:13 -04:00
Solomon Peachy
e8d7a8baaf simulator: Fix browsing into secondary drive on multidrive targets
Change-Id: I4e993acdedb516f0ae4fc230a62cb00de8dcef86
2024-07-25 21:28:01 -04:00
Solomon Peachy
10e883fe02 FS#13455: Updated Italian translation (Alessio Lenzi)
Change-Id: I6526acf718639961e7942fac69b67f401d9e6af9
2024-07-25 17:16:47 -04:00
William Wilgus
2348779ae6 [Bugfix #2] initialize the volume names for the sim
and fix red for the devices that don't have ext drives

Change-Id: I66b8ea1e1b22a42cee2957a504756e7f785bd0ae
2024-07-25 00:32:40 -04:00
William Wilgus
67db38e766 [Bugfix] initialize the volume names for the sim
init_volume_names() wasn't being called by the sim

Change-Id: Ife0d345cf29bd4a0a658ed194ee85ca4852bc92f
2024-07-24 23:43:36 -04:00
Solomon Peachy
bcaeaa135a build-info: Add a trailing newline to the output
Change-Id: I994cd41c7d9f3767e42d6a5de935f8b7965426d2
2024-07-24 20:03:39 -04:00
Vencislav Atanasov
780c05a64d Fix empty string in the Bulgarian translation
From the Rockbox Translation website:
When the English language is set to "" or none, the translation should follow. The strings below don't do this. This is an error and should be fixed.

Change-Id: I4a6946170bf6bf5b4b1f14ebc4f8b3be6ff2f985
2024-07-24 11:50:33 -04:00
Solomon Peachy
a872e38ccc voices: Use espeak, not piper, to build bulgarian voices.
As there was no bulgarian piper voice, it defaulted to czech, with
very bad results.

Change-Id: I15dd7c3007d7b7e50a40bea20c37640e7aebb39e
2024-07-24 09:47:43 -04:00