1
0
Fork 0
mirror of synced 2024-05-26 23:30:51 +12:00
Commit graph

302 commits

Author SHA1 Message Date
Rafał Mikrut 0f0e7a338f
[WIP] Add raw images support (#532)
* Add raw images support

* Potato

* Update
2021-12-31 22:34:24 +01:00
Rafał Mikrut 382f12acb3
Fast compare option (#529) 2021-12-28 21:20:48 +01:00
Rafał Mikrut d8700f6e78
Don't crash when adding directories (#527) 2021-12-28 14:08:55 +01:00
Rafał Mikrut 7cff862434 Remove application ID 2021-12-27 16:30:41 +01:00
Rafał Mikrut 25301eb56e
Translation button (#526) 2021-12-27 06:11:45 +01:00
Rafał Mikrut 5be801e763 Add computer translated German translation(testing purposes) 2021-12-26 15:35:17 +01:00
Rafał Mikrut d8dc176e63 Small changes and fixes 2021-12-26 12:08:37 +01:00
Rafał Mikrut 1f5fca3f46
Add new step to check progress of comparing images. (#525)
Fix empty loaded items in e.g. Excluded Directories.
Fix bug with non-loading proper image results
2021-12-25 22:23:18 +01:00
Rafał Mikrut e2494d240f
Reorganize saving/loading data from file (#524) 2021-12-25 13:19:41 +01:00
Rafał Mikrut c4f26883b1
Add reference folders (#516)
* Add reference folder

* Basic tree view cleaning

* Computations

* Similar Images

* Muzyka i Wideo

* Podwójne dwa razy, cztery razy!

* Rozmiar i Nazwa

* Spanko i działanko(przynajmniej zdaje mi się że działa)

* Translatanko
2021-12-24 09:18:55 +01:00
Rafał Mikrut 5db5d17afb
Use max line length 180 instead 250 (#515)
This was a little too big value.
I don't like too much too small values, because code looks ugly.
2021-12-21 18:44:20 +01:00
Rafał Mikrut 878550446d
Show how many files will be deleted/moved (#514)
* Print proper character(\) in Windows when printing files

* Show how many files will be moved/deleted.
Don't show dialog when 0 files is selected
2021-12-21 18:23:17 +01:00
Igor b320d6aa3a
Add Italian translation (#508)
* Add Italian translation - #251

* Italian translation reviewed.

* Updated languages in misc/translation_test.py

* Italian translation reviewed.
2021-12-21 06:35:53 +01:00
Rafał Mikrut d1ac2f3c22
Update translation and add helpful script (#510) 2021-12-19 21:42:14 +01:00
Rafał Mikrut 0a924d2355
Improve translations (#507)
* Improve translations

* Imports
2021-12-19 14:45:10 +01:00
Rafał Mikrut c8ade1fb0f
Use system language when available (#506)
* Use system language when available

* Use clippy nightly
2021-12-18 23:45:37 +01:00
Rafał Mikrut c97bacad99
Add more GTK 4 compatibility fixes (#505)
* Add more compatibility fixes

* Simplify
2021-12-18 16:48:30 +01:00
Rafał Mikrut 619e64466c
More GTK4 compatibility fixes (#503)
* Don't create new treeview

* Dont

* ABC

* Detlaff

* Update
2021-12-17 19:44:29 +01:00
Rafał Mikrut cf668d02a7
Implement threaded search in rest of modes(except empty folders) (#504)
* Implement threaded search in rest of modes(except empty folders)

* Add more tools in gui to use allowed extension

* Change progress window to modal

* Nazair

* Clippy
2021-12-17 19:29:37 +01:00
Rafał Mikrut c041ab416e
Better ignore same size files (#501) 2021-12-13 20:13:49 +01:00
Rafał Mikrut 975b285c1f
Make UI take less space (#500) 2021-12-13 19:13:53 +01:00
Rafał Mikrut 89f24f14b5
Use translated strings in more places (#498) 2021-12-12 12:02:53 +01:00
Rafał Mikrut 77a48ca6aa
Add support for translations (#469)
* Reformat code with idea tool

* Pierwsza działająca wersja tłumaczeń

* Działa? I dobrze, bo ma działać

* Ćma szła i się potkła

* Ściął śmiałek źółty rząd pąków.
2021-12-11 16:16:14 +01:00
Rafał Mikrut 5f774e03bd
Add button to ignore images with non unique size. (#493)
This will help with finding different images(non 1:1 which could be easily found by duplicate finder tool)
2021-12-08 23:08:05 +01:00
Rafał Mikrut 457b55ada5
Allow to hide upper notebook (#491) 2021-12-06 14:30:29 +01:00
Rafał Mikrut a8aa8a2a23
Multiple small changes (#490) 2021-12-05 21:01:16 +01:00
Rafał Mikrut e2d31d4f98
Add confirmation and warning dialog to hard/symlinks (#489) 2021-12-05 18:35:41 +01:00
Rafał Mikrut 875ed2c8a9
Enable sorting for simple treeviews (#487) 2021-12-04 20:41:02 +01:00
Rafał Mikrut 5296e1c708
Better comparison of music tags (#485) 2021-12-04 14:49:43 +01:00
Rafał Mikrut ce3d86fd4e
Approximate comparison of music (#483) 2021-12-04 09:29:29 +01:00
Rafał Mikrut c8549b3810
Make settings and progress window a dialog (#481)
This will fix issue with showing windows in random position after removing Window::Position
Settings are modal, so entire app is frozen and this needs to be closed to be able to use e.g. minimize button.
2021-12-03 20:27:59 +01:00
Rafał Mikrut b496809410
Don't try to create previews of images that currently are displayed in preview window (#480)
* Don't try to create previews of images that currently are displayed in preview window

* Don't need to use special buttons anymore
2021-12-03 15:17:59 +01:00
Rafał Mikrut f334bd6975
Add better custom selecting (#479) 2021-12-02 15:33:06 +01:00
Rafał Mikrut bb428171cb
Add better custom selecting (#478) 2021-12-02 13:31:10 +01:00
Rafał Mikrut 1fd53b854b
Add prehash cache support (#477) 2021-12-01 20:09:04 +01:00
Rafał Mikrut 51271dcdf0
Remove HashMB mode (#476)
* Remove HashMB mode

* Add some explanation and remove this from GUI

* Not needing to handle everything
2021-12-01 12:37:17 +01:00
Rafał Mikrut 8c4c67e26f
More GTK 4 related changes (#474)
* More GTK 4 related changes

* More changes

* Change button to MenuButton
2021-12-01 11:09:47 +01:00
Rafał Mikrut c7b9abcfa0
Fix buttons when converting to GTK 4 (#473)
* Fix buttons when converting to GTK 4

* Childrens
2021-11-30 13:53:04 +01:00
Rafał Mikrut 4871016a3c
Add option to not remove outdated cache entries (#472)
* Add option to not remove outdated cache entries

* Default duplicates cache size lowered to 512 KB

* Add some tooltips,
Add logic to opening cache/config folders

* Add option to clear cache files from outdated results(manually)
2021-11-30 12:45:09 +01:00
Rafał Mikrut f14101139d
More GTK 4 compatibility fixes (#468)
Bump minimal version to GTK 3.24 and Ubuntu 18.04
Some performance improvements
2021-11-29 11:38:38 +01:00
Rafał Mikrut cf2e822435 Reformat code with idea tool 2021-11-27 20:57:10 +01:00
Rafał Mikrut b7e4eaccaf Modified include organization 2021-11-27 20:49:20 +01:00
Rafał Mikrut 5836e3e5b3
GTK 4 compatibility fixes (#467)
App still require GTK 3.22(3.24 in near future), but converting to GTK 4 should be easier and faster
2021-11-27 16:44:30 +01:00
Rafał Mikrut 16772b1c52 Update Mac installation instruction add info about Chocolatey 2021-11-25 11:15:31 +01:00
Rafał Mikrut c9719758c7
Clean GUI code, make it easier to understand and change (#462)
* Add static variable for basic notebook data

* Opening, selecting results by space, enter and mouse

* Now hard/symbolic links

* Now deleting

* Now popovers

* Move tests to different function

* Don't crash when there is no selected records

* Button symlinks

* Now move

* Compute results

* Move again

* Again Popovers

* More popovers and more

* Key clicking, removing

* KEY_DELETE

* No more GuiData clone

* Adding directories

* Reorganize a little files
2021-11-25 08:36:49 +01:00
Rafał Mikrut 78b49dee3d
Remove support for zeroed files (#461) 2021-11-23 11:38:37 +01:00
Rafał Mikrut 29129d3ec0
Support for finding similar videos (#460)
* Add support for similar videos to CLI

* Add GUI support for similar videos

* Video duplicates

* git_dup

* Documentation
2021-11-23 11:10:24 +01:00
Rafał Mikrut 4a202633ee Release 3.3.1 2021-11-22 06:48:07 +01:00
Rafał Mikrut 20a8e0c489
Fix copy paste bug with moving buttons (#457)
* Hide at start move button

* Fix copy paste bug with moving buttons
2021-11-21 14:13:44 +01:00
Rafał Mikrut c9ca230dfd Hide at start move button 2021-11-21 14:12:11 +01:00
Rafał Mikrut 418ad73327
Make better look white theme (#450) 2021-11-20 09:43:24 +01:00
Rafał Mikrut 052711bb4b
Add button for moving files/folders to choosen folder (#449)
* Add button for moving files/folders to choosen folder

* Add support for moving folders to other locations
2021-11-20 08:32:28 +01:00
Rafał Mikrut 49effca169 Disable partially supported webp<
Disable unrecognized pnm files
2021-11-19 06:53:01 +01:00
Rafał Mikrut 96e7af0d25
Add support for multiple hashes in similar images to GUI (#448)
* Add support for multiple hashes in similar images to GUI

* Needs a little more testing

* General fixes
2021-11-19 06:35:26 +01:00
Rafał Mikrut 20c89f44f0
Adds support for multiple hashes type and size in similar images, resize formats and also test to check performacne (#447) 2021-11-18 11:23:17 +01:00
Rafał Mikrut 742139379c
Add better errors explanation(native from libraries) (#446) 2021-11-14 15:53:55 +01:00
kuskov 73fdc1dffd
We can select file by pressing "space" in treeview. (#415) 2021-08-15 10:34:02 +02:00
Rafał Mikrut cd258c67ab
Re-enable hardlink on windows (#410) 2021-08-07 20:50:39 +02:00
Rafał Mikrut 581e8cf83f
Fix sym/hard linking files (#409)
Enable symlinks on Windows
2021-08-07 14:53:34 +02:00
Rafał Mikrut fcc909ffd7
Add image preview to duplicate finder (#408) 2021-08-07 10:38:10 +02:00
Rafał Mikrut a92a113714
Add maximum file size (#407)
* Add maximum file size

* Add maximum file size
2021-08-06 23:23:11 +02:00
Rafał Mikrut 909967dcd8
Update BKtree and blake3 and add new grouping algorithm (#405)
* Update BKtree and blake3

* Add new algorithm for similar images

* Improve algorithm of grouping similar images
2021-08-06 16:40:43 +02:00
Rafał Mikrut da76f75e11
Update Rust to 1.54 (#400) 2021-07-30 07:16:35 +02:00
Rafał Mikrut 0e9b8a1651
Use GtkScale instead radio buttons for similarity (#397)
* Use GtkScale instead radio buttons for similarity

* Fixes
2021-07-24 22:00:39 +02:00
Rafał Mikrut bb2fea2b92
Select things by checkbox (#392) 2021-07-16 06:51:54 +02:00
Rafał Mikrut 45707d54c7
Split UI into multiple files (#391) 2021-07-07 21:13:36 +02:00
Rafał Mikrut b5f8d6b028
Update to gtk-rs 0.14 (#383)
* Update to Gtk-rs 0.14
2021-06-25 18:07:13 +02:00
Rafał Mikrut bbf7eb3d09
Use Center instead CenterAlways(GTK Bug) (#361) 2021-05-17 11:06:22 +02:00
Rafał Mikrut cc0dcc2714
Fix excluded items on Windows (#324) 2021-05-08 21:54:01 +02:00
Rafał Mikrut b54748920f
Always center Windows and fix(probably) settings icon (#323) 2021-05-08 20:33:09 +02:00
Rafał Mikrut b08cedd5a6
Allow to set minimal file size to caching (#321) 2021-05-06 21:54:44 +02:00
Rafał Mikrut 775b6b4f10
Fix crashes with too small message queue (#316) 2021-04-14 08:23:59 +02:00
Rafał Mikrut 72224db7f6
Fix a little unsorted results (#304) 2021-04-08 18:28:29 +02:00
Rafał Mikrut 50ad3f9873
Update to Rust 1.5.1 (#302) 2021-03-27 13:14:02 +01:00
Rafał Mikrut 8c1140e40d
Allow to put files to trash instead fully remove them (#284) 2021-03-11 14:31:59 +01:00
Rafał Mikrut 8ad0b907ec
Open file when clicking at the Enter button (#285) 2021-03-11 14:31:41 +01:00
Rafał Mikrut 43d76888c6
Add confirmation dialog when removing files with delete key (#282) 2021-03-07 08:57:48 +01:00
Rafał Mikrut 77cdf7e6a4
Add confirmation dialog when trying to remove all files in group (#281) 2021-03-06 15:56:39 +01:00
Rafał Mikrut 17f97bd958
Add option to turn off cache (#263) 2021-03-04 12:09:53 +01:00
Rafał Mikrut 8382f77687
Fix crash when changing tabs (#280) 2021-02-27 07:30:30 +01:00
Rafał Mikrut 13add1cbed
Add hardlinking support for GUI (#276) 2021-02-24 13:53:46 +01:00
Rafał Mikrut 35c47b3230
Add new settings window (#262) 2021-02-23 09:40:19 +01:00
krzysdz 4c205ce098
Windows taskbar progress support (#264)
* Initial Windows taskbar progress support

* Changes to COM (un)init

It turns out winapi exposes IIDs through a `uuidof()` function of interfaces, so the copied one can be removed.

* Don't return error codes

Now the `TaskbarProgress` functions fail silently.
The `TaskbarProgress` struct now will always be created (even in case of errors in initialisation), but it won't do anything.

* Fix builds for other systems

* Formatted code

* Fix progress shown after the operation finished

A progress update was received after the stop event.
Also `as_ref()` was removed in many places (I don't even know why it was there).

* Remove redundant call to hide

It's already called by the `glib_stop_receiver` receiver.

* Release the ITaskbarList3 and call CoUninitialize at exit

Because objects moved to closures used as fallbacks in GTK have [static lifetimes](https://gtk-rs.org/docs-src/tutorial/closures#closures), the `TaskbarProgress` will never be dropped.
To workaround this problem a `release` function is called when the main window is closed. This function behaves like `drop`, but sets the struct in a valid "empty" state, so that calling `release`/`drop` again won't cause problems.

* Don't set the NORMAL state manually

Because only NOPROGRESS and INDETERMINATE states are used, there is no need to set the NORMAL state when changing the progress value.

Now `set_progress_value` will also change the `TaskbarProgress::current_state` if such situation occurs.

> Unless [SetProgressState](https://docs.microsoft.com/en-us/windows/desktop/api/shobjidl_core/nf-shobjidl_core-itaskbarlist3-setprogressstate)
> has set a blocking state (TBPF_ERROR or TBPF_PAUSED) for the window, a call to **SetProgressValue** assumes the TBPF_NORMAL
> state even if it is not explicitly set. A call to **SetProgressValue** overrides and clears the TBPF_INDETERMINATE state.

See the [SetProgressValue documentation](https://docs.microsoft.com/en-us/windows/win32/api/shobjidl_core/nf-shobjidl_core-itaskbarlist3-setprogressvalue#how-the-taskbar-button-chooses-the-progress-indicator-for-a-group)
2021-02-20 12:24:36 +01:00
Dan Dascalescu c035514a0e
Improve English for "Ask in future" button (#261) 2021-02-20 09:56:23 +01:00
Rafał Mikrut ea474c2af0 Fix typo in window progress 2021-02-03 20:23:28 +01:00
Rafał Mikrut 9f3da0e70f
Add support for CRC32 and XXH3 hash (#243) 2021-02-03 19:59:06 +01:00
Rafał Mikrut 2c2004b316
Change progress dialog to progress window (#229) 2021-01-25 18:23:42 +01:00
Rafał Mikrut 49ddc041ee
Add about dialog (#226) 2021-01-24 12:01:02 +01:00
Rafał Mikrut 42af724681
Add support for moving selection by keyboard to update similar image preview (#223) 2021-01-21 07:24:28 +01:00
Rafał Mikrut 0c10a6a0ba
Sort Results by path where it is possible (#211) 2021-01-15 10:43:23 +01:00
Rafał Mikrut 56763846ac
Add missing popover info for invalid symlinks (#209) 2021-01-14 20:38:29 +01:00
Rafał Mikrut eeaaea20cc
Add broken files support (#202) 2021-01-12 20:06:12 +01:00
Rafał Mikrut b41a22a021
Fix error when closing dialog progress by X (#199) 2021-01-12 11:51:54 +01:00
Rafał Mikrut 80bbc9ba85
Move image cache to cache from config dir (#197) 2021-01-11 09:54:23 +01:00
Rafał Mikrut 7992ba30de
Fix included/excluded files which contains commas (#195) 2021-01-10 20:44:10 +01:00
Rafał Mikrut ff85453394
Split Gui code into multiple files (#194) 2021-01-10 20:12:08 +01:00
Rafał Mikrut 683e0f9117
Use directly TreeView instead ScrolledWindow->TreeView (#190) 2021-01-10 13:45:05 +01:00
Rafał Mikrut 30bab75a5d
Modernize notebook handling (#189) 2021-01-10 12:06:25 +01:00
Rafał Mikrut 4bbdbd078d
Simplify a little code (#184) 2021-01-07 22:10:11 +01:00
Rafał Mikrut 784b5be06a
Only show preview when 1 image is selected (#183) 2021-01-07 22:09:49 +01:00
Rafał Mikrut 8d4a264c6d
Use master gtk plugin again (#179)
* Use master gtk plugin again
2021-01-03 16:54:07 +01:00
Rafał Mikrut 72d74dd8e2
Adds Mac GUI (#160)
* Adds Mac GUI

* Update Rust to 1.4.9
2020-12-31 19:53:49 +01:00
Rafał Mikrut a8c0a80bcf
Add manual excluding directories (#168) 2020-12-31 10:26:07 +01:00
Rafał Mikrut 97f7c8370d
Hide preview when deleting images or symlinking it (#167) 2020-12-31 10:12:31 +01:00
Rafał Mikrut 083db7aa51
Add manual adding of directories (#165) 2020-12-30 13:41:18 +01:00
Rafał Mikrut 10c32c90c0
Add support for delete button (#159) 2020-12-29 19:31:09 +01:00
Rafał Mikrut f622504356
Allow to select multiple entries in File Chooser (#154) 2020-12-29 08:45:51 +01:00
Rafał Mikrut 8a07dbed6b
Add selecting images with it's size (#138) 2020-12-26 12:53:40 +01:00
Rafał Mikrut d84722aa51
Modernize popovers code and simplify later changes (#137) 2020-12-26 10:35:43 +01:00
Rafał Mikrut 880787a67f
Show errors in image previewer when failed to generate it (#130) 2020-12-23 21:16:40 +01:00
Rafał Mikrut 5672431257
Add minimal similarity level (#129) 2020-12-23 20:10:10 +01:00
Rafał Mikrut 865543c7d7
Add option to open folders by double right click (#128) 2020-12-22 20:04:16 +01:00
Rafał Mikrut 7c3b9681b1
Split symlink path to two path and file name (#127) 2020-12-21 21:19:59 +01:00
Rafał Mikrut 1d59199bb2
Add support for checking for invalid symlinks (#124) 2020-12-21 16:09:39 +01:00
Rafał Mikrut 4a33ff7d86
Add support for symbolic links (#123) 2020-12-19 14:39:42 +01:00
Rafał Mikrut 68c3c294c9
Add button to enable/disable in settings text view errors (#122) 2020-12-19 10:15:25 +01:00
Rafał Mikrut a4d4a792e5
Add setting button to disable/enable previews(enabled by default) (#121) 2020-12-19 10:03:04 +01:00
Rafał Mikrut f29e63d049
Add Image preview to similar images (#118) 2020-12-16 10:13:56 +01:00
Rafał Mikrut 40f981dcd3
Add custom selection/unselection (#117) 2020-12-14 13:07:35 +01:00
Rafał Mikrut ff353c7014
Remove console window in Windows (#116) 2020-12-13 16:35:27 +01:00
Rafał Mikrut 7148abb8be
Add button to hide/show text view errors (#115) 2020-12-13 00:21:43 +01:00
Rafał Mikrut 30bd1f2f38
Add setting for deletion confirmation dialog (#114) 2020-12-12 23:41:48 +01:00
Rafał Mikrut 62e5e8e03e
Select longer names by default (#113) 2020-12-12 12:09:03 +01:00
Rafał Mikrut c1afbe6b92
Fix errors in progress bar caused by dividing by 0 (#109) 2020-12-07 15:28:03 +01:00
Rafał Mikrut 6fab1a9368
Add option to save file, store settings and load them (#108) 2020-12-07 15:25:44 +01:00
Rafał Mikrut a047380dbe Center dialog to current window 2020-12-02 17:34:19 +01:00
Rafał Mikrut 6d5ab1d98c
Removed unused stop, resume and pause buttons (#107) 2020-12-02 10:58:31 +01:00
Rafał Mikrut 7ac4a26229
Add progress bar (#106) 2020-12-02 10:25:27 +01:00
Rafał Mikrut c62617df30 Release 1.4.0 2020-11-09 15:50:28 +01:00
Rafał Mikrut 29a0716be5
Add very small similarity level to finding similar images, add option to choose level from CLI, fix bug with duplicated entries in similar pictures (#104) 2020-11-09 12:55:27 +01:00
Rafał Mikrut 2815692205
Fix removing entries (#103) 2020-11-09 11:24:01 +01:00
Rafał Mikrut 88d47e49cf
Add select for all modes (#102) 2020-11-09 10:09:22 +01:00
Rafał Mikrut 3e61544ec4
Add support for multithreading to zeroed files (#101) 2020-11-08 19:01:48 +01:00
Rafał Mikrut 2f72dd9d19
Add multithread support to similar image finder (#98) 2020-11-08 07:41:29 +01:00
Rafał Mikrut 110d6015bc
Similar images improvements: (#97)
Headers without data
By default only checking for High Similarity(faster search)
2020-11-07 16:26:40 +01:00
Rafał Mikrut 5d4f4db8c1
Simplify some GUI code (#96) 2020-11-04 18:15:06 +01:00
Rafał Mikrut ecebb3a1af
Implement finding duplicated music by tags/artist/year etc. (#95) 2020-11-02 21:56:07 +01:00
Rafał Mikrut 4429df2861
Refactore GUI into multiple files (#89) 2020-10-31 14:23:31 +01:00
Rafał Mikrut 777ac50f07
Add support for checking for zeroed files (#88) 2020-10-31 10:29:11 +01:00
Rafał Mikrut 7112ff6b92
Add support for checking same file names (#84) 2020-10-24 20:44:21 +02:00
Rafał Mikrut d996c3c46b
Add pre hash check (#83) 2020-10-24 06:56:39 +02:00
Rafał Mikrut 4d90e3170e
Remove warnings about non existent directories in Windows (#79) 2020-10-21 22:44:09 +02:00
Rafał Mikrut aa63a14f68
Improve deleting files in Similar files in GUI (#75) 2020-10-17 12:14:25 +02:00
Rafał Mikrut beb14f9f1d
Improve similar images GUI a little and add sorting to Similarity Enum (#73) 2020-10-15 17:51:47 +02:00
Rafał Mikrut 4fed419856
Added support for opening files by double clicks (#70) 2020-10-15 10:42:27 +02:00
Rafał Mikrut 1178e145ae
Add similar images support for GUI (#69) 2020-10-15 09:04:02 +02:00
Dariusz Niedoba acfecd7ca3
Replace String with PathBuf for paths (#59) 2020-10-14 18:41:37 +02:00
Rafał Mikrut 67a775beff Release version 1.1 2020-10-10 21:36:25 +02:00
Rafał Mikrut d001592c3f
Fix not removing from GUI empty folders which contains another empty folder (#57) 2020-10-10 12:56:07 +02:00
Rafał Mikrut 8bbb12c7d4
Add ability to stop task from GUI (#55) 2020-10-10 11:15:20 +02:00