From 312fb7860b912d4ae648865b1f2f8d27ebed12cc Mon Sep 17 00:00:00 2001 From: "kali kaneko (leap communications)" Date: Fri, 10 Dec 2021 18:23:57 +0100 Subject: [bug] minor, recurrent gotchas -QApplication, no QGuiApplication: the later avoids the systray to display - Workaround for invisible app icons when vendoring - Make border visible for snaps --- gui/build.sh | 2 +- gui/components/MaterialButton.qml | 4 ++-- gui/main.cpp | 19 +++++++++++++++---- providers/vendor.qrc | 4 +++- 4 files changed, 21 insertions(+), 8 deletions(-) diff --git a/gui/build.sh b/gui/build.sh index 791a700..18d97e1 100755 --- a/gui/build.sh +++ b/gui/build.sh @@ -87,7 +87,7 @@ function buildQmake { echo "[+] Now building Qml app with Qt qmake" echo "[+] Using qmake in:" $QMAKE mkdir -p $QTBUILD - $QMAKE -early QMAKE_CC=$CC QMAKE_CXX=$CXX QMAKE_LINK=$CXX -o "$QTBUILD/Makefile" CONFIG+=release VENDOR_PATH=${VENDOR_PATH} $PROJECT + $QMAKE -early QMAKE_CC=$CC QMAKE_CXX=$CXX QMAKE_LINK=$CXX -o "$QTBUILD/Makefile" CONFIG+=release VENDOR_PATH="${VENDOR_PATH}" $PROJECT #CONFIG=+force_debug_info CONFIG+=debug CONFIG+=debug_and_release } diff --git a/gui/components/MaterialButton.qml b/gui/components/MaterialButton.qml index ad1ca59..4b6d78b 100644 --- a/gui/components/MaterialButton.qml +++ b/gui/components/MaterialButton.qml @@ -49,7 +49,7 @@ T.Button { radius: 4 border.color: "black" - border.width: 2 + border.width: 1 color: !control.enabled ? control.Material.buttonDisabledColor : control.highlighted ? control.Material.highlightedButtonColor : Theme.buttonColor PaddedRectangle { @@ -69,7 +69,7 @@ T.Button { // to set Material.elevation as well layer.enabled: true // control.enabled && control.Material.buttonColor.a > 0 - /* + /* this is trouble in the canned Qt version for snaps, so let's pass for now layer.effect: ElevationEffect { elevation: control.Material.elevation } diff --git a/gui/main.cpp b/gui/main.cpp index c35f14d..976f2cd 100644 --- a/gui/main.cpp +++ b/gui/main.cpp @@ -50,7 +50,7 @@ void catchUnixSignals(std::initializer_list quitSignals) { auto handler = [](int sig) -> void { printf("\nCatched signal(%d): quitting\n", sig); Quit(); - QGuiApplication::quit(); + QApplication::quit(); }; sigset_t blocking_mask; @@ -72,7 +72,11 @@ int main(int argc, char **argv) { QApplication::setAttribute(Qt::AA_EnableHighDpiScaling); QApplication::setApplicationVersion(backend.getVersion()); - QGuiApplication app(argc, argv); + // There's a legend about brave coders than, from time to time, have the urge to change + // the app object to a QGuiApplication. Resist the temptation, oh coder + // from the future, or otherwise ye shall be punished for long hours wondering + // why yer little systray resists to be displayed. + QApplication app(argc, argv); app.setQuitOnLastWindowClosed(false); app.setAttribute(Qt::AA_UseHighDpiPixmaps); @@ -179,7 +183,14 @@ int main(int argc, char **argv) { } /* set window icon */ - app.setWindowIcon(QIcon(":/vendor/icon.svg")); + /* this one is set in the vendor.qrc resources, that needs to be passed to the project */ + /* there's something weird with icons being cached, need to investigate */ + if (appName == "CalyxVPN") { + qDebug() << "setting calyx logo"; + app.setWindowIcon(QIcon(":/vendor/calyx.svg")); + } else if (appName == "RiseupVPN") { + app.setWindowIcon(QIcon(":/vendor/riseup.svg")); + } /* load translations */ QTranslator translator; @@ -227,7 +238,7 @@ int main(int argc, char **argv) { /* connect quitDone signal, exit app */ QObject::connect(&backend, &Backend::quitDone, []() { - QGuiApplication::quit(); + QApplication::quit(); }); /* register statusChanged callback with CGO */ diff --git a/providers/vendor.qrc b/providers/vendor.qrc index 2cfa32b..16a5b85 100644 --- a/providers/vendor.qrc +++ b/providers/vendor.qrc @@ -1,5 +1,7 @@ - assets/icon.svg + assets/icon.svg + riseup/assets/icon.svg + calyx/assets/icon.svg -- cgit v1.2.3