diff --git a/internal_packages/screenshot-mode/assets/BLOKKNeue-Regular.otf b/internal_packages/screenshot-mode/assets/BLOKKNeue-Regular.otf new file mode 100644 index 000000000..2fa2a064d Binary files /dev/null and b/internal_packages/screenshot-mode/assets/BLOKKNeue-Regular.otf differ diff --git a/internal_packages/screenshot-mode/assets/font-override.css b/internal_packages/screenshot-mode/assets/font-override.css new file mode 100644 index 000000000..79cd50074 --- /dev/null +++ b/internal_packages/screenshot-mode/assets/font-override.css @@ -0,0 +1,34 @@ +@font-face { + font-family: 'Nylas-Pro'; + font-style: normal; + font-weight: 200; + src: url('nylas://screenshot-mode/assets/BLOKKNeue-Regular.otf'); +} + +@font-face { + font-family: 'Nylas-Pro'; + font-style: normal; + font-weight: 300; + src: url('nylas://screenshot-mode/assets/BLOKKNeue-Regular.otf'); +} + +@font-face { + font-family: 'Nylas-Pro'; + font-style: normal; + font-weight: 400; + src: url('nylas://screenshot-mode/assets/BLOKKNeue-Regular.otf'); +} + +@font-face { + font-family: 'Nylas-Pro'; + font-style: normal; + font-weight: 500; + src: url('nylas://screenshot-mode/assets/BLOKKNeue-Regular.otf'); +} + +@font-face { + font-family: 'Nylas-Pro'; + font-style: normal; + font-weight: 600; + src: url('nylas://screenshot-mode/assets/BLOKKNeue-Regular.otf'); +} diff --git a/internal_packages/screenshot-mode/lib/main.coffee b/internal_packages/screenshot-mode/lib/main.coffee new file mode 100644 index 000000000..4c4c7e0d3 --- /dev/null +++ b/internal_packages/screenshot-mode/lib/main.coffee @@ -0,0 +1,21 @@ +fs = require 'fs' + +style = null + +module.exports = + activate: -> + NylasEnv.commands.add "body", "window:toggle-screenshot-mode", -> + if not style + style = document.createElement('style') + style.innerText = fs.readFileSync(path.join(__dirname, '..', 'assets','font-override.css')).toString() + + if style.parentElement + document.body.removeChild(style) + else + document.body.appendChild(style) + + deactivate: -> + if style.parentElement + document.body.removeChild(style) + + serialize: -> diff --git a/internal_packages/screenshot-mode/package.json b/internal_packages/screenshot-mode/package.json new file mode 100755 index 000000000..862d5ef3d --- /dev/null +++ b/internal_packages/screenshot-mode/package.json @@ -0,0 +1,11 @@ +{ + "name": "screenshot-mode", + "version": "0.1.0", + "main": "./lib/main", + "description": "Replaces all text with blocks for taking screenshots without PII", + "license": "Proprietary", + "private": true, + "windowTypes": { + "all": true + } +} diff --git a/menus/darwin.cson b/menus/darwin.cson index 0adb7e5e3..c84d5d38b 100644 --- a/menus/darwin.cson +++ b/menus/darwin.cson @@ -63,6 +63,7 @@ { label: 'Toggle Developer Tools', command: 'window:toggle-dev-tools' } { label: 'Toggle Component Regions', command: 'window:toggle-component-regions' } { label: 'Toggle React Remote', command: 'window:toggle-react-remote' } + { label: 'Toggle Screenshot Mode', command: 'window:toggle-screenshot-mode' } { type: 'separator' } { label: 'Open Activity Window', command: 'application:show-work-window' } { type: 'separator' } diff --git a/menus/linux.cson b/menus/linux.cson index 6b5fc77ca..23a15a7eb 100644 --- a/menus/linux.cson +++ b/menus/linux.cson @@ -44,6 +44,7 @@ { label: 'Toggle Developer &Tools', command: 'window:toggle-dev-tools' } { label: 'Toggle Component Regions', command: 'window:toggle-component-regions' } { label: 'Toggle React Remote', command: 'window:toggle-react-remote' } + { label: 'Toggle Screenshot Mode', command: 'window:toggle-screenshot-mode' } { type: 'separator' } { label: 'Open Activity Window', command: 'application:show-work-window' } { type: 'separator' } diff --git a/menus/win32.cson b/menus/win32.cson index 909c137ab..f563beead 100644 --- a/menus/win32.cson +++ b/menus/win32.cson @@ -29,6 +29,7 @@ { label: 'Toggle Developer &Tools', command: 'window:toggle-dev-tools' } { label: 'Toggle Component Regions', command: 'window:toggle-component-regions' } { label: 'Toggle React Remote', command: 'window:toggle-react-remote' } + { label: 'Toggle Screenshot Mode', command: 'window:toggle-screenshot-mode' } { type: 'separator' } { label: 'Open Activity Window', command: 'application:show-work-window' } { type: 'separator' }