Add ConfigStore as a constructor parameter. QRvtHToolWindow's
ConfigStore object must be passed here.
Listen for the option change, even though it shouldn't be possible
for the option to change while the dialog is open.
QRvtHToolWindow::on_actionOpenDevice_triggered():
- Pass the ConfigStore to SelectDeviceDialog.
- Also pass `this` as parent to ensure that the user realizes the
window is modal. On KDE, this dims the main window. Previously,
the main window wouldn't be dimmed, but it wouldn't be usable
while SelectDeviceDialog was open.
Exclude Qt ANGLE, and make sure ffmpeg and WebKit2 are excluded.
The last two are "just in case", since I didn't see those installed
in my testing, though Qt ANGLE was definitely installed in qt5.
(Note that ffmpeg is a qt6 option.)
This significantly reduces the distribution size, since, among other
things, we don't need QtNetwork.
Also removed:
- DirectX compiler libraries
- MSVC runtime (debug build only; release builds didn't include the DLLs)
These were created by tracing over the full-color versions.
These are mostly for testing icon directory display in rom-properties,
and likely won't actually be used.
TODO:
- Use KCrash, but it shows bugs.kde.org as the bug reporting address...
- KIO writes to qrvthtoolrc in ~/.config/, and it doesn't seem like
there's any way to easily fix this, since KIO uses the default
path (QStandardPaths::GenericConfigLocation) for KSharedConfig.
rvthtool (and other programs included with rvthtool) does not access the
network directly, but may access the network if you attempt to open files
located on network shares.
Install NETWORK.md in the documents directory.
[cmake] options.cmake: Add OPTION(INSTALL_DOC).
...though interestingly, *only* the 64-bit builds failed. 32-bit seemed
to handle it just fine.
src\qrvthtool\TranslationManager.cpp(231): error C2127: 'filters': illegal initialization of 'constexpr' entity with a non-constant expression
c:\qt\5.13\msvc2015_64\include\qtcore\qdir.h(83): note: failure was because type 'QFlags<QDir::Filter>' is not a literal type (compiling source file src\qrvthtool\TranslationManager.cpp)
MSVC 2013 doesn't like the updated Google Test:
extlib\googletest\googletest\include\gtest/internal/gtest-port.h(2102):
error C3409: empty attribute block is not allowed
Also, Qt 5.8 isn't present on AppVeyor anymore. Use Qt 5.13, which is
available for MSVC 2015.
Using changes from rom-properties, which includes building gtest as a
DLL on Windows.
This update fixes a bunch of -Wsuggest-override warnings, e.g.:
In file included from extlib/googletest/googletest/include/gtest/gtest-death-test.h:41,
from extlib/googletest/googletest/include/gtest/gtest.h:60,
from src/libwiicrypto/tests/CertVerifyTest.cpp:10:
extlib/googletest/googletest/include/gtest/internal/gtest-death-test-internal.h:150:16: warning: ‘virtual bool testing::internal::DefaultDeathTestFactory::Create(const char*, const testing::internal::RE*, const char*, int, testing::internal::DeathTest**)’ can be marked override [-Wsuggest-override]
150 | virtual bool Create(const char* statement, const RE* regex,
| ^~~~~~
lupdate noticed this:
src/qrvthtool/TranslationManager.cpp:155: Excess closing parenthesis in
C++ code (or abuse of the C++ preprocessor)
This fixes a regression from commit 4e0f741910.
([qrvthtool] TranslationManager: Made some adjustments, including removing translators before updating them.)
- Get the translation file info directly from d->prgTranslator, before
installing it into the QCoreApplication.
- If tsLocale is empty, or is "1337", set it to "C".
This helps a bit with KDE's Open dialog, but the "Cancel" button isn't
getting translated for some reason. Similarly, SelectDeviceDialog's
"OK" button isn't getting translated, and "Cancel" uses whatever the
LC_ALL value was on startup.
FIXME: qt_* and qtbase_* don't seem to be reloading properly when
changing the language at runtime, at least on Linux. Setting LC_ALL
seems to be the only way to get Qt's translations to switch.
This reduces wasted space in the dialog.
NOTE: This file is *not* installed as part of the icon theme. It's only
compiled into the executable as part of hw.qrc.
[locale] Update for these changes.
[qrvthtool] Update for localized RVT-H error strings:
- WorkerObject: Don't include the error code in the message when
emitting finished().
- QRvtHWindow: Handle RVT-H error codes better:
- If -ECANCELED is returned, show the message as-is, since the operation
was cancelled.
- If it's an RVT-H error, use QCoreApplication::translate() with the
"RvtH|Error" context and rvth_error(err) string.
- If it's a POSIX error, use rvth_error() anyway for now.
FIXME: Need to properly translate POSIX errors.
Use a '%1' placeholder for "doExtract" and "doImport", since the messages
are all the same except for the function name.
[locale] Update localizations for this change.
dialog-close is black in the KDE Breeze theme.
process-stop is red.
Add process-stop from KDE Oxygen.
Un-indent some stuff and add more braces.
Fix "~/." for the home directory, similar to "./." for the
application directory.
The language tag is initially loaded by ConfigStore, but when notifyAll()
is called, LanguageMenu realizes it's invalid and calls ConfigStore::set()
with an empty tag, which causes a deadlock due to d->mtxSignalMaps being
locked.
To fix this, populate a single vector of methods to invoke, then unlock
the mutex and invoke the methods.