Commit Graph

1087 Commits

Author SHA1 Message Date
Travis Abendshien 435f5ff2b6 fix(ui) fix suggest box icon and opacity edge cases v9.6.3 2026-08-15 14:05:46 -07:00
Travis Abendshien 3cebb211b3 docs: ammend changelog 2026-08-15 13:28:26 -07:00
Travis Abendshien 512bf623c2 fix(ui): fix accent color issues on Windows (#1477) 2026-08-15 13:24:39 -07:00
Travis Abendshien 30c81257fa fix: revert update check order 2026-08-15 13:24:24 -07:00
Travis Abendshien fcd4d67711 fix(logs): use correct name for missing optional modules 2026-08-15 12:49:22 -07:00
Travis Abendshien b44ab8f161 docs: update changelog 2026-08-15 11:08:27 -07:00
Travis Abendshien 56a0b73cbd fix: early return higher DB version, log+type hint fixes (#1476) 2026-08-15 11:03:12 -07:00
Travis Abendshien 3ce65552f7 fix: yield from all_entries() instead of returning (fixes #1447, fixes #1467) 2026-08-15 10:29:46 -07:00
Weblate (bot) 49e320618c translations: update from Hosted Weblate (#1468)
* Translated using Weblate (Japanese)

Currently translated at 100.0% (428 of 428 strings)

Co-authored-by: coolvitto <coolzdaddy55@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/tagstudio/strings/ja/
Translation: TagStudio/Application Strings

* Translated using Weblate (Hungarian)

Currently translated at 100.0% (428 of 428 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Szíjártó Levente Pál <szijartoleventepal@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/tagstudio/strings/hu/
Translation: TagStudio/Application Strings

* Translated using Weblate (Hebrew)

Currently translated at 2.3% (10 of 423 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: random stuff <random.uselesss.stuff@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/tagstudio/strings/he/
Translation: TagStudio/Application Strings

* Translated using Weblate (French)

Currently translated at 100.0% (423 of 423 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Med <45147847+kitsumed@users.noreply.github.com>
Translate-URL: https://hosted.weblate.org/projects/tagstudio/strings/fr/
Translation: TagStudio/Application Strings

---------

Co-authored-by: coolvitto <coolzdaddy55@gmail.com>
Co-authored-by: Szíjártó Levente Pál <szijartoleventepal@gmail.com>
Co-authored-by: random stuff <random.uselesss.stuff@gmail.com>
Co-authored-by: Med <45147847+kitsumed@users.noreply.github.com>
2026-08-14 21:46:34 -07:00
Travis Abendshien 102cfdf4a2 feat(ui): add library format version to about window 2026-08-14 10:29:37 -07:00
Travis Abendshien 47b123569e chore: bump version to v9.6.3 2026-08-14 10:29:06 -07:00
Travis Abendshien 09a54d5dfc fix(ui): remove blank action for field suggest box 2026-08-14 10:16:44 -07:00
Travis Abendshien 7782d2438f ui: add unique icon for applied tags in suggest box 2026-08-14 10:13:56 -07:00
Travis Abendshien 92e29635c7 ui: show edges of next tags in suggest box 2026-08-14 10:12:00 -07:00
Travis Abendshien 6e288afd8c refactor: consolidate added item detection on shift 2026-08-14 08:49:35 -07:00
Travis Abendshien 354c0a0afc fix(ui): increase spacing between color groups 2026-08-14 00:49:42 -07:00
Travis Abendshien dd00f4d4a0 fix: move add_colors() out of double session
The double session started causing a lock on the DB that prevented new colors from being added.
2026-08-14 00:22:08 -07:00
Travis Abendshien 1bfea60d7a fix(ui): remove blank action on suggest boxes 2026-08-13 22:47:17 -07:00
Travis Abendshien c015b1d4f2 fix(ui): shifting no longer resets opacity of added tags 2026-08-13 21:57:13 -07:00
Travis Abendshien 4b200a674e feat(ui): add hint icons to suggest boxes (#1475)
* feat(ui): add hint icons to suggest boxes

* docs: directly mention new icons
2026-08-13 20:22:52 -07:00
Travis Abendshien 507823bfcd feat(ui): use tab and shift+tab to navigate suggest boxes (#1474)
* fix(ui): correct suggest box content padding

* feat(ui): use tab and shift+tab to navigate suggest boxes

* fix: strip suggest box queries of whitespace

* fix(ui): fix shift opacity not targeting correct widget

* chore: cleanup comments and variable usage
2026-08-13 19:44:36 -07:00
Travis Abendshien 3def6c5239 feat(ui): translate vertical scrolling to horizontal in suggest boxes (#1473) 2026-08-13 19:44:21 -07:00
Travis Abendshien f04421fa93 feat: keep suggest boxes open by default (#1472) 2026-08-13 19:44:05 -07:00
Jann Stute b29e612e7f refactor: almost final migrations cleanup (#1456)
* fix: backup library before making any changes

* refactor: inline make_tables + minor cleanup

* refactor: remove unnecessary assurance

Bumping the auto increment value has been done since the original sql PR, so it doesn't need to be done on migrations.
See e5e7b8afc6.

* refactor: don't blindly create all tables in the beginning

The only table that has been added since DB version 6 (the earliest supported version), is the versions table in DB version 101.
This commit removes the "create all tables" statement, and instead creates the versions table in the 101 migration.
See 12e074b71d.

* refactor: don't require setting library_dir to create a backup

* refactor: move migrations to different file

* refactor: package each migration in a class

* fix: some syntax errors had slipped through

* fix: allow set_version to fail, but don't commit in that case

* refactor: condense imports

* fix: add override decorators

* refactor: move set_version to DBMigrations

* refactor: remove unnecessary assignment

* refactor: use _ instead of __

* fix: add missing field templates tables
2026-08-11 15:14:33 -07:00
Travis Abendshien 5852c59f1c docs: update changelog v9.6.2 2026-08-06 09:37:24 -07:00
Travis Abendshien 27fd1a4518 fix(docs): fix broken PEP 8 link 2026-08-05 16:15:10 -07:00
Travis Abendshien 8722c5f83e docs: update basic usage with tagging bar 2026-08-05 16:00:45 -07:00
Travis Abendshien f52e0fa568 fix: don't update media playback when adding tags from menu modal (fix #1457) 2026-08-03 15:44:45 -07:00
Travis Abendshien 4de9571d0b refactor: split ThumbRenderer class (#1462)
* refactor: split ThumbRenderer class

* refactor: consolidate embedded archive thumbnail functions

* fix: move jxl optional import to raster_image.py

* refactor: name and license consistency, misc fixes

* fix: remove file_renderer.py

* refactor: split Qt functions from thumb renderer

* refactor: cleanup vendored blender file

* refactor: rename ambiguous variables

* chore: implement review feedback

* chore: rename missed old variables
2026-08-03 14:33:54 -07:00
Xarvex ed0332b0e2 chore(nix/package): update inputs, use versioned chardet 2026-08-01 13:43:58 -05:00
Xarvex 13104381a4 chore(nix/shell): replace deprecated xorg package sets 2026-08-01 13:43:58 -05:00
Xarvex 7d2135c1f7 nit(nix/shell): use single packages attribute
See: https://github.com/TagStudioDev/TagStudio/pull/1415#issuecomment-5152755256
2026-08-01 13:43:56 -05:00
Travis Abendshien 6177befebb refactor(ui): apply new MVC guidelines to search panels (#1461)
* feat(ui): replace add tag modal with autocomplete search/create bar

* refactor: code cleanup and fixes

* refactor: RADICAL mvc refactor...

* feat: add setting to open edit window when creating tags

* refactor(ui): refactor preview panel into new MVC pattern

* refactor: remove controller suffix from preview_panel.py

* Revert "refactor: remove controller suffix from preview_panel.py"

This reverts commit c8ba9b15c2.

* feat(ui): add autocomplete search for field templates

* fix(ui): fix issues with tag and field widget appearances

* refactor(ui): use Qt's .layout() method instead of _layout references

* feat(ui): add underline indicator for search bar items

* refactor: remove view parameters

* refactor(ui): refactor PanelModal and PanelWidget into MVC Modal, ModalView, and ModalContent classes

* refactor(ui): refactor SearchPanel classes to use newer MVC pattern

* fix: remove deprecated methods

* chore: fixes after rebase
2026-07-27 12:43:11 -07:00
Travis Abendshien ff43c4a4bd refactor(ui): refactor PanelModal and PanelWidget into MVC Modal, ModalView, and ModalContent classes (#1454)
* feat(ui): replace add tag modal with autocomplete search/create bar

* refactor: code cleanup and fixes

* refactor: RADICAL mvc refactor...

* feat: add setting to open edit window when creating tags

* refactor(ui): refactor preview panel into new MVC pattern

* refactor: remove controller suffix from preview_panel.py

* refactor: remove unnecessary methods and properties

* Revert "refactor: remove controller suffix from preview_panel.py"

This reverts commit c8ba9b15c2.

* feat(ui): add autocomplete search for field templates

* fix(ui): fix issues with tag and field widget appearances

* refactor(ui): use Qt's .layout() method instead of _layout references

* refactor: remove view parameters

* refactor(ui): refactor PanelModal and PanelWidget into MVC Modal, ModalView, and ModalContent classes

* chore: fixes after rebase
2026-07-27 11:54:03 -07:00
Travis Abendshien ac4c28687e docs: update style guide (#1458)
* docs: update style guide

* docs: add driver argument guideline
2026-07-27 10:28:12 -07:00
Travis Abendshien 5557fe4f7c feat(ui/ux): replace "Add Tag/Field" modals with search+create bar(s) with autocomplete (#1451)
* feat(ui): replace add tag modal with autocomplete search/create bar

* fix(ui): restore esc to deselect entries behavior

* refactor: code cleanup and fixes

* refactor: RADICAL mvc refactor...

* feat: add setting to open edit window when creating tags

* feat(ui): add edit tag setting to context menu, tweak translations

* chore: remove unused TYPE_CHECKING imports

* chore: remove unused local import

* refactor(ui): refactor preview panel into new MVC pattern

* refactor: remove controller suffix from preview_panel.py

* refactor: remove unnecessary methods and properties

* Revert "refactor: remove controller suffix from preview_panel.py"

This reverts commit c8ba9b15c2.

* chore: cleanup comments

* feat(ui): add autocomplete search for field templates

* feat(ui): add shortcut for opening field template search bar

* fix(ui): update tag search bar when entry tags are updated

* fix(ui): fix issues with tag and field widget appearances

* refactor(ui): use Qt's .layout() method instead of _layout references

* feat(ui): add underline indicator for search bar items

* ui: misc UI fixes and tweaks

* refactor: remove view parameters

* docs: update docstrings
2026-07-27 10:27:54 -07:00
Weblate (bot) 2fdd1e4cb3 translations: update from Hosted Weblate (#1443)
* Translated using Weblate (Hungarian)

Currently translated at 100.0% (423 of 423 strings)

Co-authored-by: Szíjártó Levente Pál <szijartoleventepal@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/tagstudio/strings/hu/
Translation: TagStudio/Application Strings

* Translated using Weblate (Spanish)

Currently translated at 100.0% (422 of 422 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (422 of 422 strings)

Co-authored-by: 2004milenadiaz-source <2004.milena.diaz@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Julen Arratibel Etxabe <jarratibeletxabe@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/tagstudio/strings/es/
Translation: TagStudio/Application Strings

* Translated using Weblate (French)

Currently translated at 100.0% (422 of 422 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Med <45147847+kitsumed@users.noreply.github.com>
Translate-URL: https://hosted.weblate.org/projects/tagstudio/strings/fr/
Translation: TagStudio/Application Strings

* Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 79.3% (335 of 422 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: ??? <2807603108@qq.com>
Translate-URL: https://hosted.weblate.org/projects/tagstudio/strings/zh_Hans/
Translation: TagStudio/Application Strings

---------

Co-authored-by: Szíjártó Levente Pál <szijartoleventepal@gmail.com>
Co-authored-by: 2004milenadiaz-source <2004.milena.diaz@gmail.com>
Co-authored-by: Julen Arratibel Etxabe <jarratibeletxabe@gmail.com>
Co-authored-by: Med <45147847+kitsumed@users.noreply.github.com>
Co-authored-by: ??? <2807603108@qq.com>
2026-07-25 05:50:14 -07:00
Travis Abendshien 0d0c54e09f ci(docs): migrate from mkdocs to properdocs (#1459)
* ci(docs): migrate from mkdocs to properdocs

* ci(docs): remove extraneous env

---------

Co-authored-by: Xarvex <60973030+xarvex@users.noreply.github.com>
2026-07-25 02:32:46 -07:00
Travis Abendshien f24653e030 docs: update styling 2026-07-22 18:31:18 -07:00
Travis Abendshien c30dee799a docs: update Nix verbage 2026-07-22 18:30:57 -07:00
Travis Abendshien 15230cc369 fix: assign new tag ID to aliases before adding them (#1455) 2026-07-21 20:46:08 -07:00
Travis Abendshien c3b6bec2ff chore: pass ripgrep label text to constructor 2026-07-19 19:49:37 -07:00
Travis Abendshien 58496a7d2d build: add nightly icons and strings 2026-07-19 19:48:27 -07:00
Travis Abendshien dc4251ff55 chore: bump version to v9.6.2 2026-07-19 19:19:29 -07:00
purpletennisball 174262b9b3 feat(thumbs): render .ai thumbnails (#1453) 2026-07-19 19:16:39 -07:00
Xarvex 27d761731c fix(ci): setup Ruff once, invoke manually
The parallel steps can have a race condition if they both have a lock on
the final Ruff installation path.

Initially, the action was reused for formatting and linting as the
ruff-action sets the necessary environment variables and matchers,
responsible for the annotations on the GitHub UI. Though, as it turns
out, this is already done whenever Ruff is installed, there is no
"special magic" whenever execution of the process happens.

So, only use the action for setup once, and in the parallel steps we can
invoke Ruff ourselves.
2026-07-19 16:11:40 -05:00
Jann Stute 51a9c16f50 refactor: remove dead folders table (#1444)
* refactor: remove dead folders table

* fix: remove folder param from all uses of Entry constructor

* fix: missing filename column after migration

* fix: bump db version to 300, since it is a breaking change

* fix: add empty library fixture for version 202
2026-07-17 17:35:08 -07:00
Travis Abendshien 6aa0cf74f9 chore: removed unused collage_icon.py file 2026-07-12 21:08:31 -07:00
Travis Abendshien 49b450c3a4 fix: don't prevent greater minor version DBs from opening 2026-07-12 20:58:53 -07:00
Ludvig Sandh a1dfa62e4a fix: correctly display duration statistic in preview panel (#1421)
* fix: correctly display duration statistic in preview panel

* style: format file_attributes.py with ruff

* refactor: consolidate preview thumb current file state

* refactor: remove another redundant current file state

* refactor: move generic format_duration function to string formatting util file

* refactor: tighten signal's declared types
2026-07-12 13:16:14 -07:00