1. Apr 08, 2019
    • Luke Schoen's avatar
      fix: Relates to #124. Security (#451) · d0ae2071
      Luke Schoen authored
      * feat: Security aspects for fether-electron. See #124
      
      * feat: Add Source Maps support
      
      * docs: Add Source Maps guide to Readme
      
      * feat: Add webpack-build-notifier add-on with custom Webpack config
      
      * fix: Remove duplicate dependency
      
      * WIP
      
      * WIP
      
      * review-fix: Configure CSP depending on NODE_ENV
      
      * fix: Fix worker-src for the camera in production
      
      * review-fix: Remove unnecessary config of source maps dependency
      
      * Use preload script as buffer between main and renderer processes (#463)
      
      * fix: Remove is-electron since now using preload script
      
      * fix: Remove old preload script
      
      * fix: Do not expose electron, remote, or require to web app
      
      * fix: Add newline
      
      * feat: Single Fether instance lock
      
      * fix: Move preload to static folder so works with binary
      
      * review-fix: Remove fix for webview since not used. Add comment incase used in future. Fix other event handling code
      
      * review-fix: Add optional opt-in to using Webpack notifier plugin by running with NOTIFIER=true yarn start
      
      * review-fix: Use pino.debug instead of console.log
      
      * review-fix: Add worker-src blob to CSP in development for webcam
      
      * review-fix: Update handling of untrusted urls and sessions and certificates
      
      * review-fix: Convert to WSS. Move CSP into array like in Parity-JS Shell. Update CSP
      
      * review-fix: Update CSP to avoid duplication
      
      * review-fix: Remove from new-window event listener that which applies to additional new BrowserWindows since not applicable
      
      * review-fix: Combined pino logs
      
      * review-fix: Change to parsedUrl.href instead of origin. Fix trusted urls for dev
      
      * fix: Remote https 127.0.0.1 in prod
      
      * review-fix: Move WebpackBuildNotifier images so not in binary. Fix ico file
      
      * fix: Remove console.logs
      
      * refactor: Cleanup so can merge. Extract for inclusion in separate PR
      
      * review-fix: Remove debugging notes since better in wiki
      
      * review-fix: Remove other lines due to move to wiki
      
      * fix comment
      
      * review-fix: Remove setPermissionRequestHandler since not know if need. Move to https://hackmd.io/O1FA34BuSNyJoPV1Cu3L0A
      
      * review-fix: Move CSP debugging into onHeadersReceived
      
      * review-fix: Fix isParityRunningStatus
      
      * review-fix: Replace parse-url with Node.js url parser
      
      * review-fix: Remove parse-url from dependencies
      
      * fix: Fix logic in setCertificateVerifyProc
      
      * WIP
      
      * review-fix: Dynamically add WS port from CLI to trusted
      
      * review-fix: Update comments with security warnings
      
      * merge latest from master and fix conflicts
      
      * chore: Remove useless console.log
      
      * misc: See commit details
      
      * Remove --ws-origins from CLI, hard-code instead
      * Remove --ws-interface from CLI, hard-code instead
      * Ignore --ws-interface and --ws-origins flags in CLI
      * Add hard-coded default trusted WS interface to window.bridge
      * Add default WS port to window.bridge
      
      * WIP - start implementing isDev. See FIXME for future work required
      
      * review-fix: Use appIsPackaged instead of NODE_ENV
      
      * fix: Add IS_PROD to constants and assign appIsPackaged to it. Expose it to frontend so no longer use NODE_ENV
      
      * feat: Add wiki Fether FAQ to trusted urls since required by PR #482
      
      * fix: Fix untrusted blockscout.com error in setCertificateVerifyProc
      
      * review-fix: fix blocked image hosting and external blockscout urls
      
      * review-fix: trust github token icons
      
      * review-fix: Rename network to fetherNetwork so custom config avoids naming conflict
      
      * review-fix: Remove duplicate pino.debug for CSP
      
      * review-fix: Remove WsSecure until wss and certificates implemented
      
      * review-fix: Update config to show Electron security warnings in all environments
      
      * review-fix: Remove use of wsInterface
      
      * refactor: Refactor tests inside describe blocks
      
      * tests: Add chrome dev tools to tests for trusted urls
      
      * review-fix: Use NODE_ENV and Electron app.isPackaged
      
      * fix: Rebuild yarn.lock
      
      * fix: Fix linting to arg passed to correct script
      
      * review-fix: Remove ws-origins flag and trusted ws origins
      
      * test: Fix failing test
      
      * review-fix: Remove package-lock.json
      
      * fix: Use NODE_ENV consistently instead of process.defaultApp
      
      * fix: Change to hash instead of transactionHash for blockscout
      d0ae2071
  2. Mar 21, 2019
    • Axel Chalon's avatar
      Parity Ethereum bundling (#458) · 674e3bf3
      Axel Chalon authored
      
      
      * Parity Ethereum bundling
      
      * Grumbles; update light.js
      
      * Grumbles
      
      * Merge in PR#394 ac-upd-post: refactor sendStore post/postRaw
      
      * Download highest version matching requirement rather than latest beta
      
      * Rename RequireVersion to RequireParityVersion
      
      * Grumbles
      
      * Change Parity version requirement to ~2.4.1
      
      * Fix --no-run-parity with Parity already running
      
      * Grumble
      
      Co-Authored-By: default avataraxelchalon <[email protected]>
      674e3bf3
  3. Mar 12, 2019
  4. Feb 25, 2019
  5. Feb 23, 2019
  6. Feb 22, 2019
  7. Feb 21, 2019
  8. Feb 20, 2019
  9. Feb 06, 2019
  10. Feb 05, 2019
  11. Feb 03, 2019
  12. Feb 02, 2019
  13. Feb 01, 2019
  14. Jan 31, 2019
  15. Jan 30, 2019
  16. Jan 26, 2019
    • Luke Schoen's avatar
      fix: Fix save windows position on minimise on Linux. Add taskbar usage to Readme · 3e606c2e
      Luke Schoen authored
      * Update Readme with Usage of taskbar mode on macOS and Linux
      
      * Remvoe custom context menu since was not working and we will use ALT version instead
      
      * Rename processMoved to saveWindowPosition
      
      * Fix by savingWindowPosition when user minimises Fether window so it restores to same position
      
      * Change tooltip message to 'Click to toggle Fether window' since it is important on Linux as use must click the tooltip to open/close the Fether window
      
      * Only disable taskbar mode on Windows
      3e606c2e
  17. Jan 25, 2019
    • Luke Schoen's avatar
      feat: Save window position on Linux. Refactor events · c0b3fa16
      Luke Schoen authored
      * Save Fether window position on Linux using debounce with 'move' event, and 'close' event
      
      * Save Fether window position on macOS and Windows also using 'close' event instead of just 'moved' event
      
      * Refactor `create` method to prevent duplication
      
      * Refactor to organise event listeners into `setupWindowListeners` and `setupRequestListeners`
      c0b3fa16
  18. Jan 24, 2019
  19. Jan 09, 2019
  20. Jan 08, 2019
    • Luke Schoen's avatar
      feat: Add security configuration options to Electron. Add progress bar. Add tabbing id. · 794ae5c6
      Luke Schoen authored
      * Developer experience - Add progress bar that appears on the Docker icon (particularly useful for those with slow connection or local machine)
      
      * Add tabbing identifier set to 'parity' so it groups projects with same identifier
      
      * Security - Electron window setContentProtection to true to prevent other apps being able to access it
      
      * Security - webPreferences.enableRemoteModule to false to prevent unsolicited access
      
      * Add shadow to taskbar app
      794ae5c6
  21. Jan 07, 2019
    • Luke Schoen's avatar
    • Luke Schoen's avatar
      refactor: Integrate menubar. Separate logic for taskbar app. See commit details · 4763ac05
      Luke Schoen authored
      * Readme updated with environment variable prefix `TASKBAR=false` to disable taskbar.
      Use existing "electron" and "start" scripts in package.json.
      Configure taskbar to be enabled by default (i.e. `withTaskbar = true`)
      
      * Integrate menubar functionality including for taskbar including:
          * electron dependencies: `Tray`
          * electron-positioner: `Positioner`
      
      * Separate logic in `FetherApp` component dependending on whether `withTaskbar` is enabled,
      but shared functionality in `finalise()` function
      
      * Incorporate relevant Pino logs throughout to improve developer experience
      
      * Move options into FetherAppOptions class and move configuration config for options into
      a config subfolder within the module.
      
      * Use `extends` library to overwrite `DEFAULT_OPTIONS` options properties with those in `TASKBAR_OPTIONS`
      if `withTaskbar` is enabled
      
      * Add ability to pass `customOptions` to further overwrite the values in the config directory, and add option setter and getters
      
      * Move taskbar icons into app/options/config subdirectory.
      Use different logic to set the path of the icons directory depending on whether it was run
      using the "electron" or the "start" script in package.json. Leverage the fact that when
      "electron" is run the environment variable `SKIP_PREFLIGHT_CHECK=true` is set
      
      * Set the Electron option `webPreferences.devTools` depending on whether we are in production or not
      particularly for security reasons
      
      * Fix `activate` event listener to cater for `withTaskbar` enabled or disabled usage
      
      * BUG: When running with `withTaskbar` enabled we are setting the option `show: false`
      because it opens the window in the center of the screen instead of positioned right under the
      taskbar icon at the top of the screen.
      When you click the icon in the taskbar it toggles the window open/close correctly positioned
      since it takes into consideration the `bounds` value in `FetherApp.clickedTray`.
      To fix the bug we need to reuse the same approach.
      
      * BUG: Additional `EventEmitter` does not appear to be working correctly or is not required.
      Investigate if can remove
      4763ac05