Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
225 commits
Select commit Hold shift + click to select a range
744eb1b
Remove ANGLE support
luisangelsm Jan 20, 2026
7eefe93
YACReader 10!
luisangelsm Feb 19, 2026
3a75559
AI generated migration for a more modern OpenGL (3.3 + ES 3.0) approa…
luisangelsm Jan 15, 2026
79262f7
Merge pull request #506 from YACReader/remove-qt5-support
luisangelsm Feb 19, 2026
c748ef9
Fix migration from pre-9.14 libraries
luisangelsm Jan 13, 2026
3fc2a47
Add an initial rhi implementation that mimics the opengl implementation
luisangelsm Jan 17, 2026
701d8c6
Put rhi resources into a scene struct
luisangelsm Jan 17, 2026
5c65168
Add proper resources cleaning
luisangelsm Jan 17, 2026
40f6bb8
Extract the comic and page flow classes to their own files
luisangelsm Jan 18, 2026
eb98ed7
Remove comments
luisangelsm Jan 18, 2026
72fd5b2
Format
luisangelsm Jan 18, 2026
1927cba
Ensure resources dynamically
luisangelsm Jan 18, 2026
40d2b73
Use a QLabel to show the current/total text
luisangelsm Jan 18, 2026
4d6c22b
Simplify code
luisangelsm Jan 18, 2026
351488a
Lazy population can clear already set marks
luisangelsm Jan 18, 2026
925f78d
Fix mipmapping
luisangelsm Jan 18, 2026
8f2d427
Use the fragment shader to calculate the shading effect for a more un…
luisangelsm Jan 18, 2026
9571e64
Fix the fragment shader to work with any background color
luisangelsm Jan 19, 2026
626aa40
Clean unused stuff
luisangelsm Jan 19, 2026
2f880ae
More cleaning
luisangelsm Jan 19, 2026
cb29c4d
Add a CPU based frustum culling that's good enough for flow use case
luisangelsm Jan 20, 2026
7fbe6ae
Add performance measurement
luisangelsm Jan 20, 2026
1a9ee4b
Remove comments
luisangelsm Jan 20, 2026
39cd707
Remove software and opengl flow implementations
luisangelsm Jan 23, 2026
88b876e
Make compile_shaders.sh executable
luisangelsm Feb 6, 2026
a5e24f9
Fix shaders, vertex shader output locations don't match the fragment …
luisangelsm Feb 6, 2026
28ee869
Update CHANGELOG
luisangelsm Feb 19, 2026
29644d5
Merge pull request #507 from YACReader/flowgl-redone
luisangelsm Feb 19, 2026
d3f0907
Add new pri files for including the theme related files
luisangelsm Jan 12, 2026
b2ad93b
Add an enum to identify themes
luisangelsm Jan 12, 2026
6ec8727
Add the Theme struct to both projects
luisangelsm Jan 12, 2026
8942e46
Add ThemeManager
luisangelsm Jan 12, 2026
de4ade5
Add an abstract class to be implemented by any class that needs theming
luisangelsm Jan 12, 2026
3e84b01
Add helpers to tint svg files
luisangelsm Jan 12, 2026
429dfaf
Add a struct for the cases where we need to specify a icon size expli…
luisangelsm Jan 12, 2026
3a33a27
Add the new files to the projects
luisangelsm Jan 12, 2026
403f66d
Replace all the icons in the comic vine scraper with svg versions
luisangelsm Jan 12, 2026
6118a60
Initialize the theme infrastructure in YACReaderLibrary
luisangelsm Jan 12, 2026
26db17b
Initialize the theme infrastructure in YACReader
luisangelsm Jan 12, 2026
bf74d5e
Replace colors in the toolbar icons with placeholder color #f0f (mage…
luisangelsm Jan 12, 2026
605f219
Add toolbar and background theming to YACReader
luisangelsm Jan 14, 2026
92f5cb9
Make the YACReaderBusyWidget customizable (color)
luisangelsm Jan 14, 2026
994380e
Add a theme factory to YACReaderLibrary and theme the comic vine dialog
luisangelsm Jan 14, 2026
3406a41
Make comic flow themable
luisangelsm Jan 20, 2026
441d1cd
Make Themable pass the current Theme through applyTheme
luisangelsm Jan 20, 2026
3aac058
Make Themable keep the current theme for convenience
luisangelsm Jan 20, 2026
3960a7b
Remove unused include
luisangelsm Jan 23, 2026
e72131c
Fix go to toolbar go to button
luisangelsm Jan 23, 2026
f4c313e
Fix theme initialization in Themable
luisangelsm Jan 23, 2026
f977580
Use local var
luisangelsm Jan 23, 2026
8ca1cd5
Make go to flow widget themable
luisangelsm Jan 24, 2026
827a9cf
Don't save the default theme color
luisangelsm Jan 24, 2026
d2d9cbb
Make help/about dialog themable
luisangelsm Jan 25, 2026
18c8b89
Add new function to recolor svg files supporting 3 placeholders
luisangelsm Feb 1, 2026
08ce910
Improve icon utils by supporting explicit file name destination
luisangelsm Feb 4, 2026
a2a2823
Enable c++20
luisangelsm Feb 4, 2026
d62cc7e
Move shorcuts icons to a subfolder in images
luisangelsm Feb 5, 2026
3860172
Remove unused widget
luisangelsm Feb 5, 2026
0fd1af7
Remove unused images
luisangelsm Feb 6, 2026
a3aeab6
Remove enforcing ligth theme on macos
luisangelsm Feb 6, 2026
85b63e6
Fix YACReaderLibraryListWidget::mousePressEvent
luisangelsm Feb 9, 2026
d040917
Replace the info-*.png files used in qml with svg variants
luisangelsm Feb 12, 2026
a9ac676
Remove Qt5Compat dependency from qml
luisangelsm Feb 12, 2026
45673c2
Use only the qt6 versions of the qml implementations
luisangelsm Feb 13, 2026
a938edb
More png to svg conversions on qml side
luisangelsm Feb 13, 2026
d16653c
Fix tick and favorites vertical alignment
luisangelsm Feb 13, 2026
210c302
Initial implementation of theming
luisangelsm Feb 19, 2026
85e5b1b
Remove Qt5 jobs from Github actions
luisangelsm Feb 19, 2026
9d6850d
Update CHANGELOG
luisangelsm Feb 19, 2026
35e9390
Bump version to 10.0.0
luisangelsm Feb 19, 2026
90069ed
Merge pull request #508 from YACReader/themes
luisangelsm Feb 19, 2026
3d5f6da
Merge pull request #509 from YACReader/update-github-actions
luisangelsm Feb 19, 2026
d4e644d
Format
luisangelsm Feb 19, 2026
3b8575a
Support Qt below 6.5
luisangelsm Feb 19, 2026
256613b
Move #include "folder_model.h" where it's actually used
luisangelsm Feb 19, 2026
976784d
Remove FolderModel and QModelIndex dependencies from LibraryCreator
luisangelsm Feb 20, 2026
3afa2e0
Use jurplel/install-qt-action@v4 ot instal Qt 6.9.3 on Linux jobs
luisangelsm Feb 20, 2026
6b62ade
Drop server v1
luisangelsm Feb 20, 2026
8c308c2
Fix YACReaderLibraryServer compilation
luisangelsm Feb 20, 2026
3e16a4b
Run CI when targeting yacreader10 in PRs
luisangelsm Feb 20, 2026
d204145
Install libpoppler-qt6-dev
luisangelsm Feb 20, 2026
a5faf50
Minimum Qt version required is 6.7
luisangelsm Feb 26, 2026
598a224
Format
luisangelsm Feb 20, 2026
da41acf
Simplify Windows builds in CI
luisangelsm Feb 20, 2026
baefd45
Move check button svgs paths out from theme params
luisangelsm Feb 27, 2026
b2ab337
Drop Qt 5 support
luisangelsm Feb 20, 2026
39b6cf0
Merge pull request #511 from YACReader/remove-severv1
luisangelsm Feb 20, 2026
2f264bf
Replace the info shadow pngs with svg versions and make them themable
luisangelsm Feb 27, 2026
da21453
Merge pull request #512 from YACReader/drop-qt5
luisangelsm Feb 21, 2026
1736470
Remove unused images and server v1 files
luisangelsm Feb 27, 2026
9c2686d
Implement continuous scrolling
luisangelsm Feb 22, 2026
eb93a86
Publish YACReader 10 as a pre-release to make testing easier
luisangelsm Feb 21, 2026
bc32a44
Remove useStyledTemplate
luisangelsm Feb 27, 2026
8e92b1e
Merge pull request #513 from YACReader/continuous-scroll-support
luisangelsm Feb 22, 2026
c7f4d4f
Fully customize the content views toolbar
luisangelsm Feb 27, 2026
d8e9638
Clean leftover code after theming that set QIcons directly
luisangelsm Feb 22, 2026
03e6e12
Simplify the sidebar splitter theming
luisangelsm Feb 28, 2026
419dfa0
Update CHANGELOG
luisangelsm Feb 22, 2026
3d92e1a
Add more parameters to control library item style
luisangelsm Feb 28, 2026
078f9b9
Extract the layout logic to a view model to simplify the update logic…
luisangelsm Feb 26, 2026
bdb659c
Migrate the build system to cmake
luisangelsm Feb 25, 2026
6011115
Don't commit .claude
luisangelsm Feb 22, 2026
abaa0d9
Add TODO to document bug in recolorSvgXML
luisangelsm Feb 28, 2026
986cb86
Implement a small cache to avoid scaling continuously while painting
luisangelsm Feb 26, 2026
eabe5e8
Enable ninja in docker builds
luisangelsm Feb 25, 2026
054c100
Remove plan file
luisangelsm Feb 22, 2026
3bcc3af
Add more custom colors to the side bar elements so we can theme selec…
luisangelsm Feb 28, 2026
3f0d92d
Format
luisangelsm Feb 26, 2026
86eb20f
Merge pull request #515 from YACReader/qmake-to-cmake-migration
luisangelsm Feb 26, 2026
e8133f2
Rename comics table view header parameters
luisangelsm Feb 28, 2026
2d6b380
Keep what's new dialog up to date for users trying YACReader 10
luisangelsm Feb 26, 2026
f01f45b
Merge pull request #516 from YACReader/continuous-scroll-improvements
luisangelsm Feb 26, 2026
1a52d43
Add control over comics table view item top/bottom borders size
luisangelsm Feb 28, 2026
4cf7520
Merge pull request #517 from YACReader/update-what-is-new-10
luisangelsm Feb 26, 2026
2a0d10d
Add a explicit parameter to control the top gradient value in the com…
luisangelsm Feb 28, 2026
f57a654
Update some of the light theme values
luisangelsm Mar 1, 2026
862c3db
Fix blur background setting
luisangelsm Mar 1, 2026
7fca7ba
Make the blur backgroud color overlay themable
luisangelsm Mar 1, 2026
573e85f
Use json file based themes instead of code to create them (theme edit…
luisangelsm Mar 2, 2026
e69a610
Rename YACReaderLibrary json theme sections to be more user friendly
luisangelsm Mar 2, 2026
dfb2fe5
Make json keys display as human readable strings in the theme editor
luisangelsm Mar 2, 2026
a0253ec
Fix qrc prefix
luisangelsm Mar 3, 2026
78da4ad
Reformat json theme files so the content is sorted alphabetically all…
luisangelsm Mar 3, 2026
9f643fe
Tweak default dark YACReaderLibrary theme
luisangelsm Mar 4, 2026
2054816
Implement theme pickers + importing
luisangelsm Mar 5, 2026
328d1c1
Print clang-format version in CI
luisangelsm Mar 5, 2026
19bf965
Fix translator using new backends
luisangelsm Mar 5, 2026
6fe8fa1
Update .clang-format
luisangelsm Mar 5, 2026
e5f0f81
Remove unused images
luisangelsm Mar 5, 2026
1fabcab
Format
luisangelsm Mar 5, 2026
f510aeb
Make the translator themeable
luisangelsm Mar 5, 2026
4864854
Merge pull request #518 from YACReader/theming-settings
luisangelsm Mar 5, 2026
80b938b
Update what's new
luisangelsm Mar 5, 2026
2f69734
Use curl instead of wget
luisangelsm Mar 5, 2026
f8fc98f
Fix the magnifying glass in continuous scroll mode
luisangelsm Mar 5, 2026
7bdd771
Merge pull request #519 from YACReader/fix-translator
luisangelsm Mar 5, 2026
ed7d2d7
Merge pull request #520 from YACReader/fix-magnifiying-glass-in-conti…
luisangelsm Mar 5, 2026
25e794e
Start signing YACReader 10 dev builds that get published
luisangelsm Mar 5, 2026
ea7797f
Add a new module for resizing images including Lanczos
luisangelsm Mar 6, 2026
30273b0
Include publish notes when releasing builds
luisangelsm Mar 6, 2026
caff445
Add a setting to control the scaling method used
luisangelsm Mar 6, 2026
7814f2d
Add scripts that can be used to ensure format
luisangelsm Mar 6, 2026
ffb8540
Use the new resize image API to resize the pages while reading
luisangelsm Mar 6, 2026
828b737
Use target app and version in themes meta
luisangelsm Mar 6, 2026
4f73fb5
Trigger a rendering pass when the settings change
luisangelsm Mar 6, 2026
970872f
Improve theme editor usability so themes can be set from it
luisangelsm Mar 6, 2026
85c93b0
Update CHANGELOG
luisangelsm Mar 6, 2026
4c96376
Add AGENTS.md and CLAUDE.md
luisangelsm Mar 6, 2026
0341e64
Merge pull request #521 from YACReader/lanzcos-scaling
luisangelsm Mar 6, 2026
b660f6e
Remove useless verification
luisangelsm Mar 6, 2026
dfb3b32
Better placement for the continuous scroll icon
luisangelsm Mar 6, 2026
e82c2f4
Add a rule for the firewall automatically on windows.
luisangelsm Mar 6, 2026
73d9c97
Update the what's new dialog
luisangelsm Mar 6, 2026
05f8b0b
Provide more meaningful theme colors to deal with not completed and r…
luisangelsm Mar 7, 2026
47195e5
Eliminate hardcoded colors from qml to make theming more flexible
luisangelsm Mar 7, 2026
4478f92
Better naming in some of the theme properties used in qml
luisangelsm Mar 7, 2026
18e19c0
Fix drag for scrolling in continuous scroll mode
luisangelsm Mar 7, 2026
3693dd9
Fix the continuous scroll mode in hdpi screen modes
luisangelsm Mar 7, 2026
85f4b81
Add a setting to select the language in the options dialog
luisangelsm Mar 11, 2026
8392715
Update CHANGELOG
luisangelsm Mar 11, 2026
8a50e4c
Fix info view indicator background
luisangelsm Mar 8, 2026
459b53c
Merge pull request #524 from YACReader/support-explicit-language-sele…
luisangelsm Mar 11, 2026
27c074a
Bump actions versions
luisangelsm Mar 11, 2026
1dc01b2
Fixed and normalized multiple translations
luisangelsm Mar 11, 2026
a9a439c
Better console output in Windows
luisangelsm Mar 12, 2026
fa9903d
Include sanitation
luisangelsm Mar 13, 2026
2af54ac
Add support for loading image plugins through the settings folder of …
luisangelsm Mar 14, 2026
4faa2ca
Format includes using clang-format
luisangelsm Mar 13, 2026
81ac9b2
Merge pull request #525 from YACReader/loads-plugins-from-settings-fo…
luisangelsm Mar 14, 2026
9cf8dea
Replace old apps icons with new ones
luisangelsm Mar 15, 2026
9ec9f2d
Replace goto.png with a themeable svg image
luisangelsm Mar 17, 2026
af73947
Remove unused images
luisangelsm Mar 21, 2026
1c7c680
find_package GuiPrivate explicitly
luisangelsm Mar 29, 2026
091e8fd
Add missing resource: yacreaderlibraryserver_images_rcc
luisangelsm Mar 29, 2026
8a64549
Improve backends handling and make DECOMPRESSION_BACKEND and PDF_BACK…
luisangelsm Mar 29, 2026
8e3f4d8
Use Find*.cmake files for backend discovery
luisangelsm Mar 29, 2026
f916978
Better linux install handling
luisangelsm Mar 29, 2026
33a26a9
Clean up CompilerOptions.cmake
luisangelsm Mar 30, 2026
42989b7
Remove QT_DISABLE_DEPRECATED_BEFORE from PdfBackend.cmake
luisangelsm Mar 30, 2026
09b3a31
Use QT_DISABLE_DEPRECATED_UP_TO globally
luisangelsm Mar 30, 2026
733cc2c
Remove no longer needed patch
luisangelsm Mar 21, 2026
e4b9a2d
Fix all compilation issues after enabling QT_DISABLE_DEPRECATED_UP_TO
luisangelsm Mar 30, 2026
9abf2e5
Make flow ribbons themeable
luisangelsm Mar 21, 2026
b3aa046
Sanitize CMake source directory references
luisangelsm Mar 30, 2026
7e4cee2
Extract noLibrariesWidget theme and use themed line assets
luisangelsm Mar 21, 2026
08696c1
Set the maximum upper cmake version tested
luisangelsm Mar 30, 2026
d3bbb2c
Normalize color strings so they are always upper case for better read…
luisangelsm Mar 22, 2026
6ec63b8
Migrate qt_add_resources to the Qt6 target-based approach
luisangelsm Mar 30, 2026
8162715
Fix Italian translation for Restore
luisangelsm Mar 22, 2026
2a0efec
Don't use CMAKE_RUNTIME_OUTPUT_DIRECTORY for Linux
luisangelsm Mar 30, 2026
c1df9de
Translation fixes
luisangelsm Mar 22, 2026
eebf7af
Extract VERSION to avoid duplication
luisangelsm Mar 30, 2026
7e85da6
Add more built in themes.
luisangelsm Mar 22, 2026
eb3213f
Use Qt6:: syntax for Qt modules
luisangelsm Mar 30, 2026
9a84e77
Fix label colors in the default Dark theme
luisangelsm Mar 22, 2026
1e78685
Scope compiler defines and remove forced 7zip NDEBUG
luisangelsm Mar 30, 2026
240f1b5
Format
luisangelsm Mar 22, 2026
789aa41
Improve Summary
luisangelsm Mar 30, 2026
575672d
Don't live regenerate the theme when writing in the the name field
luisangelsm Mar 24, 2026
e8054cf
Update AGENTS.md
luisangelsm Mar 30, 2026
f84a38e
Fix German translations
luisangelsm Mar 24, 2026
40a87fd
Fix version checking
luisangelsm Mar 30, 2026
7f6161d
Use continuous scroll mode automatically when a web comic is open
luisangelsm Mar 24, 2026
fb605f7
Merge pull request #528 from YACReader/improve-cmake
luisangelsm Mar 30, 2026
9a4e141
Fix default background color being stuck when changing themes
luisangelsm Mar 30, 2026
a2898a7
Improve window state handling
luisangelsm Apr 4, 2026
4fa5c99
Update README.md
luisangelsm Apr 4, 2026
2f10c36
Update some actions versions
luisangelsm Apr 4, 2026
edc7805
Navigating between comics in the metadata editor no longer copies fie…
luisangelsm Apr 5, 2026
d5cbe19
Fix hdpi trackpad scrolling when scroll animations are enabled.
luisangelsm Apr 8, 2026
0e0dd1a
Fix reloading current folder content
luisangelsm Apr 9, 2026
464db4a
Update the quick start guides
luisangelsm Apr 10, 2026
a2cd9e0
Fix http listener maxThreads initialization
luisangelsm Apr 12, 2026
fc84f07
Capture the right connection name
luisangelsm Apr 12, 2026
ecff5d7
Add some error logs when synchronizing progress can't open the db
luisangelsm Apr 12, 2026
39b4b3e
Fix Cannot create children for a parent that is in a different thread
luisangelsm Apr 12, 2026
e6abdbd
Enable busy_timeout and be more verbose about problems loading the db
luisangelsm Apr 12, 2026
b61b463
Remove console output used during development in FoldercontentView.qml
luisangelsm Apr 12, 2026
8462dab
Remove arrows from scrollbars QSS
luisangelsm Apr 12, 2026
11ba157
Fix first binding pass in grid comics view
luisangelsm Apr 12, 2026
3a119b9
Fix PDFs with crop information on macOS.
luisangelsm Apr 15, 2026
109eafb
Fix static files serving
luisangelsm Apr 20, 2026
bf1f753
Drop yacreader10 ci tooling
luisangelsm Apr 27, 2026
1eed854
Merge pull request #510 from YACReader/yacreader10
luisangelsm Apr 27, 2026
41c35c6
YACReader 10 release
luisangelsm May 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
27 changes: 20 additions & 7 deletions .clang-format
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@ Standard: Cpp11
ColumnLimit: 0

# We want a space between the type and the star for pointer types.
PointerBindsToType: false
DerivePointerAlignment: false
PointerAlignment: Right

# We use template< without space.
SpaceAfterTemplateKeyword: false
Expand Down Expand Up @@ -43,20 +44,32 @@ NamespaceIndentation: None
# The coding style does not specify the following, but this is what gives
# results closest to the existing code.
AlignAfterOpenBracket: true
AlwaysBreakTemplateDeclarations: true
BreakTemplateDeclarations: Yes

# Ideally we should also allow less short function in a single line, but
# clang-format does not handle that.
AllowShortFunctionsOnASingleLine: Inline

# The coding style specifies some include order categories, but also tells to
# separate categories with an empty line. It does not specify the order within
# the categories. Since the SortInclude feature of clang-format does not
# re-order includes separated by empty lines, the feature is not used.
SortIncludes: false
# Sort includes and regroup them into consistent blocks:
# 0. self include (the .h matching the .cpp, automatic)
# 1. project includes ""
# 2. Qt includes <Q...>
# 3. system includes <...>
SortIncludes: CaseSensitive
IncludeBlocks: Regroup
IncludeCategories:
- Regex: "^\""
Priority: 1
- Regex: "^<Q"
Priority: 2
- Regex: "^<"
Priority: 3

# macros for which the opening brace stays attached.
ForEachMacros: [ foreach, BOOST_FOREACH, forever, Q_FOREVER, QBENCHMARK, QBENCHMARK_ONCE ]

# Break constructor initializers before the colon and after the commas.
BreakConstructorInitializers: BeforeColon

# Empty blocks should be {}
SpaceInEmptyBraces: Always
31 changes: 31 additions & 0 deletions .github/actions/extract-release-notes/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Extract Release Notes
description: Extract release notes from CHANGELOG.md for a given version

inputs:
version:
description: Version to extract notes for
required: true

outputs:
notes:
description: Extracted release notes
value: ${{ steps.extract.outputs.notes }}

runs:
using: composite
steps:
- id: extract
shell: bash
run: |
VERSION="${{ inputs.version }}"
MAJOR="${VERSION%%.*}"
# Try exact version match first, fall back to major version match
NOTES=$(awk "/^## ${VERSION}( |$)/{found=1; next} /^## /{if(found) exit} found{print}" CHANGELOG.md)
if [ -z "$NOTES" ]; then
NOTES=$(awk "/^## ${MAJOR}( |$)/{found=1; next} /^## /{if(found) exit} found{print}" CHANGELOG.md)
fi
{
echo "notes<<EOF"
echo "$NOTES"
echo "EOF"
} >> $GITHUB_OUTPUT
33 changes: 33 additions & 0 deletions .github/actions/prepare-release-artifacts/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: Prepare Release Artifacts
description: Download and flatten release artifacts for publishing

runs:
using: composite
steps:
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: artifacts

- name: List downloaded artifacts
shell: bash
run: |
echo "=== All artifacts downloaded ==="
ls -lR artifacts/
echo ""
echo "=== Windows artifacts only ==="
ls -l artifacts/windows-*/

- name: Flatten artifacts (exclude unsigned Windows installers)
shell: bash
run: |
mkdir -p staging
# Copy all files except those from unsigned Windows artifact directories
find artifacts -type f ! -path "*/windows-*-unsigned-*/*" -exec cp {} staging/ \;
echo ""
echo "=== Files copied to staging ==="
ls -lh staging/
echo ""
echo "=== Windows installers in staging ==="
ls -lh staging/YACReader*.exe || echo "No Windows installers found"

Loading
Loading