diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 76b49c5c..f50731e0 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -10,6 +10,7 @@ jobs: if: contains(github.event.head_commit.message, 'deploy+') || contains(github.event.head_commit.message, 'pkg+') strategy: matrix: + platform: [ "ubuntu-latest", "ubuntu-24.04-arm" ] # container: [ "ubuntu:18.04", "ubuntu:20.04", "ubuntu:22.04", "ubuntu:23.04", "debian:11", "fedora:37", "fedora:38", "archlinux:latest" ] container: [ "ubuntu:20.04", "ubuntu:22.04", "ubuntu:24.04", "debian:11", "debian:12", "fedora:40", "fedora:41", "opensuse/tumbleweed" ] # this list should be updated from time to time by consulting these pages: @@ -22,9 +23,11 @@ jobs: exclude: - container: "ubuntu:20.04" ime: "fcitx" - runs-on: "ubuntu-latest" + - platform: "ubuntu-24.04-arm" + container: "opensuse/tumbleweed" + runs-on: ${{ matrix.platform }} container: - image: ${{ matrix.container }} + image: ${{ matrix.platform == 'ubuntu-24.04-arm' && format('arm64v8/{0}', matrix.container) || matrix.container }} env: DIST: ${{ matrix.container }} IME: ${{ matrix.ime }} @@ -64,7 +67,7 @@ jobs: - name: upload-artifacts uses: actions/upload-artifact@v4 with: - name: pkg-${{ steps.sanitizer.outputs.sanitized_container }}-${{ matrix.ime }} + name: pkg-${{ matrix.platform == 'ubuntu-24.04-arm' && 'arm64' || 'x64' }}-${{ steps.sanitizer.outputs.sanitized_container }}-${{ matrix.ime }} path: artifact release: diff --git a/CMakeLists.txt b/CMakeLists.txt index 7d3419de..d4ceb934 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -151,7 +151,6 @@ set(CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "/usr/share/applications" "/us "/usr/share/icons/hicolor/32x32" "/usr/share/icons/hicolor/32x32/apps" "/usr/share/icons/hicolor/48x48" "/usr/share/icons/hicolor/48x48/apps" "/usr/share/icons/hicolor/512x512" "/usr/share/icons/hicolor/512x512/apps") -set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}_${PROJECT_VERSION}-$ENV{DIST}") # Configure CPack on the basis of which backend we are building for. if(ENABLE_IBUS) ## IBUS @@ -183,4 +182,7 @@ elseif(APPLE) set(CPACK_PRODUCTBUILD_BACKGROUND_DARKAQUA_ALIGNMENT "left") endif() +# Set package filename after CPACK_PACKAGE_NAME is defined +set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}_${PROJECT_VERSION}-$ENV{DIST}") + include(CPack) diff --git a/src/frontend/TopBar.cpp b/src/frontend/TopBar.cpp index 3b847023..9ddaf37f 100644 --- a/src/frontend/TopBar.cpp +++ b/src/frontend/TopBar.cpp @@ -379,12 +379,16 @@ bool TopBar::eventFilter(QObject *object, QEvent *event) { // Mouse release event was missed; stop dragging. canMoveTopbar = false; ui->buttonIcon->setCursor(Qt::ArrowCursor); - } else if(this->windowHandle()->startSystemMove()){ + } +#if QT_VERSION >= QT_VERSION_CHECK(5, 15, 0) + else if(this->windowHandle()->startSystemMove()){ // The window manager now owns the drag and will consume the // mouse release event, so reset our drag state immediately. canMoveTopbar = false; ui->buttonIcon->setCursor(Qt::ArrowCursor); - } else { + } +#endif + else { ui->buttonIcon->setCursor(Qt::ClosedHandCursor); move(e->globalX() - pressedMouseX, e->globalY() - pressedMouseY); }