Getting the values from a QMultiMap() returns a list, but not the same
on consecutive calls. Thus calling it twice to get the iterators will
yield different lists, causing the iterator to fail.
Fixes a segfault when destructing the logger.
Change-Id: Ie8ea8d3a9acf6fbd3969fbb49cbc50a1c1fa2854
Add a "deploy" target that will create a distributable file.
- Linux: AppImage.
- Windows: zip file.
- MacOS: dmg.
Change-Id: Id8ae9c021bc5bbb1abf066205b57d943c3f3b327
The test timeout is used to abort the tests if something goes wrong and
should not occur during normal test run. On some systems the current
value is too small, causing a timeout and thus test failure before
HttpGet responds. Increasing the timeout fixes this.
Change-Id: Ib61dd97d9f866c03cca9d2f0d7cb151f7076410d
Simplify, and replace use of QRegExp with QRegularExpression for Qt6
compatibility.
Also fix the test running on Windows. RockboxInfo constructs the
filename from path and filename, so we cannot pass an empty path, since
that results in an invalid path. On Linux / MacOS this works only
because we use an absolute path.
Change-Id: Ieaf30a2df005291d3e997aabf42d64ee832381c2
Rewrite in cmake, and include all necessary libs. This removes calling
separate Makefiles which is rather error-prone on non-Linux systems.
Change-Id: Ic2af4a3810e4b000e3ad33304229e2349a930e16
The former is not part of Qt6 anymore, while the latter has been
introduced with Qt5. We don't support Qt4 anymore, so move to
QRegularExpression.
Change-Id: Icc15ef422790f3740660c5581294aa0536f46b1f
rbutil uses several components from the utils folder, and can be
considered part of utils too. Having it in a separate folder is an
arbitrary split that doesn't help anymore these days, so merge them.
This also allows other utils to easily use libtools.make without the
need to navigate to a different folder.
Change-Id: I3fc2f4de19e3e776553efb5dea5f779dfec0dc21
There was no easy way to see how far along PictureFlow
was in building the art cache, once background scanning
had commenced.
PF now uses the screen area normally used by the FPS
meter to show completed percentage until building the
art cache has finished.
Change-Id: I60fa7187b522cda219e35f5a9f630835ecac6883
Allow users to create an alternative tagnavi config file named
"tagnavi_user.config" in the .rockbox directory. If present, it
will be used instead of the default tagnavi.config, allowing the
default menu to be completely redefined.
This makes it much easier to maintain customizations which remove
or modify parts of the default config -- since the default config
is shipped in the Rockbox zips, a customized tagnavi.config would
have to be saved with manual intervention on each & every update.
Change-Id: I509177fab0e01fc0db0bc4407a3a92bbff5fa481
- creating the album index and art cache can take longer
than what the idle poweroff timer is set to, so make sure
to reset it periodically
- when finished, make sure progress is stored
to disk immediately, so it isn't lost on idle poweroff
Change-Id: Ibe88a260e4495b1bd007f37950e8c5fbc9364975
Rockbox could enter into an infinite loop when last_screen
and next_screen were both GO_TO_PREVIOUS, which
happened when trying to quit PictureFlow in the following
scenario:
1) start playback from PictureFlow plugin
2) return (or be returned) to WPS directly
3) wait for playback to finish and to be returned to PF
plugin
Change-Id: I0b52d4df56d416f81cef027d9024e964a734fcdc
This reverts commit 6ff1a935b9.
Reason: it created a mismatch between the displayed voltage
and percent since the voltage was unfiltered but percentage
was based off the filtered voltage.
Change-Id: I4cba099f2e1edf0ef7c4e17a32f566aa66f5b933
This allows battery run time to be calculated from the
actual battery usage on the FiiO M3K and Shanling Q1.
This isn't very good for the time being and the estimate
tends to go all over the place due to small variations
in current or voltage.
The Eros Q can support this feature as well, but since
it already has fixed estimates defined and the quality
of the "real time" estimate is low I am not enabling it
there.
Change-Id: Id34a93ee4b7d66f9f7e56ef0f5149f67e8e72039
I've tried to clean up cruft and clarify what's being
done, prior to adding new features. The behavior should
be unchanged.
Change-Id: If8a68b7b48173d283df981a21cdd854b714e7695
The 'rtl' flags for Arabic and Hebrew was inadvertantly deleted
in 7ff3c94e1 (over a year ago, in November 2020!) but it's actually been
broken since the introduction of 'updatelang', in 2305966d (July 2020)
The fix here is to change the 'RTL' flag from an <options> section in
the language file to a comment in the header. It's not as pure in a
design sense but it makes for a much cleaner implementation.
I may further revamp this by making the 'RTL' flag into an explicit
LANG_xxx string
Change-Id: I48f394adfadc0aa804fd67690c87cc28f04fccdc
In addition to the existing behavior of pausing
after each song, this adds options to pause
after playing current:
Album,
Album Artist,
Artist,
Composer,
Grouping / Work, or
Genre.
Allows you, for example, to only listen to the
remaining movements of a classical work
without having to purge your playlist of any
upcoming songs.
Change-Id: If18f4a5d139320026cc5fcc9adf29dd8e4e028a8
The sort order of numeric lists can now be changed with the
new "List Order" setting. It defaults to ascending for most
scrollwheel targets and descending for all others, matching
the old hardcoded behavior.
Change-Id: I4866f04ec5995158edf9e40badf7f661b3ddea81
Sets the lcd background color to black and foreground color
to white when displaying the 16bit logo, so that it always
blends in with the background regardless of theme colors.
Change-Id: Ia3afde178866b84d194c2dd839dac24f8c6e8d05