Charles Kerr
d663b4eaee
fix: fix gn cpplint warnings ( #14583 )
...
* chore: fix cpplint 'include_what_you_use' warnings
Typically by including <memory>, <utility> etc.
* chore: fix 'static/global string constant' warning
Use C style strings instead of std::string.
Style guide forbids non-trivial static / global variables. https://google.github.io/styleguide/cppguide.html#Static_and_Global_Variables
/home/charles/electron/electron-gn/src/electron/script/cpplint.js
* refactor: remove global string variables.
Fix 'global string variables are not permitted' linter warnings
by using the base::NoDestructor<> wrapper to make it explicit that
these variables are never destroyed.
The style guide's take on globals with nontrivial destructors:
https://google.github.io/styleguide/cppguide.html#Static_and_Global_Variables
* fix: initializer error introduced in last commit
* fix: remove WIP file that was included by accident
* fix: include order
* fix: include order
* fix: include order
* fix: include order, again
2018-09-12 19:25:56 -05:00
Jeremy Apthorp
5b25c2db5d
Need new #include for base::UTF8ToUTF16
2018-09-11 20:24:03 +02:00
Samuel Attard
aa6d769229
Handle external protocols with the network service.
...
https://chromium-review.googlesource.com/c/chromium/src/+/956091
2018-09-11 20:24:03 +02:00
Robo
bce5bd87a8
fix: opt into location services once device service has been started ( #14253 )
...
* fix: opt into location services once device service has been started
* refactor: provide fake location provider to mock geolocation reponses
* chore: add spec for navigator.geolocation api using fake location provider
2018-08-23 08:51:46 -07:00
Robo
c8f506a8aa
fix: add method and referrer properties to app login event ( #14231 )
...
* refactor: remove brightray/network_delegate.{cc|h}
* refactor: respond to http requests through network delegate
2018-08-23 18:55:13 +09:00
Shelley Vohr
9f328abe19
refactor: remove instances of createDeepCopy ( #13703 )
...
* add new native_mate converters for base::Value
* fix converter swapping
* remove createDeepCopy from browser/api
* replace missing ListValue converter
* convert bulk of remaining createDeepCopy instances
* convert last remaining instances of createDeepCopy
* incremental progress and helper methods for value conversion
* convert Get and add template function for GetString
* final DictionaryValue method conversions
* remove usage of base::DictionaryValue in web_contents_preferences
* use IsEnabled helper where possible
* Update atom_api_web_view_manager.cc
2018-08-04 07:23:07 +10:00
Cheng Zhao
305e3aad40
refactor: remove private webContents.getId() API ( #13674 )
2018-07-23 18:08:36 +09:00
deepak1556
5e2406081e
build: move pepper flash behind feature flag
2018-06-21 17:02:12 +05:30
Milan Burda
d5d5386017
use std::make_unique<T>
2018-06-19 10:20:39 +02:00
deepak1556
77f427acc8
Check for key system support using new mojo service KeySystemSupport
...
https://chromium-review.googlesource.com/c/chromium/src/+/834764
2018-06-19 11:49:42 +10:00
deepak1556
0cbffb15cc
NetworkService: Implement URLLoader::OnAuthRequired
...
https://chromium-review.googlesource.com/c/chromium/src/+/938960
2018-06-19 11:49:42 +10:00
deepak1556
27cb84eee0
NetworkService: Implement URLLoader::OnCertificateRequested
...
https://chromium-review.googlesource.com/c/chromium/src/+/848303
2018-06-19 11:49:42 +10:00
deepak1556
b7bc3ec20d
Update AtomBrowserClient::RenderProcessWillLaunch api
...
https://chromium-review.googlesource.com/c/chromium/src/+/742344
2018-06-19 11:49:41 +10:00
Aleksei Kuzmin
37168c0a95
Move ResourceRequestBody to services/network in preparation of moving content/network.
...
https://chromium-review.googlesource.com/864422
2018-06-19 11:49:41 +10:00
Milan Burda
45e78728bd
chore: move more constants to options_switches.h/cc ( #13093 )
...
* Add options::kNativeWindowOpen
* Add options::kSandbox
* Add options::kPlugins
* Add options::kWebSecurity
* Add options::kAllowRunningInsecureContent
* Add options::kOffscreen
2018-05-29 03:09:51 -05:00
Milan Burda
2337237d58
Refactoring: use C++11 class member variable initialization
2018-05-22 00:18:38 +02:00
Jeremy Apthorp
dd7e0f80fe
Turn off visual zoom by default ( #12679 )
2018-04-26 10:27:35 -05:00
Jeremy Apthorp
1a64b9f0c2
Disable navigating on drag/drop ( #12655 )
...
* Disable navigating on drag/drop
* Add a WebPreferences option to re-enable navigate on drag/drop
2018-04-26 10:23:27 -05:00
Jeremy Apthorp
a635f078c6
[chromium-style] auto variable type must not deduce to a raw pointer type
2018-04-19 11:10:52 -07:00
Shelley Vohr
c6f4bbd143
also format missing .cc files
2018-04-18 20:48:45 -04:00
Robo
65e8199a93
Enable plznavigate aka browser side navigation ( #12535 )
...
* enable plznavigate code path
* AtomBrowserClient::GetGeolocationApiKey returns the right default
* use IsLoadingToDifferentDocument to identify top level navigation in mainFrame
* use candidate site instance when available
* spec: don't test httpReferrer option for file origin
* update libcc ref
* affinity: only group same site in this mode
* plznavigate: don't emit did-get-response-details event for blob scheme
2018-04-06 16:22:52 +09:00
Cheng Zhao
0abbedcdae
Fix error caused by refactor
2018-03-22 15:21:56 +09:00
Cheng Zhao
6df2326a30
Cleanup the static methods of WebContentsPreferences
...
The static methods are totally unnecessary, and it makes code harder to
understand since we are using different ways to do the same things.
2018-03-22 15:21:56 +09:00
Cheng Zhao
3d47a8a2fd
Remove the static getter methods from WebContentsPreferences
2018-03-22 15:20:03 +09:00
Cheng Zhao
887bc12350
Add WebContentsPreferences::From that checks parameter
2018-03-22 15:16:26 +09:00
Cheng Zhao
9772777919
web_prefrences() => dict()
...
Having property name being the same with class name is making code
harder to understand, and dict is much shorter.
2018-03-22 15:15:30 +09:00
deepak1556
c1908147a9
Fix windows build
2018-03-20 10:13:17 +03:00
deepak1556
c3f8f6bc42
re-use request context from IOThread
2018-03-20 10:13:17 +03:00
deepak1556
97eb7f2c98
REVIEW: ContentBrowserClient now provides geolocation api key and request context
2018-03-20 10:13:16 +03:00
Samuel Attard
1158d35021
experimental_webgl_enabled is not supported, now use webgl1/2_enabled
2018-03-20 10:08:58 +03:00
Samuel Attard
fb55db665c
AllowCertificateError no longer sends overridable
2018-03-20 10:08:57 +03:00
Samuel Attard
0ac883c6d4
Remove the race condition between new process creation and context release ( #12342 )
...
* Remove the race condition between new process creation and old process releasing remote context
Previously there was a race condition where the getId() method would return the new context ID even
though the release was for the old context. This changes it to send the "initial" context ID with
the release message to ensure there is no race.
* fetch context ID from remote in sandbox mode
2018-03-20 15:54:47 +11:00
Robo
06bf72da67
remove process preference lock from AtomBrowserClient ( #12194 )
2018-03-09 12:37:26 -05:00
Cheng Zhao
83f01096c0
When a render process is crashed, it might be reused
2018-03-09 16:13:51 +09:00
Cheng Zhao
9c7854aef6
NativeWindow is no longer WebContentsObserver
2018-03-06 16:21:18 +09:00
Cheng Zhao
affa21600c
Remove unnecessary methods on WebContentsPreferences
2018-02-13 15:57:54 +09:00
Emmanuel Kimmerlin
9c1b47361f
Add an "affinity" option to webPreferences
2018-02-13 15:18:55 +09:00
Aleš Pergl
39554566cc
Allow IO while constructing an absolute path (prevents DCHECK failure) ( #11697 )
2018-01-23 10:25:01 -05:00
Aleš Pergl
c49cb29ddf
Disallow launching unknown apps via browser client.
...
CVE-2018-1000006
2018-01-22 16:49:30 -06:00
deepak1556
a1592446da
REVIEW: access GetApplicationLocale on sequence that allows IO
2018-01-02 16:37:08 +09:00
deepak1556
69bd44edbb
REVIEW: add render process lifecycle observer only once
2018-01-02 16:37:08 +09:00
deepak1556
19de41b764
BrowserClient::CanCreateWindow is no longer called on the IO thread
...
https://codereview.chromium.org/2821473002
2017-12-07 09:47:32 +05:30
Cheng Zhao
cb3a9c69ab
Add a SessionPreferences to manage session related data
...
By design the BrowserClient should not be aware of the api:: classes.
2017-12-05 15:59:15 +09:00
Ales Pergl
7613afe6d7
Disabled DCHECKs that fail when running tests
2017-12-01 17:55:22 +01:00
Aleksei Kuzmin
fe662ccbdc
Remove obsolete Blink popup blocker.
...
https://chromium-review.googlesource.com/c/chromium/src/+/512347
2017-11-24 10:58:17 +09:00
Aleksei Kuzmin
5831a5ffa1
Refactor client cert private key handling.
...
https://codereview.chromium.org/2898573002
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
ee9a547985
Service CreateNewWindow on the UI thread with a new mojo interface
...
https://codereview.chromium.org/2821473002
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
ba6e8b4dff
Merge ResourceRequestBodyImpl and ResourceRequestBody.
...
https://codereview.chromium.org/2954343005
2017-11-24 10:58:15 +09:00
Aleksei Kuzmin
b77b67bfbe
Remove client_certs from SSLCertRequestInfo.
...
https://codereview.chromium.org/2838243002
2017-11-24 10:58:15 +09:00
Cheng Zhao
eeca6fcb55
Revert "Fix window.opener being null when nativeWindowOpen is used"
2017-08-07 19:50:23 +09:00
Samuel Attard
bd99bcbf64
Fix typo in comment
2017-07-31 11:00:00 +10:00
Samuel Attard
32327b77a5
Remove unneeded check but document why it is not there now
2017-07-31 10:47:25 +10:00
Samuel Attard
3ac2f674bc
Fix nativeWindowOpen's opener being null
2017-07-29 19:21:28 +10:00
Kevin Sawicki
06e60e5d4d
Map pending process id to webContents for frame host initiating navigation
2017-07-17 11:55:15 -07:00
Kevin Sawicki
25e1ed97b5
Use constants from content_switches.h
2017-07-17 11:55:15 -07:00
Kevin Sawicki
dbd240a7cb
Return null from native window.open when allowpopups is unset
2017-05-26 10:10:36 -07:00
Kevin Sawicki
d6e626c7e3
Remove crashed render processes from metrics
2017-05-26 08:32:08 -07:00
Kevin Sawicki
b5879b7399
🎨 Minor formatting/doc changes
2017-05-26 07:51:17 -07:00
Hari Juturu
939747945e
Adding CPU & Memory metrics for App
2017-05-24 21:07:35 -07:00
Ryohei Ikegami
7ac93045b7
Merge branch 'master' into native-window-open
2017-05-11 13:51:43 +09:00
Cheng Zhao
fc2d62d5cb
Fix API changes of Chrome58
2017-04-27 16:34:52 +09:00
Ryohei Ikegami
1d73e84a29
Merge branch 'master' into native-window-open
2017-04-27 12:03:55 +09:00
Kevin Sawicki
a004cada7c
Merge pull request #9095 from seanchas116/better-path-resolve
...
Search for module from app path when URL is not file protocol
2017-04-20 10:49:53 -07:00
Birunthan Mohanathas
3bcf5e0e9f
Fix OverrideSiteInstanceForNavigation() signature
2017-04-18 11:51:38 +03:00
Ryohei Ikegami
9d62b196d3
Use base::FilePath
2017-04-13 10:59:12 +09:00
Ryohei Ikegami
b19c5154ca
Fix cpplint errors
2017-04-12 12:25:56 +09:00
Ryohei Ikegami
34ed1a9ef8
Track child web contents
2017-04-06 12:15:27 +09:00
Ryohei Ikegami
526086d900
Improve RootWebContentsTracker
2017-04-06 11:37:21 +09:00
Ryohei Ikegami
b683584859
Add better comments to ShouldCreateNewSiteInstance
2017-04-05 18:16:10 +09:00
Ryohei Ikegami
cbdd52e43b
Always create new SiteInstance on root WebContents
2017-04-05 17:51:17 +09:00
Ryohei Ikegami
90852c665d
Pass RenderFrameHost to ShouldCreateNewSiteInstance
2017-04-05 13:47:02 +09:00
Ryohei Ikegami
e7b9b4b1a5
Always create new site instance
2017-04-04 20:54:10 +09:00
Ryohei Ikegami
3eab5df4a4
Revert "Reuse site instance only on window.open"
...
This reverts commit 4d61d071b2
.
2017-04-04 13:48:17 +09:00
Ryohei Ikegami
24fedb2e20
No extra linebreak
2017-04-04 09:40:38 +09:00
Ryohei Ikegami
4a7eec8f2d
Pass app path as command line argument
2017-04-04 09:36:01 +09:00
Ryohei Ikegami
4d61d071b2
Reuse site instance only on window.open
2017-03-21 10:41:49 +09:00
Ryohei Ikegami
f3ce93f1bb
Fix C++ style
2017-03-19 18:24:05 +09:00
Ryohei Ikegami
2c7343293a
Allow window.open on native-window-open enabled
2017-03-19 17:47:26 +09:00
Ryohei Ikegami
a1f9a45276
Use native window.open implementation
2017-03-19 17:41:20 +09:00
Ryohei Ikegami
054ba7a964
Add AtomBrowserClient::IsRendererUsesNativeWindowOpen
2017-03-19 17:25:45 +09:00
Cheng Zhao
2e0780308c
allowDisplayingInsecureContent is removed by Chrome
2017-02-06 10:34:29 -08:00
Cheng Zhao
c10eb73166
Signature of OnCreateWindow has changed
2017-02-06 10:34:28 -08:00
Cheng Zhao
497f5a1199
Update files for Chrome 54 API changes
2017-01-19 09:05:59 +02:00
Paul Frazee
99ea50649a
finish implementation of {secure:true} opt on protocol.registerStandardScehesm, and add working test
2016-12-12 12:49:57 -08:00
deepak1556
0410a184ce
webContents: handle POST navigation for new windows
2016-11-11 10:53:00 -08:00
Kevin Sawicki
709dd0bf18
Upgrade to Chrome 53.0.2785.143
2016-11-09 11:03:44 -08:00
Michael Vasseur
c811188e22
Updated required code to handle missing additional features for popup windows
2016-10-04 14:38:32 +09:00
deepak1556
1323542373
browser: allow filesystem access for devtools scheme
2016-09-29 22:54:39 +05:30
Thiago de Arruda
1d228446db
Expose --enable-sandbox
command-line switch.
...
When `--enable-sandbox` is passed, electron will use chromium sandbox to spawn
all renderers, and every new BrowserWindow will automatically have "sandboxed"
passed as a web preference(since the renderer would not work properly
otherwise).
2016-09-27 06:01:46 -03:00
Thiago de Arruda
c783ec72bc
Add "sandboxed" option to "webPreferences".
...
When "sandboxed" is passed as a web preference for `BrowserWindow`, the newly
created renderer won't run any node.js code/integration, only communicating with
the system via the IPC API of the content module. This is a requirement for
running the renderer under chrome OS-level sandbox.
Beyond that, certain behaviors of AtomBrowserClient are modified when dealing
with sandboxed renderers:
- `OverrideSiteInstanceNavigation` no longer create a new `SiteInstance` for
every navigation. Instead, it reuses the source `SiteInstance` when not
navigating to a different site.
- `CanCreateWindow` will return true and allow javascript access.
2016-09-27 06:01:46 -03:00
Cheng Zhao
f28e8d7168
Fix API changes of Chrome 53
2016-09-14 16:22:43 +09:00
deepak1556
62cb8428fb
use schemes from global instead of commandline
2016-08-24 20:22:35 +05:30
deepak1556
ad0c86db7a
register custom schemes to access files through filesystem api
2016-08-24 05:46:54 +05:30
Cheng Zhao
1ba3907038
Update to API changes of Chrome 52
2016-07-04 15:32:43 +09:00
Cheng Zhao
14c4be50c1
Avoid calling GetWebContentsFromProcessID for twice
2016-07-02 16:54:12 +09:00
Samuel Attard
4f660f3e6f
Implement WebContenstAudioMuted in AtomBrowserClient
2016-07-02 13:28:28 +12:00
Cheng Zhao
920ebee333
Make sure standard schemes are also set in child process
2016-06-08 15:46:50 +09:00
Cheng Zhao
7eab259d92
Make it possible to only set preferences for BrowserWindow
2016-05-27 09:20:46 +09:00
Cheng Zhao
530f19e956
Fix crash due to site_instace being freed early
2016-05-23 12:57:46 +09:00
Cheng Zhao
899cdb48d7
Fix using invalid pointer as SiteInstance
2016-05-23 12:46:14 +09:00