diff --git a/.github/workflows/Linux-pack.yml b/.github/workflows/Linux-pack.yml index d92c364b..b478673b 100644 --- a/.github/workflows/Linux-pack.yml +++ b/.github/workflows/Linux-pack.yml @@ -28,17 +28,28 @@ env: jobs: deb-pack: + name: ${{ matrix.dist.name }} runs-on: ubuntu-20.04 strategy: fail-fast: false matrix: - dist: [debian-10, ubuntu-20.04] + dist: + - { + name: debian-10, + os: debian, + symbol: buster + } + - { + name: ubuntu-20.04, + os: ubuntu, + symbol: focal + } steps: - name: Checkout Source code uses: actions/checkout@v2 with: fetch-depth: 0 -# ref: master_nc_merge_upstream_test +# ref: master - name: Set env & Print flameshot version shell: bash run: | @@ -56,38 +67,33 @@ jobs: # flameshot-org/packpack or packpack/packpack repository: flameshot-org/packpack path: tools - - name: Packaging on ${{ matrix.dist }} - if: matrix.dist == 'debian-10' + - name: Packaging on ${{ matrix.dist.name }} run: | cp -r $GITHUB_WORKSPACE/data/debian $GITHUB_WORKSPACE bash $GITHUB_WORKSPACE/tools/packpack - mv $GITHUB_WORKSPACE/build/${PRODUCT}_${VERSION}-${RELEASE}_amd64.deb $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist }}.amd64.deb + mv $GITHUB_WORKSPACE/build/${PRODUCT}_${VERSION}-${RELEASE}_amd64.deb $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist.name }}.amd64.deb env: - OS: debian - DIST: buster - - name: Packaging on ${{ matrix.dist }} - if: matrix.dist == 'ubuntu-20.04' + OS: ${{ matrix.dist.os }} + DIST: ${{ matrix.dist.symbol }} + - name: SHA256Sum of ${{ matrix.dist.name }} package(daily build) run: | - pwd - ls -la - cp -r $GITHUB_WORKSPACE/data/debian $GITHUB_WORKSPACE - bash $GITHUB_WORKSPACE/tools/packpack - mv $GITHUB_WORKSPACE/build/${PRODUCT}_${VERSION}-${RELEASE}_amd64.deb $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist }}.amd64.deb - env: - OS: ubuntu - DIST: focal - - name: SHA256Sum of ${{ matrix.dist }} package(daily build) - run: | - sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist }}.amd64.deb - sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist }}.amd64.deb > $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist }}.amd64.deb.sha256sum - echo "=============${{ matrix.dist }} sha256sum download link============" - echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist }}.amd64.deb.sha256sum) + sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist.name }}.amd64.deb + sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist.name }}.amd64.deb > $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist.name }}.amd64.deb.sha256sum + echo "=============${{ matrix.dist.name }} sha256sum download link============" + echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist.name }}.amd64.deb.sha256sum) echo "========no operation for you can see link in the log console=======" - - name: Upload ${{ matrix.dist }} package(daily build) + - name: Upload ${{ matrix.dist.name }} package(daily build) run: | - echo "================${{ matrix.dist }} download link===============" - echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist }}.amd64.deb) + echo "================${{ matrix.dist.name }} download link===============" + echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.${{ matrix.dist.name }}.amd64.deb) echo "======no operation for you can see link in the log console=====" + - name: Artifact Upload + uses: actions/upload-artifact@v2 + with: + name: Linux-distribution-artifact + path: | + ${{ github.workspace }}/build/${{ env.PRODUCT }}-*-${{ env.RELEASE }}.${{ matrix.dist.name }}.amd64.deb + ${{ github.workspace }}/build/${{ env.PRODUCT }}-*-${{ env.RELEASE }}.${{ matrix.dist.name }}.amd64.deb.sha256sum deb-pack-extra: name: ubuntu-18.04(extra job to packaging deb) @@ -101,7 +107,7 @@ jobs: uses: actions/checkout@v1 with: fetch-depth: 0 -# ref: master_nc_merge_upstream_test +# ref: master - name: Set env & Print flameshot version shell: bash run: | @@ -149,33 +155,54 @@ jobs: mkdir -p $GITHUB_WORKSPACE/build sed -e "/cmake (>= 3.13~),/d" -i $GITHUB_WORKSPACE/debian/control dpkg-buildpackage -b - cp $GITHUB_WORKSPACE/../${PRODUCT}_*_amd64.deb $GITHUB_WORKSPACE/build/${PRODUCT}_${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb -# cp $GITHUB_WORKSPACE/../${PRODUCT}_${VERSION}-${RELEASE}_amd64.deb $GITHUB_WORKSPACE/build/${PRODUCT}_${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb + cp $GITHUB_WORKSPACE/../${PRODUCT}_${VERSION}-${RELEASE}_amd64.deb $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb - name: SHA256Sum of ubuntu-18.04 package(daily build) run: | - sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}_${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb - sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}_${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb > $GITHUB_WORKSPACE/build/${PRODUCT}_${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb.sha256sum + sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb + sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb > $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb.sha256sum echo "============ubuntu-18.04 sha256sum download link==============" - echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}_${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb.sha256sum) + echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb.sha256sum) echo "=====no operation for you can see link in the log console=====" - name: Upload ubuntu-18.04 package(daily build) run: | echo "===================ubuntu-18.04 download link==================" - echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}_${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb) + echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.ubuntu-18.04.amd64.deb) echo "======no operation for you can see link in the log console=====" + - name: Artifact Upload + uses: actions/upload-artifact@v2 + with: + name: Linux-distribution-artifact + path: | + ${{ github.workspace }}/build/* rpm-pack: + name: ${{ matrix.dist.name }} runs-on: ubuntu-20.04 strategy: fail-fast: false matrix: - dist: [fedora-31, fedora-32, opensuse-leap-15.2] + dist: + - { + name: fedora-31, + os: fedora, + symbol: 31 + } + - { + name: fedora-32, + os: fedora, + symbol: 32 + } + - { + name: opensuse-leap-15.2, + os: opensuse-leap, + symbol: 15.2 + } steps: - name: Checkout Source code uses: actions/checkout@v2 with: fetch-depth: 0 -# ref: master_nc_merge_upstream_test +# ref: master - name: Set env & Print flameshot version shell: bash run: | @@ -193,67 +220,75 @@ jobs: # flameshot-org/packpack or packpack/packpack repository: flameshot-org/packpack path: tools - - name: Packaging on ${{ matrix.dist }} - if: matrix.dist == 'fedora-31' + - name: Packaging on ${{ matrix.dist.name }} run: | cp -r $GITHUB_WORKSPACE/data/rpm $GITHUB_WORKSPACE bash $GITHUB_WORKSPACE/tools/packpack env: - OS: fedora - DIST: 31 - - name: Packaging on ${{ matrix.dist }} - if: matrix.dist == 'fedora-32' + OS: ${{ matrix.dist.os }} + DIST: ${{ matrix.dist.symbol }} + - name: Package Clean + if: matrix.dist.os == 'fedora' run: | - cp -r $GITHUB_WORKSPACE/data/rpm $GITHUB_WORKSPACE - bash $GITHUB_WORKSPACE/tools/packpack - env: - OS: fedora - DIST: 32 - - name: Packaging on ${{ matrix.dist }} - if: matrix.dist == 'opensuse-leap-15.2' + rm -f ${{ github.workspace }}/build/${{ env.PRODUCT }}-debuginfo-*.rpm + rm -f ${{ github.workspace }}/build/${{ env.PRODUCT }}-debugsource-*.rpm + rm -f ${{ github.workspace }}/build/${{ env.PRODUCT }}-*.src.rpm + rm -f ${{ github.workspace }}/build/build.log + - name: SHA256Sum of ${{ matrix.dist.name }} package(daily build) + if: matrix.dist.os == 'fedora' run: | - cp -r $GITHUB_WORKSPACE/data/rpm $GITHUB_WORKSPACE - bash $GITHUB_WORKSPACE/tools/packpack - env: - OS: opensuse-leap - DIST: 15.2 - - name: SHA256Sum of ${{ matrix.dist }} package(daily build) - if: startsWith(matrix.dist, 'fedora') - run: | - sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.fc*.${ARCH}.rpm - sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.fc*.${ARCH}.rpm > $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.fc*.${ARCH}.rpm.sha256sum + sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.fc*.${ARCH}.rpm + sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.fc*.${ARCH}.rpm > $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.fc${{ matrix.dist.symbol }}.${ARCH}.rpm.sha256sum echo "============${{ matrix.dist }} sha256sum download link============" echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.fc*.${ARCH}.rpm.sha256sum) echo "=======no operation for you can see link in the log console=======" - - name: SHA256Sum of ${{ matrix.dist }} package(daily build) - if: startsWith(matrix.dist, 'opensuse-leap') + - name: SHA256Sum of ${{ matrix.dist.name }} package(daily build) + if: matrix.dist.os == 'opensuse-leap' run: | - sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-lp*.${ARCH}.rpm - sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-lp*.${ARCH}.rpm > $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-lp*.${ARCH}.rpm.sha256sum + mv $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-lp*.${ARCH}.rpm $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}-lp${{ matrix.dist.symbol }}.${ARCH}.rpm + sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}-lp${{ matrix.dist.symbol }}.${ARCH}.rpm + sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}-lp${{ matrix.dist.symbol }}.${ARCH}.rpm > $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}-lp${{ matrix.dist.symbol }}.${ARCH}.rpm.sha256sum echo "============${{ matrix.dist }} sha256sum download link===========" - echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-lp*.${ARCH}.rpm.sha256sum) + echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}-lp${{ matrix.dist.symbol }}.${ARCH}.rpm.sha256sum) echo "=======no operation for you can see link in the log console======" - - name: Upload ${{ matrix.dist }} package(daily build) - if: startsWith(matrix.dist, 'fedora') + - name: Upload ${{ matrix.dist.name }} package(daily build) + if: matrix.dist.os == 'fedora' run: | - echo "================${{ matrix.dist }} download link===============" + echo "================${{ matrix.dist.name }} download link===============" echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.fc*.${ARCH}.rpm) echo "======no operation for you can see link in the log console=====" - - name: Upload ${{ matrix.dist }} package(daily build) - if: startsWith(matrix.dist, 'opensuse-leap') + - name: Upload ${{ matrix.dist.name }} package(daily build) + if: matrix.dist.os == 'opensuse-leap' run: | - echo "================${{ matrix.dist }} download link===============" - echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-lp*.${ARCH}.rpm) + echo "================${{ matrix.dist.name }} download link===============" + echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}-lp${{ matrix.dist.symbol }}.${ARCH}.rpm) echo "======no operation for you can see link in the log console=====" + - name: Artifact Upload + if: matrix.dist.os == 'fedora' + uses: actions/upload-artifact@v2 + with: + name: Linux-distribution-artifact + path: | + ${{ github.workspace }}/build/ + + - name: Artifact Upload + if: matrix.dist.os == 'opensuse-leap' + uses: actions/upload-artifact@v2 + with: + name: Linux-distribution-artifact + path: | + ${{ github.workspace }}/build/${{ env.PRODUCT }}-*-lp${{ matrix.dist.symbol }}.${{ env.ARCH }}.rpm + ${{ github.workspace }}/build/${{ env.PRODUCT }}-*-lp${{ matrix.dist.symbol }}.${{ env.ARCH }}.rpm.sha256sum appimage-pack: + name: appimage runs-on: ubuntu-20.04 steps: - name: Checkout Source code uses: actions/checkout@v2 with: fetch-depth: 0 -# ref: master_nc_merge_upstream_test +# ref: master - name: Set env & Print flameshot version shell: bash run: | @@ -315,77 +350,95 @@ jobs: ${APPIMAGE_DST_PATH}/ VERSION=${VERSION} $GITHUB_WORKSPACE/appimagetool ${APPIMAGE_DST_PATH} + mv $GITHUB_WORKSPACE/Flameshot-${VERSION}-${ARCH}.AppImage $GITHUB_WORKSPACE/Flameshot-${VERSION}.${ARCH}.AppImage - name: SHA256Sum of appimage package(daily build) run: | - sha256sum $GITHUB_WORKSPACE/Flameshot-${VERSION}-${ARCH}.AppImage - sha256sum $GITHUB_WORKSPACE/Flameshot-${VERSION}-${ARCH}.AppImage > $GITHUB_WORKSPACE/Flameshot-${VERSION}-${ARCH}.AppImage.sha256sum + sha256sum $GITHUB_WORKSPACE/Flameshot-${VERSION}.${ARCH}.AppImage + sha256sum $GITHUB_WORKSPACE/Flameshot-${VERSION}.${ARCH}.AppImage > $GITHUB_WORKSPACE/Flameshot-${VERSION}.${ARCH}.AppImage.sha256sum echo "================appimage sha256sum download link===============" - echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/Flameshot-${VERSION}-${ARCH}.AppImage.sha256sum) + echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/Flameshot-${VERSION}.${ARCH}.AppImage.sha256sum) echo "======no operation for you can see link in the log console=====" - name: Upload appimage package for daily build run: | echo "====================appimage download link=====================" - echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/Flameshot-${VERSION}-${ARCH}.AppImage) + echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/Flameshot-${VERSION}.${ARCH}.AppImage) echo "======no operation for you can see link in the log console=====" + - name: Artifact Upload + uses: actions/upload-artifact@v2 + with: + name: Linux-distribution-artifact + path: | + ${{ github.workspace }}/Flameshot-*.${{ env.ARCH }}.AppImage + ${{ github.workspace }}/Flameshot-*.${{ env.ARCH }}.AppImage.sha256sum -# flatpak-pack: -# runs-on: ubuntu-20.04 -# steps: -# - name: Checkout Source code -# uses: actions/checkout@v2 -# with: -# fetch-depth: 0 -## ref: master_nc_merge_upstream_test -# - name: Set env & Print flameshot version -# shell: bash -# run: | -# last_committed_tag=$(git tag -l --sort=-v:refname | head -1) -# git_revno=$(git rev-list $(git describe --tags --abbrev=0)..HEAD --count) -# git_hash=$(git rev-parse --short HEAD) -# echo "=======FLAMESHOT VERSION========" -# echo ${last_committed_tag:1} -# echo "Details: ${last_committed_tag}+git${git_revno}.${git_hash}" -# echo "================================" -# echo ::set-env name=VERSION::$(echo ${last_committed_tag:1}) -# - name: Setup flatpak -# run: | -# sudo apt-get -y -qq update -# sudo apt-get install -y flatpak flatpak-builder -# - name: Setup Flathub -# run: | -# flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo -# flatpak install -y --noninteractive flathub org.kde.Sdk//5.15 org.kde.Platform//5.15 -# - name: Packaging flatpak -# run: | -# BUNDLE="org.flameshot.flameshot_${VERSION}_${ARCH}.flatpak" -# MANIFEST_PATH=$GITHUB_WORKSPACE/data/flatpak/org.flameshot.flameshot.yml -# RUNTIME_REPO="https://flathub.org/repo/flathub.flatpakrepo" -# APP_ID="org.flameshot.flameshot" -# BRANCH="master_nc_merge_upstream_test" -# -# flatpak-builder --user --disable-rofiles-fuse --repo=repo --force-clean flatpak_app ${MANIFEST_PATH} --install-deps-from=flathub -# flatpak build-bundle repo ${BUNDLE} --runtime-repo=${RUNTIME_REPO} ${APP_ID} ${BRANCH} -# - name: SHA256Sum of flatpak package(daily build) -# run: | -# sha256sum $GITHUB_WORKSPACE/org.flameshot.flameshot_${VERSION}_${ARCH}.flatpak -# sha256sum $GITHUB_WORKSPACE/org.flameshot.flameshot_${VERSION}_${ARCH}.flatpak > $GITHUB_WORKSPACE/org.flameshot.flameshot_${VERSION}_${ARCH}.flatpak.sha256sum -# echo "================flatpak sha256sum download link====================" -# echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/org.flameshot.flameshot_${VERSION}_${ARCH}.flatpak.sha256sum) -# echo "========no operation for you can see link in the log console=======" -# - name: Upload flatpak package(daily build) -# run: | -# echo "=====================flatpak download link=====================" -# echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/org.flameshot.flameshot_${VERSION}_${ARCH}.flatpak) -# echo "======no operation for you can see link in the log console=====" + flatpak-pack: + name: flatpak + runs-on: ubuntu-20.04 + steps: + - name: Checkout Source code + uses: actions/checkout@v2 + with: + fetch-depth: 0 +# ref: master + - name: Set env & Print flameshot version + shell: bash + run: | + last_committed_tag=$(git tag -l --sort=-v:refname | head -1) + git_revno=$(git rev-list $(git describe --tags --abbrev=0)..HEAD --count) + git_hash=$(git rev-parse --short HEAD) + echo "=======FLAMESHOT VERSION========" + echo ${last_committed_tag:1} + echo "Details: ${last_committed_tag}+git${git_revno}.${git_hash}" + echo "================================" + echo ::set-env name=VERSION::$(echo ${last_committed_tag:1}) + - name: Setup flatpak + run: | + sudo apt-get -y -qq update + sudo apt-get install -y flatpak flatpak-builder + - name: Setup Flathub + run: | + flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo + flatpak install -y --noninteractive flathub org.kde.Sdk//5.15 org.kde.Platform//5.15 + - name: Packaging flatpak + run: | + BUNDLE="org.flameshot.flameshot_${VERSION}_${ARCH}.flatpak" + MANIFEST_PATH=$GITHUB_WORKSPACE/data/flatpak/org.flameshot.flameshot.yml + RUNTIME_REPO="https://flathub.org/repo/flathub.flatpakrepo" + APP_ID="org.flameshot.flameshot" + BRANCH="master" + + flatpak-builder --user --disable-rofiles-fuse --repo=repo --force-clean flatpak_app ${MANIFEST_PATH} --install-deps-from=flathub + flatpak build-bundle repo ${BUNDLE} --runtime-repo=${RUNTIME_REPO} ${APP_ID} ${BRANCH} + mv $GITHUB_WORKSPACE/org.flameshot.flameshot_${VERSION}_${ARCH}.flatpak $GITHUB_WORKSPACE/org.flameshot.flameshot-${VERSION}.${ARCH}.flatpak + - name: SHA256Sum of flatpak package(daily build) + run: | + sha256sum $GITHUB_WORKSPACE/org.flameshot.flameshot-${VERSION}.${ARCH}.flatpak + sha256sum $GITHUB_WORKSPACE/org.flameshot.flameshot-${VERSION}.${ARCH}.flatpak > $GITHUB_WORKSPACE/org.flameshot.flameshot-${VERSION}.${ARCH}.flatpak.sha256sum + echo "================flatpak sha256sum download link====================" + echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/org.flameshot.flameshot-${VERSION}.${ARCH}.flatpak.sha256sum) + echo "========no operation for you can see link in the log console=======" + - name: Upload flatpak package(daily build) + run: | + echo "=====================flatpak download link=====================" + echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/org.flameshot.flameshot-${VERSION}.${ARCH}.flatpak) + echo "======no operation for you can see link in the log console=====" + - name: Artifact Upload + uses: actions/upload-artifact@v2 + with: + name: Linux-distribution-artifact + path: | + ${{ github.workspace }}/org.flameshot.flameshot-*.${{ env.ARCH }}.flatpak + ${{ github.workspace }}/org.flameshot.flameshot-*.${{ env.ARCH }}.flatpak.sha256sum snap-pack: + name: snap runs-on: ubuntu-20.04 steps: - name: Checkout Source code uses: actions/checkout@v2 with: fetch-depth: 0 -# ref: master_nc_merge_upstream_test +# ref: master - name: Set env & Print flameshot version shell: bash run: | @@ -402,15 +455,27 @@ jobs: id: snapcraft with: path: data + - name: Rename snap name + shell: bash + run: | + mkdir -p $GITHUB_WORKSPACE/build + cp ${{ steps.snapcraft.outputs.snap }} $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.amd64.snap - name: SHA256Sum of snap package(daily build) run: | - sha256sum ${{ steps.snapcraft.outputs.snap }} - sha256sum ${{ steps.snapcraft.outputs.snap }} > ${{ steps.snapcraft.outputs.snap }}.sha256sum + sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.amd64.snap + sha256sum $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.amd64.snap > $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.amd64.snap.sha256sum echo "================snap sha256sum download link==================" - echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh ${{ steps.snapcraft.outputs.snap }}.sha256sum) + echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.amd64.snap.sha256sum) echo "=====no operation for you can see link in the log console=====" - name: Upload snap package(daily build) run: | echo "=======================snap download link======================" - echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh ${{ steps.snapcraft.outputs.snap }}) + echo $(sh $GITHUB_WORKSPACE/scripts/upload_services/${UPLOAD_SERVICE}.sh $GITHUB_WORKSPACE/build/${PRODUCT}-${VERSION}-${RELEASE}.amd64.snap) echo "======no operation for you can see link in the log console=====" + - name: Artifact Upload + uses: actions/upload-artifact@v2 + with: + name: Linux-distribution-artifact + path: | + ${{ github.workspace }}/build/${{ env.PRODUCT }}-*-${{ env.RELEASE }}.amd64.snap + ${{ github.workspace }}/build/${{ env.PRODUCT }}-*-${{ env.RELEASE }}.amd64.snap.sha256sum diff --git a/CMakeLists.txt b/CMakeLists.txt index c66dd17e..61e9884a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,7 +4,7 @@ cmake_minimum_required(VERSION 3.13) # This can be read from ${PROJECT_NAME} after project() is called project( flameshot - VERSION 0.8.1.1 + VERSION 0.8.3.1 LANGUAGES CXX) set(PROJECT_NAME_CAPITALIZED "Flameshot") @@ -12,12 +12,17 @@ set(PROJECT_NAME_CAPITALIZED "Flameshot") set(DEFAULT_RUN_IN_PLACE FALSE) if(WIN32) set(DEFAULT_RUN_IN_PLACE TRUE) + # For Windows RC file. + add_definitions(-DFLAMESHOT_VERSION_MAJOR=${CMAKE_PROJECT_VERSION_MAJOR}) + add_definitions(-DFLAMESHOT_VERSION_MINOR=${CMAKE_PROJECT_VERSION_MINOR}) + add_definitions(-DFLAMESHOT_VERSION_BUGFIX=${CMAKE_PROJECT_VERSION_PATCH}) + add_definitions(-DFLAMESHOT_VERSION_BUILD=1) + add_definitions(-DFLAMESHOT_VERSION_STRING="${PROJECT_VERSION}") endif() set(RUN_IN_PLACE ${DEFAULT_RUN_IN_PLACE} CACHE BOOL "Run directly in source directory structure") -option(GENERATE_TS "Regenerate translation source files" OFF) option(GENERATE_TS "Regenerate translation source files" OFF) include(cmake/StandardProjectSettings.cmake) diff --git a/README.md b/README.md index 941e8644..fc15b331 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,10 @@ Docs +
+ + Get it from the Snap Store +

@@ -60,10 +64,8 @@ - [Arch](#arch) - [Build](#build) - [Install](#install) -- [Packaging](#packaging) - [License](#license) - [Contribute](#contribute) -- [Donations](#donations) - [Acknowledgment](#acknowledgment) ## Features @@ -252,11 +254,10 @@ some Linux distributions: - [Ubuntu 18.04+](https://launchpad.net/ubuntu/+source/flameshot): `apt install flameshot` - [openSUSE](https://software.opensuse.org/package/flameshot) - [Void Linux](https://github.com/void-linux/void-packages/tree/master/srcpkgs/flameshot) (`xbps-install flameshot`) -- [Docker](https://github.com/ManuelLR/docker-flameshot) +- [Solus](https://dev.getsol.us/source/flameshot/): `eopkg it flameshot` - Fedora: `dnf install flameshot` - [Snap/Flatpak/AppImage](https://github.com/flameshotapp/packages) -- [Solus](https://dev.getsol.us/source/flameshot/): `eopkg it flameshot` -- Besides, generic packages available via [opensuse software repository](https://software.opensuse.org//download.html?project=home%3AVitzy&package=flameshot) +- [Docker](https://github.com/ManuelLR/docker-flameshot)
Expand this section to see what distros are using an up to date version of flameshot @@ -265,6 +266,13 @@ some Linux distributions:
+### Tray icon + +**Note** that for the Flameshot icon to appear in your tray area, you should have a systray software installed. This is especially true for users who use minimal [window managers](https://wiki.archlinux.org/index.php/window_manager) such as [dwm](https://dwm.suckless.org/). In some [Desktop Environment](https://wiki.archlinux.org/index.php/Desktop_environment) installations (e.g Gnome), the systray might be missing and you can install an application or plugin (e.g [Gnome shell extension](https://extensions.gnome.org/extension/1503/tray-icons/)) to add the systray to your setup. It has been [reported](https://github.com/flameshot-org/flameshot/issues/1009#issuecomment-700781081)) that icon of some softwares, including Flameshot, does not show in [gnome-shell-extension-appindicator](https://github.com/ubuntu/gnome-shell-extension-appindicator). + + +Alternatively, in case you don't want to have a systray, you can always call Flameshot from the terminal. See [Usage section](#usage). + ### S3 bucket configuration S3 bucket credentials are placed in the file `config.ini` and cannot be configured with UI. diff --git a/data/debian/changelog b/data/debian/changelog index e06b8f0e..be7f9bd4 100644 --- a/data/debian/changelog +++ b/data/debian/changelog @@ -1,5 +1,5 @@ -flameshot (0.8.1-1) unstable; urgency=medium +flameshot (0.8.3-1) unstable; urgency=medium * New stable release. - -- Boyuan Yang Wed, 23 Sep 2020 20:39:29 -0400 + -- Jeremy Borgman Mon, 30 Sep 2020 09:18:29 -0600 diff --git a/data/flameshot.rc b/data/flameshot.rc new file mode 100644 index 00000000..1fac2d6f --- /dev/null +++ b/data/flameshot.rc @@ -0,0 +1,47 @@ +#pragma code_page(65001) // UTF-8 + +IDI_ICON1 ICON "img\\app\\flameshot.ico" + +#include + +#define VER_FILEVERSION FLAMESHOT_VERSION_MAJOR,FLAMESHOT_VERSION_MINOR,FLAMESHOT_VERSION_BUGFIX,FLAMESHOT_VERSION_BUILD +#define VER_FILEVERSION_STR FLAMESHOT_VERSION_STRING + +#define VER_PRODUCTVERSION FLAMESHOT_VERSION_MAJOR,FLAMESHOT_VERSION_MINOR,FLAMESHOT_VERSION_BUGFIX,FLAMESHOT_VERSION_BUILD +#define VER_PRODUCTVERSION_STR FLAMESHOT_VERSION_STRING + +#ifndef DEBUG +#define VER_DEBUG 0 +#else +#define VER_DEBUG VS_FF_DEBUG +#endif + +VS_VERSION_INFO VERSIONINFO +FILEVERSION VER_FILEVERSION +PRODUCTVERSION VER_PRODUCTVERSION +FILEFLAGSMASK VER_DEBUG +FILEFLAGS VER_DEBUG +FILEOS VOS__WINDOWS32 +FILETYPE VFT_APP +FILESUBTYPE VFT2_UNKNOWN +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904b0" + BEGIN + VALUE "CompanyName", "The flameshot Org." + VALUE "FileDescription", "Flameshot" + VALUE "FileVersion", VER_FILEVERSION_STR + VALUE "InternalName", "flameshot" + VALUE "LegalCopyright", "Copyright (C) 2017-2020 flameshot.org" + VALUE "OriginalFilename", "flameshot.exe" + VALUE "ProductName", "Flameshot" + VALUE "ProductVersion", VER_PRODUCTVERSION_STR + END + END + + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x0409, 0x04b0 /* U.S. English (Unicode) */ + END +END \ No newline at end of file diff --git a/data/icon.rc b/data/icon.rc deleted file mode 100644 index 2cdab732..00000000 --- a/data/icon.rc +++ /dev/null @@ -1 +0,0 @@ -IDI_ICON1 ICON DISCARDABLE "img/app/flameshot.ico" \ No newline at end of file diff --git a/data/img/material/black/minus.png b/data/img/material/black/minus.png new file mode 100644 index 00000000..a1866388 Binary files /dev/null and b/data/img/material/black/minus.png differ diff --git a/data/img/material/black/minus.svg b/data/img/material/black/minus.svg new file mode 100644 index 00000000..65418b43 --- /dev/null +++ b/data/img/material/black/minus.svg @@ -0,0 +1,57 @@ + + + + + + image/svg+xml + + + + + + + + + diff --git a/data/img/material/black/plus.png b/data/img/material/black/plus.png new file mode 100644 index 00000000..69bb5420 Binary files /dev/null and b/data/img/material/black/plus.png differ diff --git a/data/img/material/black/plus.svg b/data/img/material/black/plus.svg new file mode 100644 index 00000000..98a97af7 --- /dev/null +++ b/data/img/material/black/plus.svg @@ -0,0 +1,57 @@ + + + + + + image/svg+xml + + + + + + + + + diff --git a/data/img/material/white/minus.png b/data/img/material/white/minus.png new file mode 100644 index 00000000..1ddb09ee Binary files /dev/null and b/data/img/material/white/minus.png differ diff --git a/data/img/material/white/minus.svg b/data/img/material/white/minus.svg new file mode 100644 index 00000000..e02d3235 --- /dev/null +++ b/data/img/material/white/minus.svg @@ -0,0 +1,57 @@ + + + + + + image/svg+xml + + + + + + + + + diff --git a/data/img/material/white/plus.png b/data/img/material/white/plus.png new file mode 100644 index 00000000..8195e8f0 Binary files /dev/null and b/data/img/material/white/plus.png differ diff --git a/data/img/material/white/plus.svg b/data/img/material/white/plus.svg new file mode 100644 index 00000000..f8b8da45 --- /dev/null +++ b/data/img/material/white/plus.svg @@ -0,0 +1,56 @@ + + + + + + image/svg+xml + + + + + + + + + diff --git a/data/img/preview/animatedUsage.gif b/data/img/preview/animatedUsage.gif index a9b97955..16db9742 100644 Binary files a/data/img/preview/animatedUsage.gif and b/data/img/preview/animatedUsage.gif differ diff --git a/data/rpm/flameshot.spec b/data/rpm/flameshot.spec index b7e619b3..7fa9439d 100644 --- a/data/rpm/flameshot.spec +++ b/data/rpm/flameshot.spec @@ -1,5 +1,5 @@ Name: flameshot -Version: 0.8.1 +Version: 0.8.3 Release: 1%{?dist} Summary: Powerful yet simple to use screenshot software Summary(eu-ES): Potente pero simple de usar software de capturas @@ -95,6 +95,8 @@ make %{?_smp_mflags} %{_datadir}/icons/hicolor %changelog +* Mon Sep 19 2020 Jeremy Borgman - 0.8.3-1 +- Updated for flameshot 0.8.3 * Mon Sep 07 2020 Zetao Yang - 0.8.0-1 - Updated for flameshot 0.8.0 - More details, please see https://flameshot.js.org/#/changelog?id=v080 diff --git a/data/snap/local/launchers/README.md b/data/snap/local/launchers/README.md deleted file mode 100644 index 3c070409..00000000 --- a/data/snap/local/launchers/README.md +++ /dev/null @@ -1,16 +0,0 @@ -# /snap/local/launchers - -Here are the launchers, or wrapper programs to deal with some runtime-fixable -problems for the snapped applications, like setting proper environmental -variables in snap. - -In convention launchers are named _something_-launch, for dealing certain -problem with _something_, and usually can be called in a stacked manner to -consolidate their modifications. - -```yaml -apps: - _app_name_: - command: foo-launch bar-launch _app_command_ -``` - diff --git a/data/snap/local/launchers/flameshot-launch b/data/snap/local/launchers/flameshot-launch deleted file mode 100644 index 3045d0e9..00000000 --- a/data/snap/local/launchers/flameshot-launch +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env bash - -# This is the maintainence launcher for the snap, make necessary runtime -# environment changes to make the snap work here. You may also insert security -# confinement/deprecation/obsoletion notice of the snap here. - -set \ - -o errexit \ - -o errtrace \ - -o nounset \ - -o pipefail - -# gtk-common-themes support -export QT_QPA_PLATFORMTHEME=gtk3 -# Correct the TMPDIR path for Chromium Framework/Electron to -# ensure libappindicator has readable resources -export TMPDIR=$XDG_RUNTIME_DIR -# Coerce XDG_CURRENT_DESKTOP to Unity so that App Indicators -# are used and do not fall back to Notification Area applets -# or disappear completely. -export XDG_CURRENT_DESKTOP=Unity - -# Finally run the next part of the command chain -exec "${@}" diff --git a/data/snap/snapcraft.yaml b/data/snap/snapcraft.yaml index d6583893..9c372cb1 100644 --- a/data/snap/snapcraft.yaml +++ b/data/snap/snapcraft.yaml @@ -20,14 +20,14 @@ architectures: apps: flameshot: - adapter: full - command: usr/bin/flameshot + command: flameshot desktop: usr/share/applications/flameshot.desktop extensions: - kde-neon environment: DISABLE_WAYLAND: 1 XDG_DATA_DIRS: $SNAP/share:$XDG_DATA_DIRS + QT_QPA_PLATFORMTHEME: gtk3 slots: [dbus-flameshot] plugs: - kde-frameworks-5-plug @@ -38,6 +38,7 @@ apps: - opengl - pulseaudio - wayland + - unity7 - x11 parts: diff --git a/data/translations/Internationalization_cs.ts b/data/translations/Internationalization_cs.ts index 2598ecda..4e2b0695 100644 --- a/data/translations/Internationalization_cs.ts +++ b/data/translations/Internationalization_cs.ts @@ -4,12 +4,12 @@ AppLauncher - + App Launcher Spouštěč programů - + Choose an app to open the capture Vyberte program pro otevření zachycené obrazovky @@ -32,18 +32,18 @@ Ponechat otevřené po výběru - - + + Error Chyba - + Unable to write in Nelze zapsat - + Unable to launch in terminal. Nelze spustit v terminálu. @@ -51,12 +51,12 @@ ArrowTool - + Arrow Šipka - + Set the Arrow as the paint tool Nastavit šipku jako malovací nástroj @@ -77,58 +77,58 @@ <b>Capture Mode</b> - + <b>Režim zachytávání</b> Rectangular Region - + Pravouhlá oblast Full Screen (All Monitors) - + Celá obrazovka (všechny monitory) No Delay - + Bez zpoždění second - + sekunda seconds - + sekund Take new screenshot - + Zachytit nový snímek Area: - + Oblast: Delay: - + Zpoždění: CaptureWidget - + Unable to capture screen Nelze zachytit obrazovku - + Select an area with the mouse, or press Esc to exit. Press Enter to capture the screen. Press Right Click to show the color picker. @@ -141,33 +141,33 @@ Použijte kolečko myši pro změnu tloušťky nástroje. Stiskněte mezerník pro otevření postranního panelu. - + Tool Settings - + Nastavení nástrojů CircleCountTool - + Circle Counter - + Kruhové počítadlo - + Add an autoincrementing counter bubble - + Přidá bublinu s číslem (vždy zvýšeným o jednotku) CircleTool - + Circle Kruh - + Set the Circle as the paint tool Nastavit kruh jako malovací nástroj @@ -180,64 +180,49 @@ Stiskněte mezerník pro otevření postranního panelu. Nastavení - + Interface Rozhraní - + Filename Editor Editor názvů souborů - + General Obecné - - - Shortcuts - - - - - Storage - - Controller - + &Take Screenshot &Zachytit obrazovku - + &Open Launcher - + &Otevřít spouštěč - + &Configuration &Nastavení - + &About - - - - - &Latest Uploads - + O &programu &Information &Informace - + &Quit &Ukončit @@ -245,12 +230,12 @@ Stiskněte mezerník pro otevření postranního panelu. CopyTool - + Copy Kopírovat - + Copy the selection into the clipboard Kopírovat výběr do schránky @@ -258,7 +243,7 @@ Stiskněte mezerník pro otevření postranního panelu. DBusUtils - + Unable to connect via DBus Nelze se spojit přes DBus @@ -266,12 +251,12 @@ Stiskněte mezerník pro otevření postranního panelu. ExitTool - + Exit &Opustit - + Leave the capture screen Opustit zachytávací obrazovku @@ -279,47 +264,47 @@ Stiskněte mezerník pro otevření postranního panelu. FileNameEditor - + Edit the name of your captures: Upravit název zachyceného: - + Edit: Upravit: - + Preview: Náhled: - + Save Uložit - + Saves the pattern Uloží vzor - + Reset Nastavit znovu - + Restores the saved pattern Obnoví uložený vzor - + Clear Vyprázdnit - + Deletes the name Smaže název @@ -327,391 +312,215 @@ Stiskněte mezerník pro otevření postranního panelu. GeneneralConf - - + + Import Zavést - - - - + + + + Error Chyba - + Unable to read file. Nelze přečíst soubor. - - + + Unable to write file. Nelze zapsat soubor. - + Save File Uložit soubor - + Confirm Reset Potvrdit vrácení na výchozí - + Are you sure you want to reset the configuration? Opravdu chcete nastavení vrátit do výchozího stavu? - + Show help message Ukázat zprávu s nápovědou - + Show the help message at the beginning in the capture mode. Ukázat zprávu s nápovědou na začátku v režimu zachytávání. - + Show the side panel button - + Ukázat tlačítko na postranním panelu - + Show the side panel toggle button in the capture mode. - + V režimu zachytávání ukazovat tlačítko na postranním panelu. - - + + Show desktop notifications Ukázat oznámení - + Show tray icon Ukázat ikonu v oznamovací oblasti panelu - + Show the systemtray icon Ukázat ikonu v oznamovací oblasti panelu - + Configuration File Soubor s nastavením - + Export Vyvést - + Reset Nastavit znovu - + Launch at startup Spustit při spuštění - - + Launch Flameshot Spustit Flameshot - - Show welcome message on launch - + + Close after capture + Zavřít po vytvoření snímku - Close application after capture - - - - Close after taking a screenshot - + Zavřít po vytvoření snímku obrazovky - + Copy URL after upload - + Kopírovat adresu (URL) po nahrání - + Copy URL and close window after upload - + Po nahrání zkopírovat URL a zavřít okno - + Save image after copy - + Uložit obrázek po kopírování - + Save image file after copying it - + Uložit obrázek se souborem po jeho zkopírování - + Save Path - + Cesta pro ukládání - - + Change... - + Změnit... - - - Copy file path after save - - - - - Select default path for Screenshots - - - - - Use fixed path for screenshots to save - - - - + Choose a Folder - + Vyberte složku - + Unable to write to directory. - - - - - HistoryWidget - - - Latest Uploads - - - - - Screenshots history is empty - - - - - Copy URL - Kopírovat adresu (URL) - - - - URL copied to clipboard. - Adresa (URL) zkopírována do schránky. - - - - Open in browser - - - - - ImgS3Uploader - - - Upload image to S3 - - - - - Uploading Image - Nahrává se obrázek - - - - Delete image from S3 - - - - - Deleting image... - - - - - URL copied to clipboard. - Adresa (URL) zkopírována do schránky. - - - - Unable to remove screenshot from the remote storage. - - - - - Network error - - - - - Possibly it doesn't exist anymore - - - - - Do you want to remove screenshot from local history anyway? - - - - - Remove screenshot from history? - - - - - S3 Creds URL is not found in your configuration file - - - - - ImgS3UploaderTool - - - Upload the selection to S3 bucket - - - - - ImgUploader - - - Upload image to S3 - - - - - - Uploading Image - Nahrává se obrázek - - - - Upload image - - - - - Unable to open the URL. - Nelze otevřít adresu (URL). - - - - URL copied to clipboard. - Adresa (URL) zkopírována do schránky. - - - - Screenshot copied to clipboard. - Snímek obrazovky zkopírován do schránky. - - - - Deleting image... - - - - - Copy URL - Kopírovat adresu (URL) - - - - Open URL - Otevřít adresu (URL) - - - - Delete image - Smazat obrázek - - - - Image to Clipboard. - Obrázek do schránky. - - - - ImgUploaderTool - - - Imgage uploader tool - + Nelze zapsat do adresáře. ImgurUploader - + Upload to Imgur Nahrát do Imgur + Uploading Image - Nahrává se obrázek + Nahrává se obrázek + Copy URL - Kopírovat adresu (URL) + Kopírovat adresu (URL) + Open URL - Otevřít adresu (URL) + Otevřít adresu (URL) + Delete image - Smazat obrázek + Smazat obrázek + Image to Clipboard. - Obrázek do schránky. + Obrázek do schránky. - + + Unable to open the URL. Nelze otevřít adresu (URL). + URL copied to clipboard. - Adresa (URL) zkopírována do schránky. + Adresa (URL) zkopírována do schránky. + Screenshot copied to clipboard. - Snímek obrazovky zkopírován do schránky. + Snímek obrazovky zkopírován do schránky. ImgurUploaderTool - + Image Uploader Nahrávač obrázků - + Upload the selection to Imgur Nahrát výběr do Imgur @@ -723,86 +532,106 @@ Stiskněte mezerník pro otevření postranního panelu. About O programu - - Right Click - Klepnutí pravým tlačítkem myši - - - Mouse Wheel - Kolečko myši - - - Move selection 1px - Posunout výběr o 1 px - - - Resize selection 1px - Změnit velikost výběru o 1 px - - - Quit capture - Ukončit zachytávání obrazovky - - - Copy to clipboard - Kopírovat do schránky - - - Save selection as a file - Uložit výběr jako soubor - - - Undo the last modification - Zrušit poslední změnu - - - Toggle visibility of sidebar with options of the selected tool - Přepnout viditelnost postranního panelu s volbali pro vybraný nástroj - - - Show color picker - Ukázat volič barev - - - Change the tool's thickness - Změnit tloušťku nástroje - - - Available shortcuts in the screen capture mode. - Dostupné zkratky v režimu zachytávání obrazovky. - - - Key - Klávesa - - - Description - Popis - + SPACEBAR + MEZERNÍK + + + + Right Click + Klepnutí pravým tlačítkem myši + + + + Mouse Wheel + Kolečko myši + + + + Move selection 1px + Posunout výběr o 1 px + + + + Resize selection 1px + Změnit velikost výběru o 1 px + + + + Quit capture + Ukončit zachytávání obrazovky + + + + Copy to clipboard + Kopírovat do schránky + + + + Save selection as a file + Uložit výběr jako soubor + + + + Undo the last modification + Zrušit poslední změnu + + + + Toggle visibility of sidebar with options of the selected tool + Přepnout viditelnost postranního panelu s volbali pro vybraný nástroj + + + + Show color picker + Ukázat volič barev + + + + Change the tool's thickness + Změnit tloušťku nástroje + + + + Available shortcuts in the screen capture mode. + Dostupné zkratky v režimu zachytávání obrazovky. + + + + Key + Klávesa + + + + Description + Popis + + + <u><b>License</b></u> <u><b>Licence</b></u> - + <u><b>Version</b></u> <u><b>Verze</b></u> + <u><b>Shortcuts</b></u> - <u><b>Zkratky</b></u> + <u><b>Zkratky</b></u> LineTool - + Line Čára - + Set the Line as the paint tool Nastavit čáru jako malovací nástroj @@ -810,12 +639,12 @@ Stiskněte mezerník pro otevření postranního panelu. MarkerTool - + Marker Zvýrazňovač - + Set the Marker as the paint tool Nastavit zvýrazňovač jako malovací nástroj @@ -823,12 +652,12 @@ Stiskněte mezerník pro otevření postranního panelu. MoveTool - + Move Posunout - + Move the selection area Posunout oblast výběru @@ -836,12 +665,12 @@ Stiskněte mezerník pro otevření postranního panelu. PencilTool - + Pencil Tužka - + Set the Pencil as the paint tool Nastavit tužku jako malovací nástroj @@ -849,12 +678,12 @@ Stiskněte mezerník pro otevření postranního panelu. PinTool - + Pin Tool Přišpendlení - + Pin image on the desktop Přišpendlit obrázek na plochu @@ -862,33 +691,33 @@ Stiskněte mezerník pro otevření postranního panelu. PixelateTool - + Pixelate - + Rozčtverečkování - + Set Pixelate as the paint tool - + Nastaviť rozčtverečkování jako nástroj pro úpravy QObject - + Save Error Chyba při ukládání - - + + Capture saved as Zachycená obrazovka uložena jako - + Capture saved to clipboard. - + Snímek uložen do schránky. @@ -896,132 +725,122 @@ Stiskněte mezerník pro otevření postranního panelu. Zachycená obrazovka uložena do schránky - - + + Error trying to save as Chyba při ukládání jako - - - Save screenshot - - - - - Capture is saved and copied to the clipboard as - - - - - - + + + + Unable to connect via DBus Nelze se spojit přes DBus Powerful yet simple to use screenshot software. - + Mocný, ale zároveň též jednoduchý program na zachytávání obrazovky. See - + Podívejte se Capture the entire desktop. - + Zachytit celou plochu. Open the capture launcher. - + Otevřít spouštěč zachytávání. - + Start a manual capture in GUI mode. - + Spustit ruční zachytávání v režimu uživatelského rozhraní. - + Configure - + Nastavit - + Capture a single screen. - + Zachytit jednu obrazovku. - + Path where the capture will be saved - + Cesta, kam bude snímek uložen + + + + Save the capture to the clipboard + Uložit snímek do schránky - Save the capture to the clipboard - - - - Delay time in milliseconds - + Čas zpoždění v milisekundách - + Set the filename pattern - + Nastavit vzor pro pojmenování souborů - + Enable or disable the trayicon - + Povolit nebo zakázat ikonu v oznamovací oblasti panelu - + Enable or disable run at startup - + Povolit nebo zakázat spuštění při spuštění systému + + + + Show the help message in the capture mode + Ukazovat nápovědu v režimu zachytávání - Show the help message in the capture mode - + Define the main UI color + Nastavit barvu hlavního uživatelského rozhraní - Define the main UI color - + Define the contrast UI color + Nastavit kontrastní barvu uživatelského rozhraní - - Define the contrast UI color - + + Print raw PNG capture + Zobrazit nezpracovaný PNG snímek + + + + Define the screen to capture + Nastavit monitor, který bude zachytáván - Print raw PNG capture - - - - - Define the screen to capture - - - - default: screen containing the cursor - + výchozí: obrazovka, na které je ukazovátko myši - + Screen number - + Číslo obrazovky - + Invalid color, this flag supports the following formats: - #RGB (each of R, G, and B is a single hex digit) - #RRGGBB @@ -1029,164 +848,89 @@ Stiskněte mezerník pro otevření postranního panelu. - #RRRRGGGGBBBB - Named colors like 'blue' or 'red' You may need to escape the '#' sign as in '\#FFF' - + Neplatná barva, tento přepínač podporuje následující formáty: +- #RGB (každá ze složek R, G a B je samostatným hexadecimálním číslem) +- #RRGGBB +- #RRRGGGBBB +- #RRRRGGGGBBBB +- anglické názvy barev jako 'blue' nebo 'red' +Možná budete muset napsat před '#' opačné (obrácené) lomítko, tedy '\#FFF' - + Invalid delay, it must be higher than 0 - + Neplatné zpoždění, musí být vyšší než 0 - + Invalid screen number, it must be non negative - + Neplatné číslo obrazovky, může být jen kladné - + Invalid path, it must be a real path in the system - + Neplatná cesta, musí se jednat o skutečnou cestu v systému - + Invalid value, it must be defined as 'true' or 'false' - + Neplatná hodnota, musí být vymezenná jako 'pravda' nebo 'nepravda' - + Error Chyba - + Unable to write in Nelze zapsat Options - + Volby - + Arguments - + Argumenty - + arguments - + argumenty - + Usage - + Použití - + options - + volby - - Per default runs Flameshot in the background and adds a tray icon for configuration. - + + Per default runs Flameshot in the background and adds a tray icon for configuration. + Obvykle se Flameshot spouští na pozadí a přidává do oznamovací oblasti panelu ikonu, kterou je ho možné ovládat. - + URL copied to clipboard. - Adresa (URL) zkopírována do schránky. - - - - Hi, I'm already running! -You can find me in the system tray. - - - - - Hello, I'm here! Click icon in the tray to take a screenshot or click with a right button to see more options. - - - - - Toggle side panel - - - - - Resize selection left 1px - - - - - Resize selection right 1px - - - - - Resize selection up 1px - - - - - Resize selection down 1px - - - - - Move selection left 1px - - - - - Move selection right 1px - - - - - Move selection up 1px - - - - - Move selection down 1px - - - - - Quit capture - Ukončit zachytávání obrazovky - - - - Screenshot history - - - - - Capture screen - - - - - Show color picker - Ukázat volič barev - - - - Change the tool's thickness - Změnit tloušťku nástroje + Adresa (URL) zkopírována do schránky. RectangleTool - + Rectangle Obdélník - + Set the Rectangle as the paint tool Nastavit obdélník jako malovací nástroj @@ -1194,12 +938,12 @@ You can find me in the system tray. RedoTool - + Redo Znovu - + Redo the next modification Znovu udělat další změnu @@ -1207,12 +951,12 @@ You can find me in the system tray. SaveTool - + Save Uložit - + Save the capture Uložit zachycenou obrazovku @@ -1220,7 +964,7 @@ You can find me in the system tray. ScreenGrabber - + Unable to capture screen Nelze zachytit obrazovku @@ -1228,76 +972,35 @@ You can find me in the system tray. SelectionTool - + Rectangular Selection Obdélníkový výběr - + Set Selection as the paint tool Nastavit výběr jako malovací nástroj - - SetShortcutDialog - - - Set Shortcut - - - - - Enter new shortcut to change - - - - - Press Esc to cancel or Backspace to disable the keyboard shortcut. - - - - - ShortcutsWidget - - - Hot Keys - - - - - Available shortcuts in the screen capture mode. - Dostupné zkratky v režimu zachytávání obrazovky. - - - - Description - Popis - - - - Key - Klávesa - - SidePanelWidget - + Active color: Nynější barva: - + Press ESC to cancel Stiskněte Esc pro zrušení - + Grab Color Uchopit barvu - + Active thickness: Nynější tloušťka: @@ -1305,12 +1008,12 @@ You can find me in the system tray. SizeIndicatorTool - + Selection Size Indicator Ukazatel velikosti výběru - + Show the dimensions of the selection (X Y) Ukázat rozměry výběru (X Y) @@ -1318,107 +1021,107 @@ You can find me in the system tray. StrftimeChooserWidget - + Century (00-99) Století (00-99) - + Year (00-99) Rok (00-99) - + Year (2000) Rok (2000) - + Month Name (jan) Název měsíce (led) - + Month Name (january) Název měsíce (leden) - + Month (01-12) Měsíc (01-12) - + Week Day (1-7) Den v týdnu (1-7) - + Week (01-53) Týden (01-53) - + Day Name (mon) Název dne (pon) - + Day Name (monday) Název dne (pondělí) - + Day (01-31) Den (01-31) - + Day of Month (1-31) Den v měsíci (1-31) - + Day (001-366) Den v roce (001-366) - + Time (%H-%M-%S) Čas (%H-%M-%S) - + Time (%H-%M) Čas (%H-%M) - + Hour (00-23) Hodina (00-23) - + Hour (01-12) Hodina (01-12) - + Minute (00-59) Minuta (00-59) - + Second (00-59) Sekunda (00-59) - + Full Date (%m/%d/%y) Celé datum (%m/%d/%y) - + Full Date (%Y-%m-%d) Celé datum (%Y-%m-%d) @@ -1457,12 +1160,12 @@ You can find me in the system tray. TextTool - + Text Text - + Add text to your capture Přidat text do zachyceného @@ -1475,32 +1178,32 @@ You can find me in the system tray. Editor barvy rozhraní - + Change the color moving the selectors and see the changes in the preview buttons. Měňte barvu pohybováním voličů a dívejte se na změny v náhledových tlačítcích. - + Select a Button to modify it Vybrat tlačítko pro jeho změnění - + Main Color Hlavní barva - + Click on this button to set the edition mode of the main color. Klepnout na toto tlačítko pro stanovení režimu upravení hlavní barvy. - + Contrast Color Kontrastní barva - + Click on this button to set the edition mode of the contrast color. Klepnout na toto tlačítko pro stanovení režimu upravení kontrastní barvy. @@ -1508,61 +1211,38 @@ You can find me in the system tray. UndoTool - + Undo Zpět - + Undo the last modification Zrušit poslední změnu - - UploadStorageConfig - - - Upload storage - - - - - Imgur storage - - - - - S3 storage (require config.ini file with s3 credentials) - - - UtilityPanel - + Close - - - - - Hide - + Zavřít VisualsEditor - + Opacity of area outside selection: Neprůhlednost oblasti vně výběru: - + Button Selection Tlačítko výběru - + Select All Vybrat vše diff --git a/data/translations/Internationalization_pt_BR.ts b/data/translations/Internationalization_pt_BR.ts index 6071b979..0704240d 100644 --- a/data/translations/Internationalization_pt_BR.ts +++ b/data/translations/Internationalization_pt_BR.ts @@ -4,12 +4,12 @@ AppLauncher - + App Launcher Iniciar app - + Choose an app to open the capture Escolha uma aplicação para abrir a captura @@ -32,18 +32,18 @@ Manter aberto após seleção - - + + Error Erro - + Unable to write in Não é possível escrever em - + Unable to launch in terminal. Não foi possível abrir no terminal. @@ -51,12 +51,12 @@ ArrowTool - + Arrow Flecha - + Set the Arrow as the paint tool Usar a Flecha como ferramenta de desenho @@ -77,58 +77,58 @@ <b>Capture Mode</b> - + <b>Modo Captura</b> Rectangular Region - + Região Retangular Full Screen (All Monitors) - + Tela Inteira (Todos os Monitores) No Delay - + Sem atraso second - + segundo seconds - + segundos Take new screenshot - + Tirar uma nova screenshot Area: - + Area: Delay: - + Atraso: CaptureWidget - + Unable to capture screen Não foi possível capturar a tela - + Select an area with the mouse, or press Esc to exit. Press Enter to capture the screen. Press Right Click to show the color picker. @@ -141,33 +141,33 @@ Use a roda do mouse para aumentar a grossura do pincel. Pressione espaço abrir o painel lateral. - + Tool Settings - + Configurações da ferramenta CircleCountTool - + Circle Counter - + Contorno do círculo - + Add an autoincrementing counter bubble - + Adicionar uma bolha de incremento automático CircleTool - + Circle Círculo - + Set the Circle as the paint tool Usar o Círculo como ferramenta de desenho @@ -180,64 +180,49 @@ Pressione espaço abrir o painel lateral. Configuração - + Interface Interface - + Filename Editor Editor de nome de arquivo - + General Geral - - - Shortcuts - - - - - Storage - - Controller - + &Take Screenshot &Tirar Screenshot - + &Open Launcher - + &Abrir carregador - + &Configuration &Configuração - + &About - - - - - &Latest Uploads - + &Sobre &Information &Informações - + &Quit &Sair @@ -245,12 +230,12 @@ Pressione espaço abrir o painel lateral. CopyTool - + Copy Copiar - + Copy the selection into the clipboard Copia a seleção para a área de transferência @@ -258,7 +243,7 @@ Pressione espaço abrir o painel lateral. DBusUtils - + Unable to connect via DBus Não foi possível conectar via DBus @@ -266,12 +251,12 @@ Pressione espaço abrir o painel lateral. ExitTool - + Exit Sair - + Leave the capture screen Sair da ferramenta de captura @@ -279,47 +264,47 @@ Pressione espaço abrir o painel lateral. FileNameEditor - + Edit the name of your captures: Edite o nome das suas capturas: - + Edit: Editar: - + Preview: Preview: - + Save Salvar - + Saves the pattern Salva o padrão - + Reset Reiniciar - + Restores the saved pattern Restaura o padrão salvo - + Clear Limpar - + Deletes the name Deleta o nome @@ -327,391 +312,215 @@ Pressione espaço abrir o painel lateral. GeneneralConf - - + + Import Importar - - - - + + + + Error Erro - + Unable to read file. Não foi possível ler o arquivo. - - + + Unable to write file. Não foi possível escrever no arquivo. - + Save File Salvar Arquivo - + Confirm Reset Confirmar Reset - + Are you sure you want to reset the configuration? Tem certeza que deseja resetar a configuração? - + Show help message Mostrar mensagem de ajuda - + Show the help message at the beginning in the capture mode. Mostrar mensagem de ajuda no início do modo de captura. - + Show the side panel button - + Mostrar botão no painel lateral - + Show the side panel toggle button in the capture mode. - + Mostrar altenador do painel lateral. - - + + Show desktop notifications Mostrar notificações de Desktop - + Show tray icon Mostrar ícone de tray - + Show the systemtray icon Mosrar ícone na barra de aplicações - + Configuration File Arquivo de Configurações - + Export Exportar - + Reset Reset - + Launch at startup Iniciar junto com o sistema - - + Launch Flameshot Iniciar Flameshot - - Show welcome message on launch - + + Close after capture + Fechar após captura - Close application after capture - - - - Close after taking a screenshot - + Fechar após tirar uma screenshot - + Copy URL after upload - + Copiar URL após upload - + Copy URL and close window after upload - + Copiar URL e fechar janela após upload - + Save image after copy - + Salvar imagem após copiar - + Save image file after copying it - + Salvar imagem após copiar - + Save Path - + Salvar Caminho - - + Change... - + Alterar... - - - Copy file path after save - - - - - Select default path for Screenshots - - - - - Use fixed path for screenshots to save - - - - + Choose a Folder - + Selecione uma pasta - + Unable to write to directory. - - - - - HistoryWidget - - - Latest Uploads - - - - - Screenshots history is empty - - - - - Copy URL - Copiar URL - - - - URL copied to clipboard. - URL copiada para a área de transferência. - - - - Open in browser - - - - - ImgS3Uploader - - - Upload image to S3 - - - - - Uploading Image - Upando Imagem - - - - Delete image from S3 - - - - - Deleting image... - - - - - URL copied to clipboard. - URL copiada para a área de transferência. - - - - Unable to remove screenshot from the remote storage. - - - - - Network error - - - - - Possibly it doesn't exist anymore - - - - - Do you want to remove screenshot from local history anyway? - - - - - Remove screenshot from history? - - - - - S3 Creds URL is not found in your configuration file - - - - - ImgS3UploaderTool - - - Upload the selection to S3 bucket - - - - - ImgUploader - - - Upload image to S3 - - - - - - Uploading Image - Upando Imagem - - - - Upload image - - - - - Unable to open the URL. - Não foi possível abrir a URL. - - - - URL copied to clipboard. - URL copiada para a área de transferência. - - - - Screenshot copied to clipboard. - Screenshot copiada para a área de transferência. - - - - Deleting image... - - - - - Copy URL - Copiar URL - - - - Open URL - Abrir URL - - - - Delete image - Deletar imagem - - - - Image to Clipboard. - Imagem na área de transferência. - - - - ImgUploaderTool - - - Imgage uploader tool - + Não foi possível escrever no diretório. ImgurUploader - + Upload to Imgur Upload no Imgur + Uploading Image - Upando Imagem + Upando Imagem + Copy URL - Copiar URL + Copiar URL + Open URL - Abrir URL + Abrir URL + Delete image - Deletar imagem + Deletar imagem + Image to Clipboard. - Imagem na área de transferência. + Imagem na área de transferência. - + + Unable to open the URL. Não foi possível abrir a URL. + URL copied to clipboard. - URL copiada para a área de transferência. + URL copiada para a área de transferência. + Screenshot copied to clipboard. - Screenshot copiada para a área de transferência. + Screenshot copiada para a área de transferência. ImgurUploaderTool - + Image Uploader Uploader de imagens - + Upload the selection to Imgur Upa a seleção no Imgur @@ -723,86 +532,106 @@ Pressione espaço abrir o painel lateral. About Sobre - - Right Click - Botão Direito - - - Mouse Wheel - Roda do mouse - - - Move selection 1px - Move a seleção em 1px - - - Resize selection 1px - Redimensiona a seleção em 1px - - - Quit capture - Sair da captura - - - Copy to clipboard - Copiar para área de transferência - - - Save selection as a file - Salvar seleção em um arquivo - - - Undo the last modification - Desfazer última modificação - - - Toggle visibility of sidebar with options of the selected tool - Alterar barra lateral com as opções da ferramenta selecionada - - - Show color picker - Mostrar seletor de cores - - - Change the tool's thickness - Mudar a grossura do pincel - - - Available shortcuts in the screen capture mode. - Atalhos disponívels na tela de captura. - - - Key - Tecla - - - Description - Descrição - + SPACEBAR + Barra de Espaço + + + + Right Click + Botão Direito + + + + Mouse Wheel + Roda do mouse + + + + Move selection 1px + Move a seleção em 1px + + + + Resize selection 1px + Redimensiona a seleção em 1px + + + + Quit capture + Sair da captura + + + + Copy to clipboard + Copiar para área de transferência + + + + Save selection as a file + Salvar seleção em um arquivo + + + + Undo the last modification + Desfazer última modificação + + + + Toggle visibility of sidebar with options of the selected tool + Alterar barra lateral com as opções da ferramenta selecionada + + + + Show color picker + Mostrar seletor de cores + + + + Change the tool's thickness + Mudar a grossura do pincel + + + + Available shortcuts in the screen capture mode. + Atalhos disponívels na tela de captura. + + + + Key + Tecla + + + + Description + Descrição + + + <u><b>License</b></u> <u><b>Licença</b></u> - + <u><b>Version</b></u> <u><b>Versão</b></u> + <u><b>Shortcuts</b></u> - <u><b>Atalhos</b></u> + <u><b>Atalhos</b></u> LineTool - + Line Linha - + Set the Line as the paint tool Usar a Linha como ferramenta de desenho @@ -810,12 +639,12 @@ Pressione espaço abrir o painel lateral. MarkerTool - + Marker Marcador - + Set the Marker as the paint tool Usar o marcador como ferramenta de desenho @@ -823,12 +652,12 @@ Pressione espaço abrir o painel lateral. MoveTool - + Move Mover - + Move the selection area Mover a área de seleção @@ -836,12 +665,12 @@ Pressione espaço abrir o painel lateral. PencilTool - + Pencil Pincel - + Set the Pencil as the paint tool Usar o Lápis como ferramenta de desenho @@ -849,12 +678,12 @@ Pressione espaço abrir o painel lateral. PinTool - + Pin Tool Ferramenta de fixação - + Pin image on the desktop Fixar imagem no desktop @@ -862,33 +691,33 @@ Pressione espaço abrir o painel lateral. PixelateTool - + Pixelate - + Pixelar - + Set Pixelate as the paint tool - + Usar Pixelar na ferramenta de pintura QObject - + Save Error Erro ao salvar - - + + Capture saved as Captura salva como - + Capture saved to clipboard. - + Capturar Salvar na Área de Trabalho. @@ -896,132 +725,122 @@ Pressione espaço abrir o painel lateral. Captura salva na área de transferência - - + + Error trying to save as Erro ao tentar salvar como - - - Save screenshot - - - - - Capture is saved and copied to the clipboard as - - - - - - + + + + Unable to connect via DBus Não foi possível conectar via DBus Powerful yet simple to use screenshot software. - + Poderoso, porém simples de utilizar software de screenshot. See - + Veja Capture the entire desktop. - + Capturar toda tela. Open the capture launcher. - + Abrir a ferramente de captura. - + Start a manual capture in GUI mode. - + Iniciar uma captura manual no modo GUI. - + Configure - + Configurar - + Capture a single screen. - + Capturar apenas uma tela. - + Path where the capture will be saved - + Caminho para salvar a captura + + + + Save the capture to the clipboard + Salvar a captura na Área de Transferência - Save the capture to the clipboard - - - - Delay time in milliseconds - + Tempo do atraso em milissegundos - + Set the filename pattern - + Salvar o padrão do nome do arquivo - + Enable or disable the trayicon - + Ativar ou desativar o ícone de bandeja - + Enable or disable run at startup - + Ativar ou desativar rodar na inicialização + + + + Show the help message in the capture mode + Mostrar a mensagem de ajuda no modo captura - Show the help message in the capture mode - + Define the main UI color + Definir a cor principal - Define the main UI color - + Define the contrast UI color + Definir o contrasto da cor - - Define the contrast UI color - + + Print raw PNG capture + Mostrar captura PNG "crua" + + + + Define the screen to capture + Definir a tela para captura - Print raw PNG capture - - - - - Define the screen to capture - - - - default: screen containing the cursor - + padrão: tela contendo o cursor - + Screen number - + Número da tela - + Invalid color, this flag supports the following formats: - #RGB (each of R, G, and B is a single hex digit) - #RRGGBB @@ -1029,164 +848,89 @@ Pressione espaço abrir o painel lateral. - #RRRRGGGGBBBB - Named colors like 'blue' or 'red' You may need to escape the '#' sign as in '\#FFF' - + Cor inválida, formatos suportados: +- #RGB (sendo R, G, e B simbolos hexadecimal simples) +- #RRGGBB +- #RRRGGGBBB +- #RRRRGGGGBBBB +- Nome de cores como 'azul' ou 'vermelho' +Você pode ter que invalidar o sinal '#', por exemplo '\#FFF' - + Invalid delay, it must be higher than 0 - + Atraso inválido, deve ser maior que 0 - + Invalid screen number, it must be non negative - + Número de tela inválido, deve ser maior que zero - + Invalid path, it must be a real path in the system - + Caminho inválido, deve ser um caminho real no sistema - + Invalid value, it must be defined as 'true' or 'false' - + Valor inválido, deve ser definido como 'verdadeiro' ou 'falso' - + Error Erro - + Unable to write in Não foi possível escrever em Options - + Opções - + Arguments - + Argumentos - + arguments - + argumentos - + Usage - + Uso - + options - + opções - - Per default runs Flameshot in the background and adds a tray icon for configuration. - + + Per default runs Flameshot in the background and adds a tray icon for configuration. + Por padrão roda Flameshot no background e adiciona um ícone na bandeija para configuração. - + URL copied to clipboard. - URL copiada para a área de transferência. - - - - Hi, I'm already running! -You can find me in the system tray. - - - - - Hello, I'm here! Click icon in the tray to take a screenshot or click with a right button to see more options. - - - - - Toggle side panel - - - - - Resize selection left 1px - - - - - Resize selection right 1px - - - - - Resize selection up 1px - - - - - Resize selection down 1px - - - - - Move selection left 1px - - - - - Move selection right 1px - - - - - Move selection up 1px - - - - - Move selection down 1px - - - - - Quit capture - Sair da captura - - - - Screenshot history - - - - - Capture screen - - - - - Show color picker - Mostrar seletor de cores - - - - Change the tool's thickness - Mudar a grossura do pincel + URL copiada para a área de transferência. RectangleTool - + Rectangle Retângulo - + Set the Rectangle as the paint tool Usar o Retângulo como ferramenta de desenho @@ -1194,12 +938,12 @@ You can find me in the system tray. RedoTool - + Redo Refazer - + Redo the next modification Refazer última modificação @@ -1207,12 +951,12 @@ You can find me in the system tray. SaveTool - + Save Salvar - + Save the capture Salvar a captura @@ -1220,7 +964,7 @@ You can find me in the system tray. ScreenGrabber - + Unable to capture screen Não foi possível capturar a tela @@ -1228,76 +972,35 @@ You can find me in the system tray. SelectionTool - + Rectangular Selection Seleção Retangular - + Set Selection as the paint tool Usar o Selecionador como ferramenta de desenho - - SetShortcutDialog - - - Set Shortcut - - - - - Enter new shortcut to change - - - - - Press Esc to cancel or Backspace to disable the keyboard shortcut. - - - - - ShortcutsWidget - - - Hot Keys - - - - - Available shortcuts in the screen capture mode. - Atalhos disponívels na tela de captura. - - - - Description - Descrição - - - - Key - Tecla - - SidePanelWidget - + Active thickness: Grossura: - + Active color: Cor: - + Press ESC to cancel Presione Esc para cancelar - + Grab Color Usar Cor @@ -1305,12 +1008,12 @@ You can find me in the system tray. SizeIndicatorTool - + Selection Size Indicator Indicador do Tamanho da Seleção - + Show the dimensions of the selection (X Y) Mostra as dimenções da seleção (X Y) @@ -1318,107 +1021,107 @@ You can find me in the system tray. StrftimeChooserWidget - + Century (00-99) Século (00-99) - + Year (00-99) Ano (00-99) - + Year (2000) Ano (2000) - + Month Name (jan) Nome do mês (jan) - + Month Name (january) Nome do mês (janeiro) - + Month (01-12) Mês (01-12) - + Week Day (1-7) Dia da semana (1-7) - + Week (01-53) Semana (01-53) - + Day Name (mon) Nome do dia (seg) - + Day Name (monday) Nome do dia (segunda) - + Day (01-31) Dia (01-31) - + Day of Month (1-31) Dia do Mês (1-31) - + Day (001-366) Dia (001-366) - + Time (%H-%M-%S) Tempo (%H-%M-%S) - + Time (%H-%M) Tempo (%H-%M) - + Hour (00-23) Hora (00-23) - + Hour (01-12) Hora (01-12) - + Minute (00-59) Minuto (00-59) - + Second (00-59) Segundo (00-59) - + Full Date (%m/%d/%y) Data Completa (%m/%d/%y) - + Full Date (%Y-%m-%d) Data Completa (%Y-%m-%d) @@ -1457,12 +1160,12 @@ You can find me in the system tray. TextTool - + Text Texto - + Add text to your capture Adicionar texto à captura @@ -1475,32 +1178,32 @@ You can find me in the system tray. Interface de Edição de Cores - + Change the color moving the selectors and see the changes in the preview buttons. Modifique a cor movendo os seletores e veja as mudanças nos botões de preview. - + Select a Button to modify it Selecione um botão para modificá-lo - + Main Color Cor Principal - + Click on this button to set the edition mode of the main color. Clique neste botão para setar o modo de edição da cor principal. - + Contrast Color Cor de Contraste - + Click on this button to set the edition mode of the contrast color. Clique neste botão para setar o modo de edição da cor de contraste. @@ -1508,61 +1211,38 @@ You can find me in the system tray. UndoTool - + Undo Desfazer - + Undo the last modification Desfazer a última modificação - - UploadStorageConfig - - - Upload storage - - - - - Imgur storage - - - - - S3 storage (require config.ini file with s3 credentials) - - - UtilityPanel - + Close - - - - - Hide - + Fechar VisualsEditor - + Opacity of area outside selection: Opacidade da área de seleção: - + Button Selection Botão de seleção - + Select All Selecionar Todos diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index f982f12c..21b1a2b1 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -9,24 +9,7 @@ Contributions are welcome! Here's how you can help: ## Translations -Check this nice official documentation from Qt docs as it explains how to translate for a project written with Qt: https://doc.qt.io/qt-5/linguist-translators.html - -#### Status: - -| Language | Code | Status | Contributors | -| --------------------- | ----- | ----------- | ------------ | -| Spanish | es | :bookmark:v0.1.0 | [lupoDharkael](https://github.com/lupoDharkael) | -| Catalan | ca | :bookmark:v0.5.0 | [joamuran](https://github.com/joamuran) | -| Russian | ru | :bookmark:v0.5.1 | [Shatur95](https://github.com/Shatur95) | -| Chinese (Simplified) | zh_CN | :bookmark:v0.5.1 | [copie](https://github.com/copie), [hosiet](https://github.com/hosiet) | -| Chinese (Traditional) | zh_TW | :bookmark:v0.5.1 | [PeterDaveHello](https://github.com/PeterDaveHello) | -| Turkish | tr | :bookmark:v0.5.1 | [oltulu](https://github.com/oltulu) | -| Georgian | ge | :bookmark:v0.5.1 | [giogziro95](https://github.com/giogziro95) | -| French | fr | :bookmark:v0.5.1 | [ld892012](https://github.com/ld892012) | -| Polish | pl | :bookmark:v0.5.1 | [napcok](https://github.com/napcok) | -| Serbian | sr | :bookmark:v0.6.0 | [cobisimo](https://github.com/cobisimo) | -| Ukrainian | uk | :bookmark:v0.6.0 | [vboden](https://github.com/vboden) | -| German | de | :bookmark:v0.6.0 | [DaVukovic](https://github.com/DaVukovic) | +See [translation instructions](https://github.com/flameshot-org/translation-instruction). ## Code diff --git a/docs/Releasing.md b/docs/Releasing.md new file mode 100644 index 00000000..e46c4c7c --- /dev/null +++ b/docs/Releasing.md @@ -0,0 +1,17 @@ +# Checklist for making a new release + +These are the code changes that need to take place +- [ ] Create and push git tag +- [ ] Update version in CMakeLists.txt +- [ ] Update version and changelog at data/debian/changelog +- [ ] Update version and changelog at data/rpm/flameshot.spec +- [ ] Update docs/appdata/flameshot.metainfo.xml + +These are the steps for actually making the release +- [ ] Download all binaries from CI run started from PR related to code changes shown above +- [ ] Create sha256 for each binary and compare against sha256 shown in the CI to verify there was no corruption or inserted malware. +- [ ] Create a new "New Release" in githhub and explain changes in release notes +- [ ] Upload all binaries and sha's +- [ ] Update change log on [website](https://github.com/flameshot-org/flameshot-org.github.io/) data/changelog.md +- [ ] Update version on [website](https://github.com/flameshot-org/flameshot-org.github.io/blob/master/_coverpage.md) + diff --git a/docs/appdata/flameshot.metainfo.xml b/docs/appdata/flameshot.metainfo.xml index 56d9ef2a..3f413f17 100644 --- a/docs/appdata/flameshot.metainfo.xml +++ b/docs/appdata/flameshot.metainfo.xml @@ -5,6 +5,7 @@ GPL-3.0-or-later Flameshot + diff --git a/docs/desktopEntry/package/flameshot.desktop b/docs/desktopEntry/package/flameshot.desktop index f3ffc2c7..ff0be637 100644 --- a/docs/desktopEntry/package/flameshot.desktop +++ b/docs/desktopEntry/package/flameshot.desktop @@ -21,11 +21,13 @@ Comment[sk]=Mocný, no tiež jednoduchý softvér na zachytávanie obrazovky. Comment[sr]=Једноставан, а моћан алат за снимање екрана Comment[uk]=Потужний простий у використанні додаток для створення знімків екрану. Comment[es]=Software de captura de pantalla potente y fácil de usar. +Comment[de]=Einfache, umfängliche Sreenshot-Software Keywords=flameshot;screenshot;capture;shutter; Keywords[zh_CN]=flameshot;screenshot;capture;shutter;截图;屏幕; Keywords[fr]=flameshot;capture d'écran;capter;shutter; Keywords[ja]=flameshot;screenshot;capture;shutter;スクリーンショット;キャプチャー; Keywords[es]=flameshot;screenshot;capture;shutter;captura; +Keywords[de]=flameshot;screenshot;Bildschirmfoto;Aufnahme; Exec=flameshot Icon=flameshot Terminal=false @@ -48,6 +50,7 @@ Name[sk]=Nastaviť Name[sr]=Подешавања Name[uk]=Налаштувати Name[es]=Configurar +Name[de]=Einstellungen Exec=flameshot config [Desktop Action Capture] @@ -61,6 +64,7 @@ Name[sk]=Zachytiť obrazovku Name[sr]=Сними екран Name[uk]=Зробити знімок Name[es]=Tomar captura de pantalla +Name[de]=Bildschirmfoto aufnehmen Exec=flameshot gui --delay 500 [Desktop Action Launcher] diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index ad01d426..91b3623a 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -67,7 +67,7 @@ target_sources( ${CMAKE_CURRENT_SOURCE_DIR}/../external/Qt-Color-Widgets/src/color_wheel.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../external/Qt-Color-Widgets/include/color_wheel.hpp ${CMAKE_CURRENT_SOURCE_DIR}/../data/graphics.qrc - ${CMAKE_CURRENT_SOURCE_DIR}/../data/icon.rc # windows binary icon resource file + ${CMAKE_CURRENT_SOURCE_DIR}/../data/flameshot.rc # windows binary icon resource file ${QM_FILES} main.cpp) diff --git a/src/config/CMakeLists.txt b/src/config/CMakeLists.txt index f45ca878..46bb6d82 100644 --- a/src/config/CMakeLists.txt +++ b/src/config/CMakeLists.txt @@ -7,6 +7,7 @@ target_sources( filenameeditor.cpp geneneralconf.cpp strftimechooserwidget.cpp + styleoverride.cpp uicoloreditor.cpp visualseditor.cpp shortcutswidget.cpp diff --git a/src/config/styleoverride.cpp b/src/config/styleoverride.cpp new file mode 100644 index 00000000..340e4330 --- /dev/null +++ b/src/config/styleoverride.cpp @@ -0,0 +1,16 @@ +// +// Created by jeremy on 9/24/20. +// +#include "styleoverride.h" + +int StyleOverride::styleHint(StyleHint hint, + const QStyleOption* option, + const QWidget* widget, + QStyleHintReturn* returnData) const +{ + if (hint == SH_ToolTip_WakeUpDelay) { + return 600; + } else { + return baseStyle()->styleHint(hint, option, widget, returnData); + } +} diff --git a/src/config/styleoverride.h b/src/config/styleoverride.h new file mode 100644 index 00000000..19ff415c --- /dev/null +++ b/src/config/styleoverride.h @@ -0,0 +1,21 @@ +// +// Created by jeremy on 9/24/20. +// + +#ifndef FLAMESHOT_STYLEOVERRIDE_H +#define FLAMESHOT_STYLEOVERRIDE_H + +#include +#include + +class StyleOverride : public QProxyStyle +{ + Q_OBJECT +public: + int styleHint(StyleHint hint, + const QStyleOption* option = Q_NULLPTR, + const QWidget* widget = Q_NULLPTR, + QStyleHintReturn* returnData = Q_NULLPTR) const; +}; + +#endif // FLAMESHOT_STYLEOVERRIDE_H diff --git a/src/core/controller.cpp b/src/core/controller.cpp index ce8a81c5..35a8948a 100644 --- a/src/core/controller.cpp +++ b/src/core/controller.cpp @@ -277,7 +277,7 @@ void Controller::sendTrayNotification(const QString& text, { if (m_trayIcon) { m_trayIcon->showMessage( - title, text, QSystemTrayIcon::Information, timeout); + title, text, QIcon(":img/app/flameshot.svg"), timeout); } } diff --git a/src/main.cpp b/src/main.cpp index 417f584d..2d44f540 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -17,6 +17,7 @@ #include "singleapplication.h" #include "src/cli/commandlineparser.h" +#include "src/config/styleoverride.h" #include "src/core/capturerequest.h" #include "src/core/controller.h" #include "src/utils/confighandler.h" @@ -47,6 +48,7 @@ int main(int argc, char* argv[]) // no arguments, just launch Flameshot if (argc == 1) { SingleApplication app(argc, argv); + QApplication::setStyle(new StyleOverride); QTranslator translator, qtTranslator; QStringList trPaths = PathInfo::translationsPaths(); diff --git a/src/tools/circlecount/circlecounttool.cpp b/src/tools/circlecount/circlecounttool.cpp index 3b9ca65c..29333dc6 100644 --- a/src/tools/circlecount/circlecounttool.cpp +++ b/src/tools/circlecount/circlecounttool.cpp @@ -16,6 +16,7 @@ // along with Flameshot. If not, see . #include "circlecounttool.h" +#include "colorutils.h" #include namespace { #define PADDING_VALUE 2 @@ -72,6 +73,7 @@ void CircleCountTool::process(QPainter& painter, auto new_font = orig_font; auto fontSize = bubble_size; new_font.setPixelSize(fontSize); + new_font.setBold(true); painter.setFont(new_font); QRect bRect = @@ -89,8 +91,7 @@ void CircleCountTool::process(QPainter& painter, textRect, Qt::AlignCenter, QString::number(m_count)); } - // Lightness value ranges from 0-255, we split at 75 as this looks best - if (m_color.lightness() <= 75) { + if (ColorUtils::colorIsDark(m_color)) { painter.setPen(Qt::white); } else { painter.setPen(Qt::black); diff --git a/src/tools/storage/imguploader.cpp b/src/tools/storage/imguploader.cpp index 266478a6..92597dbd 100644 --- a/src/tools/storage/imguploader.cpp +++ b/src/tools/storage/imguploader.cpp @@ -22,15 +22,18 @@ #include "src/widgets/notificationwidget.h" #include #include +#include #include #include -#include +#include #include #include #include #include #include #include +#include +#include #include #include #include @@ -58,6 +61,13 @@ void ImgUploader::init(const QString& title, const QString& label) setWindowTitle(title); setWindowIcon(QIcon(":img/app/flameshot.svg")); +#if (QT_VERSION >= QT_VERSION_CHECK(5, 10, 0)) + QRect position = frameGeometry(); + QScreen* screen = QGuiApplication::screenAt(QCursor::pos()); + position.moveCenter(screen->availableGeometry().center()); + move(position.topLeft()); +#endif + m_spinner = new LoadSpinner(this); m_spinner->setColor(ConfigHandler().uiMainColorValue()); m_spinner->start(); diff --git a/src/utils/colorutils.cpp b/src/utils/colorutils.cpp index 8ba9f8ed..d246a422 100644 --- a/src/utils/colorutils.cpp +++ b/src/utils/colorutils.cpp @@ -24,11 +24,8 @@ inline qreal getColorLuma(const QColor& c) bool ColorUtils::colorIsDark(const QColor& c) { - bool isWhite = false; - if (getColorLuma(c) <= 0.60) { - isWhite = true; - } - return isWhite; + // when luma <= 0.5, we considor it as a dark color + return getColorLuma(c) <= 0.5; } QColor ColorUtils::contrastColor(const QColor& c) diff --git a/src/utils/screengrabber.cpp b/src/utils/screengrabber.cpp index a6a35711..03c76657 100644 --- a/src/utils/screengrabber.cpp +++ b/src/utils/screengrabber.cpp @@ -90,7 +90,10 @@ QPixmap ScreenGrabber::grabEntireDesktop(bool& ok) QRect geometry; for (QScreen* const screen : QGuiApplication::screens()) { - geometry = geometry.united(screen->geometry()); + QRect scrRect = screen->geometry(); + scrRect.moveTo(scrRect.x() / screen->devicePixelRatio(), + scrRect.y() / screen->devicePixelRatio()); + geometry = geometry.united(scrRect); } QPixmap p(QApplication::primaryScreen()->grabWindow( diff --git a/src/widgets/capture/capturetoolbutton.cpp b/src/widgets/capture/capturetoolbutton.cpp index a102cc16..84a1c811 100644 --- a/src/widgets/capture/capturetoolbutton.cpp +++ b/src/widgets/capture/capturetoolbutton.cpp @@ -108,6 +108,7 @@ CaptureTool* CaptureToolButton::tool() const void CaptureToolButton::setColor(const QColor& c) { + m_mainColor = c; CaptureButton::setColor(c); updateIcon(); } diff --git a/src/widgets/capture/capturewidget.cpp b/src/widgets/capture/capturewidget.cpp index 41832a60..23713c0d 100644 --- a/src/widgets/capture/capturewidget.cpp +++ b/src/widgets/capture/capturewidget.cpp @@ -28,7 +28,6 @@ #include "src/tools/storage/storagemanager.h" #include "src/tools/toolfactory.h" #include "src/utils/colorutils.h" -#include "src/utils/globalvalues.h" #include "src/utils/screengrabber.h" #include "src/utils/screenshotsaver.h" #include "src/utils/systemnotification.h" @@ -39,17 +38,14 @@ #include "src/widgets/orientablepushbutton.h" #include "src/widgets/panel/sidepanelwidget.h" #include -#include #include #include -#include #include #include #include #include #include #include - // CaptureWidget is the main component used to capture the screen. It contains // an area of selection with its respective buttons. @@ -128,6 +124,8 @@ CaptureWidget::CaptureWidget(const uint id, if (m_context.fullscreen) { for (QScreen* const screen : QGuiApplication::screens()) { QRect r = screen->geometry(); + r.moveTo(r.x() / screen->devicePixelRatio(), + r.y() / screen->devicePixelRatio()); #ifdef Q_OS_WIN r.moveTo(r.topLeft() - topLeft); #endif @@ -655,6 +653,10 @@ void CaptureWidget::initPanel() QRect panelRect = rect(); if (m_context.fullscreen) { panelRect = QGuiApplication::primaryScreen()->geometry(); + auto devicePixelRatio = + QGuiApplication::primaryScreen()->devicePixelRatio(); + panelRect.moveTo(panelRect.x() / devicePixelRatio, + panelRect.y() / devicePixelRatio); } ConfigHandler config; @@ -663,6 +665,7 @@ void CaptureWidget::initPanel() auto* panelToggleButton = new OrientablePushButton(tr("Tool Settings"), this); makeChild(panelToggleButton); + panelToggleButton->setColor(m_uiColor); panelToggleButton->setOrientation( OrientablePushButton::VerticalBottomToTop); panelToggleButton->move(panelRect.x(), @@ -1104,6 +1107,11 @@ void CaptureWidget::uploadScreenshot() void CaptureWidget::copyScreenshot() { m_captureDone = true; + if (m_activeTool != nullptr) { + QPainter painter(&m_context.screenshot); + m_activeTool->process(painter, m_context.screenshot, true); + } + ScreenshotSaver().saveToClipboard(pixmap()); close(); } @@ -1111,6 +1119,10 @@ void CaptureWidget::copyScreenshot() void CaptureWidget::saveScreenshot() { m_captureDone = true; + if (m_activeTool != nullptr) { + QPainter painter(&m_context.screenshot); + m_activeTool->process(painter, m_context.screenshot, true); + } hide(); if (m_context.savePath.isEmpty()) { ScreenshotSaver().saveToFilesystemGUI(pixmap()); @@ -1145,4 +1157,4 @@ QRect CaptureWidget::extendedRect(QRect* r) const r->top() * devicePixelRatio, r->width() * devicePixelRatio, r->height() * devicePixelRatio); -} +} \ No newline at end of file