Skip to content

logic changes for selection cancellation #1139

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 60 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
f27f312
logic changes for selection cancellation
Doublonmousse Jul 11, 2024
ace0b25
prevent shapes that are too small to be visible
Doublonmousse Jul 11, 2024
5d5d149
close selection tool when deleting in temporary mode
Doublonmousse Jul 13, 2024
1f14479
fmt
Doublonmousse Jul 13, 2024
5b9807c
remove unnecessary size check
Doublonmousse Jul 21, 2024
3cca287
apply corrections
Doublonmousse Nov 2, 2024
99406ca
Merge branch 'flxzt:main' into no_spots
Doublonmousse Nov 2, 2024
32573ed
switch to hashset to fix type error
Doublonmousse Nov 2, 2024
430c77f
fmt check
Doublonmousse Nov 2, 2024
97f9fd0
chore: update piet, rough dependencies
flxzt Nov 2, 2024
331272c
fix: deselect 9th colorsetter after selecting 7th, fixes #1255
Kneemund Nov 3, 2024
5ad65af
i18n: Translations update from Hosted Weblate (#1219)
weblate Nov 3, 2024
f4de1fc
i18n: Update traditional Chinese translation
github-actions[bot] Nov 3, 2024
d448b4c
feat: Open workspace folder option (#1272)
Doublonmousse Nov 9, 2024
a9bb13b
improv: support keypad and uncommon keys (#1274)
Kneemund Nov 9, 2024
7f3ff8a
feat: Allow import of encrypted PDF files (#1279)
kq98 Nov 9, 2024
d7f0636
fix: selection resize/rotate handle sensitivity in 'single' selection…
Doublonmousse Nov 21, 2024
45229cb
improv: make zooming consistent and better support for keypad keys (#…
Doublonmousse Nov 21, 2024
c8f283c
ci: sanitize ref name, update deprecated actions
Kneemund Nov 21, 2024
1bca5c9
refactor: use macros for constructing engine views (#1306)
Kneemund Nov 28, 2024
70e5e0b
fix: improve the clipboard pasting of files for better compatibility …
Doublonmousse Nov 28, 2024
47d01a2
chore: satisfy latest clippy
flxzt Nov 28, 2024
e2fb8a4
fix: unwanted activation of long-press context menu after zooming (#1…
Kneemund Nov 30, 2024
853092f
refactor: "tools" event handling (#1308)
flxzt Dec 5, 2024
b9b1808
fix: don't draw idle tools, add files to meson
Kneemund Dec 5, 2024
c8d5f6d
feat: universal animation frames for pens (#1309)
Kneemund Dec 7, 2024
60567dc
i18n: Translations update from Hosted Weblate (#1271)
weblate Dec 8, 2024
a7c6521
i18n: Update traditional Chinese translation
github-actions[bot] Dec 8, 2024
6630376
feat: laser tool (#1277)
Kneemund Dec 8, 2024
d3758fb
refactor: hover states in selector and typewriter (#1318)
flxzt Dec 14, 2024
0c0df2e
chore: update windows build documentation (#1325)
Doublonmousse Dec 21, 2024
10e6d87
feat: keyboard paste at pointer position (#1311)
Kneemund Dec 22, 2024
d4ba8ed
refactor: avoid using format! when String creation is unnecessary (#1…
Integral-Tech Dec 24, 2024
e553119
chore: update dependencies
flxzt Dec 24, 2024
0d753c1
fix: change logic to keep text selection on hover/pen up (#1326)
Doublonmousse Dec 24, 2024
9ab5398
refactor: reinstall pen only if necessary (#1321)
Kneemund Dec 28, 2024
2ef66c5
chore: consistent output for fields without debug impl
flxzt Dec 28, 2024
5719191
chore: update to gtk4.16 feature
flxzt Dec 31, 2024
081d878
chore: add gtk4, poppler as system deps in meson build file
flxzt Dec 31, 2024
779d4b3
chore: remove outdated, commented out code in meson build file
flxzt Dec 31, 2024
5711791
fix: ci by updating containers
flxzt Dec 31, 2024
e72fc90
i18n: Completed Nepali translation (#1342)
manisgoyal Jan 14, 2025
a30213d
ci: fix nightly builds
Kneemund Feb 4, 2025
58087a1
feat: multi-click selections (#1268)
Kneemund Feb 16, 2025
6c4c831
i18n: Translations update from Hosted Weblate (#1319)
weblate Feb 17, 2025
45f76f0
i18n: Update traditional Chinese translation
github-actions[bot] Feb 17, 2025
0fcb985
chore: update to rust 2024 edition, v1.85 msrv, update deps, fmt (#1365)
flxzt Feb 26, 2025
119e951
fix: cli file collision resolution in non-interactive settings (#1381)
LeSnake04 Mar 6, 2025
fb85009
i18n: Add Esperanto translation language (#1380)
HappyHippo77 Mar 13, 2025
a70bbf3
feat: add thumbnailer (#1377)
tiziodcaio Mar 24, 2025
a5822ac
chore: bump flatpak GNOME runtime to version 48 (#1391)
RayJW Mar 27, 2025
972fa2e
fix: failing build on windows due to broken poppler-rs (#1282)
Doublonmousse Apr 4, 2025
ee621e0
chore: add justfile for common tasks, adapt CI, apply YAML lints, mes…
flxzt Apr 5, 2025
b4ba5a9
i18n: Update traditional Chinese translation
github-actions[bot] Apr 5, 2025
69f72e8
chore: fix just recipe `RUST_LOG` env var, docs
flxzt Apr 5, 2025
2b3972f
fix: missing tooltips (#1401)
Doublonmousse Apr 5, 2025
dfb9f88
i18n: Translations update from Hosted Weblate (#1362)
weblate Apr 5, 2025
bae2a2f
i18n: Update traditional Chinese translation
github-actions[bot] Apr 5, 2025
6c62026
fix: window shadows on Windows (#1403)
Doublonmousse Apr 6, 2025
82bb690
Merge branch 'no_spots' of https://github.com/Doublonmousse/rnote int…
Doublonmousse Apr 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 13 additions & 11 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
---

# These are supported funding model platforms

github: [flxzt] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: flxzt # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
#custom: [] # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
github: [flxzt] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: flxzt # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
# custom: [] # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
71 changes: 34 additions & 37 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
---

name: CI

on:
"on":
push:
branches:
- main
Expand All @@ -15,24 +17,24 @@ env:
jobs:
check:
if: github.event.pull_request.draft == false
runs-on: ubuntu-22.04
container: fedora:40
runs-on: ubuntu-24.04
container: fedora:41
steps:
- name: Install core dependencies
run: |
sudo dnf upgrade --refresh -y
sudo dnf install -y gcc gcc-c++ clang python3 make cmake meson git kernel-devel gtk4-devel libadwaita-devel poppler-glib-devel poppler-data alsa-lib-devel appstream-devel desktop-file-utils
- name: Install additional tools
uses: taiki-e/install-action@v2
with:
tool: nextest
- name: Install toolchain

- name: Checkout
uses: actions/checkout@v4

- name: Install rust toolchain
id: toolchain
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt, clippy
- name: Checkout
uses: actions/checkout@v4

- name: Prerequisites
run: |
dnf install -y just lsb_release
just ci=true prerequisites-dev

- name: Cache
uses: actions/cache@v4
env:
Expand All @@ -44,34 +46,29 @@ jobs:
_mesonbuild/cargo-home/registry/cache/
_mesonbuild/cargo-home/git/db/
_mesonbuild/target/
key: cargo-${{ runner.os }}-${{ steps.toolchain.outputs.cachekey }}-${{ hashFiles('**/Cargo.lock') }}-${{ github.workflow_sha }}
key: "cargo-${{ runner.os }}-${{ steps.toolchain.outputs.cachekey }}-
${{ hashFiles('**/Cargo.lock') }}-${{ github.workflow_sha }}"
restore-keys: cargo-${{ runner.os }}-${{ steps.toolchain.outputs.cachekey }}

- name: Setup
run: |
meson setup --prefix=/usr -Dprofile=devel -Dcli=true -Dci=true _mesonbuild
run: just ci=true setup-dev

- name: Run fmt check
run: meson compile cargo-fmt-check -C _mesonbuild
- name: Compile
run: meson compile -v -C _mesonbuild
run: just ci=true fmt-check

- name: Build
run: just ci=true build

- name: Install
run: meson install -C _mesonbuild
- name: Run cargo tests
run: meson compile cargo-test -C _mesonbuild
- name: Run meson tests
run: meson test -v -C _mesonbuild
- name: Run clippy for UI
run: meson compile ui-cargo-clippy -C _mesonbuild
continue-on-error: true
- name: Run clippy for CLI
run: meson compile cli-cargo-clippy -C _mesonbuild
run: just ci=true install

- name: Test
run: just ci=true test

- name: Lint
run: just ci=true lint
continue-on-error: true
- name: Run file compatibility tests
run: |
rnote-cli test\
misc/file-tests/v0-5-5-test.rnote\
misc/file-tests/v0-5-13-test.rnote\
misc/file-tests/v0-6-0-test.rnote\
misc/file-tests/v0-9-0-test.rnote\

- name: Upload test report
uses: actions/upload-artifact@v4
if: success() || failure()
Expand Down
53 changes: 36 additions & 17 deletions .github/workflows/dist.yml
Original file line number Diff line number Diff line change
@@ -1,52 +1,71 @@
---

name: Generate Dist Archive

on:
"on":
release:
types: [published]
workflow_dispatch:

jobs:
dist:
runs-on: ubuntu-22.04
container: fedora:40
runs-on: ubuntu-24.04
container: fedora:41
permissions:
contents: write # needed for uploading release artifact
# needed for uploading release artifact
contents: write
steps:
- name: Install dependencies

# Necessary so that 'Checkout' will clone as repository, which the `meson dist` commands needs.
- name: Install git
run: |
sudo dnf upgrade --refresh -y
sudo dnf install -y gcc gcc-c++ clang python3 make cmake meson git gh kernel-devel gtk4-devel libadwaita-devel poppler-glib-devel poppler-data alsa-lib-devel appstream-devel desktop-file-utils
- name: Install toolchain
id: toolchain
uses: dtolnay/rust-toolchain@stable
dnf install -y git

- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Add workspace as git safe directory
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Setup

- name: Install rust toolchain
id: toolchain
uses: dtolnay/rust-toolchain@stable

- name: Prerequisites
run: |
meson setup --prefix=/usr _mesonbuild
- name: Run meson dist
run: meson dist --no-tests -C _mesonbuild
dnf install -y just lsb_release
just ci=true prerequisites

- name: Setup
run: just ci=true setup-release

- name: Create tarball
run: just ci=true create-tarball

- name: Register archive file names
id: register_archive_file_names
run: |
echo "archive=$(basename _mesonbuild/meson-dist/rnote-*.tar.xz | tail -n1)" >> $GITHUB_OUTPUT
echo "sha=$(basename _mesonbuild/meson-dist/rnote-*.tar.xz.sha256sum | tail -n1)" >> $GITHUB_OUTPUT

- name: Upload dist archive (Workflow Artifact)
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: rnote-dist-archive-artifact
path: |
_mesonbuild/meson-dist/${{ steps.register_archive_file_names.outputs.archive }}
_mesonbuild/meson-dist/${{ steps.register_archive_file_names.outputs.sha }}
include-hidden-files: true
if-no-files-found: error

- name: Upload dist archive (Release Asset)
if: ${{ github.event_name == 'release' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
gh release upload ${{ github.ref_name }} _mesonbuild/meson-dist/${{ steps.register_archive_file_names.outputs.archive }}
gh release upload ${{ github.ref_name }} _mesonbuild/meson-dist/${{ steps.register_archive_file_names.outputs.sha }}
gh release upload ${{ github.ref_name }} \
_mesonbuild/meson-dist/${{ steps.register_archive_file_names.outputs.archive }}
gh release upload ${{ github.ref_name }} \
_mesonbuild/meson-dist/${{ steps.register_archive_file_names.outputs.sha }}
26 changes: 16 additions & 10 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
---

name: Nightly

on:
"on":
schedule:
- cron: "0 8 * * 1"
workflow_dispatch:
Expand All @@ -10,14 +12,18 @@ jobs:
flatpak:
runs-on: ubuntu-latest
container:
image: bilelmoussaoui/flatpak-github-actions:gnome-47
image: ghcr.io/flathub-infra/flatpak-github-actions:gnome-47
options: --privileged
steps:
- uses: actions/checkout@v4
- uses: flatpak/flatpak-github-actions/flatpak-builder@v6
with:
manifest-path: build-aux/com.github.flxzt.rnote.Devel.yaml
cache-key: flatpak-builder-${{ github.sha }}
arch: x86_64
build-bundle: true
bundle: com.github.flxzt.rnote.Devel.flatpak

- name: Checkout
uses: actions/checkout@v4

- name: Build nightly flatpak
uses: flathub-infra/flatpak-github-actions/flatpak-builder@4388a4c5fc8bab58e1dfb7fc63267dca0f7b4976
with:
manifest-path: build-aux/com.github.flxzt.rnote.Devel.yaml
cache-key: flatpak-builder-${{ github.sha }}
arch: x86_64
build-bundle: true
bundle: com.github.flxzt.rnote.Devel.flatpak
48 changes: 30 additions & 18 deletions .github/workflows/release-windows.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
---

name: Release Windows

on:
"on":
release:
types: [published]
workflow_dispatch:
Expand All @@ -9,50 +11,60 @@ jobs:
build:
runs-on: windows-2022
permissions:
contents: write # needed for uploading release artifact
# needed for uploading release artifact
contents: write
defaults:
run:
shell: msys2 {0}
steps:

- name: Set installer name
id: set_installer_name
shell: bash
run: echo "name=rnote-win-installer-$(echo ${GITHUB_REF_NAME#v})-x86_64" >> $GITHUB_OUTPUT
run: |
echo "name=rnote-win-installer-$(echo ${GITHUB_REF_NAME#v} \
| sed -e 's/[^A-Za-z0-9._-]/_/g')-x86_64" >> $GITHUB_OUTPUT

- name: Setup MSYS2
uses: msys2/setup-msys2@v2
with:
release: false
update: true
install: |
git mingw-w64-x86_64-xz mingw-w64-x86_64-pkgconf mingw-w64-x86_64-gcc mingw-w64-x86_64-clang mingw-w64-x86_64-toolchain
mingw-w64-x86_64-autotools mingw-w64-x86_64-make mingw-w64-x86_64-cmake mingw-w64-x86_64-meson mingw-w64-x86_64-diffutils
mingw-w64-x86_64-desktop-file-utils mingw-w64-x86_64-appstream mingw-w64-x86_64-gtk4 mingw-w64-x86_64-libadwaita
mingw-w64-x86_64-poppler mingw-w64-x86_64-poppler-data mingw-w64-x86_64-angleproject
- name: Remove libpthread.dll.a
run: rm /mingw64/lib/libpthread.dll.a
continue-on-error: true
- name: Install toolchain
mingw-w64-x86_64-binutils

- name: Install rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable-gnu

- name: Configure PATH
run: echo "export PATH=$PATH:/c/Users/$USER/.cargo/bin:/c/Program\ Files\ \(x86\)/Inno\ Setup\ 6" > ~/.bashrc

- name: Checkout
uses: actions/checkout@v4

- name: Prerequisites
run: |
cargo install --locked just
just ci=true prerequisites-win

- name: Setup
run: meson setup --prefix=C:/msys64/mingw64 -Dwin-installer-name='${{ steps.set_installer_name.outputs.name }}' _mesonbuild
- name: Generate locale files
run: meson compile rnote-gmo -C _mesonbuild
- name: Compile
run: meson compile -v -C _mesonbuild
run: just ci=true setup-win '${{ steps.set_installer_name.outputs.name }}'

- name: Build
run: just ci=true build

- name: Build installer
run: meson compile build-installer -C _mesonbuild
run: just ci=true build-win-installer

- name: Upload installer (Workflow Artifact)
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: rnote-win-installer-artifact
path: _mesonbuild/${{ steps.set_installer_name.outputs.name }}.exe
if-no-files-found: error

- name: Upload installer (Release Asset)
if: ${{ github.event_name == 'release' }}
shell: powershell
Expand Down
18 changes: 11 additions & 7 deletions .github/workflows/test-report.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
---

name: 'Test Report'

on:
"on":
workflow_run:
workflows: ['CI']
types:
Expand All @@ -15,9 +17,11 @@ jobs:
report:
runs-on: ubuntu-latest
steps:
- uses: dorny/test-reporter@v1
with:
artifact: test-results
name: Tests
path: 'test-report-junit.xml'
reporter: java-junit

- name: Report Test Results
uses: dorny/test-reporter@v1
with:
artifact: test-results
name: Tests
path: 'test-report-junit.xml'
reporter: java-junit
Loading