Aleš Pergl
c49cb29ddf
Disallow launching unknown apps via browser client.
...
CVE-2018-1000006
2018-01-22 16:49:30 -06:00
Cheng Zhao
5f1c76c688
Reorgnize the platform-specific files
2018-01-10 14:45:42 +09:00
Adrien Fery
d32632f768
Update filenames.gypi
2018-01-10 13:14:18 +09:00
Adrien Fery
329fddaed1
Put in-app purchase files under macOS check
2018-01-10 13:14:18 +09:00
Adrien Fery
f3ae566164
Add in-app purchase for MacOS
2018-01-10 13:14:18 +09:00
Thiago de Arruda
897712359f
Implement powerMonitor "suspend"/"resume" events for Linux.
2017-12-05 08:12:44 -03:00
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
Sebastien Bramille
85f254316c
Add logic
2017-11-28 15:34:13 +09:00
Cheng Zhao
c0e9dbcc00
Merge pull request #11144 from dittos/mas-login-helper-again
...
Re-land MAS login helper (w/ regression fix)
2017-11-27 17:02:57 +09:00
Thiago de Arruda
a9a9e58b68
Fix random crash on app quit.
...
Move AtomCTDelegate to brightray as RequireCTDelegate and transfer ownership to
brightray::URLRequestContextGetter. This fixes the wrong lifetime assumptions
that result in AtomCTDelegate being used after free in some scenarios.
Close #10051
2017-11-17 12:03:23 -03:00
Ted Kim
8184cbfb06
Implement login helper to manage login item in Mac App Store build
2017-11-17 10:53:09 +09:00
Alexey Kuzmin
8657169017
Revert "Implement login helper to manage login item in Mac App Store build"
2017-11-16 19:05:13 +03:00
Charles Kerr
31172ecaa0
Merge pull request #11008 from electron/implement-stream-protocol
...
Implement {register,intercept}StreamProtocol
2017-11-14 09:31:57 -06:00
Thiago de Arruda
5ea3a5886b
Implement {register,intecept}StreamProtocol
...
These new functions are more flexible than the other
{intercept,register}*ProtocoProtocol functions, since it allows the user to
return a node.js stream to feed the data to the protocol handler.
It also allows the user to specify a response header dictionary, which makes it
possible to correctly intercept any request made from renderers.
2017-11-13 16:16:14 -03:00
Thiago de Arruda
68f514b92f
Implement EventSubscriber<T> class.
...
This class simplifies the task of subscribing/handling javascript events from
C++ classes in the main process.
2017-11-13 15:22:50 -03:00
Ted Kim
4119da607f
Implement login helper to manage login item in Mac App Store build
2017-10-20 11:44:19 +09:00
Samuel Attard
6b010614e2
Implement moveToApplicationsFolder ( #10142 )
...
* Implement moveToApplicationsFolder
* Fix tabs / spaces
* Fix linting
* Use Browser::Quit, instead of exit
* Update documentation as per feedback
* Fix spec
2017-08-31 10:37:12 -04:00
Aleksei Kuzmin
da36bdfcc4
Add enable_osr build flag
2017-06-28 18:58:52 +02:00
Kevin Sawicki
9a362eed53
Merge pull request #9572 from shubham2892/api-height-menubar-macos
...
API height menubar macos
2017-06-05 10:35:16 -07:00
Cheng Zhao
e82af41591
Merge pull request #9269 from electron/main-notifications
...
Notifications from the main process
2017-05-31 17:21:05 +09:00
Shubham
62d9bf9bae
🎨 ✅ code comments and test for getMenuBarHeight function
2017-05-30 17:26:02 -04:00
Samuel Attard
5048425e6e
Update implementation as per feedback
2017-05-30 19:06:51 +10:00
Samuel Attard
c741b584a1
Remove OS specific implementations
2017-05-29 21:18:18 +10:00
Shubham
b2f1cdfbae
Add API to get top bar height on macOS
2017-05-23 22:24:56 -04:00
Samuel Attard
da31615de5
Basic linux impl
2017-05-23 02:05:13 +10:00
Samuel Attard
6bbc4c3113
Support Windows 7 notifications from brightray
2017-05-23 02:05:13 +10:00
Samuel Attard
7c38633d1e
Initial semi-working windows implementation
2017-05-23 02:05:13 +10:00
Samuel Attard
5dd4d6a961
macOS implementation of notifications in the main process
2017-05-23 02:05:13 +10:00
Heilig Benedek
218e28b136
minor fixes and enable datalist elements in OSR
2017-05-21 19:55:19 +02:00
Heilig Benedek
f360104bee
add datalist element view
2017-05-19 21:36:37 +02:00
Cheng Zhao
f4420b449f
Use v8::ArrayBuffer::Allocator inside Node
2017-05-18 16:26:46 +09:00
Kevin Sawicki
c419ebdd6d
Remove unused test server
2017-05-16 14:44:28 -07:00
Ryohei Ikegami
7ac93045b7
Merge branch 'master' into native-window-open
2017-05-11 13:51:43 +09:00
Brendan Forster
50af70a0e8
Merge branch 'master' into certificate-addition-windows
2017-04-27 14:47:50 +10:00
Ryohei Ikegami
1d73e84a29
Merge branch 'master' into native-window-open
2017-04-27 12:03:55 +09:00
Kevin Sawicki
ca5a8b6166
Extract script tags to renderer.js file
2017-04-25 08:27:57 -07:00
Brendan Forster
4f40b8a42c
stub the windows source file
2017-04-20 14:21:08 +10:00
Ryohei Ikegami
8dff29185b
Merge branch 'master' into native-window-open
2017-04-18 21:59:22 +09:00
Birunthan Mohanathas
638eae1080
Remove MenuLayout in favor of NativeWindowViews::Layout
2017-04-13 01:27:31 +03:00
Birunthan Mohanathas
8b9f7e5b00
Implement initial, experimental BrowserView API
...
Right now, `<webview>` is the only way to embed additional content in a
`BrowserWindow`. Unfortunately `<webview>` suffers from a [number of
problems](https://github.com/electron/electron/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen%20label%3Awebview%20 ).
To make matters worse, many of these are upstream Chromium bugs instead
of Electron-specific bugs.
For us at [Figma](https://www.figma.com ), the main issue is very slow
performance.
Despite the upstream improvements to `<webview>` through the OOPIF work, it is
probable that there will continue to be `<webview>`-specific bugs in the
future.
Therefore, this introduces a `<webview>` alternative to called `BrowserView`,
which...
- is a thin wrapper around `api::WebContents` (so bugs in `BrowserView` will
likely also be bugs in `BrowserWindow` web contents)
- is instantiated in the main process like `BrowserWindow` (and unlike
`<webview>`, which lives in the DOM of a `BrowserWindow` web contents)
- needs to be added to a `BrowserWindow` to display something on the screen
This implements the most basic API. The API is expected to evolve and change in
the near future and has consequently been marked as experimental. Please do not
use this API in production unless you are prepared to deal with breaking
changes.
In the future, we will want to change the API to support multiple
`BrowserView`s per window. We will also want to consider z-ordering
auto-resizing, and possibly even nested views.
2017-04-13 01:27:27 +03:00
Thiago de Arruda
91ee0ea740
Move AtomRenderFrameObserver into a separate module.
...
Also move SetupMainWorldOverrides into the AtomRendererClient class(since the
code there is specific to AtomRendererClient).
2017-04-08 10:29:05 -03: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
joshaber
398132cfe3
Fix file sorting
2017-04-03 21:19:00 -04:00
joshaber
6e89cb9d7c
Move it into dialog
2017-04-03 15:05:24 -04:00
joshaber
7b044ffe0e
Compile these lovely files
2017-03-30 17:26:03 -04:00
Thiago de Arruda
c3a8f665f2
Extract base class from AtomRendererClient
...
The new `RendererClientBase` class contains code that is not specific to node.js
integration with the renderer.
2017-03-27 18:49:55 -03:00
Cheng Zhao
bb5ad4ac05
Correctly initialize Node environment in worker
2017-03-20 12:52:45 -07:00
Cheng Zhao
e017e157ba
Insert node integrations into WebWorker
2017-03-20 12:52:45 -07:00
Kevin Sawicki
019883f2fa
Merge pull request #8899 from electron/dynamically-generate-browserify-dep-list
...
Dynamically generate dependencies of browserify build actions
2017-03-15 09:12:31 -07:00
deepak1556
5a8e522526
StreamManager class is no longer required.
...
Stream lifetime is managed by webui
2017-03-14 00:26:27 +05:30
deepak1556
c982af991d
request for pdf resource from the webui
2017-03-14 00:26:27 +05:30
deepak1556
6cb626db88
use existing ipc message generator
2017-03-14 00:26:27 +05:30
deepak1556
0c7bb72891
listen to ipc messages from plugin to perform SaveAs op
2017-03-14 00:25:59 +05:30
deepak1556
fd8c450ef3
move pdfviewer ui data source to separate file
2017-03-14 00:25:59 +05:30
deepak1556
945e26750e
manage the lifetime of streams created
2017-03-14 00:25:59 +05:30
deepak1556
c8b932fce4
build pdf resources from submodule
2017-03-14 00:25:59 +05:30
deepak1556
a2db14476a
create webui message handler
2017-03-14 00:25:59 +05:30
deepak1556
fdd574cea5
browser: implement pdf renderer as webui
2017-03-14 00:25:59 +05:30
Thiago de Arruda
da023b72ee
Dynamically generate dependencies of browserify build actions
...
Instead of having to list in filenames.gypi every javascript file that may go
into a browserify build, generate this list dynamically when the build files are
created by gyp.
2017-03-10 16:30:23 -03:00
Thiago de Arruda
dda2288541
Remove lib/renderer/api/ipc-renderer-setup.js
...
This file is no longer required since sandboxed renderer directly imports
ipc-renderer.js.
2017-03-09 20:40:32 -03:00
Thiago de Arruda
cd05834d96
Refactor sandboxed renderer init scripts
...
This change gives sandboxed renderer scripts a similar structure to what already
exists in the lib/{browser,renderer,common} directories.
It also allows sandboxed renderer initialization to share more code with
non-sandboxed renderers (ipcRenderer is now imported directly from
lib/renderer/api/ipc-renderer).
2017-03-09 20:39:14 -03:00
Thiago de Arruda
d78f3cae7b
Expose builtin v8 modules to AtomSandboxedRendererClient
...
- Adapt node.cc code that implements `process.binding` to create a similar
object in AtomSandboxedRendererClient.
- Replace the ipc binding object passed to `lib/sandboxed_renderer/init.js` by
the new binding object.
- Refactor the initialization script to use this new object to fetch the ipc
binding and store as a hidden value using the `v8_util` module.
This change also required applying a patch to node.js, so the submodule commit
was updated.
2017-03-09 20:39:14 -03:00
Thiago de Arruda
44bd93589a
Refactor electron exports to keep module list in separate files
2017-03-09 19:08:01 -03:00
Kevin Sawicki
b632cdd37d
Extract helper class to encapsulate touch bar items
2017-03-03 14:00:38 -08:00
Kevin Sawicki
52905ae9b3
Get compiling against 10.10 SDK
2017-03-03 14:00:38 -08:00
Samuel Attard
7857c83ea1
Make dynamic buttons work along with click events
2017-03-03 14:00:38 -08:00
Kevin Sawicki
be79417a03
Include CanFocus on Windows and map to state
2017-02-15 08:28:55 -08:00
deepak1556
63c0e4cbb1
Add ZoomController to manager zoom changes for webcontents
2017-02-12 00:49:17 +05:30
deepak1556
ff3aaa55f7
define icon loader for liunx as separate target
2017-02-07 09:52:11 -08:00
Robo
b25b141642
create iconmanager as singleton class and cleanup code ( #1 )
...
* create iconmanager as singleton class and cleanup code
2017-02-07 09:52:11 -08:00
Yury Solovyov
d118fed5c2
Try my own class
2017-02-07 09:48:12 -08:00
Yury Solovyov
8e4ed664d9
Add icon fetching sources
2017-02-07 09:48:12 -08:00
Cheng Zhao
1a15b45736
--cipher-suite-blacklist is also removed
2017-02-06 10:34:29 -08:00
Cheng Zhao
13a1d79ca6
Deperecate AtomSecurityStateModelClient with SecurityStateTabHelper
2017-02-06 10:34:28 -08:00
Kevin Sawicki
3f7b3c4bd7
Implement window overrides in main context
2017-01-16 12:38:16 -08:00
Kevin Sawicki
d194a84ae4
Setup isolated context from AtomRenderFrameObserver
2017-01-16 12:38:16 -08:00
Kevin Sawicki
736befe90f
Add initial support for loading into isolated world
2017-01-16 12:38:15 -08:00
deepak1556
a0065e62fa
add about: protocol handler
2016-11-09 13:22:58 +05:30
Kevin Sawicki
e0afb814aa
Only call browserify when one of sandbox sources change
2016-11-07 08:19:59 -08:00
Cheng Zhao
dfefa00a50
Merge pull request #7577 from thomsonreuters/net_module
...
net module
2016-10-31 10:31:56 +09:00
ali.ibrahim
61278f9ace
Fixing code review issues.
2016-10-25 12:41:01 +02:00
Kevin Sawicki
144a61c5a3
Add find text support to clipboard
2016-10-25 14:15:54 +09:00
Kevin Sawicki
39a5c7dab9
Merge pull request #7631 from beakerbrowser/webview-policy-flags2
...
Add 'webpreferences' attribute to webview
2016-10-25 12:14:25 +09:00
Kevin Sawicki
2556ed8744
Add parse-features-strings.js
2016-10-25 10:28:36 +09:00
deepak1556
5cbbd6efe6
session: exclude hosts from CT verification if they are handled by custom cert verifiers
2016-10-17 16:35:28 +05:30
ali.ibrahim
7521aeea09
Implement URLRequest::Delegate, handle thread sync.
2016-10-12 14:54:15 +02:00
ali.ibrahim
e8d4abe78f
Adding net module and URLRequest class.
2016-10-12 14:54:15 +02:00
Kevin Sawicki
24bcf6ac16
Add initial cookie changed event support
2016-09-29 09:16:29 -07:00
Cheng Zhao
458c4dd129
Merge branch 'support-chromium-sandbox' of https://github.com/tarruda/electron into tarruda-support-chromium-sandbox
2016-09-27 20:02:23 +08:00
Thiago de Arruda
72154b64ed
Embed setup bundle for preload scripts in sandboxed renderers.
...
Add a gyp target that creates a browserify bundle starting with
`lib/sandboxed_renderer/init.js`, which is embedded into the executable using
the `atom_js2c` target.
The goal of this bundle is to provide a very basic environment for preload
scripts where a `require` function is available.
2016-09-27 06:01:47 -03:00
Thiago de Arruda
0f7652dc85
Move code that defines ipcRenderer methods into another file.
2016-09-27 06:01:46 -03:00
Thiago de Arruda
c8629019f5
Expose atom_api_renderer_ipc module API
2016-09-27 06:01:46 -03:00
Thiago de Arruda
a7b6332ed0
Add atom::AtomSandboxedRendererClient class
2016-09-27 06:01:46 -03:00
deepak1556
ed465208a2
renderer: add content settings class for managing storage
2016-09-21 21:47:30 +05:30
Samuel Attard
5dd5dbb3d8
Add a systemPreferences API method to fetch the system ColorizationColor
...
This is useful for automatical app theming
* Fetches the color from the registry
* Returns an empty string if the fetch fails (a falsey value)
2016-09-20 02:41:26 +10:00
Cheng Zhao
9714348260
Merge pull request #6941 from deepak1556/blob_data_patch
...
protocol: provide blob uuid with uploadData
2016-09-16 17:01:15 +09:00
deepak1556
7b85ca0301
create helper class to read blob data
2016-09-01 08:52:44 +05:30
Vadim Macagon
c64294cf60
Extend the custom Jump List API
...
Add `app.getJumpListSettings()` and `app.setJumpList(callback)` that
make it possible to fully customize the Jump List of an Electron app.
It is now possible to:
- Add tasks to the standard `Tasks` category.
- Add separators to the standard `Tasks` category.
- Add custom categories containing tasks and file links.
- Add system managed Recent/Frequent categories.
- Remove the custom Jump List.
2016-09-01 09:56:14 +07:00
Cheng Zhao
41df037f64
Show dummy view under offscreen mode
2016-08-04 15:35:08 +09:00