We can't use a ternary expression within the tr() function. While this
initially might work as expected it completely breaks translating the
actual string -- we need to use separate strings here, and replacing a
single word in a sentence will also not work for translations.
Change-Id: I556ff2a3bd0dc476b312a59c47d4e0dcd3b743e1
Replace the Rockbox logo with an svg version. Since the file size (i.e.
the page size in the svg) that isn't intended for use as icon we need to
enable scaling, and since scaling the label content doesn't keep the
aspect ratio we need to explicitly set the desired values.
Notably improves representation on HiDPI monitors. Now only the player
icons are still raster images.
Change-Id: I03216391a4b0ac982b16f5bec2b48c073369a3f6
When multiple players are connected, and at least one of them has a USB
ID that is shared between multiple targets the resulting list would be
off. Fix that by avoiding to modify a list while iterating over it,
that's usually not a good idea.
Change-Id: I0c1fc5e1a3264f269de2d71c3a7f2b82877636ba
- Move Rockbox voice language names handling to PlayerBuildInfo, and
handle it similarly to the rest of the device specific values. Rework
internal handling to simplify things.
- Enable language list from build server for installing prerendered
voice files other than english.
- Extend unit tests.
Change-Id: I1a1a717fa4409fa965dabc86f52d52a4fc516315
- Fix changed dependencies and provide real stubs.
- Update to use QTest global data for test table, so individual test
vector entries show up as individual tests. That way a single
comparison failing doesn't make all appear as failed and provide
better indication what went wrong.
Change-Id: I69681c3acd5ceceb4c8ceb1feb341e90a65dd603
Handling the data for players from rbutil.ini and the build-info data
from the server is closely related. Splitting things up into different
classes only creates tightly coupling, which is unnecessary, and the
need to differentiate between them in the application.
Merge both classes into a single one and rework handling so the
application doesn't have to deal with two separate classes anymore.
Furthermore, change URL templates to use new values from build-info
instead of hard coding them.
Change-Id: Ica550973ce23d1559110782add52bc214eba552d
The target selection string used for configure is the same as the
internally used player string, minus the (optional) variant suffix.
Don't duplicate things, simply strip the suffix.
Change-Id: Ic34bd5f933fab0d837adce0d0ae9c403868d720d
Fixes installing those builds, since they relied on the broken
buildserver_modelname. Also simplifies internal handling.
Change-Id: I5b67b7d65ee2299e01ea4e009e47f93c3343911a
This isn't needed anymore, and the only player it was actually used for
were the 8MB modded Archos ones, for which the usage was broken.
Change-Id: I2aa235113be2e6ae88973711bd8ee4734cbc266a
The Archos Recorder has 2MB RAM and can be modded to 8MB. While we
previously had separate builds for those the last release which it was
built for is 3.4; installing for 8MB modded players was broken and
installed the normal 2MB build.
Since we never provided builds for other hardware mods (like Ondio
backlight mod, h100 series RTC mod) there isn't much reason to do so for
the 8MB mod. Furthermore, given that the current state is broken and
nobody complained the number of users of the mod can be assumed to be
very low, and people with a modded player also building Rockbox on their
own.
Change-Id: Ia200651773a2f5b58321299bad30d539fe1a5ada
SystemInfo::PlatformName and Name actually retrieve the same value.
That's not usefule, so remove one of both.
Change-Id: I8ee429f099588e0e1e8129302542cd0f6f836203
When starting Rockbox Utility select the same build type that was used
during the previous run. This broke during refactoring, fix it.
Change-Id: Ibbca3431cbfe65daedd3e5783e0940d83d1594a6
The manual tab didn't show the manual, so it's clearer to have that as
part of the main tab.
Also fixes the wrong manual getting downloaded for releases.
Change-Id: I5d4a287102af037f94f0de8464e025d9ff5f76ed
Avoid having to repeat the same strings for lookup again and again and
use an enum instead, which is also less error prone.
Change-Id: I6ee8393948dbce97cb53850a6d8bdc4de12b4167
Add checkbox for installing the prerendered voice file to the main
install widget. Current limitations:
- only english for now. The available languages are available from the
build server but are not yet taken into account.
- only for releases. This is the same limitations we had before. We do
have voices for daily builds, but that requires adding daily builds
again (those have been removed some time back.)
- Old voice installation dialog still present.
Change-Id: Ia6443b0f15365196df86cc1b64d5e043dff70c4c
Use pattern replacement for lookup instead of expanded values. Will
allow simplifying things later for better handling of different build
types.
Change-Id: Iaad67a6c8654d27c3206cf95a379acab169565bc
Return status as int, not as string, and provide a separate function for
converting to string. This allows to filter based on the actual status,
not a (localized) status string, which is more robust.
Fix a regression that made players with missing status value show up as
retired.
Change-Id: I15f83ae0df484199b1b3b5b95069db8b4d425987
Allow constructing release candidate URL from configuration the same way
we construct the URL for releases.
Note that the server path used does not exist, taken from old release
candidate builds not available anymore.
Change-Id: I7332f08df05ed39724b4900556aaa1f5e0ba463b
Allow extracting release candidate version even if no URL is present.
Avoids a special case for version handling.
Change-Id: If496d30059c3181899ab9337a35a07b39eaef52e
Don't create our own in-memory map with server data. Instead use the
configuration file retrieved from the download server, and do the
resolve / replacement on the fly.
Simplifies things, and prepares for cleaner handling for different build
types.
Change-Id: Ifd027b21486e402fda3df9c2f7a30264651f733d
- Don't construct the URL directly. The ServerInfo already has it, use
that instead.
- Don't manually construct the output filename. ZipInstaller will use
the server filename automatically.
Change-Id: Ib44616daf5efc95b238418b6e699ccd56c40b011
- Further extend stubs, pull in less non-stubbed implementations.
- Change some test URLs to make sure the code actually uses the correct
ones.
Change-Id: Iac1d683748b5834e61aa4974d1b893b77f90b517
- Split internal configuration into player specific and common parts.
Always require passing the player for player specific data instead of
implicitly assuming the currently selected one; only use the currently
selected one if the player name is explicitly passed as empty.
- Similarly adjust handling of server info data; prepare for splitting
into build type specific values so the naming becomes cleaner.
Change-Id: I894e694f83bd9fe2d22ad46b3f8f7df3e2c68033