GiorgosXou / TUIFIManager

A cross-platform terminal-based termux-oriented file manager (and component), meant to be used with a Uni-Curses project or as is.
GNU General Public License v3.0
684 stars 13 forks source link

Asynchronous handling of file operations, using a stack. #89

Open GiorgosXou opened 5 months ago

GiorgosXou commented 5 months ago

When deleting/coping/pasting/cuting huge or a lot of files, UI freezes. This is a result of: those operations, executing in the main thread (until they complete). To solve this, I was planning to use another thread: that would handle\execute those operations from a stack\list (probably using asyncio). But, due to loss of motivation and other tasks I didn't. So... unless anyone interested to implement it, it won't be available soon. If anyone interested, let me know before you start doing anything, so I can assign it to you and not have any conflict pripor to anything else. Aso, let me know if you need any help.

Additional context for future me or you: change the name of this function to __prepare_files_for_action() https://github.com/GiorgosXou/TUIFIManager/blob/055522f6b71d89ae27fa4247737507ed77cf32ab/TUIFIManager/__init__.py#L592

(This is one of the many ideas, I thought it would be nice to post as an issue instead of descussion)

b1ru commented 5 months ago

I'm interested, can you assign it to me ?

GiorgosXou commented 5 months ago

@b1ru Sure! Although... tbh, you caught me a bit off guard 😅 (wasn't expecting a response so fast). Anyways, before we proceed with the assignment, let me know when you'll be ready and if you have any questions related to the code. PS. We can talk via discord if you are OK with it, for further informations.