I wanted to watch videos with playback speed of 3x and more, or set some precise speed like 1.3, so I thought it would be cool to implement it via a Chrome Extension.
Move the actual implementation from custom player use to using HTML5 player properties. It will require to dump the injection approach and use only the content script approach.
Basically, the whole extension needs to be improved by controlling the HTML5 video player instead of playerInstance on the specific website.
Separate the main controls and the settings page, kinda like two pages in a SPA. The default page should be the main page and it should have a cog/gear in the top right that will take the user to the settings page. The settings page should have a <- arrow to go back to the main page.
Currently the saved speed for a website applies to the playing video only when the extension popup is opened. Automatic speed adjustment needs to be fixed so it applies without opening the popup (presumably using background chrome extension script).
Playback speed delta - the delta value that playback speed gets changed by when + or - buttons are pressed
Settings should be saved in localStorage and should be validated on change (by user) and when loaded from localStorage. If the playback speed delta is invalid (is not a Number (a float with the precision of up to 2 decimal places or an int), use the default value - 0.1.
Speed controls (1x, 2x, 3x, and +/- buttons) should be moved to the context menu of each video on a website. Consequentially, each context menu instance should control the playback speed of a specific video separately from others.