Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade to Version 2.0 #15

Draft
wants to merge 63 commits into
base: main
Choose a base branch
from
Draft

Upgrade to Version 2.0 #15

wants to merge 63 commits into from

Conversation

WesleyMcGinn
Copy link
Member

This branch contains code for MySnail 2.0. The extension has improved in various ways, including, but not limited to, the following improvements:

  • An option in the extension popup to show/hide the snail
  • Live updating of the snail across all sites immediately when the settings are changed
  • Better AI colour randomiser
  • The ability to click elements through the snail (e.g. If you are on youtube and the snail is covering up the play button, you can click the button right through the snail because it passes the mouse events.)
  • The ability for the snail to talk, and checkboxes in a "More Settings" page to choose what the snail may talk about, which can be any of the following:
  • Low Battery Notification at (customizable value, default = 5)%
  • A reminder to drink water, randomly but at approximately 30 minute intervals
  • Notification when newer version of MySnail Chrome extension is available
  • Friendly reminder to get off screen at certain time, settable between 7:00pm and 11:00pm, defaulting to 10:00pm. (You can ignore this for five minutes, but the snail will tell you the same thing more sternly five minutes later, and five minutes after that the snail will make random elements from your screen start disappearing... Back to normal at 4:00am.)
  • Fun fact of the day, based on something about the national or international day it is. (Example: Penguin Awareness Day, January 20, may have a fun fact about penguins.)
  • Breaking News! (only good news, no bad) This can include an epic newly discovered species, a major advancement in technology, a rescue, etc., directly from MySnail News, a source you can trust that won't depress you with bad news.

Resolves #2.

Do not merge until completed. The checklist above shows what has already been programmed into the snail.

The popup page will allow for basic adjustments of size, speed, colour, etc., while the options page will have the same settings and more, especially including checkboxes for what the snail may talk about.
The favicon is not needed for an extension popup as it will not be displayed anyways.
Rounded three corners more to make the point more distinct.  This makes it easier to see it as a word bubble and harder to mistake it for a random floating box of text.
The snail's size and speed will be changed as the user is moving the slider, but the new value will not be saved until the mouse button is released on the slider.
The data in Chrome sync, changed by the options page, will be retrieved here and will tell the snail what to talk about.  If someone unchecks the box for the snail reminding them that their battery level is low, then the snail should not talk about it.
This would not allow for any preview of snail speed while adjusting.
Google Translate can work on these pages now and the extension can reach a wider audience.
Responsive Web Design!
@WesleyMcGinn WesleyMcGinn added the enhancement New feature or request label Apr 8, 2024
@WesleyMcGinn WesleyMcGinn added this to the Version 2.0 milestone Apr 8, 2024
@WesleyMcGinn WesleyMcGinn self-assigned this Apr 8, 2024
@WesleyMcGinn WesleyMcGinn linked an issue Apr 17, 2024 that may be closed by this pull request
Previously, when the slider for setting the snail's size or speed was dragged to other endpoint but the mouse button was released while the mouse was not on the slider, the new setting would not save.  Now, when previewing a maximum/minimum size or speed, as soon as the slider hits the end the setting will be saved to Chrome sync.
A function with a shorter name (`$`) replaced a very common function with a longer name (`document.getElementById`).
This situation will be dealt with later.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Queue Cancelation Snail Speaking
1 participant