I am developing a Chrome extension for use with the Canvas LMS. A problem with this is that Canvas subscribers have different URLs which do not have a common top level domain. For instance, my University's Canvas site has the URL
canvas.gu.se while another school might have
canvas.myschool.edu. But I can't enter
"matches":"https://canvas.*/*" in the
manifest.json file, since top-level wildcards are not allowed (see this post for elaboration). Instead, I have to enter
"matches":"https://*/*", and then programmatically (in the
content.js code) weed out sites that don't have "canvas" in them.
That works in its own kludgy way, but Chrome Web Store is not very happy about it, which delays my updates by days.
One could of course use a narrow/dummy
matches value and then ask the users to edit the manifest themselves to include the specific URL in used in each respective case, but how likely would they be to do that? Instead I would like the extension to launch a local page that prompts the user to input the specific URL and then edits the
manifest.json file on that particular machine accordingly. Would that be possible and if so, how?