0090616f7b
* feat: add a new contextBridge module * chore: fix docs linting * feat: add support for function arguments being proxied * chore: ensure that contextBridge can only be used when contextIsolation is enabled * docs: getReverseBinding can be null * docs: fix broken links in md file * feat: add support for promises in function parameters * fix: linting failure for explicit constructor * Update atom_api_context_bridge.cc * chore: update docs and API design as per feedback * refactor: remove reverse bindings and handle GC'able functions across the bridge * chore: only expose debugGC in testing builds * fix: do not proxy promises as objects * spec: add complete spec coverage for contextBridge * spec: add tests for null/undefined and the anti-overwrite logic * chore: fix linting * spec: add complex nested back-and-forth function calling * fix: expose contextBridge in sandboxed renderers * refactor: improve security of default_app using the new contextBridge module * s/bindAPIInMainWorld/exposeInMainWorld * chore: sorry for this commit, its a big one, I fixed like everything and refactored a lot * chore: remove PassedValueCache as it is unused now Values transferred from context A to context B are now cachde in the RenderFramePersistenceStore * chore: move to anonymous namespace * refactor: remove PassValueToOtherContextWithCache * chore: remove commented unused code blocks * chore: remove .only * chore: remote commented code * refactor: extract RenderFramePersistenceStore * spec: ensure it works with numbered keys * fix: handle number keys correctly * fix: sort out the linter * spec: update default_app asar spec for removed file * refactor: change signatures to return v8 objects directly rather than the mate dictionary handle * refactor: use the v8 serializer to support cloneable buffers and other object types * chore: fix linting * fix: handle hash collisions with a linked list in the map * fix: enforce a recursion limit on the context bridge * chore: fix linting * chore: remove TODO * chore: adapt for PR feedback * chore: remove .only * chore: clean up docs and clean up the proxy map when objects are released * chore: ensure we cache object values that are cloned through the V8 serializer |
||
---|---|---|
.. | ||
api | ||
asar | ||
crash_reporter | ||
extensions | ||
gin_converters | ||
gin_helper | ||
mac | ||
native_mate_converters | ||
resources/mac | ||
application_info.cc | ||
application_info.h | ||
application_info_linux.cc | ||
application_info_mac.mm | ||
application_info_win.cc | ||
atom_command_line.cc | ||
atom_command_line.h | ||
atom_constants.cc | ||
atom_constants.h | ||
color_util.cc | ||
color_util.h | ||
deprecate_util.cc | ||
deprecate_util.h | ||
heap_snapshot.cc | ||
heap_snapshot.h | ||
key_weak_map.h | ||
keyboard_util.cc | ||
keyboard_util.h | ||
mouse_util.cc | ||
mouse_util.h | ||
node_bindings.cc | ||
node_bindings.h | ||
node_bindings_linux.cc | ||
node_bindings_linux.h | ||
node_bindings_mac.cc | ||
node_bindings_mac.h | ||
node_bindings_win.cc | ||
node_bindings_win.h | ||
node_includes.h | ||
options_switches.cc | ||
options_switches.h | ||
platform_util.h | ||
platform_util_linux.cc | ||
platform_util_mac.mm | ||
platform_util_win.cc | ||
promise_util.cc | ||
promise_util.h | ||
skia_util.cc | ||
skia_util.h |