Pop-up dictionary browser extension for language learning. Successor to Yomichan. (PERSONAL FORK)
at lambda-fork/main 246 lines 15 kB view raw
1<!DOCTYPE html> 2<html lang="en"> 3<head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width,initial-scale=1"> 6 <title>Yomitan Permissions</title> 7 <link rel="icon" type="image/png" href="/images/icon16.png" sizes="16x16"> 8 <link rel="icon" type="image/png" href="/images/icon19.png" sizes="19x19"> 9 <link rel="icon" type="image/png" href="/images/icon32.png" sizes="32x32"> 10 <link rel="icon" type="image/png" href="/images/icon38.png" sizes="38x38"> 11 <link rel="icon" type="image/png" href="/images/icon48.png" sizes="48x48"> 12 <link rel="icon" type="image/png" href="/images/icon64.png" sizes="64x64"> 13 <link rel="icon" type="image/png" href="/images/icon128.png" sizes="128x128"> 14 <link rel="stylesheet" type="text/css" href="/css/material.css"> 15 <link rel="stylesheet" type="text/css" href="/css/settings.css"> 16 <link rel="stylesheet" type="text/css" href="/css/permissions.css"> 17 <script src="/js/pages/permissions-main.js" type="module"></script> 18</head> 19<body hidden> 20 21<!-- Main content --> 22<div class="content-outer"><div class="content scrollbar"> 23<div class="content-left"></div> 24<div class="content-center"> 25 26 <span tabindex="-1" id="content-scroll-focus"></span> 27 28 <h1>Yomitan Permissions</h1> 29 30 <h2 id="permissions"></h2> 31 <div class="settings-group"> 32 <div class="settings-item"><div class="settings-item-inner"> 33 <div class="settings-item-left"> 34 <div class="settings-item-label"><code>&lt;all_urls&gt;</code></div> 35 <div class="settings-item-description"> 36 Yomitan requires access to all URLs in order to run scripts to scan text and show the definitions popup, 37 request audio for playback and download, and connect with Anki. 38 </div> 39 </div> 40 <div class="settings-item-right"> 41 <label class="toggle"><input type="checkbox" class="permissions-origin-toggle" data-origin="&lt;all_urls&gt;"><span class="toggle-body"><span class="toggle-track"></span><span class="toggle-knob"></span></span></label> 42 </div> 43 </div></div> 44 <div class="settings-item"><div class="settings-item-inner"> 45 <div class="settings-item-left"> 46 <div class="settings-item-label"><code>storage</code> and <code>unlimitedStorage</code></div> 47 <div class="settings-item-description"> 48 Yomitan uses storage permissions in order to save extension settings and dictionary data. 49 <code>unlimitedStorage</code> is used to help prevent web browsers from unexpectedly 50 deleting dictionary data. 51 </div> 52 </div> 53 </div></div> 54 <div class="settings-item"><div class="settings-item-inner"> 55 <div class="settings-item-left"> 56 <div class="settings-item-label"><code>declarativeNetRequest</code></div> 57 <div class="settings-item-description"> 58 <p> 59 Yomitan uses this permission to ensure certain requests have valid and secure headers. 60 This sometimes involves removing or changing the <code>Origin</code> request header, 61 as this can be used to fingerprint browser configuration. 62 </p> 63 <p> 64 Example: <code>Origin: <span class="extension-id-example"></span></code> 65 </p> 66 </div> 67 </div> 68 </div></div> 69 <div class="settings-item"><div class="settings-item-inner"> 70 <div class="settings-item-left"> 71 <div class="settings-item-label"><code>scripting</code></div> 72 <div class="settings-item-description"> 73 Yomitan needs to inject content scripts and stylesheets into webpages in order to 74 properly display the search popup. 75 </div> 76 </div> 77 </div></div> 78 <div class="settings-item"><div class="settings-item-inner"> 79 <div class="settings-item-left"> 80 <div class="settings-item-label"><code>contextMenus</code></div> 81 <div class="settings-item-description"> 82 Yomitan adds a context menu interface that lets you look up highlighted words. 83 </div> 84 </div> 85 </div></div> 86 <div class="settings-item"><div class="settings-item-inner"> 87 <div class="settings-item-left"> 88 <div class="settings-item-label"><code>clipboardWrite</code></div> 89 <div class="settings-item-description"> 90 Yomitan supports simulating the <code>Ctrl+C</code> (copy to clipboard) keyboard shortcut 91 when a definitions popup is open and focused. 92 </div> 93 </div> 94 </div></div> 95 <div class="settings-item"><div class="settings-item-inner"> 96 <div class="settings-item-left"> 97 <div class="settings-item-label"><code>clipboardRead</code> <span class="light">(optional)</span></div> 98 <div class="settings-item-description"> 99 Yomitan supports automatically opening a search window when text is copied to the clipboard 100 while the browser is running, depending on how certain settings are configured. 101 This allows Yomitan to support scanning text from external applications, provided there is a way 102 to copy text from those applications to the clipboard. 103 </div> 104 </div> 105 <div class="settings-item-right"> 106 <label class="toggle"><input type="checkbox" class="permissions-toggle" data-required-permissions="clipboardRead"><span class="toggle-body"><span class="toggle-track"></span><span class="toggle-knob"></span></span></label> 107 </div> 108 </div></div> 109 <div class="settings-item" data-hide-for-browser="firefox-mobile"><div class="settings-item-inner"> 110 <div class="settings-item-left"> 111 <div class="settings-item-label"><code>nativeMessaging</code> <span class="light">(optional)</span></div> 112 <div class="settings-item-description"> 113 Yomitan has the ability to communicate with an optional native messaging component in order to support 114 parsing large blocks of Japanese text using 115 <a href="https://en.wikipedia.org/wiki/MeCab" target="_blank" rel="noopener noreferrer">MeCab</a>. 116 The installation of this component is optional and is not included by default. 117 </div> 118 </div> 119 <div class="settings-item-right"> 120 <label class="toggle"><input type="checkbox" class="permissions-toggle" data-required-permissions="nativeMessaging"><span class="toggle-body"><span class="toggle-track"></span><span class="toggle-knob"></span></span></label> 121 </div> 122 </div></div> 123 <div class="settings-item"><div class="settings-item-inner"> 124 <div class="settings-item-left"> 125 <div class="settings-item-label">Allow in private windows <span class="light">(optional)</span></div> 126 <div class="settings-item-description"> 127 <p> 128 When enabled, Yomitan is able to scan text and show definitions in private/incognito web browser windows. 129 </p> 130 <p data-hide-for-browser="firefox firefox-mobile"> 131 This option can be configured from the web browser's <a tabindex="0" class="extension-settings-link" data-special-url="chrome://extensions/?id={id}">extension settings pages</a>. 132 </p> 133 <p data-show-for-browser="firefox firefox-mobile"> 134 This option can be configured from the web browser's extension settings pages. From your browser's address bar, go to <code>about:addons</code> and navigate to the settings for Yomitan. 135 </p> 136 </div> 137 </div> 138 <div class="settings-item-right"> 139 <label class="toggle"><input type="checkbox" id="permission-checkbox-allow-in-private-windows" disabled><span class="toggle-body"><span class="toggle-track"></span><span class="toggle-knob"></span></span></label> 140 </div> 141 </div></div> 142 <div class="settings-item"><div class="settings-item-inner"> 143 <div class="settings-item-left"> 144 <div class="settings-item-label">Allow access to file URLs <span class="light">(optional)</span></div> 145 <div class="settings-item-description"> 146 <p> 147 When enabled, Yomitan is able to scan text and show definitions on local HTML files located using the <code>file://*</code> scheme. 148 </p> 149 <p data-show-for-browser="chrome edge"> 150 This option can be configured from the web browser's <a tabindex="0" class="extension-settings-link" data-special-url="chrome://extensions/?id={id}">extension settings pages</a>. 151 </p> 152 </div> 153 </div> 154 <div class="settings-item-right"> 155 <label class="toggle"><input type="checkbox" id="permission-checkbox-allow-file-url-access" disabled><span class="toggle-body"><span class="toggle-track"></span><span class="toggle-knob"></span></span></label> 156 </div> 157 </div></div> 158 <div class="settings-item"><div class="settings-item-inner"> 159 <div class="settings-item-left"> 160 <div class="settings-item-label">Persistent storage</div> 161 <div class="settings-item-description"> 162 <p> 163 Web browsers will sometimes clear stored data if the device is running low on storage space, 164 which can result in the imported dictionaries being deleted unexpectedly. 165 The persistent storage permission tells the browser that the data should not be deleted in those circumstances. 166 </p> 167 <p data-show-for-browser="firefox-mobile"> 168 It may not be possible to enable this permission on Firefox for Android. 169 </p> 170 <p data-show-for-browser="chrome edge"> 171 Chromium-based browsers should not need to enable this setting since the Yomitan extension has 172 the <code>unlimitedStorage</code> permission, which should prevent data deletion.<sup><a href="https://bugs.chromium.org/p/chromium/issues/detail?id=680392#c15" target="_blank" rel="noopener">[1]</a></sup> 173 </p> 174 </div> 175 </div> 176 <div class="settings-item-right"> 177 <label class="toggle"><input type="checkbox" id="storage-persistent-checkbox"><span class="toggle-body"><span class="toggle-track"></span><span class="toggle-knob"></span></span></label> 178 </div> 179 </div></div> 180 <div class="settings-item settings-item-button" data-modal-action="show,origins"><div class="settings-item-inner"> 181 <div class="settings-item-left"> 182 <div class="settings-item-label">Configure allowed origins&hellip;</div> 183 </div> 184 <div class="settings-item-right open-panel-button-container"> 185 <button type="button" class="icon-button"><span class="icon-button-inner"><span class="icon" data-icon="material-right-arrow"></span></span></button> 186 </div> 187 </div></div> 188 </div> 189 190 <div class="footer-padding"></div> 191 192</div> 193<div class="content-right"></div> 194</div></div> 195 196 197<!-- Auxiliary content --> 198<div id="popup-menus"></div> 199 200 201<!-- Keyboard shortcuts templates --> 202<div id="origins-modal" class="modal" tabindex="-1" role="dialog" hidden><div class="modal-content"> 203 <div class="modal-header"> 204 <div class="modal-title">Allowed Origins</div> 205 <div class="modal-header-button-container"> 206 <div class="modal-header-button-group"> 207 <button type="button" class="icon-button modal-header-button" data-modal-action="expand"><span class="icon-button-inner"><span class="icon" data-icon="expand"></span></span></button> 208 <button type="button" class="icon-button modal-header-button" data-modal-action="collapse"><span class="icon-button-inner"><span class="icon" data-icon="collapse"></span></span></button> 209 </div> 210 </div> 211 </div> 212 <div class="modal-body"> 213 <div class="settings-item"><div class="settings-item-inner"> 214 <div class="settings-item-left"> 215 <div class="settings-item-label">Allow access to all URLs</div> 216 </div> 217 <div class="settings-item-right"> 218 <label class="toggle"><input type="checkbox" class="permissions-origin-toggle" data-origin="&lt;all_urls&gt;"><span class="toggle-body"><span class="toggle-track"></span><span class="toggle-knob"></span></span></label> 219 </div> 220 </div></div> 221 <div class="settings-item"> 222 <div class="settings-item-inner"> 223 <div class="settings-item-left"> 224 <div class="settings-item-label">Additional origins</div> 225 </div> 226 </div> 227 <div class="settings-item-children"> 228 <div id="permissions-origin-list" class="generic-list"> 229 <div class="permissions-origin-index generic-list-index-prefix"></div> 230 <input type="text" class="permissions-origin-input horizontal-flex-fill" autocomplete="off" spellcheck="false" id="permissions-origin-new-input"> 231 <button type="button" class="low-emphasis permissions-origin-button" id="permissions-origin-add">Add</button> 232 </div> 233 <div id="permissions-origin-list-empty" class="margin-above"> 234 No additional origins specified. 235 </div> 236 <div id="permissions-origin-list-error" class="margin-above danger-text" hidden></div> 237 </div> 238 </div> 239 </div> 240 <div class="modal-footer"> 241 <button type="button" class="low-emphasis" data-modal-action="hide">Close</button> 242 </div> 243</div></div> 244 245</body> 246</html>