Skip to content
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

Alternative frontend with Slint #1102

Merged
merged 107 commits into from
Dec 3, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
107 commits
Select commit Hold shift + click to select a range
1c044d2
A1
qarmin Oct 17, 2023
16a0ee2
Again
qarmin Oct 17, 2023
d298bf5
BD
qarmin Oct 17, 2023
c753c06
Not compilable
qarmin Oct 17, 2023
98590ad
AB
qarmin Oct 19, 2023
ac636df
Updated
qarmin Oct 19, 2023
19f0be7
Header row
qarmin Oct 21, 2023
0c3dd22
Missing
qarmin Oct 21, 2023
0f56ca0
Closed
qarmin Oct 21, 2023
5f9ddc9
Better list view resizable items
qarmin Oct 21, 2023
7e7a603
Active
qarmin Oct 22, 2023
fbe0295
Opening items
qarmin Oct 22, 2023
e859c77
Delete
qarmin Oct 22, 2023
6d8fe13
Make
qarmin Oct 22, 2023
674d479
Crossbeam instead futures
qarmin Oct 22, 2023
00a532b
PRG
qarmin Oct 22, 2023
3e2eb8b
A lot of
qarmin Oct 23, 2023
43ef409
Ab
qarmin Oct 24, 2023
1168e82
Split
qarmin Oct 24, 2023
4d08878
Split
qarmin Oct 26, 2023
2de5a4a
Basic deleting
qarmin Oct 27, 2023
abf52ea
Rechecked
qarmin Oct 27, 2023
60c5d67
ED
qarmin Oct 27, 2023
f128dd6
Id
qarmin Oct 27, 2023
230ac9d
Ab
qarmin Oct 28, 2023
b8c5ffa
Model
qarmin Oct 28, 2023
4663f4e
Simplified tests
qarmin Oct 28, 2023
d367f33
Handsome
qarmin Oct 29, 2023
4ae2303
Clippy also on generated code
qarmin Oct 29, 2023
e00256d
Basic settings
qarmin Nov 1, 2023
0be1d3f
In out
qarmin Nov 1, 2023
adb905f
Async
qarmin Nov 1, 2023
f4ff67b
ABC
qarmin Nov 2, 2023
da54431
G
qarmin Nov 2, 2023
84b7145
G
qarmin Nov 2, 2023
592ec9a
AB
qarmin Nov 5, 2023
27f43b3
BP
qarmin Nov 6, 2023
8d8abe3
Other themes
qarmin Nov 6, 2023
727dd4f
Upt
qarmin Nov 6, 2023
4f65c91
Added manual setting
qarmin Nov 7, 2023
ea29b65
Settings
qarmin Nov 8, 2023
812164b
Console text
qarmin Nov 10, 2023
a0e151e
Formatter
qarmin Nov 10, 2023
49871e4
1.3.0
qarmin Nov 10, 2023
9225025
Default dark theme
qarmin Nov 11, 2023
b67a98f
Similar images and proper tool type
qarmin Nov 11, 2023
ff7cfff
Simplify opening
qarmin Nov 12, 2023
186c0e1
Preview
qarmin Nov 12, 2023
c919aa1
Improved ListView
qarmin Nov 12, 2023
0b99d9c
Loading/Saving settings
qarmin Nov 13, 2023
74ae728
Again fixes
qarmin Nov 13, 2023
a14ace1
Optimization(probably)
qarmin Nov 15, 2023
447eb98
Logo
qarmin Nov 16, 2023
c27236e
Removing
qarmin Nov 17, 2023
87d8f90
More
qarmin Nov 17, 2023
b700c01
More
qarmin Nov 17, 2023
8834ee8
Changes
qarmin Nov 18, 2023
796233c
Basic button handler
qarmin Nov 18, 2023
dcd30dd
Fix compilation problem
qarmin Nov 19, 2023
ddfb6dc
Hack steal click
qarmin Nov 19, 2023
238e3a1
For now not use
qarmin Nov 19, 2023
0b2b723
CI
qarmin Nov 20, 2023
161c63b
A1
qarmin Nov 20, 2023
a216285
ABC
qarmin Nov 20, 2023
3fcd71f
Traits
qarmin Nov 20, 2023
c8ab75c
Windows sd
qarmin Nov 20, 2023
d332f32
Windows changes
qarmin Nov 20, 2023
aa71cd0
DNF
qarmin Nov 20, 2023
7ec36a7
Bak
qarmin Nov 20, 2023
2f192cd
SettingsList
qarmin Nov 21, 2023
eb52abf
Changelog + mac output
qarmin Nov 22, 2023
46a5bdd
Człek
qarmin Nov 22, 2023
9cbfe52
Windows compilation
qarmin Nov 22, 2023
20c8b6e
Excluded items
qarmin Nov 23, 2023
01d1e43
>F
qarmin Nov 23, 2023
63e36ca
Windows
qarmin Nov 23, 2023
329b3bd
Mingw
qarmin Nov 23, 2023
d4dfd28
sudo
qarmin Nov 23, 2023
b70ab68
OS info
qarmin Nov 23, 2023
85da7f3
Bigger stack size
qarmin Nov 24, 2023
cc8bb6e
Commons
qarmin Nov 24, 2023
cbca902
Upd
qarmin Nov 25, 2023
e2bd446
Just
qarmin Nov 25, 2023
4d516df
UUU
qarmin Nov 25, 2023
f3a4ca7
Minimum/Maximum
qarmin Nov 26, 2023
26ce7de
ID
qarmin Nov 26, 2023
41dd352
Scripts
qarmin Nov 26, 2023
c416fbd
ABCD
qarmin Nov 26, 2023
2c264fa
Source
qarmin Nov 26, 2023
b713df7
Bind more settings
qarmin Nov 26, 2023
62fbfe0
Limit thread number
qarmin Nov 26, 2023
fca5dd9
Cross-compile
qarmin Nov 27, 2023
994477e
Slint 1.3.1
qarmin Nov 28, 2023
606b57b
Random
qarmin Nov 29, 2023
363d496
Trying more
qarmin Nov 30, 2023
d984193
Slint 1.3.2 and changes
qarmin Dec 1, 2023
19f272d
Broken
qarmin Dec 1, 2023
70bb713
Libraw
qarmin Dec 1, 2023
6e9dc8f
Tool Settings
qarmin Dec 1, 2023
6aaa1b9
Less amount of conversions
qarmin Dec 2, 2023
40e71fd
A
qarmin Dec 2, 2023
af16c53
Active tab
qarmin Dec 2, 2023
f059b2a
Almost subsettings
qarmin Dec 2, 2023
68fd7b9
More
qarmin Dec 2, 2023
0bee05f
Update
qarmin Dec 3, 2023
b289175
Eh..
qarmin Dec 3, 2023
9fef3b4
Eh2..
qarmin Dec 3, 2023
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
7 changes: 2 additions & 5 deletions .github/workflows/linux_cli.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,23 +12,20 @@ jobs:
linux-cli:
strategy:
matrix:
toolchain: [ stable, 1.70.0 ]
toolchain: [ stable, 1.72.1 ]
type: [ release ]
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3

- name: Install basic libraries
run: sudo apt-get update; sudo apt install libheif-dev ffmpeg -y
run: sudo apt update || true; sudo apt install libheif-dev ffmpeg -y

- name: Setup rust version
run: rustup default ${{ matrix.toolchain }}

- name: Build Release
run: cargo build --release --bin czkawka_cli
env:
CARGO_INCREMENTAL: 0
RUSTFLAGS: "-C debuginfo=0"
if: ${{ (matrix.type == 'release') }}

- name: Store Linux CLI
Expand Down
54 changes: 54 additions & 0 deletions .github/workflows/linux_cli_eyra.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: 🐧 Linux CLI Eyra
on:
push:
pull_request:
schedule:
- cron: '0 0 * * 2'

env:
CARGO_TERM_COLOR: always

jobs:
linux-cli:
strategy:
matrix:
toolchain: [ nightly ]
type: [ release ]
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3

- name: Install basic libraries
run: sudo apt update || true; sudo apt install -y ffmpeg

# New versions of nightly rust may call new unimplemented in eyra functions, so use const version
- name: Setup rust version
run: rustup default nightly-2023-11-29

- name: Add eyra
run: |
cd czkawka_cli
cargo add eyra --rename=std
echo 'fn main() { println!("cargo:rustc-link-arg=-nostartfiles"); }' > build.rs
cd ..

- name: Build Release
run: cargo build --release --bin czkawka_cli
if: ${{ (matrix.type == 'release') }}

- name: Store Linux CLI
uses: actions/upload-artifact@v3
with:
name: czkawka_cli-${{ runner.os }}-${{ matrix.toolchain }}
path: target/release/czkawka_cli
if: ${{ matrix.type == 'release' }}

- name: Linux Regression Test
run: |
wget https://github.com/qarmin/czkawka/releases/download/6.0.0/TestFiles.zip
cd ci_tester
cargo build --release
cd ..

ci_tester/target/release/ci_tester target/release/czkawka_cli
if: ${{ matrix.type == 'release' }}
90 changes: 64 additions & 26 deletions .github/workflows/linux_gui.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,48 +9,92 @@ env:
CARGO_TERM_COLOR: always

jobs:
linux-krokiet-gui:
strategy:
matrix:
toolchain: [ stable, 1.72.1 ]
type: [ release ]
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3

- name: Setup rust version
run: rustup default ${{ matrix.toolchain }}

- name: Build Release Krokiet
run: cargo build --release --bin krokiet
if: ${{ (matrix.type == 'release') }}

- name: Store Linux GUI Krokiet
uses: actions/upload-artifact@v3
with:
name: krokiet-${{ runner.os }}-${{ matrix.toolchain }}
path: target/release/krokiet
if: ${{ matrix.type == 'release' }}

linux-krokiet-gui-heif:
strategy:
matrix:
toolchain: [ stable, 1.72.1 ]
type: [ release ]
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3

- name: Install basic libraries
run: sudo apt update || true; sudo apt install libheif-dev libraw-dev -y

- name: Setup rust version
run: rustup default ${{ matrix.toolchain }}

- name: Build Release Krokiet heif
run: cargo build --release --bin krokiet --features "heif,libraw"
if: ${{ (matrix.type == 'release') }}

- name: Store Linux GUI Krokiet heif libraw
uses: actions/upload-artifact@v3
with:
name: krokiet-${{ runner.os }}-${{ matrix.toolchain }}-heif-libraw
path: target/release/krokiet
if: ${{ matrix.type == 'release' }}

linux-gui:
strategy:
matrix:
toolchain: [ stable, 1.70.0 ]
toolchain: [ stable, 1.72.1 ]
type: [ release ]
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3

- name: Install basic libraries
run: sudo apt-get update; sudo apt install libgtk-4-dev libheif-dev -y
run: sudo apt update || true; sudo apt install libgtk-4-dev libheif-dev libraw-dev -y

- name: Setup rust version
run: rustup default ${{ matrix.toolchain }}

- name: Build Release Heif
run: cargo build --release --features heif
env:
CARGO_INCREMENTAL: 0
RUSTFLAGS: "-C debuginfo=0"
if: ${{ (matrix.type == 'release') && (matrix.toolchain == '1.70.0') }}
- name: Build Release Heif Libraw
run: cargo build --release --bin czkawka_gui --features "heif,libraw"
if: ${{ (matrix.type == 'release') }}

- name: Store Linux GUI Heif
- name: Store Linux GUI Heif Libraw
uses: actions/upload-artifact@v3
with:
name: czkawka_gui-${{ runner.os }}-${{ matrix.toolchain }}-heif
name: czkawka_gui-${{ runner.os }}-${{ matrix.toolchain }}-heif-libraw
path: target/release/czkawka_gui
if: ${{ matrix.type == 'release' }}
if: ${{ (matrix.type == 'release') && (matrix.toolchain == 'stable') }}

- name: Build Release
run: cargo build --release
env:
CARGO_INCREMENTAL: 0
RUSTFLAGS: "-C debuginfo=0"
if: ${{ (matrix.type == 'release') && (matrix.toolchain == 'stable') }}
run: cargo build --release --bin czkawka_gui
if: ${{ (matrix.type == 'release') }}

# Only store stable toolchain
- name: Store Linux GUI
uses: actions/upload-artifact@v3
with:
name: czkawka_gui-${{ runner.os }}-${{ matrix.toolchain }}
path: target/release/czkawka_gui
if: ${{ matrix.type == 'release' }}
if: ${{ (matrix.type == 'release') && (matrix.toolchain == 'stable') }}

linux-appimage-gui:
strategy:
Expand All @@ -62,16 +106,13 @@ jobs:
- uses: actions/checkout@v3

- name: Install Dependencies
run: sudo apt-get update; sudo apt install libgtk-4-dev libheif-dev librsvg2-dev wget fuse libfuse2 -y
run: sudo apt update || true; sudo apt install libgtk-4-dev libheif-dev librsvg2-dev wget fuse libfuse2 -y

- name: Setup rust version
run: rustup default ${{ matrix.toolchain }}

- name: Build Release
run: cargo build --release
env:
CARGO_INCREMENTAL: 0
RUSTFLAGS: "-C debuginfo=0"
run: cargo build --release --bin czkawka_gui

- name: Download appimage dependencies
run: |
Expand Down Expand Up @@ -118,13 +159,10 @@ jobs:
- uses: actions/checkout@v3

- name: Install Dependencies
run: sudo apt-get update; sudo apt install libgtk-4-dev libheif-dev librsvg2-dev wget fuse libfuse2 -y xvfb
run: sudo apt update || true; sudo apt install libgtk-4-dev libheif-dev librsvg2-dev wget fuse libfuse2 -y xvfb

- name: Setup rust version
run: rustup default ${{ matrix.toolchain }}

- name: Test
run: xvfb-run cargo test
env:
CARGO_INCREMENTAL: 0
RUSTFLAGS: "-C debuginfo=0"
18 changes: 14 additions & 4 deletions .github/workflows/mac.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,6 @@ jobs:

- name: Build Release
run: cargo build --release
env:
CARGO_INCREMENTAL: 0
if: ${{ matrix.type == 'release'}}

- name: Store MacOS CLI
Expand All @@ -50,10 +48,15 @@ jobs:
path: target/release/czkawka_gui
if: ${{ matrix.type == 'release' }}

- name: Store MacOS Krokiet
uses: actions/upload-artifact@v3
with:
name: krokiet-${{ runner.os }}-${{ matrix.toolchain }}
path: target/release/krokiet
if: ${{ matrix.type == 'release' }}

- name: Build Release Heif
run: cargo build --release --features heif
env:
CARGO_INCREMENTAL: 0
if: ${{ matrix.type == 'release'}}

- name: Store MacOS CLI Heif
Expand All @@ -68,4 +71,11 @@ jobs:
with:
name: czkawka_gui-${{ runner.os }}-${{ matrix.toolchain }}-heif
path: target/release/czkawka_gui
if: ${{ matrix.type == 'release' }}

- name: Store MacOS Krokiet Heif
uses: actions/upload-artifact@v3
with:
name: krokiet-${{ runner.os }}-${{ matrix.toolchain }}-heif
path: target/release/krokiet
if: ${{ matrix.type == 'release' }}
13 changes: 5 additions & 8 deletions .github/workflows/quality.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,16 +15,13 @@ jobs:
- uses: actions/checkout@v3

- name: Install Gtk 4
run: sudo apt-get update; sudo apt install -y libgtk-4-dev libheif-dev -y
run: sudo apt update || true; sudo apt install -y libgtk-4-dev libraw-dev libheif-dev -y

- name: Check the format
run: cargo fmt --all -- --check

# type complexity must be ignored because we use huge templates for queries
- name: Run clippy
run: >
cargo clippy
--all-targets
--all-features
--
-D warnings
run: cargo clippy --all-targets --all-features -- -D warnings

- name: Run clippy
run: cargo clippy -- -D warnings
Loading