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

Support Opera #109

Open
embcla opened this issue Apr 6, 2020 · 4 comments
Open

Support Opera #109

embcla opened this issue Apr 6, 2020 · 4 comments
Labels
enhancement New feature or request

Comments

@embcla
Copy link

embcla commented Apr 6, 2020

Hi and thanks for this addon!
This is exactly what I was looking for: I'm annoyed at having to manually clean up links in my emails and on search engines.

Have you investigated how complex it would be to port to Opera? It's a great browser, I started using it instead of Firefox quite some years ago due to embedded vpn and generally higher speed and more polished (my opinion) aesthetics.

@Cimbali
Copy link
Owner

Cimbali commented Apr 6, 2020

It’s on the wishlist (see #32 − but let’s keep this issue open) but I haven’t had time to look into it yet. Some usability issues still have higher priority.

@Cimbali Cimbali added the enhancement New feature or request label Apr 6, 2020
@Cimbali Cimbali changed the title [Feature Request] Support Opera Support Opera Apr 6, 2020
@Cimbali
Copy link
Owner

Cimbali commented Apr 7, 2020

For references, here is the Browser support for JavaScript APIs. In particular (off the top of my head and for the current version − so no 100% guarantee of accuracy) we use:

  • alarms

  • browserAction (with special handling of FF on Android)

    • setTitle
    • setPopup
    • setBadgeText − sometimes with null, when users request the badge to not display text.
    • setIcon
    • setBadgeBackgroundColor
    • setBadgeTextColor
  • i18n

  • runtime

    • getBackgroundPage
    • getBrowserInfo − to check the version info for a tabs.create parameter
    • getManifest
    • getPlatformInfo
    • getURL
    • onInstalled
    • onMessage
    • openOptionsPage
    • sendMessage
  • storage.local and storage.sync

    • get
    • remove
    • set
  • tabs

    • create
    • onCreated
    • onRemoved
    • onUpdated
    • query
    • reload
    • sendMessage
    • TAB_ID_NONE
    • update
  • webRequest

    • onBeforeRequest
    • onHeadersReceived

As you can see the add-on seems to be easily compatible. However this is just drawn from a summary table: there is already special handling for versions within Firefox, so I’m sure there will be corner cases across browsers as well.

Cimbali added a commit that referenced this issue Aug 12, 2020
As suggested in #32. Related also to #109.
@Cimbali
Copy link
Owner

Cimbali commented Aug 12, 2020

I think now that the polyfill is in there, it is mostly testing, building the extension, and uploading to the Opera store. I’ve never done that before, so it might take some time.

@embcla
Copy link
Author

embcla commented Aug 20, 2020

Thank you for the update!
Honestly I had a look at the list of functions and was flabbergasted: been an embedded developer all my life, js and ui stuff are really weird 😅

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

No branches or pull requests

2 participants