Add a `inject css` rule Change-Id: I5d3051590bf9c0d205bd6cf1266bc8d68b1a3c95
diff --git a/src/content_script.ts b/src/content_script.ts index 3d5478f..a375e53 100644 --- a/src/content_script.ts +++ b/src/content_script.ts
@@ -130,6 +130,13 @@ const el = document.createElement('div'); el.innerHTML = rule.destination; document.body.appendChild(el); + } else if (rule.operator === Operator.INJECT_CSS) { + onGerritReady().then(() => { + const link = document.createElement('link'); + link.setAttribute('rel', 'stylesheet'); + link.setAttribute('href', rule.destination); + document.head.appendChild(link); + }); } else if (rule.operator === Operator.INJECT_JS_PLUGIN) { onGerritReady().then(() => { const link = document.createElement('script');
diff --git a/src/popup.ts b/src/popup.ts index a61307d..2d737d0 100644 --- a/src/popup.ts +++ b/src/popup.ts
@@ -313,6 +313,7 @@ operators = [ Operator.BLOCK, Operator.REDIRECT, + Operator.INJECT_CSS, Operator.INJECT_HTML_CODE, Operator.INJECT_JS_PLUGIN, Operator.INJECT_JS_MODULE_PLUGIN,
diff --git a/src/utils.ts b/src/utils.ts index 50a6ffd..50d739f 100644 --- a/src/utils.ts +++ b/src/utils.ts
@@ -20,6 +20,7 @@ export function isInjectRule(rule: Rule) { return [ + Operator.INJECT_CSS, Operator.INJECT_JS_MODULE_PLUGIN, Operator.INJECT_JS_PLUGIN, Operator.INJECT_HTML_CODE, @@ -131,6 +132,7 @@ export enum Operator { BLOCK = 'block', REDIRECT = 'redirect', + INJECT_CSS = 'injectCss', INJECT_HTML_CODE = 'injectHtmlCode', INJECT_JS_PLUGIN = 'injectJSPlugin', INJECT_JS_MODULE_PLUGIN = 'injectJSModule',