JohnnyRS / PandaCrazy-Max

PandaCrazy Chrome Extension for Amazon Mturk
21 stars 8 forks source link

Themes #26

Closed JohnnyRS closed 3 years ago

JohnnyRS commented 4 years ago

I am hoping to allow themes for the extension in the future. I started off with a dark theme. I haven't decided how themes will be added yet. Could be a premade theme that I create like the original or a css file that gets added which allows any user to make their own theme. I am hoping to get the latter working but I need to do research and make some decisions first.

aberfan commented 4 years ago

Not sure if this is the proper place to ask, but can there be some way of disabling the flashing on the GID for jobs which are active? It's very distracting and annoying!

Also, can there be an option to have the volume slider horizontal, as it was? On my widescreen monitor, it's sub-optimal to only use 1/4 of it. I use the volume a lot when I switch between speakers and headphones. Additionally, it seems the mute for alarms is now missing from jobs.

If you're taking any suggestions about arrangements in general, ideal would be hiding things you rarely use under just a hamburger icon to the far left, with the same names (Display, Options) and their submenus, and have jobs and grouping expand or as icons. I set options in the script version of PC two years ago and never touched it again for example, so it's just wasting screen real estate.

I would also love to see color themes; I preferred the less saturated look before instead of the brighter blue now combined with harder to read fonts.

Really awesome script/extension; thank you so much for putting this out there!

JohnnyRS commented 4 years ago

Thanks! I can add an option for the GID flashing later. I was thinking it might make it easier to see how the script goes through each job this way.

The volume could be an option later too. Good idea. I am still thinking about how I want to do the themes. I'm considering just a file with css stuff that can be added and the script will use it instead of the default. Still need to organize a lot of the colors first before I can work on the themes.

I do like using the pull down menus instead of the old way. Probably won't be adding too many more menus at the top because I like the screen size that it's using now.

Yes I need to add the mute for individual jobs too. Not sure if I'll have a quick way of muting jobs like I have in the original just yet.

aberfan commented 4 years ago

Hi, thanks for the response!

I've always just watched the (now labeled) "Fetched" number to see when it has fired, which is helpful, so the flashing seems a bit much to me.

The layout of volume was definitely perfect before.

What I mean about menu is to do something like: ☰ [Volume Slider] [ 1] [ 2 ] [ 3] ^ Just this, and maybe move the 'Pause', 'Start Group' 'Stop All' up to the left of that, leaving the status row where it is. And then, when you click on ☰ you see: Jobs Display Grouping Options And if you select one, then ☰ -> Options -> General ☰ -> Options -> Edit Timers ☰ -> Options -> Edit Alarms Because usually once you've set stuff up, you don't change it. The same goes for Display, which seems like it would fit under Options as well. Personally, the only thing I ever use up there is the volume, and clicking on the numbers to toggle the timer for some use cases so my usage is likely an outlier.

Theme-wise, you're already using bootstrap, I think, and that comes in with a whole bunch of premade themes I think you could just use. I actually like the default dark, but it's just now all the colors are too saturated, and the white background on buttons is really harsh, as is the bright yellow of the status. All of those colors were absolutely perfect in the TM script; I think it just needs a "classic PandaCrazy Color theme" mode lol!

Thanks for considering the suggestions!

JohnnyRS commented 4 years ago

Yes I am using bootstrap for some stuff but the colors are limited so I like having more freedom by using css more. Once I get thinking about the themes I'll figure out something.

The problem with hiding a lot in menus is the inexperienced users may never know all the options they can use because most don't read instructions. I do need to put more stuff in the wiki soon just for that reason. The display would fit nicely in options but it's really nice to change the job displays fast when a lot of jobs get automatically added.

aberfan commented 4 years ago

I don't know anything about the bootstrap options, beyond that you can just switch to "solarized" or whatever, and have things change. If it gives less freedom, that's bad. What's unfortunate is there's no way on this end to customize. I could go edit the css, obviously, but on the next update, won't it just get overwritten? Is there any super easy way from your end to allow overrides on this end? It doesn't have to be pretty (just a text field that isn't error checked) that can be loaded with "!important"? After staring at PC for literally years (as it alone gets a whole monitor to itself that's always in view) having the white background on fields is distracting. Are there some ideas you have that I can help with investigating?

If you implement the hamburger thing, could I then take screen shots and put it in the wiki, as a compromise? :)

It's probably way more effort than you'd want to dump for this issue, but maybe just having an "advanced" toggle that hides it. Or again some way of allowing a local override for that. Maybe just a filesystem path for custom css and "layout" portion that the user can specify and if it exists, is applied after the default options (for the base stylesheet, so if you add items, those would still get stylized properly despite not existing in the user's)?

Obviously super low priority so it's nice that you're kicking anything around but I understand you've got bigger things.

Speaking of, I want to note I would sacrifice goats and/or small children to have the 'queue helper'. The old combination of PC and it haven't worked in ages, and that's the most essential thing in a lot of workflows. Is there any plan to implement that? Is there anything I can do to help?

JohnnyRS commented 4 years ago

Right changing the CSS would be overwritten so you would have to redo it again. Also if I add, delete or change something in the CSS file which i do a lot then you might miss those changes. My idea for themes is a separate file that a user can direct the script to use as a CSS file which then changes the look. This file can be shared with others so there can be limitless amount of themes out there if people make them. That will take time to separate the classes and id's out for the theme css to work so I'll work on it later.

Don't worry about the queue helper script. I miss it too and I will be adding all the features of it later but it has to be redesigned from scratch and that will take time and lot of testing. It kind of works now if old pc is still in a tab of it's own and queue helper script installed but with some bugs.

JohnnyRS commented 4 years ago

Just tested a way to do themes and it worked nicely. A user will be able to create a file of their own with their own css styles. There will be a way to import that file similar to importing old data. When a user imports a css file then the script will load in that file with all the themed styles instead of the default values. This should give the user complete control of colors, fonts, sizes and positions. Users can share their own created files with others so I can just create the default css and a theme example css file so others can create and share. Still need to reorganize all the class and id names and make sure I move all the colors out of the code and into css styles. It will take a bit to do this but now I have a plan.

Also some features from queue helper has been added just for testing purposes. A lot more needs to be added but it's a start. Now that I finally added the automatic collection for custom triggers the script has everything I wanted to add. I can now work on refining and testing everything.

aberfan commented 3 years ago

I notice in the latest commit the addition of the theme support, as well as volume slider option and other great fixes. Just wanted to say thanks for your efforts and this wonderful extension! :)

JohnnyRS commented 3 years ago

Yes Theme support is finished. I still need to finish an example theme for reference but I do have theme documentation done in the advanced section of the wiki. The extension is now in its final stages. I'm still working on the queue helpers and making sure external scripts still work. But very soon it will be ready for the chrome store.

JohnnyRS commented 3 years ago

Themes are completed and working well. I'll soon be adding an example theme somewhere that makes it look like the original script.