Issung / GChan

Scrape boards & threads from 4chan. Download images, videos and HTML if desired.
GNU General Public License v3.0
65 stars 10 forks source link

Enhancement request / feature propositions, and a minor bug. #7

Open eva1-x-3 opened 3 years ago

eva1-x-3 commented 3 years ago

I am not good with programming so the complexity of implementing the following ideas is not something i can judge. However i have some ideas that i think can improve the functionality and usability of your software:

  1. Have a small box (or another "cell") to the left of each thread filled with Green for "thread is alive", and Yellow/Red for if a thread has 404'd (i guess this is easy to check since 4chan redirects you when a thread has 404'd) AND if the thread has been archived (I guess one could see if the word "Archived" is present in the .html file at the html element section related to it.) Why: So you can tell when a thread is ready to be deleted from the list, instead of checking thread in a web browser.

  2. An option to "append" new posts to the html file, instead of "rewriting" the html file for each new post. I think this is a good addition to the program because some users delete their posts, and when the html file is "rewritten" after the post is deleted their post is gone. This can cause some confusion when reading the locally saved thread. In short: Persistence of deleted posts.

Also i noticed a minor bug: If you rename a thread that has any title such as "no subject" to the title "Cool thread" and click OK it is saved. If you then again rename the "Cool thread" to "Magic thread" but click "cancel" it does not revert to "Cool thread", it reverts the name back to "no subject" or whatever the original threads name was from 4chan. In short: When clicking cancel in the "rename thread" dialog box, it reverts it to the original thread name from 4chan instead of the last name you gave it. Instinctively in order to revert the thread name back to the original i would delete the name i gave the thread (leaving the text-box empty) and click OK. And cancel would simply perform the action "no change to thread name > close dialog box".

I want to say again that you have made a very good program, i use it a lot! Thank you for making this.

Issung commented 3 years ago

Hi there, I've actually been thinking about both of these features for a while:

  1. I would like to do this, I know how to make the cell text change, but don't know how to change the color, which I have wanted to do, just need to look into it.
  2. I've also been thinking about this for a while too, the current html saving method is terrible, and I don't really pay attention to it at all (e.g. the image links, etc are broken). But it's been good in the meantime just to save the text.

Currently I've been working on adding 8kun.top support (currently working! 😁) and 8chan.se support (started today). And also adding some auto-update checking functionality that automatically installs the latest version for you with the click of a button.

Thanks for letting me know your suggestions, please keep them coming if you have anymore! And thanks for finding the bug too, I will definitely fix that in the next release.

Also glad to hear that you get lots of use out of my program, that helps motivate me greatly :)

EVA-x-3 commented 3 years ago

For the record i am "eva1-x-3" but i forgot my password for both GitHub and email so i can't get the previous account back.

I can't wait for GChan to work with 8kun/8chan too! Good luck! 😁 I have some other suggestions, and another small bug i found but is it better to open an issue for them separately, or write it all in one issue like i did last time?

By the way here is some information i found regarding changing cell background color and a possible dirty fix for checking if threads are deleted/archived:

I'm not sure if these links help due to my lack of programming skills, and these solutions may be dirty or impossible to optimize etc but maybe they are of help. If information like this is not needed or helpful don't hesitate to tell me! I'm simply looking for it because i know it takes time to look stuff up and thought it might be helpful.

I opened the project and saw you using DataGridView. Visual studio was very confusing so i might have looked at the wrong part of the project.

Here is a way to change background colour in cells made with DataGridView in C#: https://www.csharp-console-examples.com/winform/change-datagridview-cell-color-programmatically-in-c/ https://stackoverflow.com/questions/16105718/datagridview-changing-cell-background-color

Regarding detecting if the thread is Deleted (resulting in 404 redirect on 4chan) or archived:

https://stackoverflow.com/questions/2538895/c-sharp-detect-page-redirect

https://social.msdn.microsoft.com/Forums/en-US/0ffab121-570e-4b94-8bc6-0fe86c1634fb/how-to-read-specific-text-from-html And look for the <div class="closed">Thread archived.<br>You cannot reply anymore.</div> or simply the <div class="closed"> which are only present in archived threads.