Commit graph

241 commits

Author SHA1 Message Date
Tom Dewey
fc2b67a20c imagewriter: Delete NetworkReplys later. 2023-11-14 09:53:35 +00:00
Tom Dewey
673b3c7a33 qml: move OS list fetch to backend
- Simple implementation of OS list fetching in backend
- Replace frontend OS list fetching by calls to backend
- OS list updates are brought in asynchronously, avoiding excessive UI
  blockage.
- "Erase" and "Custom" OS list options are always present, even in a
  no-internet scenario

Based-On: cillian64/rpi-imager/oslist_backend
2023-11-14 09:53:35 +00:00
David Turner
be7225326a Allow no PSK to be entered for open wifi
It is possible to connect to open wifi networks using raspi-config or
the wf-panel-pi GUI.  It was also possible in rpi-imager but only with a
workaround - if you entered a dummy PSK it would be ignored if the SSID
was that of an open network.  (This also meant a Pi could be tricked
into connecting to an open network on first boot even if a PSK was
configured).

The change in https://github.com/RPi-Distro/raspberrypi-sys-mods/pull/83
has a side effect which means that Pis will no longer connect to an open
network if a PSK is configured.

This commit lets the user enter no PSK to indicate that an open network
should be configured.

Resolves #424
2023-11-08 18:21:35 +00:00
Robin Geuze
12e024ad7f Also customize image if only a cloudinit payload exists 2023-11-03 10:07:22 +00:00
volkov
ac72c0ddc9 Forgot to save file, oops. 2023-11-03 09:22:18 +00:00
volkov
2d5a050c6e Another bunch of unrelated translation fixes. 2023-11-03 09:22:18 +00:00
volkov
f906efb206 Unrelated translation fixes. 2023-11-03 09:22:18 +00:00
volkov
46c6afbd58 Translated all strings. 2023-11-03 09:22:18 +00:00
Tom Dewey tom.dewey@raspberrypi.com
aaadbdb283 qml: Disable disk cache entirely
This is a compromised change. Essentially, I'm working around a
poorly-understood failure mode in Qt5, where the disk cache can
occasionally fail to invalidate, resulting in stale compiled units being
used.

This will increase application start times in favour of correctness.
2023-11-02 16:15:43 +00:00
veeck
b75b2e6110 Update german translation 2023-10-25 15:01:10 +01:00
Tom Dewey tom.dewey@raspberrypi.com
edde324138 config: Use ImageList v4
In order to ensure the 'Recommended' tag shows up for older versions of
the Imager, we should migrate to using V4 for the version where we move
the tag out of the JSON file.
2023-10-24 10:34:00 +01:00
Tom Dewey tom.dewey@raspberrypi.com
0033b66ebc icons: Update Windows icon 2023-10-23 13:52:24 +01:00
Tom Dewey tom.dewey@raspberrypi.com
6925c6705c icons: Update macOS, Linux
Provide updated macOS and Linux icon files, as supplied by the comms
team.
2023-10-23 13:52:24 +01:00
Peter Dave Hello
253a9ced64 Add zh-TW Traditional Chinese translation 2023-10-21 20:50:14 +01:00
Floris Bos
37560158f7 Clear src when selecting different device
Closes #696
2023-10-21 11:13:44 +02:00
Floris Bos
1b85b232fd Deal with os_list.json not specifying icon for "No filtering"
Solves warning:
"qrc:/main.qml:758:21: Unable to assign [undefined] to QUrl"
2023-10-21 11:13:38 +02:00
Ruffalo Lavoisier
aeece632dd some update korean translation
- See https://github.com/raspberrypi/rpi-imager/pull/645
2023-10-20 16:34:24 +01:00
Tom Dewey tom.dewey@raspberrypi.com
a981b57b5f qml: Recommend the 'top' OS
We're going to take advantage of the
convention of always putting the recommended OS first in the list, and
append "(Recommended)" to it's description.

This moves the recommendation out of the JSON, and makes the
recommendation durable to filtering.
2023-10-20 14:28:30 +01:00
Floris Bos
457f2fdbed Linux: CMakeLists: only require libdrm on embedded platform
Closes #692
2023-10-20 09:24:34 +02:00
Floris Bos
6b918b448e Release 1.8.1 2023-10-19 20:23:46 +02:00
veeck
14e83a874a Update german translation 2023-10-19 16:18:12 +02:00
David Turner
9a7fc7bf3c Hide empty categories when filtering
When filtering the OS list, if all items in a category/sublist are
filtered out then don't show the category/sublist.

Also, clear the selected OS when the HW device is changed, otherwise you
can get weird effects like having an incompatible (hw, os) pair selected
or the highlighted OS moving when the items in the OS list change.
2023-10-19 13:07:42 +01:00
Floris Bos
a29d2c9d7c Windows: fix zstd
Cannot properly check for library functions of a library
that has yet to be compiled.
So fix libarchive quick & dirty.
2023-10-18 21:53:43 +02:00
maxnet
16e8a83e5e
Merge pull request #680 from tdewey-rpi/release/1.8.0
Release/1.8.0
2023-10-18 19:50:21 +02:00
maxnet
952aea3454
Merge pull request #687 from cillian64/esc
Make escape key close OS customisation window
2023-10-18 19:49:59 +02:00
Floris Bos
59439c8752 Update nl translations 2023-10-18 19:49:12 +02:00
David Turner
04a9b0d4ad Make escape key close OS customisation window
With the move from OS customisation being a popup to being a separate
window, it is no longer closed by the escape key.  Add a handler to
restore this behaviour.
2023-10-18 17:40:53 +01:00
David Turner
8a3331f613 Improve red button focus colour
- All of our red buttons were ImButton with the colours overridden at the
  use site.  Instead make an ImButtonRed which defines these colours in
  one place.
- Previously the red buttons had focus indicated by the text colour
  changing from white to blue.  This was quite hard to see, instead
  change the button colour to blue (as is done for the white buttons).
  A darker shade of blue is used so that there is still good contrast
  with the white text.
- Update the reds (buttons and main screen background) with the
  branding-approved red: the official colour palette says Pi Red is
  #cd2355
2023-10-18 17:01:47 +01:00
bovirus
98f8d63e3e Update Italian language 2023-10-18 16:26:28 +01:00
oscfdezdz
0d401be648 Update Spanish translation 2023-10-18 15:46:34 +01:00
Tom Dewey tom.dewey@raspberrypi.com
24dd7a42ff i18n: Remove broken translations
As part of changing the reference string, these translations will
require a rework.

Signed-off-by: Tom Dewey tom.dewey@raspberrypi.com <tom.dewey@raspberrypi.com>
2023-10-18 15:33:17 +01:00
Tom Dewey tom.dewey@raspberrypi.com
1a6c683b55 version: Bump to 1.8.0
We've now modified the UI in a fairly major way - but no so much that
it's unrecognisable. As a result, bump the version number to the next
minor revision.
2023-10-18 14:57:14 +01:00
David Turner
60e5e2a4b5 Fix various keyboard focus issues
- Make write confirmation popup modal
- Force focus on the write confirmation popup when it opens
- Force focus on the error popup when it opens
- When the hw select popup opens, force focus on the ListView instead of
  on the currentItem, because the latter doesn't work when the list is
  empty.
- On embedded, when the settings popup closes, force focus back to the
  usecustomisation dialog
2023-10-18 13:39:59 +01:00
David Turner
4ad4276154 Don't hide "use customization" when editing settings
Previously, if you clicked "edit settings" in the "use customisation"
msgbox then the flow got a bit confusing, when you saved settings the
"use customisation" msgbox would have disappeared and you had to click
"next" and go back through again.  Instead, keep the "use customisation"
msgbox open when editing settings so when you save settings you are back
where you left it.

Also:
- Make "use customisation" modal so you can't click other things while
  it's open
- Separate windows in QtQuick can't be modal so we can't stop the user
  interacting with the main window while "edit settings" is open.  This
  could get confusing, so if they close the "use customisation" modal in
  the main window then close the settings window.
- Fix a bug where saved settings weren't recognised on startup, only
  after being saved during the session
2023-10-18 11:33:11 +01:00
Tom Dewey tom.dewey@raspberrypi.com
819ffe14f0 qml: Use sensible defaults to clear Options 2023-10-17 16:35:28 +01:00
Tom Dewey tom.dewey@raspberrypi.com
cd9596d0bd qml: Remove redundant string
This used to be attached to the ComboBox for selecting whether you
wanted the customization options to be applied only for this session, or
stored for re-use.

As we've removed that option, we should also remove the label string.
2023-10-17 16:11:23 +01:00
Tom Dewey tom.dewey@raspberrypi.com
ecf992cb62 Rework OS Customization
In the new flow, it doesn't make sense to _not_ save the OS
customization parameters, so remove the ComboBox.

Additionally, our data model was failing to notify the UI of changes to
the saved settings state. Due to time constraints, I'm not able to
resolve the binding in the 'correct' manner, but I can introduce a
makeshift status signalling mechanism to prevent UI inconsistency.
2023-10-17 15:28:04 +01:00
Tom Dewey tom.dewey@raspberrypi.com
50449158bc i18n: Advanced settings -> OS customization
Per a request from the Raspberry Pi Communications team, change
'Advanced Settings' and 'Image customization' to read 'OS
customization'.

This is to avoid amibuguity in the English, where Image_r_ and Image may
be conflated when reading at speed.

Regrettably, this breaks the existing translations. To prevent
confusion, explicitly delete the existing translations - as they're almost
certainly not valid with the reworded meaning.
2023-10-17 15:28:04 +01:00
David Turner
981c14e8a0 Enable arrow keys for OS list navigation
Allow use of left and right arrow keys for navigating the OS list.
Right arrow won't choose an image, it only enters sub-lists.
2023-10-17 15:39:05 +01:00
Tom Dewey
1b44ab73e7
Merge pull request #668 from cillian64/logo
Update rpi logo and its alignment/positioning
2023-10-17 15:31:57 +01:00
Tom Dewey
889c0e82c3
Merge pull request #667 from OlesyaGerasimenko/qml
Update Russian translation
2023-10-17 15:31:16 +01:00
Tom Dewey
e40d36cd2d
Merge pull request #666 from oscfdezdz/es
Update Spanish translation
2023-10-17 15:27:47 +01:00
Tom Dewey
d812031bae
Merge pull request #670 from rejas/translation_de
Update German translations
2023-10-17 15:26:28 +01:00
Tom Dewey
a8022b6fac
Merge pull request #672 from okaits/qml
Improve Japanese translations
2023-10-17 15:25:32 +01:00
maxnet
25a0b7b4bc
Merge pull request #673 from bovirus/qml
Update Italian language
2023-10-17 16:17:43 +02:00
David Turner
73de734016 Fix focus change when opening HW select list
Previously it was not possible to select a HW device without a mouse
because the focus change to the HW list was not working.  This is
because an extra nested ListView had been left in.  Remove the extra
ListView and set the focus target correctly.
2023-10-17 14:56:11 +01:00
bovirus
9c3a1e563c
Update Italian language 2023-10-17 14:35:48 +02:00
okaits#7534
de4c6db8e6
Improve Japanese translations 2023-10-17 20:15:37 +09:00
veeck
7847efa748 Update de translations 2023-10-17 11:47:36 +02:00
David Turner
a2c7deac70 Remove padding from progress bar
Seems like there's a weird Qt bug in the ProgressBar widget where giving
it padding means the white progress indicator doesn't actually start at
the left edge of the bar or extend to the right edge of the bar.  So
just remove the padding from ProgressBar because it's not doing much.
2023-10-17 10:28:52 +01:00