From 621c11925bb272675543b5ab428cc2ac6c0416ce Mon Sep 17 00:00:00 2001 From: selsta Date: Fri, 17 Dec 2021 16:43:00 +0100 Subject: [PATCH] main: add compile time option to disable desktop entry dialog --- CMakeLists.txt | 5 +++++ main.qml | 3 ++- src/main/main.cpp | 6 ++++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5f8b2da9..4004d27c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -12,6 +12,7 @@ option(STATIC "Link libraries statically, requires static Qt") option(USE_DEVICE_TREZOR "Trezor support compilation" ON) option(WITH_SCANNER "Enable webcam QR scanner" OFF) +option(WITH_DESKTOP_ENTRY "Ask to install desktop entry on first startup" ON) option(DEV_MODE "Checkout latest monero master on build" OFF) list(INSERT CMAKE_MODULE_PATH 0 "${CMAKE_SOURCE_DIR}/cmake") @@ -112,6 +113,10 @@ if(WITH_SCANNER) add_definitions(-DWITH_SCANNER) endif() +if(WITH_DESKTOP_ENTRY) + add_definitions(-DWITH_DESKTOP_ENTRY) +endif() + # Sodium find_library(SODIUM_LIBRARY sodium) message(STATUS "libsodium: libraries at ${SODIUM_LIBRARY}") diff --git a/main.qml b/main.qml index af28f2c1..9885b1bc 100644 --- a/main.qml +++ b/main.qml @@ -1334,7 +1334,8 @@ ApplicationWindow { appWindow.fiatTimerStart(); } - if (persistentSettings.askDesktopShortcut && !persistentSettings.portable) { + const desktopEntryEnabled = (typeof builtWithDesktopEntry != "undefined") && builtWithDesktopEntry; + if (persistentSettings.askDesktopShortcut && !persistentSettings.portable && desktopEntryEnabled) { persistentSettings.askDesktopShortcut = false; if (isTails) { diff --git a/src/main/main.cpp b/src/main/main.cpp index 165f9ae1..a6a77a5b 100644 --- a/src/main/main.cpp +++ b/src/main/main.cpp @@ -503,6 +503,12 @@ Verify update binary using 'shasum'-compatible (SHA256 algo) output signed by tw #endif engine.rootContext()->setContextProperty("builtWithScanner", builtWithScanner); + bool builtWithDesktopEntry = false; +#ifdef WITH_DESKTOP_ENTRY + builtWithDesktopEntry = true; +#endif + engine.rootContext()->setContextProperty("builtWithDesktopEntry", builtWithDesktopEntry); + engine.rootContext()->setContextProperty("moneroVersion", MONERO_VERSION_FULL); // Load main window (context properties needs to be defined obove this line)