* Update dark-mode.md
Fix the unmatched css file name
* Update docs/tutorial/dark-mode.md
Co-authored-by: Jeremy Rose <nornagon@nornagon.net>
Co-authored-by: Jeremy Rose <nornagon@nornagon.net>
* remove version information from html
* change format for readability
* clarify which console the message should appear in
* minor changes to renderer.md
* update UI on click instead of developer console
* remove node-integration and fix md
* update content
* chore: remove ****
Co-authored-by: Ethan Arrowood <ethan.arrowood@gmail.com>
Co-authored-by: Cheng Zhao <github@zcbenz.com>
* improve progress bar fiddle
* add comments to code snippet
* edits to progress-bar tutorial
* remove versions and nodeIntegration
* limit line length to 100
* implement standard linter suggestions
* add indeterminate and clear timers
* update to have reader replace all of main.js
* remove extra button
* loop the progress bar
* add logic to show reset state briefly
* Update docs/tutorial/progress-bar.md
Co-authored-by: Erick Zhao <erick@hotmail.ca>
* chore: fix lint
Co-authored-by: Cheng Zhao <github@zcbenz.com>
Co-authored-by: Erick Zhao <erick@hotmail.ca>
* feat: add experimental cookie encryption support on macOS
* chore: fix TODO
* update patches
* feat: make cookie encryption work on windows
* chore: update cookie encryption support comments
* fix: only call OSCrypt::Init on windows
* chore: make cookie encryption work on linux
* Update shell/browser/net/system_network_context_manager.cc
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* chore: fix lint
* chore: update patches
* chore: update patches to upstreamed variants
* chore: use chrome ::switches constants
* chore: remove bad patch
* build: disable cookie encryption by default
* chore: update patches
* fix: provide std::string to NoDestructor
* chore: fix macos, nodestructor syntax
* build: fix macOS build due to mismatch in DEFINE
Co-authored-by: Electron Bot <electron@github.com>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* Update docs for keyboard shortcuts
* Add a fiddle for web-apis
* Apply suggestions from code review
Co-authored-by: Erick Zhao <erick@hotmail.ca>
* Cleanup a few formatting errors and missed copies
* Add descriptions to index.html
* Focus on renderer
Co-authored-by: Erick Zhao <erick@hotmail.ca>
* Working
* Working
* Make the native-file drag and drop documents use context bridge
* Add per-file sections
* Use the updated link format
* Use path.join instead of string interpolation.
Co-authored-by: Antón Molleda <molant@users.noreply.github.com>
* Use fs.promises
Co-authored-by: Antón Molleda <molant@users.noreply.github.com>
* Update docs/tutorial/native-file-drag-drop.md
Co-authored-by: Antón Molleda <molant@users.noreply.github.com>
* fix formatting
Co-authored-by: Antón Molleda <molant@users.noreply.github.com>
* Update docs/tutorial/native-file-drag-drop.md
Co-authored-by: Antón Molleda <molant@users.noreply.github.com>
* Use more path.join instead of interpolation
* Update with PR suggestions
* Remove process.cwd() and add more example elements
* Minor text fix
* Fix typo
Co-authored-by: Erick Zhao <erick@hotmail.ca>
Co-authored-by: Antón Molleda <molant@users.noreply.github.com>
Co-authored-by: Erick Zhao <erick@hotmail.ca>
* docs: update REPL guide
* Update docs/tutorial/repl.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
The `vendor` directory is a remnant of times long since gone when we had
brightray and libchromiumcontent (never forget). It is currently the
hope to a single header file that afaics we do not need anymore and
randomly pyyaml gets cloned there but that is easily movable.
This commit removes all references to the vendor directory from scripts,
docs, helpers, etc. and removes the directory itself.
See https://github.com/SeleniumHQ/selenium/issues/9286
The existing snippet works with selenium-webdriver <= 3.6.0, but any more recent version seems to require using 'goog:chromeOptions' and forBrowser('chrome').
* docs: Update Quick Start Guide for Electron 12
With `contextIsolation` enabled by default in Electron 12, the Getting Started Guide no longer works as it is written. In order for the basic example to display values from `process.versions`, we need to add a `preload.js` to the example.
* fix: annotate preload code block with a language
* docs: update quick-start Fiddle example to use preload to provide version info
* fix: ensure example files end in a newline
* docs: add security warning to instructions for turning off contextIsolation
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
* docs: treat preload as an adjective instead of a noun
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
* docs: update devtools extension tutorial
* Update docs/tutorial/devtools-extension.md
Co-authored-by: Jeremy Rose <nornagon@nornagon.net>
* update
Co-authored-by: Jeremy Rose <nornagon@nornagon.net>
The certificate authority mentioned "Comodo" has recently been renamed
"Sectigo". This updates the name of the certificate authority, and the
link to get the code signing certificates for Sectigo/Comodo.
* docs: first draft of the app distribution page
* docs: second iteration of the app distribution page. Fixed mentions
* docs: third iteration of the app distribution page. Fixed mentions
* docs: reworked app distribution page according to mentions
* docs: minor fixes to the app distribution page according to mentions
* docs: added fiddle support for code samples in quick start guide and features
* docs: removed excessive fiddle links for not final steps
* docs: added eof newlines to fiddle examples
* docs: reworked fiddle examples to be more self-sufficient
* docs: reworked fiddle examples according to mentions
* docs: changed http to https in the offscreen rendering fiddle
* docs: fix recent documents fiddle to be more consistent
* docs: first draft of the restructred docs directory
* docs: first working version of the restructred docs directory
* docs: finalized version of the restructred docs directory
* docs: reverted architecture section back to the toc
* docs: revised dark mode page
* docs: fixed lint errors in dark mode page
* docs: fixed mentions, revised doc structure in the dark mode feature page
* docs: fixed mentions, made all the steps more verbose in the dark mode feature page
* feat: add new 'fuses' feature for package-time build-flag style feature control
* feat: put ENABLE_RUN_AS_NODE behind a fuse as well
* chore: address PR feedback
* build: move FUSE_EXPORT to headers
* build: use hex codes for kFuseWire char[]
* docs: add fuse wire documentation
* chore: update fuses.json info
* Apply suggestions from code review
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* chore: add link to fuse schema
* Update shell/app/electron_library_main.mm
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* docs: add snapcraft + electron-packager example
Add example to snap electron app (electron-quick-start)
using snapcraft & electron-packager.
Include notes on how to apply this to an existing project.
Signed-off-by: Chris Patterson <chris.patterson@canonical.com>
* Update snapcraft.md
* Update snapcraft.md
* Update snapcraft.md
* Update docs/tutorial/snapcraft.md
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
Co-authored-by: Cheng Zhao <github@zcbenz.com>
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
* docs: revised the application progress bar feature page
* docs: fixed mentions, added screenshots to make the guide more consistent
* docs: added an extra phrase about indeterminate mode
* docs: revised paragraph about indeterminate mode
* docs: fixed lint errors, broken links
* docs: revised the web embeds feature page
* docs: minor styling updates to the web embeds feature page
* docs: fixed text and grammar mentions
* docs: changed placement of the webviews warning
* docs: added a few missing commas
* docs: revised Notifications feature page
* docs: fixed mentions and updated content according to style guide in the notifications feature page
* docs: fixed lint errors in the notifications feature page
* docs: slightly improved consistency of steps in the notifications feature page
* docs: fixed mentions in the notifications feature page
* docs: revised the drag and drop feature page
* docs: fixed mentions in the drag and drop feature page
* docs: fixed mentions in the drag and drop feature page
In the existing documentation only "npm start" is given as the
instruction to run the project, however the definition of the 'start'
script is not mentioned anywhere. Hence I feel it is important for the
users to know the exact contents of the 'start' scirpt and have
accordingly updated the documentation.
* docs: remove confusing notes on Node
* Update docs/tutorial/first-app.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
In some situations, we can't use auto update to communicate with our update server directly, and proxies can be tricky to get working. I spent a loooong time exploring a lot of options before coming across the comment I linked, so It thought it could be beneficial to people like me of the future.
* docs: Improve the codesigning docs
* docs: Clarify builder notarization
* Update docs/tutorial/code-signing.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/code-signing.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/code-signing.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/code-signing.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/code-signing.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/code-signing.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/code-signing.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/code-signing.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/code-signing.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/code-signing.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* docs: fix minor grammar error 'punctuations'
* docs: fix minor grammar error pluralizing Chromium
* docs: fix typo 'updateCurrentActiviy'
* docs: use consistent spelling of 'behavior'
* docs: use 'macOS' instead of 'Mac OS' or 'OS X'.
* docs: use 'GTK' instead of 'GTK+'
https://mail.gnome.org/archives/gtk-devel-list/2019-February/msg00000.html
* docs: minor capitalization: use 'TCP' not 'tcp'
* Update docs/development/build-instructions-linux.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
* docs: Added a note about chromium logs on the debugging page
* docs: Point at existing documentation for environment variables
* chore: remove trailing whitespace
Co-authored-by: Cheng Zhao <zcbenz@electronjs.org>
* docs: clarify that we support the latest minor for the stable lines we support
* Update docs/tutorial/support.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* docs: clean up systemPreferences.effectiveAppearance text
* Grammar fixes
* Add links for Electron Packager & Electron Forge
* Update Packager API links, given https://github.com/electron/electron-packager/pull/1131
* docs: clean up Dark Mode guide
* Grammar fixes
* Add links for Electron Packager & Electron Forge
* docs: adjust based on Electron 8 using 10.14 SDK
* docs: add references to app.whenReady() in isReady
* refactor: prefer app.whenReady()
In the docs, specs, and lib, replace instances of `app.once('ready')`
(seen occasionally) and `app.on('ready')` (extremely common) with
`app.whenReady()`.
It's better to encourage users to use whenReady():
1. it handles the edge case of registering for 'ready' after it's fired
2. it avoids the minor wart of leaving an active listener alive for
an event that wll never fire again
* docs: fix missing import, explicitly use nativeTheme api
* Update docs/tutorial/mojave-dark-mode-guide.md
Co-Authored-By: Charles Kerr <ckerr@github.com>
* switch to nativeTheme event
Co-authored-by: Charles Kerr <ckerr@github.com>
The documentation is currently pointing to a download link that leads to a 404 for the ARM64 version of `node.lib`. This change updates the link to the correct download for ARM64 `node.lib`.
* Update online-offline-events.md
NodeIntegration is required for online/offline and the default changed, so the example should reflect the need for that config
* chore: fix lint warning
Co-authored-by: Cheng Zhao <zcbenz@github.com>
* doc: update Chinese Electron mirror URL
* doc: replace remaining references of electron-download with @electron/get
* doc: update cache dir example based on recent @electron/get cache changes
* docs: First draft of perf checklist
* docs: More words
* docs: Use standard in code example
* docs: fix broken link
* Update docs/tutorial/performance.md
Co-Authored-By: Charles Kerr <ckerr@github.com>
* Update docs/tutorial/performance.md
Co-Authored-By: Charles Kerr <ckerr@github.com>
* Update docs/tutorial/performance.md
Co-Authored-By: loc <andy@slack-corp.com>
* Update docs/tutorial/performance.md
Co-Authored-By: loc <andy@slack-corp.com>
* docs: Implement suggestions
* docs: Include VSCode talk
* chore: Pass linter
* Update docs/tutorial/performance.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/performance.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/performance.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/performance.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/performance.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/performance.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Apply suggestions from code review
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update performance.md
* fix: The process link
Versions didn't show and I was getting errors in the Developer Tools: `Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'self'"`. The cause is probably that Chrome has implemented extra security since this tutorial was created. Added 'unsafe-inline' and it works.
* docs: Add recent Electron version to security checklist
* Update docs/tutorial/security.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/security.md
Co-Authored-By: Pedro Pontes <pepontes@microsoft.com>
* Update docs/tutorial/security.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
I've asked #19775 because I was frustrated with how hard it was to find a way to fix (instead of hide) the CSP warning in Electron and I complained that even the official quick start guide wasn't compliant with the security checklist at https://electronjs.org/docs/tutorial/security. Someone helped me out with a CSP meta tag which I have later noticed is indeed mentioned in the checklist, too: https://electronjs.org/docs/tutorial/security#csp-meta-tag. I have not used the checklist one verbatim because it prevents a `script` tag from working when serving `index.html` through the `file:` protocol as the quick start does. I instead used the one the person in my issue recommended which seems to work well to me. I am not that well versed in CSP so there might be a better policy to include with the quick start, but this is what I've got for now.
4d8a055 (#19226) introduced incorrect instructions for 'opting out' of dark mode in Electron 7.0.0 and for enabling it on older versions. The boolean values for the `NSRequiresAquaSystemAppearance` key were inverted.
This adds the NSRequiresAquaSystemAppearance key to our default Info.plist file which will tell macOS to auto-switch our effectiveAppearance in sync with the OS. The dark mode documentation has been updated to reflect how to opt *out* of this but it is also noted that certain dark mode APIs will not work on Catalina if you opt out.