[pull] develop from keepassxreboot:develop#213
Open
pull[bot] wants to merge 18 commits into
Open
Conversation
This reverts commit 36a2630.
Replace "Chinese (China)" with "Chinese (Simplified)" and "Chinese (Taiwan)" with "Chinese (Traditional)". This keeps both items adjacent in the language dropdown, uses script-accurate naming, and avoids any geographic misinterpretation.
* Fixes #13130 * Add wifi and sshKey import types * Add catch-all import type to prevent loss of data when Proton Pass introduces new things
* For some reason the C locale setting is not respected in Jammy and the test fails due to attribute sorting
--------- Co-authored-by: Jonathan White <support@dmapps.us>
* Fix ghost window on Windows by using proper dialog window flags Replace Qt::Window with Qt::Dialog | Qt::WindowTitleHint | Qt::WindowCloseButtonHint in UpdateCheckDialog to prevent an orphaned DWM window frame on Windows 11. Using bare Qt::Window on a QDialog causes Windows DWM to create an independently managed top-level composition surface. If the dialog's native handle is not cleanly destroyed (e.g., during process exit while the dialog exists), DWM can leave behind a transparent, non-interactive ghost window frame that persists even after the process is gone and can only be cleared by rebooting. Using Qt::Dialog keeps the dialog properly associated with its parent window in DWM's composition tree, preventing the orphaned frame. Fixes #9493
Use const exceptions
* Refactor: avoid naming lambda expressions and use STL algorithm Lambda expressions in C++ are designed to be anonymous, lightweight, and local, intended to encapsulate concise logic without the need for formal declarations. Explicitly naming them (e.g., assigning to a variable or using a named `auto`) contradicts their purpose: it introduces redundancy, adds unnecessary weight, and blurs the line between lambdas and regular functions. This change removes unnecessary lambda names and replaces the custom logic with a standard STL algorithm, making the code more idiomatic, maintainable, and aligned with the STL's philosophy of generic, reusable components. * Refactor: Use std::any_of and lambda for deleted object checks Replace manual for-loop iteration with std::any_of and a lambda expression to check for the presence of a deleted object by UUID. This improves code clarity, conciseness, and aligns with modern C++ best practices by leveraging STL algorithms and functional-style expressions. The second overload of containsDeletedObject() is now implemented by reusing the first, avoiding code duplication and ensuring consistency. * Run code format * refactor(config): replace manual loop with `std::any_of` for roaming settings validation - Remove the local lambda function `isValidSetting` and replace it with a direct use of `std::any_of` in the loop. - Improve code readability and maintainability by leveraging the C++ Standard Library. - Reduce redundancy and make the logic more concise and idiomatic. This change ensures the code is more aligned with modern C++ practices while maintaining the same functionality. * refactor(icons): simplify image format validation using `std::all_of` - Replace manual loop and flag-based validation with `std::all_of` to check for non-alphanumeric characters in image formats. - Improve code clarity and reduce boilerplate by leveraging the C++ Standard Library. - Maintain the same filtering logic while making the code more concise and idiomatic. --------- Co-authored-by: Jonathan White <support@dmapps.us>
* Remove individual feature flags in favor of a single `KPXC_MINIMAL` flag that removes advanced features from the build. Basic features are no longer guarded by feature flags. * Basic features: Auto-Type, Yubikey, KeeShare * Advanced features include: Browser (and passkeys), SSH Agent, and Secret Service * Networking, Documentation, and Update Checking remain as feature flags to accommodate various distro requirements. This change also cleans up the main CMakeLists.txt by re-arranging some content and placing macros into a dedicated include file. The minimum CMake version was bumped to 3.16.0 to conform to our minimum Ubuntu support of Focal (20.04). This also allows us to default to C++20, we fall back to C++17 for Qt versions less than 5.15.0 due to lack of support. Lastly this change removes the KEEPASSXC_BUILD_TYPE="PreRelease" which is never used. We only support "Snapshot" and "Release" now. Additional cleanup of CMakeLists: 1. Removed always-true CMake version guard if(CMAKE_VERSION >= 3.14.0) 2. Removed dead GCC 4.8 stack protector fallback; C++20 requires GCC 10+, and -fstack-protector-strong has been available since GCC 4.9. 3. Removed dead ASan LSan version guard for the same reason. 4. Converted set_target_properties( COMPILE_DEFINITIONS) to target_compile_definitions() on both keepassxc_core and keepassxc_gui. Both are now PRIVATE since the symbol is an internal build detail. 5. Scoped Qt5Gui_PRIVATE_INCLUDE_DIRS to keepassxc_gui preventing Qt-internal headers from leaking into every target in the build. 6. Use cmake_parse_arguments to cleanup test case definition macros. Remove test output formats as they are never used and can be controlled when tests are run. * moved /fsanitize=address to compile options instead of definitions for MSVC builds --------- Co-authored-by: varjolintu <sami.vanttinen@ahmala.org>
Update KeePassXC to use Qt 6.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )