- Only use saved position if the coordinates fall inside of the primary screen
Prevents problems for people with laptops that sometimes but not always use
external screens.
- Since we now set window position in C++ instead of QML, drop the
dependency on qml-module-qt-labs-settings module.
Closes#91
- Try to gracefully close any running Imager instance by sending
a window message. Should close it automatically if Imager is not
actually writing something.
If Imager does not close within 2 seconds, prompt user to ask
if it should be terminated less gracefully.
- Change installer executable name (setup.exe -> image-<version>.exe).
- Prevent UAC prompt during compiling installer.
Normally the system will prompt the user to allow Imager access
to removable volumes.
Open preferences and ask user to allow Imager manually in a
corner case in which this does not occur.
If WriteFile() returns ERROR_ACCESS_DENIED and registry indicates
CFA is on, tell user rpi-imager (and fat32format) should be added
to the "allowed apps" in the CFA settings.
- Show write protected SD cards greyed out.
Show message if user select one of those. Closes#59
- Do show virtual drive types on Windows.
Do keep them hidden on Mac OS X as that seems to
cover .dmg file and timemachine stuff. Closes#79
The moment we write the block containing the partition table
Windows services will start accessing the SD card and write data
to "System volume information" folder.
If others are writing to disk concurrently this may or may not
affect our ability to eject the drive.
Stop StorSvc temporarily between us writing the partition table
(saved for last) and ejecting the SD card, just in case.
Ref #75
- Support for screen readers on Linux/Windows. (Mac does not work
as intended yet)
- Add keyboard navigation
- Add write confirmation dialog. Closes#84
- Update debian changelog
Mac OS X allows one to provide multiple preferred languages instead
of one.
Make sure that if is English is the "main" language, it does not
go for one of the translations.
Closes#81
For reasons unknown the device write statistics sometimes report
higher numbers than the number of bytes we wrote to the device on
some hardware. Causing write percentage in progressbar text
to exceed 100%
Maximize amount of bytes to what we wrote to the device.
This do will result in unreliable write progress on these devices
(it will then show amount of bytes written to cache instead of
what made it to device yet)
Closes#82
We originally used libcurl for both downloading images from
Internet and reading local files to have the same code path for both.
It doesn't work that well in practice, as Qt and libcurl are not
on the same page how special characters such as Chinese characters
are represented in a local file URL.
So create a new class to handle local files.
Closes#76
- Allow static build
- Use .svg icons
- Linux Embedded lacks normal "open file dialog". So simply scan
files in root folder of USB stick and return list.
- Change QProcess::execute(command) calls to
QProcess::execute(command, args) calls to silence Qt 5.15.0
depreciation warning.
- Qt thinks UNC URLs should look like: file://1.2.3.4/share/file.img
libcurl likes them: file:////1.2.3.4/share/file.img
So correct that.
- Mention it is an unspecified libcurl error if libcurl passes us
an error code with an empty error message string.
Closes#65
Modern CPUs have special instructions to accelerate computing
SHA hashes.
The Qt QCryptographicHash code is standard C, so not taking
advantage of those though.
Outsource the hashing to OpenSSL that does.
Shaves off some seconds during verification stage.