* multi search mode system
A way to change the search from requiring all tags to and of the tags
* better wording
* Update start_win.bat
Co-authored-by: Travis Abendshien <46939827+CyanVoxel@users.noreply.github.com>
* Fix home_ui.py using PySide6 instead of PyQt5
* Refresh search on mode change
* Search mode selections naming fix
Co-authored-by: Travis Abendshien <46939827+CyanVoxel@users.noreply.github.com>
* converted SearchMode from constants to enums
* Prevent Automatic opening of a Library if the ".TagStudio" folder has been deleted.
If the library no longer has a `.TagStudio` folder clear the Last_Library value
* Add disabling recent libraries that are missing or have missing `.TagStudio` folders
* Fix bug where this would crash if an empty library was passed
* Grabbed the wrong color
* Fix text and RAW image handling
- Fix RAW images not being loaded correctly in the preview panel
- Fix trying to read size data from null images
- Refactor `os.stat` to `<Path object>.stat()`
- Remove unnecessary upper/lower conversions
- Improve encoding compatibility beyond UTF-8 when reading text files
- Code cleanup
* Use chardet for character encoding detection
* Basic Video Player
* Fixes and Comments
* Fixed Bug Where Video's Audio did not stop when switching to a Image.
* Redo on VideoPlayer. Now with rounded corners.
* Fixed size not being correct when first starting video player.
* Ruff Check Fix
* Fixed Sizing Issue, and added Autoplay option in right click menu.
* Autoplay Toggle and Fixed Issue with video not stoping after closing library.
* Ruff Format
* Suggested Changes Done
* Commented out useless code that cause first warning.
* Fixed Album Art Error
* Might have found solution to Autoplay Inconsistency
* Ruff Format
* Finally Fixed Autoplay Inconsistency
* Fixed Merge Conficts
* Requested Changes and Ruff Format
* Test for new check
* Fix for PySide App Test
* More typing fixes and a few other changes.
* Ruff Format
* MyPy Fix
* MyPy Fix
* Ruff Format
* MyPy Fix
* MyPy and Ruff Fix
* Code Clean-Up and Requests completed.
* Conflict Fixes
* MyPy Fix
* Confict Fix
It appears one of the commits from main fixed the autoplay issue.
* Replace usage of os.path with usage of pathlib.Path in ts_cli.py
* Replace use of os.path with pathlib in Library.py
* Replace use of os.path with pathlib in ts_core.py
* resolve entry path/filename on creation/update
* Fix errors and bugs related to move from os.path to pathlib.
* Remove most uses of '.resolve()' as it didn't do what I thought it did
* Fix filtering in refresh directories to not need to cast to string.
* Some work on ts_qt, thumbnails don't load...
* Fixed the thumbnail issue, things seem to be working.
* Fix some bugs
* Replace some isfile with is_file ts_cli.py
* Update tagstudio/src/core/library.py
Co-authored-by: yed podtrzitko <yedpodtrzitko@users.noreply.github.com>
* Update library.py
* Update library.py
* Update library.py
* Update ts_cli.py
* Update library.py
* Update ts_qt
* Fix path display in delete unlinked entries modal
* Ruff formatting
* Builds and opens/creates library now
* Fix errors
* Fix ruff and mypy issues (hopefully)
* Fixed some things, broke some things
* Fixed the thumbnails not working
* Fix some new os.path instances in qt files
* Fix MyPy issues
* Fix ruff and mypy issues
* Fix some issues
* Update tagstudio/src/qt/widgets/preview_panel.py
Co-authored-by: Travis Abendshien <46939827+CyanVoxel@users.noreply.github.com>
* Update tagstudio/src/qt/widgets/preview_panel.py
Co-authored-by: Travis Abendshien <46939827+CyanVoxel@users.noreply.github.com>
* Update tagstudio/src/qt/widgets/preview_panel.py
Co-authored-by: Travis Abendshien <46939827+CyanVoxel@users.noreply.github.com>
* Update tagstudio/src/qt/widgets/preview_panel.py
Co-authored-by: Travis Abendshien <46939827+CyanVoxel@users.noreply.github.com>
* Update tagstudio/src/qt/widgets/thumb_renderer.py
Co-authored-by: Travis Abendshien <46939827+CyanVoxel@users.noreply.github.com>
* Update tagstudio/src/qt/widgets/thumb_renderer.py
Co-authored-by: Travis Abendshien <46939827+CyanVoxel@users.noreply.github.com>
* Fix refresh_dupe_files issue
* Ruff format
* Tweak filepaths
- Suffix comparisons are now case-insensitive
- Restore original thumbnail extension label behavior
- Fix preview panel trying to read file size from missing files
---------
Co-authored-by: yed podtrzitko <yedpodtrzitko@users.noreply.github.com>
Co-authored-by: Travis Abendshien <lvnvtravis@gmail.com>
- Running "Fix Unlinked Entries" will no longer result in duplicate entries if the directory was refreshed after the original entries became unlinked.
- A "Duplicate Entries" section is added to the "Fix Unlinked Entries" modal to help repair existing affected libraries.
- Add support for HEIC/HEIF image thumbnails and previews
- Replace dependency "pillow_avif_plugin" with "pi-heif"
- Remove unused dependencies in ts_cli.py
- Add thumbnail and preview support for RAW images ["raw", "dng", "rw2", "nef", "arw", "crw", "cr3"]
- Optimize the preview panel's dimension calculations (still need to move this elsewhere)
- Refactored use of "Path" in thumb_renderer.py
When loading an image for thumbnails and previews, the resampling method is now determined by the size of the original image. Now low resolution images use "nearest neighbor" sampling while higher resolution images continue to use "bilinear" sampling.
* Refactor: remove __init__ meant for Python versions before 3.3
This does mess with a large amount of imports, as the system was being
misused to re-export submodules. This change is necessary if PyInstaller
is to work at all.
* Add MacOS icon
* Create PyInstaller spec file
* Create Release workflow
Creates executable with PyInstaller, leveraging tag_studio.spec
* Support both nonportable and portable in tag_studio.spec
* Rename spec-file to create consistently-named directories
* Only ignore other spec files
* Swap exclusion option
* Use windowed application
* Ensure environment variables are strings
* Cleanup visual order on GitHub interface
* Use app for MacOS
* Only cycle through MacOS version
* All executables generated for MacOS are portable
* Use up-to-date packages
Should resolve caching issues
* Correct architecture naming for MacOS