programmer2514 / BetterDiscord-CollapsibleUI

A feature-rich BetterDiscord plugin that reworks the Discord UI to be significantly more modular
MIT License
67 stars 9 forks source link

Group elements or add triggers #87

Open MarcelMartens opened 1 year ago

MarcelMartens commented 1 year ago

Hi! First of all, love the plugin. Been pulling my hair out tryna fix the ui myself... Dont really know if its something other people would want or not, but i'd love it if you could either group together elements so their collapse/uncollapse state is synced. It's really nice for the server list and channel list since when server list closes the channel list trigger sometimes activates. I implemented it on my end by changing the if/elseif statements for server list dynamic uncollapse to check the channel list values instead. Although very jank and probably wrong, it works fine so far.

My idea is to let users control different triggers and link them to a function kinda like you have done with the conditional autocollapse. But instead of having to learn discord DOM have two inputs for each element, one with a trigger and one with an action. I'm not extremly experienced, but feels like it'd be possible assign the different checks to variables and have the user choose from a list/dropdown. If the option is enabled the function would just pass the variables to an if statement. It's a bit of work but it would be a cool addition! Also, to clarify i'm only talking about weather an element is hidden or not. This way you wont have to mess with the extremly confusing class structure of discord, only the plugin's variables.

Thanks again for the plugin! :)

programmer2514 commented 1 year ago

Thanks for the suggestion!

I'll definitely leave this open for future consideration, but as it is fairly difficult to implement and has a very niche application (and school is being a real pain right now), I don't think I am going to work on it for the time being.

HowkingPower commented 1 year ago

Hi! First of all, love the plugin. Been pulling my hair out tryna fix the ui myself... Dont really know if its something other people would want or not, but i'd love it if you could either group together elements so their collapse/uncollapse state is synced. It's really nice for the server list and channel list since when server list closes the channel list trigger sometimes activates. I implemented it on my end by changing the if/elseif statements for server list dynamic uncollapse to check the channel list values instead. Although very jank and probably wrong, it works fine so far.

My idea is to let users control different triggers and link them to a function kinda like you have done with the conditional autocollapse. But instead of having to learn discord DOM have two inputs for each element, one with a trigger and one with an action. I'm not extremly experienced, but feels like it'd be possible assign the different checks to variables and have the user choose from a list/dropdown. If the option is enabled the function would just pass the variables to an if statement. It's a bit of work but it would be a cool addition! Also, to clarify i'm only talking about weather an element is hidden or not. This way you wont have to mess with the extremly confusing class structure of discord, only the plugin's variables.

Thanks again for the plugin! :)

Hey there! Would you mind passing me that conditional autocollapse, cuz I am complitely clueless about it> Thank you very much EDIT: Oof and by the way, my friend. You can also set dynamic autocollapse for server and channel list, so both of them will be up until you hover out of them. So there is no need for any conditionals

MarcelMartens commented 1 year ago

Hi! I know its possible to set the dynamic autocollapse, but the problem was that it would collapse or expand when i didnt want it to, got it pretty close with just the settings in autocollapse but it wasnt really how i wanted it. Found that this way of changing it was a bit more reliable for not opening/closing the ui at the wrong times! Im guessing you dont need me to send the changes over now that you've set it up with dynamic autocollapse?