Commit Graph

114 Commits (8ea9b4b8001402e77138f80ea9fb16a880dc4c14)

Author SHA1 Message Date
Rafał Mikrut 8ea9b4b800
Run pydantic clippy lints on project (#901)
* Update dependencies

* Pydantic part 1

* Some renames, basic Cambalache view

* 2

* 3

* Unwrap

* Tests

* Update CLI to Ubuntu 20.04
1 year ago
Rafał Mikrut a66a2849d1
Allow to set number of used threads in scan (#839) 1 year ago
Rafał Mikrut 4765bee87f
Add info about column type to global variable (#760) 2 years ago
Rafał Mikrut cf94ab918e
Reformat code with Intelij tool (#741) 2 years ago
Rafał Mikrut 6d8b33d8cf
GTK 4 Port (#466) 2 years ago
Rafał Mikrut 8e4e1f58cb
Finding invalid extensions (#678)
* Find invalid extensions

* Another day

* Libc

* Basic Renames

* Ending words

* Better renaming

* Stonks because works
2 years ago
Rafał Mikrut c88d347e00
Allow to set included/excluded directories by command line arguments (#677) 2 years ago
Rafał Mikrut 3ce5d4a967
Change AudioTags to lofty and support moree audio things (#590) 2 years ago
Rafał Mikrut a0d17fccea
Release 4.0 and do "small" refactoring to fix problems with packing (#593) 2 years ago
Rafał Mikrut ed4b721665
Random Changes (#576)
* Random Changes

* Urra

* ABC
2 years ago
Rafał Mikrut 489ec3cfda
Split files to different folders (#575) 2 years ago
Rafał Mikrut 5dab9286cb
Add compare images tool (#568)
* Add compare images tool

* Crash lord, crashes more than needed

* Kluchy piertuchy

* Głowa mała

* Troszkę

* Czokoszoki

* Ajzenbiśla

* Środa

* Piątek

* Stonk

* TreePath

* Czego, śpiem przecież

* Mój tród skończon

* Aktualizacja nazw
2 years ago
Rafał Mikrut e7e98d5dd1
Save to cache more informations about items (#567) 2 years ago
Peter Blackson db3b1f5304
Use DirTraversal for similar music (#559)
* Use DirTraversal for similar music

* Simplify file type checking

* Fix for clippy
2 years ago
Peter Blackson db47e8b711
Use DirTraversal for empty folders (#544) 2 years ago
Peter Blackson 51df63b8ea
Implement DirTraversal (#531)
* Implement DirTraversal

* rustfmt

* Fix for options

* Fix entries

* Fix symlinks

* Fix other entry type
2 years ago
Rafał Mikrut 7cff862434 Remove application ID 2 years ago
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.
2 years ago
Rafał Mikrut c8ade1fb0f
Use system language when available (#506)
* Use system language when available

* Use clippy nightly
2 years ago
Rafał Mikrut 619e64466c
More GTK4 compatibility fixes (#503)
* Don't create new treeview

* Dont

* ABC

* Detlaff

* Update
2 years ago
Rafał Mikrut 975b285c1f
Make UI take less space (#500) 2 years ago
Rafał Mikrut 89f24f14b5
Use translated strings in more places (#498) 2 years ago
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.
2 years ago
Rafał Mikrut 457b55ada5
Allow to hide upper notebook (#491) 2 years ago
Rafał Mikrut 51271dcdf0
Remove HashMB mode (#476)
* Remove HashMB mode

* Add some explanation and remove this from GUI

* Not needing to handle everything
2 years ago
Rafał Mikrut b7e4eaccaf Modified include organization 2 years ago
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
2 years ago
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
3 years ago
Rafał Mikrut 78b49dee3d
Remove support for zeroed files (#461) 3 years ago
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
3 years ago
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
3 years ago
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
3 years ago
Rafał Mikrut bb2fea2b92
Select things by checkbox (#392) 3 years ago
Rafał Mikrut 775b6b4f10
Fix crashes with too small message queue (#316) 3 years ago
Rafał Mikrut 13add1cbed
Add hardlinking support for GUI (#276) 3 years ago
Rafał Mikrut 35c47b3230
Add new settings window (#262) 3 years ago
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)
3 years ago
Rafał Mikrut 49ddc041ee
Add about dialog (#226) 3 years ago
Rafał Mikrut eeaaea20cc
Add broken files support (#202) 3 years ago
Rafał Mikrut ff85453394
Split Gui code into multiple files (#194) 3 years ago
Rafał Mikrut 683e0f9117
Use directly TreeView instead ScrolledWindow->TreeView (#190) 3 years ago
Rafał Mikrut 30bab75a5d
Modernize notebook handling (#189) 3 years ago
Rafał Mikrut 1d59199bb2
Add support for checking for invalid symlinks (#124) 3 years ago
Rafał Mikrut 4a33ff7d86
Add support for symbolic links (#123) 3 years ago
Rafał Mikrut ff353c7014
Remove console window in Windows (#116) 3 years ago
Rafał Mikrut 7148abb8be
Add button to hide/show text view errors (#115) 3 years ago
Rafał Mikrut 6fab1a9368
Add option to save file, store settings and load them (#108) 3 years ago
Rafał Mikrut 7ac4a26229
Add progress bar (#106) 3 years ago
Rafał Mikrut 88d47e49cf
Add select for all modes (#102) 4 years ago
Rafał Mikrut 4429df2861
Refactore GUI into multiple files (#89) 4 years ago