diff --git a/CMakeLists.txt b/CMakeLists.txt index c437407..141a1d9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -86,38 +86,49 @@ set(DOC_FILES ) set(REQUIRED_ICONS - edit-paste - window-close - document-save-as - document-open - insert-text - edit-copy - document-open-recent - list-remove + application-exit + applications-internet dialog-cancel dialog-ok dialog-ok-apply - flag-black dialog-password - edit-clear - list-add - help-about - application-exit - flag-blue - edit-undo - folder - system-file-manager - document-new - document-save - applications-internet - edit-redo - system-run - go-next + document-close document-export + document-new + document-open + document-open-recent + document-save + document-save-as + edit-clear + edit-copy + edit-cut + edit-delete + edit-paste + edit-redo + edit-rename + edit-undo + flag-black + flag-blue + folder + folder-symbolic + go-next + help-about + insert-text + list-add + list-remove password-generate + password-show-off + password-show-on + passwordmanager preferences-desktop-icons preferences-desktop-locale + qtcreator + sheet + story-editor + system-file-manager + system-run system-search + window-close ) # find c++utilities diff --git a/README.md b/README.md index dc0c9b1..d50512c 100644 --- a/README.md +++ b/README.md @@ -40,13 +40,16 @@ The Password Manager depends on c++utilities and passwordfile. Checkout the READ Build c++utilities, passwordfile, qtutilities and passwordmanager in one step to create an Android APK for arm64-v8a: ``` +# specify Android platform _android_arch=arm64-v8a _android_toolchain=aarch64-linux-android _android_api_level=21 +# set project name _reponame=passwordmanager _pkgname=passwordmanager +# locate SDK, NDK and further libraries android_sdk_root=${ANDROID_SDK_ROOT:-/opt/android-sdk} android_ndk_root=${ANDROID_NDK_ROOT:-/opt/android-ndk} qt_version=$(pacman -Q "android-qt5-$_android_arch" | sed 's/.* \(.*\)-.*/\1/') @@ -55,6 +58,9 @@ qt_root=/opt/android-qt5/$qt_version/$_android_arch other_libs_root=/opt/android-libs/$_android_arch root="$android_ndk_root/sysroot;$other_libs_root;$qt_root" +# use Breeze icons from 'breeze-icons' package +ln -s /usr/share/icons/breeze icons + cmake \ -DCMAKE_BUILD_TYPE=Debug \ -DCMAKE_TOOLCHAIN_FILE=/usr/share/ECM/toolchain/Android.cmake \ @@ -88,6 +94,8 @@ cmake \ -DNO_DOXYGEN=ON \ -DWIDGETS_GUI=OFF \ -DQUICK_GUI=ON \ + -DBUILTIN_ICON_THEMES=breeze \ + -DBREEZEICONS_DIR="$PWD" \ $SOURCES/subdirs/$_reponame make create-apk -j$(nproc) diff --git a/qml/main.qml b/qml/main.qml index 5d4abbe..2f66c8e 100644 --- a/qml/main.qml +++ b/qml/main.qml @@ -13,7 +13,7 @@ Kirigami.ApplicationWindow { globalDrawer: Kirigami.GlobalDrawer { id: leftMenu title: qsTr("Password manager") - titleIcon: "passwordmanager" + titleIcon: "qrc://icons/hicolor/128x128/apps/passwordmanager.png" topContent: ColumnLayout { Layout.fillWidth: true diff --git a/quickgui/initiatequick.cpp b/quickgui/initiatequick.cpp index 019a148..c331b4f 100644 --- a/quickgui/initiatequick.cpp +++ b/quickgui/initiatequick.cpp @@ -11,6 +11,7 @@ #include #include #include +#include #include #ifdef PASSWORD_MANAGER_GUI_QTWIDGETS @@ -36,6 +37,13 @@ int runQuickGui(int argc, char *argv[], const QtConfigArguments &qtConfigArgs, c qtConfigArgs.applySettings(); qtConfigArgs.applySettingsForQuickGui(); +#ifdef Q_OS_ANDROID + // assume we're bundling breeze icons under Android + if (QIcon::themeName().isEmpty()) { + QIcon::setThemeName(QStringLiteral("breeze")); + } +#endif + // load settings from configuration file QSettings settings(QSettings::IniFormat, QSettings::UserScope, QStringLiteral(PROJECT_NAME));