Commit graph

5383 commits

Author SHA1 Message Date
Electron Bot
76a592a419 Bump v4.0.0-nightly.20180817 2018-08-17 20:06:28 +00:00
Cheng Zhao
dd5b8769be fix: use OOPIF for webview tag (#13869)
* fix: use OOIF for webview tag

* fix: do not call GetNativeView for webview

* fix: OOIPF webview's WebContents is managed by embedder frame

* fix: guest view can not be focused

* fix: clear zoom controller when guest is destroyed

* fix: implement the webview resize event

The webview is no longer a browser plugin with the resize event, use
ResizeObserver instead.

* test: disable failed tests due to OOPIF webview

* fix: embedder can be destroyed earlier than guest

This happens when embedder is manually destroyed.

* fix: don't double attach

* fix: recreate iframe when webview is reattached

* fix: resize event may happen very early

* test: some tests are working after OOPIF webview

* chore: remove unused browser plugin webview code

* fix: get embedder via closure

When the "destroyed" event is emitted, the entry in guestInstances would be
cleared.

* chore: rename browserPluginNode to internalElement

* test: make the visibilityState test more robust

* chore: guestinstance can not work with OOPIF webview

* fix: element could be detached before got response from browser
2018-08-16 15:57:40 -07:00
Samuel Attard
4cf2cde7fb Bump v4.0.0-nightly.20180816 2018-08-16 08:58:46 -07:00
Robo
9989195f19 fix: notify request context shutdown on IO before cleanup (#14058) 2018-08-14 14:07:53 -07:00
Charles Kerr
b9490177da Revert "[WIP] refactor: (Part I) make the ownership of URLRequestContextGetter more clear (#13956)"
This reverts commit 1c0bb06d4a.
2018-08-13 16:16:04 -07:00
Robo
1c0bb06d4a [WIP] refactor: (Part I) make the ownership of URLRequestContextGetter more clear (#13956)
* refactor: desttroy URLRequestContextGetter on IO thread

* Accepts a factory class that can customize the creation of URLRequestContext
* Use a separate request context for media which is derived from the default
* Notify URLRequestContextGetter observers and cleanup on IO thread
* Move most of brightray net/ classes into atom net/

* refactor: remove refs to URLRequestContextGetter on shutdown

* refactor: remove brigtray switches.{cc|h}

* refactor: remove brightray network_delegate.{cc|h}

* refactor: make AtomURLRequestJobFactory the top level factory.

* Allows to use the default handler from content/ for http{s}, ws{s} schemes.
* Removes the storage of job factory in URLRequestContextGetter.
2018-08-13 15:22:45 -07:00
Milan Burda
702cc84bd3 Don't pass preloadPath via ELECTRON_BROWSER_SANDBOX_LOAD for security reasons (#13031) 2018-08-10 17:19:49 -05:00
Milan Burda
271d582aac refactor: make methods const, cleanup (#13937) 2018-08-09 10:15:23 -07: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
Milan Burda
f904057104 fix: add missing "simple" property in several APIs to prevent proxying of return values (#13905)
* fix: add missing "simple" property in several APIs to prevent proxying of return values

* add tests
2018-08-03 12:07:27 -07:00
Birunthan Mohanathas
23440a5ec3 fix: Improve --enable-features/--disable-features handling (#13920)
As it turns out, we can reinitialize the feature list directly after the
user JS script has been executed instead of much later. This allows
modifications to `--enable-features`/`--disable-features` to work with a
greater set of features.
2018-08-03 10:53:54 +10:00
Jeremy Apthorp
3bdff2d238
feat: allow setting window shape (#13789)
This binds Widget::SetShape, an API that already exists in Chromium (for
Windows and Linux). It's a more reliable method of having some parts of
your window be "click-through" than the current `setIgnoreMouseEvents`
API, which messes around with the `WS_EX_LAYERED` window style on
Windows, causing strange bugs and incompatibility with hardware
acceleration.
2018-07-30 13:37:40 -07:00
Gellert Hegyi
4bcf0e34c5 fix: window.setVibrancy parameter passing (#13627)
* fix: setVibrancy parameter passing

* fix: uses correct parameter types for setVibrancy
2018-07-30 11:29:18 +10:00
Samuel Attard
4b3011f3e8 feat: add getUploadProgress API to the net API (#13783) 2018-07-27 07:15:48 -07:00
Birunthan Mohanathas
c8dc2d3730 feat: Add will-resize event to TopLevelWindow (#13649)
The new `will-resize` event can be used to prevent the resize from
happening before the native window is actually resized. This is in
contrast to the existing the `resize` event, which is sent *after* the
native window has already been resized. For apps with e.g. custom window
snapping logic, the `resize` event is not sufficient because it will
result in flickering between the dragged size and the snapped size.

`will-resize` is only emitted on macOS and Windows.
2018-07-27 18:53:01 +09:00
Birunthan Mohanathas
a42ca9eecc feat: Add BrowserWindow.setWindowButtonVisibility()
Fixes #12701 and supersedes #13131.

Ideally we would have added `setTitleBarStyle()`, but that is a
significantly more involved change. For example, consider the case where
we switch from `hidden` to `normal`. We would not only have to show the
traffic light buttons, we would also have to switch the window from a
frameless to a framed window and deal with various other window state.
Lets instead implement a simple solution for #12701.
2018-07-25 10:12:27 -07:00
Cheng Zhao
305e3aad40
refactor: remove private webContents.getId() API (#13674) 2018-07-23 18:08:36 +09:00
John Kleinschmidt
f8b646c90a
Merge pull request #13543 from electron/ajm-win7-crash
Ensure DirectX capturer is supported.
2018-07-19 15:11:42 -04:00
Samuel Attard
777d0113d5
fix: create a window capturer correctly (#13689)
* fix: create a window capturer correctly

We were incorrectly creating two screen capturers instead of a window
capturer

* spec: ensure dc tests pass

* spec: enable all tests after verifying dc tests work
2018-07-17 14:20:50 +10:00
Shelley Vohr
6045d1218a
refactor: remove experimentalCanvasFeatures property (#13684) 2018-07-16 13:32:42 -07:00
Cheng Zhao
4a7c85f43e fix: use InspectableWebContentsView as content view 2018-07-16 10:20:35 +09:00
John Kleinschmidt
539b554ecc
Merge pull request #13578 from electron/miniak/refactoring
refactor: statically link functions available on Windows 7+
2018-07-13 10:52:37 -04:00
Cheng Zhao
77ca5b7d64 fix: don't invoke callback after FrameSubscriber is destroyed (#13657) 2018-07-13 19:54:49 +10:00
Milan Burda
adaa32003d refactor: DwmGetColorizationColor does not have to be dynamically resolved 2018-07-12 22:28:44 +02:00
Felix Rieseberg
deedf6c3f4 feat: Add isCurrentlyAudible() to WebContents (#13614)
* 🔧 Add isCurrentlyAudible() to WebContents

* ❤️ Implement feedback, use await to wait for event

* 👷 Add missing imports
2018-07-12 21:35:11 +10:00
Cheng Zhao
0ec4ad288d fix: fallback to FullSizeContentView for frameless window on mac (#13599)
fix: draggable regions not working on macOS
2018-07-10 11:43:42 +10:00
Andrew MacDonald
7639e4a32a Actually try building on Windows. 2018-07-03 01:03:05 -07:00
Andrew MacDonald
68541f2ae8 Ensure DirectX capturer is supported. 2018-07-02 21:37:10 -07:00
Maxine Whitely
6cf68f8247 fix: tray setContextMenu crash (#13513)
Co-authored-by: Zhuo Lu <sethlu@mintkit.net>
Co-authored-by: Kristine Zhang <kzhang@slack-corp.com>
2018-06-29 14:48:26 -07:00
Jeremy Apthorp
3d4487ccfd
Merge pull request #13463 from electron/remove_wtl
refactor: Using win32 file open api instead of WTL
2018-06-29 10:00:50 -07:00
Jeremy Apthorp
733e495e91
chore: use full path for ui_unscaled_resources.h (#13492)
This is the path that resolves in Chromium, it also works fine in the gyp build.
2018-06-28 14:41:37 -07:00
Jeremy Apthorp
d6af3bfcd2
chore: fix more chromium-style errors in windows code (#13487)
Finding more chromium-style linting errors as I build more of the windows code :)
2018-06-28 14:20:11 -07:00
Shelley Vohr
003a92e099
refactor: remove deprecated GetAs methods (#13425)
* refactor: remove deprecated GetAs methods

* restructure URLRequestAsyncAsarJob on win

* fix: add string conversion header
2018-06-27 14:52:48 -07:00
Samuel Attard
92588be2bd refactor: add promise helper and change whenReady to be native impl (#13115)
* Add promise helper and change whenReady to be native impl

* remove commented code

* add GetInner helper to dedupe promise code

* add Promise.reject helper to be consistent with JS

* fix linting

* update promise impl per feedback

* remove param name from unused isolate

* Use non-depreceated resolvers for promises

* Add thread dchecks for promise helper, intiialize promise pointer to nullptr
2018-06-27 16:06:08 -05:00
zacwalk
9db76394f7 Link gdi from gyp 2018-06-27 20:58:37 +02:00
Zac Walker
8151c90c6b Fix warnings as error fixes. 2018-06-27 16:28:12 +02:00
Zac Walker
f122c44b07 Using win32 file open dialogs instead of WTL 2018-06-27 13:09:18 +02:00
Jeremy Apthorp
4b60efcaf8
chore: [gn] fix WTL include paths and namespace include (#13433)
As of libchromiumcontent#576, the WTL namespace isn't included by
default in the GN build.
2018-06-26 22:57:40 +02:00
Jeremy Apthorp
78bc1081fd
chore: fix some more warnings in windows build (#13431)
Remove an unused function and fix an int type comparison warning. Only showed up when building with GN.
2018-06-26 02:00:20 +02:00
Jeremy Apthorp
6f91af9343
chore: fix various chromium-style errors in windows (#13394)
These errors weren't previously picked up because the GN build wasn't running on Windows.
2018-06-25 22:30:00 +02:00
deepak1556
5e2406081e build: move pepper flash behind feature flag 2018-06-21 17:02:12 +05:30
Jeremy Apthorp
8ccb5cc6eb chore: Annotate fallthrough switch paths with FALLTHROUGH
The compiler was throwing errors about unannotated fallthroughs when
building with GN.
2018-06-20 14:38:18 -07:00
Jeremy Apthorp
3f40e93ba7 chore: fix chromium-style errors in frame_subscriber
The chromium-style linter we run in the GN build was throwing errors
about these issues.
2018-06-20 14:14:11 -07:00
Milan Burda
122d00f415 Revert "Drop support of Mac OS 10.9" (#13348)
This reverts commit efa0ec0263481ae188f206625bec6f4a4e5d3ecf.
2018-06-20 13:40:18 -07:00
Samuel Attard
79fbd6bab1 Revert "fix: Drop support for OS X Mavericks (version 10.9)" (#13333) 2018-06-20 07:27:55 -05:00
Husayn
1a8c986fb1 set mac protocol to none (#13302) 2018-06-20 13:16:37 +10:00
Shelley Vohr
c20e0c30a2 src: base::Value::HasKey(key) => base::Value::FindKey(key) (#13312) 2018-06-20 13:07:10 +10:00
John Kleinschmidt
04a7a34c42
Merge pull request #13301 from electron/revert-frame-sub-deprecation
fix: revert frame subscriber deprecation and re-enable tests
2018-06-19 14:26:14 -04:00
Heilig Benedek
f643ce4f66 revert: frame subscriber deprecation and re-enable tests 2018-06-19 19:49:44 +02:00
John Kleinschmidt
d367b75680
Merge pull request #13296 from electron/miniak/drop-macos-10.9
fix: Drop support for OS X Mavericks (version 10.9)
2018-06-19 13:19:24 -04:00
Milan Burda
794fe741e9 fix: Drop support for OS X Mavericks (version 10.9) 2018-06-19 17:49:27 +02:00
Justin Guze
137aaf2429 fix: pass down the bool value of enableAutoSize to setSize (#13282)
* fix: pass the boolean value of enableAutoSize to setSize

The webContents setSize API takes in an optional enableAutoSize boolean.
Looking in the code, if that property is set, regardless if you pass in
true or false, it will always set it to true. This change passes the
appropriate boolean value down properly.

* creating new bool for autosize
2018-06-19 10:38:55 -05:00
Jeremy Apthorp
9e8f83e25c refactor: fix chromium-style in url_request_asar_job (#13284) 2018-06-19 10:31:55 -05:00
Milan Burda
d5d5386017 use std::make_unique<T> 2018-06-19 10:20:39 +02:00
Samuel Attard
2720fa751b Fix windows desktop_capturer build 2018-06-19 15:29:16 +10:00
Samuel Attard
9d18be8fde Remove removed variable popup_bounds_in_view_ 2018-06-19 11:58:26 +10:00
Samuel Attard
5a28759fea post all desktop capturer apis to worker threads 2018-06-19 11:49:46 +10:00
Samuel Attard
8200a132be Re-enable cookie specs and add custom cookie name/url validation 2018-06-19 11:49:46 +10:00
Aleksei Kuzmin
f4a9575193 Drop support of Mac OS 10.9
- set minimum deployment target to 10.10
- set minimum system version to 10.10
2018-06-19 11:49:45 +10:00
Heilig Benedek
65b8dd48d8 Update OSR code 2018-06-19 11:49:44 +10:00
Heilig Benedek
60ba2013c4 Re-add dirtyOnly to FrameSubscriber and document API change 2018-06-19 11:49:44 +10:00
Heilig Benedek
b9413fe59d Update FrameSubscriber implementation 2018-06-19 11:49:44 +10:00
Nitish Sakhawalkar
ca8843102a Fix duplicate RTCDispatcher console error for debug build.
The solution was to call CreateScreenCapturer from content, and not link the static library in.
2018-06-19 11:49:44 +10:00
Aleksei Kuzmin
90c3d87e21 Rename LocalSurfaceIdAllocator
https://chromium-review.googlesource.com/809886
2018-06-19 11:49:44 +10:00
Tomas Rycl
1ac0ab2b71 Include missing "windows.h" and fix headers ordering
For PCWSTR on line 198.
2018-06-19 11:49:43 +10:00
Aleksei Kuzmin
d6ffbc0148 Use an int for wm::ShadowElevation. Pick semantic constants.
https://chromium-review.googlesource.com/899886
2018-06-19 11:49:43 +10:00
Aleksei Kuzmin
4a38c2d800 Remove deprecated View::SetLayoutManager
https://chromium-review.googlesource.com/844760
2018-06-19 11:49:43 +10:00
Aleksei Kuzmin
f6648a0d4d Remove ScopedComPtr and scoped_comptr.h
https://chromium-review.googlesource.com/726461
2018-06-19 11:49:43 +10:00
Aleksei Kuzmin
82d204e932 Wrap X11 headers in ui/gfx/x/x11.h
https://chromium-review.googlesource.com/756711
2018-06-19 11:49:43 +10:00
Heilig Benedek
1de1ca906a Reimplement FrameSubscriber with mojo VideoCapture APIs 2018-06-19 11:49:43 +10:00
deepak1556
4068a62fa6 Define gfx::AcceleratedWidget to be uint64_t instead of NSView*
https://chromium-review.googlesource.com/c/chromium/src/+/792295
2018-06-19 11:49:42 +10:00
deepak1556
c4b8e106c0 Create network_converter for services/network/* types 2018-06-19 11:49:42 +10: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
5df0362361 Remove obsolete ShouldHandleSystemCommands function.
https://chromium-review.googlesource.com/c/chromium/src/+/924315
2018-06-19 11:49:42 +10:00
deepak1556
66058c8cfe REVIEW: Use RenderWidgetHost api for event routing
https://chromium-review.googlesource.com/c/chromium/src/+/836267
2018-06-19 11:49:42 +10:00
deepak1556
d386ec0a2b Remove unused elements from RWHV::CopyFromSurface() API and dead code.
https://chromium-review.googlesource.com/c/chromium/src/+/929874
2018-06-19 11:49:42 +10:00
deepak1556
3ad0639b2e Surface synchronization: Implement auto-resize for OOPIF/BrowserPlugin
https://chromium-review.googlesource.com/c/chromium/src/+/753801
2018-06-19 11:49:42 +10:00
deepak1556
ea7e273a06 gin: Make gin/ remember external reference table
https://chromium-review.googlesource.com/c/chromium/src/+/778741
2018-06-19 11:49:42 +10:00
deepak1556
383b21e20a Change calls to GeolocationProvider::UserDidOptIntoLocationServices() to occur via Mojo.
https://chromium-review.googlesource.com/c/chromium/src/+/760239
2018-06-19 11:49:42 +10:00
deepak1556
a5bdb8103b Remove invalid include headers 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
b268e37663 Simplify ShouldInterceptResourceAsStream to remove unneeded code path.
https://chromium-review.googlesource.com/c/chromium/src/+/939857
2018-06-19 11:49:42 +10:00
deepak1556
c9f20516ac Make reading blobs work through Blob mojo interface.
https://chromium-review.googlesource.com/c/chromium/src/+/773199
2018-06-19 11:49:42 +10:00
deepak1556
a1683eb4e8 Give the JS dialog manager the alerting frame.
https://chromium-review.googlesource.com/c/chromium/src/+/928828
https://chromium-review.googlesource.com/c/chromium/src/+/791517
2018-06-19 11:49:42 +10:00
deepak1556
eab4227cbf Make Origin(const GURL&) constructor private.
https://chromium-review.googlesource.com/c/chromium/src/+/729284
2018-06-19 11:49:42 +10:00
deepak1556
11fc8374c0 Move DownloadUrlParameters from content/public to components/download
https://chromium-review.googlesource.com/c/chromium/src/+/914232
2018-06-19 11:49:42 +10:00
deepak1556
8968c447f4 Include missing header 2018-06-19 11:49:41 +10:00
deepak1556
7b47d69efe Remove did-get-response-details and did-get-redirect-request events
https://chromium-review.googlesource.com/c/chromium/src/+/805008
https://chromium-review.googlesource.com/c/chromium/src/+/786320
2018-06-19 11:49:41 +10:00
deepak1556
2ea26cd4d7 Add MediaStoppedReason to WCO
https://chromium-review.googlesource.com/c/chromium/src/+/758583
2018-06-19 11:49:41 +10:00
deepak1556
100291ec42 OOPIF-ize hung renderers
https://chromium-review.googlesource.com/c/chromium/src/+/896343
2018-06-19 11:49:41 +10:00
deepak1556
2047929cb5 Convert ax_enums.idl to mojom.
https://chromium-review.googlesource.com/c/chromium/src/+/877417
2018-06-19 11:49:41 +10:00
Aleksei Kuzmin
bb150185ac Fix includes in AtomQuotaPermissionContext 2018-06-19 11:49:41 +10:00
Aleksei Kuzmin
c75f6f408e DevTools: remove the 'forced' attribute from the AgentHostClosed in DevToolsAgentHost.
https://chromium-review.googlesource.com/745301
2018-06-19 11:49:41 +10:00
Aleksei Kuzmin
4bb3e0da15 Rename buildflag_header targets in base for consistency
https://chromium-review.googlesource.com/930033
2018-06-19 11:49:41 +10:00
Aleksei Kuzmin
576bf8f6c0 Move resource_response.h to //services/network/public/cpp.
https://chromium-review.googlesource.com/865664
2018-06-19 11:49:41 +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
deepak1556
409ff41c03 Remove SetCookieWithDetailsAsync API in favor of SetCanonicalCookieAsync.
https://chromium-review.googlesource.com/c/chromium/src/+/777954
2018-06-19 11:49:41 +10:00
deepak1556
23f7ccbdda Remove old cookie enum values
https://chromium-review.googlesource.com/c/chromium/src/+/877515
2018-06-19 11:49:41 +10:00
Aleksei Kuzmin
343c42e4ef Remove redundant device::PowerSaveBlocker enums.
https://chromium-review.googlesource.com/754169

services/device: Fix enum naming in wake_lock.mojom.
https://chromium-review.googlesource.com/755884
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
deepak1556
d3c6aa12d1 Remove AtomAccessTokenStore
Its a dummy class since chromium 63,
https://chromium-review.googlesource.com/c/chromium/src/+/708494
2018-06-19 11:49:41 +10:00
deepak1556
bb36a26950 update native-mate ref 2018-06-19 11:49:41 +10:00
Aleksei Kuzmin
6b77fa5b3b [desktop capture] remove dependencies on webrtc/desktop_capture from /chrome
https://chromium-review.googlesource.com/876723
2018-06-19 11:49:41 +10:00
Aleksei Kuzmin
160b165358 move DownloadInterruptReasons from content/ to components/download
https://chromium-review.googlesource.com/897967
2018-06-19 11:49:40 +10:00
Aleksei Kuzmin
7fc8814d13 move some files from content/public/browser to components/download/public/core
https://chromium-review.googlesource.com/891686
2018-06-19 11:49:40 +10:00
Aleksei Kuzmin
4e580d5b39 Move download_item.h from content/public to components/download
https://chromium-review.googlesource.com/907687
2018-06-19 11:49:40 +10:00
Aleksei Kuzmin
a315d6330c Remove base::Value::IsType
https://chromium-review.googlesource.com/659798
2018-06-19 11:49:40 +10:00
deepak1556
e3c580e905 Move away from BrowserThread::FILE
* Migrate TtsPlatformImplLinux away from using BrowserThread::FILE.
  https://chromium-review.googlesource.com/c/chromium/src/+/570022
* Move PdfConverter off the FILE thread.
  https://chromium-review.googlesource.com/c/chromium/src/+/592393
* https://chromium.googlesource.com/chromium/src/+/master/docs/task_scheduler_migration.md
2018-06-19 11:49:40 +10:00
deepak1556
6d241e972b Clean up net::HttpAuthPreferences.
https://chromium-review.googlesource.com/c/chromium/src/+/727399
2018-06-19 11:49:40 +10:00
deepak1556
8e125b2953 REVIEW: Remove the notification close-closure in favour of an explicit method
https://chromium-review.googlesource.com/c/chromium/src/+/744205
2018-06-19 11:49:40 +10:00
deepak1556
026e7bff40 Update NetworkDelegate
* Remove Deprecated OnResponseStarted.
  https://chromium-review.googlesource.com/c/chromium/src/+/763193
* Replace cookie lines with CanonicalCookie in CanSetCookie delegates.
  https://chromium-review.googlesource.com/c/chromium/src/+/775606
* Reporting: Check upload permissions asynchronously
  https://chromium-review.googlesource.com/c/chromium/src/+/937566
2018-06-19 11:49:40 +10:00
deepak1556
bf55d856d2 Cookie Store: Extract change notifications to separate classes.
https://chromium-review.googlesource.com/c/chromium/src/+/919159
2018-06-19 11:49:40 +10:00
deepak1556
806acbdf12 Move content/network to services/network.
https://chromium-review.googlesource.com/891646
2018-06-19 11:49:40 +10:00
Aleksei Kuzmin
fba2ab0996 Move throttling to network service
https://chromium-review.googlesource.com/703674
2018-06-19 11:46:59 +10:00
deepak1556
529ced80f2 Remove CancelRequest for PermissionManager
https://chromium-review.googlesource.com/c/chromium/src/+/876746
2018-06-19 11:46:59 +10:00
deepak1556
f6665edc73 Convert ColorChooser from ipc to mojo.
https://chromium-review.googlesource.com/c/chromium/src/+/800350
https://chromium-review.googlesource.com/c/chromium/src/+/821954
2018-06-19 11:46:59 +10:00
Aleksei Kuzmin
7c95100180 Rename ProxyService class to ProxyResolutionService
https://chromium-review.googlesource.com/857421
2018-06-19 11:46:59 +10:00
Aleksei Kuzmin
079e5df740 Adds ability for BrowserMainParts::PreEarlyInitialization() to fail
https://chromium-review.googlesource.com/862964
2018-06-19 11:46:59 +10:00
Aleksei Kuzmin
408b62bcc2 Move net/proxy to net/proxy_resolution
https://chromium-review.googlesource.com/868176

Also includes changes from:
Rename files relating to PAC (proxy auto config).
https://chromium-review.googlesource.com/836927
2018-06-19 11:46:58 +10:00
Zhuo Lu
ab24a1e36d feat: netLog API for dynamic logging control (#13068)
* Introduce `net.{start|stop}Logging()`

- Slight regression right now as Electron won't automatically start logging net-logs at launch, will soon be fixed
- To implement callback for async controls

* Add `net.isLogging` & optional callback param for `net.stopLogging()`

* Fix small regression on --log-net-log

--log-net-log should work again

* Error on empty file path

* Only start with valid file path

* Remove unused var

* Allow setting log file path before URLRequestContextGetter starts logging

* Add net log tests

* Remove redundant checks

* Use brightray::NetLog

* Clean up code

* Should automatically stop listening

* 🎨 Attempt to fix styles

* Only run non-null callback

* Dump file to tmpdir

* Simplify net log spec

Spawned Electron process on Linux CI can fail to launch

* Separate netLog module

* Remove net logging test from net spec

* Add tests for netLog

* Fix header guard

* Clean up code

* Add netLog.currentlyLoggingPath

* Callback with filepath

* Add test for case when only .stopLogging() is called

* Add docs

* Reintroduce error on invalid arg

* Update copyright

* Update error message

* Juggle file path string types
2018-06-19 11:45:58 +10:00
Heilig Benedek
90911a423a Fix autofill popup position when the popup is spawned from a webview (#13184) 2018-06-18 10:15:37 -05:00
Cheng Zhao
a11182ca84 feat: add SetText for TextField 2018-06-18 16:51:36 +09:00
Cheng Zhao
70e17b5f8f feat: add LabelButton API 2018-06-18 16:51:36 +09:00
Cheng Zhao
c8e8cb86ce feat: add Button API 2018-06-18 16:51:36 +09:00
Cheng Zhao
ba3700141f feat: add TextField API 2018-06-18 16:51:36 +09:00
Milan Burda
2eb5b751f3 exit HTML fullscreen when window leaves fullscreen (#13090) 2018-06-18 16:48:20 +09:00
Milan Burda
28fd571d0c refactoring: use std::make_unique<T> (#13245) 2018-06-18 16:32:55 +09:00
Michael Khalil
ef1e2d6fe0 fix: tray title not inverting when highlighted (#13085) 2018-06-16 16:24:26 +10:00
Milan Burda
c4942d931c Add FILE_DIALOG_TREAT_PACKAGE_APP_AS_DIRECTORY to web open file dialog (#13220) 2018-06-15 15:51:38 -05:00
Thiago de Arruda
6ff111a141 perf: don't use JSON to send the result of ipcRenderer.sendSync. (#8953)
* Don't use JSON to send the result of `ipcRenderer.sendSync`.

- Change the return type of AtomViewHostMsg_Message_Sync from `base::string16`
  to `base::ListValue`
- Adjust lib/browser/api/web-contents.js and /lib/renderer/api/ipc-renderer.js
  to wrap/unwrap return values to/from array, instead of
  serializing/deserializing JSON.

This change can greatly improve `ipcRenderer.sendSync` calls where the return
value contains Buffer instances, because those are converted to Array before
being serialized to JSON(which has no efficient way of representing byte
arrays).

A simple benchmark where remote.require('fs') was used to read a 16mb file got
at least 5x faster, not to mention it used a lot less memory.  This difference
tends increases with larger buffers.

* Don't base64 encode Buffers

* Don't allocate V8ValueConverter on the heap

* Replace hidden global.sandbox with NodeBindings::IsInitialized()

* Refactoring: check NodeBindings::IsInitialized() in V8ValueConverter

* Refactor problematic test to make it more reliable

* Add tests for NaN and Infinity
2018-06-13 17:38:31 +10:00
mdpetuum
1b8790aeb2 fix: tray icon bounds didn't allow negative macOS (#13162) 2018-06-07 18:48:39 +02:00
Charles Kerr
b89fe86fa1
Merge pull request #13050 from electron/3.0.0-deprecations
chore: removal of 3.0.0 deprecations
2018-05-30 09:25:36 +02:00
Charles Kerr
6935addd38 fix: remove unused variable 2018-05-29 16:14:21 +02: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
Shelley Vohr
8bb7525fe0
fix missing instance of kBlinkFeatures => kEnableBlinkFeatures 2018-05-25 11:12:40 -07:00
Cheng Zhao
0f7c25fc63 Put View APIs under a build flag 2018-05-24 15:44:07 +09:00
Cheng Zhao
2c8dc9e0bd Add View.addChildView API 2018-05-24 15:36:29 +09:00
Cheng Zhao
322bde526c Add LayoutManager/BoxLayout APIs 2018-05-24 15:36:29 +09:00
Shelley Vohr
bc10be3de6
rename exposed session method to setCertificateVerifyProc 2018-05-23 13:51:28 -07:00
Shelley Vohr
4a90056462
remove webContents.openDevTools() deprecation 2018-05-23 09:30:15 -07:00
Shelley Vohr
3deffa859d
remove appcommand media-play_pause option deprecation 2018-05-23 09:24:32 -07:00
Shelley Vohr
003a5a0160
remove tray.setHighlightMode() deprecation 2018-05-23 09:20:39 -07:00
Shelley Vohr
72c63a10ee
remove screen.getMenuBarHeight() deprecation 2018-05-23 09:11:48 -07:00
Milan Burda
2337237d58 Refactoring: use C++11 class member variable initialization 2018-05-22 00:18:38 +02:00
Cheng Zhao
595b0663b2 WebContents may be managed by multiple owners 2018-05-21 10:53:09 +09:00
Cheng Zhao
3b81312cf7 clear pointer when WebContents is closed 2018-05-21 10:53:09 +09:00
Cheng Zhao
51db1efb8a prevent double-adding a WebContents to view 2018-05-21 10:53:09 +09:00
Cheng Zhao
aeeb2a259f destruct objects in stack order 2018-05-21 10:53:09 +09:00
Cheng Zhao
fd4a0626c5 destroy WebContents when view is destroyed 2018-05-21 10:53:08 +09:00
htk3
7c2303c758 Correct app-command name of APPCOMMAND_MEDIA_PLAY_PAUSE (#12408)
* correct app-command name

* add compatibility with old app-command name

* add temporary compatibility with old app-command name

* add a comment saying that media-play_pause is deprecated

* fix lint
2018-05-21 10:52:04 +09:00
Heilig Benedek
8b2bffcf9e Only expand maximum size constraint if there was a constraint originally (#13003) 2018-05-21 10:56:45 +10:00
Jeremy Apthorp
156a97b80d
fix: Menu.setApplicationMenu(null) crash on Linux (#12983) 2018-05-18 10:29:28 -07:00
Zhuo Lu
d2653e8192 Fix: Prevent menu update while it's open (#12809)
* Update application menu on default runloop

Menu change should be prevented while the menu is open

* Fix code style

* Memory safety
2018-05-17 11:19:28 +10:00
Jeremy Apthorp
da0fd10423 refactor: chromium-style warnings in linux code (#12949) 2018-05-16 14:12:45 -05:00
John Kleinschmidt
9488ef4867
Merge pull request #12496 from mikeykhalil/8952-ignore-tray-double-click-events
8952 option to ignore tray double click events
2018-05-16 10:17:36 -04:00
John Kleinschmidt
e1c374de6e
Merge pull request #12954 from electron/web-dialog-helper
Fix empty description when only one extension is given (GetFileTypesFromAcceptType)
2018-05-16 10:15:54 -04:00
Milan Burda
211d7825d3 feat: DIP <-> screen coordinate conversions (#12879) 2018-05-16 18:34:09 +09:00
Milan Burda
9d9d6ca20b Fix empty description when only one extension is given 2018-05-16 01:58:58 +02:00
Jeremy Apthorp
73eb5af2cc
refactor: remove unnecessary std::moves in linux code (#12951)
The compiler was complaining that the move was preventing copy elision.
2018-05-15 14:33:47 -07:00
Jeremy Apthorp
8fa48d1c04 fix: unused variable warnings in linux code (#12950) 2018-05-15 13:49:27 -05:00
Jeremy Apthorp
136105e353 fix: wrong list index type in file_dialog_gtk.cc (#12952) 2018-05-15 13:22:52 -05:00
Cheng Zhao
2f3fcb9dbe give window a default content view
Certain APIs are expecting the window to have a content view, having a
default one simplifies our design.
2018-05-15 14:12:47 +09:00
Cheng Zhao
ea97f43145 check content view in SetMenuBarVisibility 2018-05-15 14:12:47 +09:00
Cheng Zhao
bb2715e7a5 feat: add TopLevelWindow.setContentView API 2018-05-15 14:12:47 +09:00
Cheng Zhao
2b24b26e59 refactor: do not pass WebContents to NativeWindow 2018-05-15 14:03:21 +09:00
Cheng Zhao
640877ebf8 attach native view after widget is created 2018-05-15 14:03:21 +09:00
Cheng Zhao
5a320222e2 feat: add WebContentsView API 2018-05-15 14:03:21 +09:00
Cheng Zhao
e058d11657 feat: add View API 2018-05-15 14:03:21 +09:00
John Kleinschmidt
0fd8513c80
Merge pull request #12904 from electron/fix-12875
Allow frameless transparent windows to be sized smaller than 64x64 on Windows
2018-05-14 10:46:40 -04:00
Heilig Benedek
ce8af7d499 #else instead of #elif 2018-05-12 22:05:25 +02:00
Heilig Benedek
c6bf39b283 Only include windows headers on windows 2018-05-12 21:33:47 +02:00
Heilig Benedek
f1fd457411 Format code with clang-format 2018-05-12 19:51:19 +02:00
Heilig Benedek
eae0674f61 Match chromium's workaround when setting size of unresizable windows 2018-05-12 17:37:31 +02:00
Jeremy Apthorp
cc386f2345
Merge pull request #12884 from nornagon/views-defines
Require !OS_MACOSX as well as TOOLKIT_VIEWS for views code
2018-05-10 14:13:19 -07:00
Jeremy Apthorp
72057bf7ef clang-format atom_api_web_contents.cc 2018-05-10 14:11:19 -07:00
Jeremy Apthorp
87d0175c76 Require !OS_MACOSX as well as TOOLKIT_VIEWS for views code 2018-05-10 14:11:19 -07:00
Jeremy Apthorp
73ac019882 Fix up #includes to work with both GYP and GN 2018-05-10 13:38:40 -07:00
Samuel Attard
5b5c161601
feat: new makeSingleInstance API (#12782)
* Refactor app.makeSingleInstance
* new API `app.isPrimaryInstance()`
* new API `app.isSingleInstance()`
* new event `app.on('second-instance')`
* deprecated old syntax `app.makeSingleInstance(cb)`
* deprecated old syntax of `app.makeSingleInstance() --> bool` in favor
of `app.isPrimaryInstance()`
* Fix spec, we don't need process.nextTick hacks any more
* Make deprecation TODO for the return value of makeSingleInstance
* Refactor makeSingleInstance to requestSingleInstanceLock and add appropriate deprecation comments
* I swear this isn't tricking the linter
* Make const
* Add deprecation warnings for release, and add to planned-breaking-changes

BREAKING CHANGE
2018-05-08 01:29:18 +10:00
Jeremy Apthorp
b280ea5579 chromium-style fixes (#12826) 2018-05-03 23:45:12 -07:00
Cheng Zhao
a2c3db666e viewDidMoveToSuperview may not be implemented 2018-05-04 09:55:09 +09:00
Cheng Zhao
5547df6073 report correct content size in AtomNSWindow
The views framework relies on NSWindow to return content size of window,
since we don't use the borderless window, the original result would
include titlebar. We have to override the function to return correct
result for frameless window.
2018-05-04 09:55:09 +09:00
Cheng Zhao
28fc58067b remove usage of FullSizeContentView 2018-05-04 09:55:09 +09:00
Cheng Zhao
a9709a635c display WebContents as views::View on macOS 2018-05-04 09:55:09 +09:00
Cheng Zhao
ada884a129 refactor: setup contentView on initialization 2018-05-04 09:55:09 +09:00
mikeykhalil
94ffd4bfc0 add getter for ignoreDoubleClickEvents field 2018-05-03 13:49:33 -07:00
mikeykhalil
208374afa4 clean up ignore double click event implementation 2018-05-03 13:49:33 -07:00
mikeykhalil
1f29124d11 updated Tray API to ignore double click events on macOS (#8952) 2018-05-03 13:49:32 -07:00
Jeremy Apthorp
cdc5022305 Fix chromium-style errors (#12802) 2018-05-03 09:04:22 -05:00
bughit
55a7f6f0ce add did-frame-navigate event to WebContents (#12723)
* add did-frame-navigate event to WebContents, pass http response code to it and did-navigate

* docs for frame routing id related api changes on WebFrame and WebContents
2018-05-01 13:34:41 +09:00
Cheng Zhao
c67d1b62e3
refactor: NativeWindowViews should not be a View (#12750) 2018-05-01 13:28:22 +09:00
Samuel Attard
338a816ffd
Screen Lock / Unlock events (#12714)
* initial lock-screen and unlock-screen event implementation for macOS

* Implementation of lock-screen and unlock-screen on windows
2018-05-01 02:04:27 +10:00
Cheng Zhao
089428857c remove unnecessary defines 2018-04-30 10:56:54 +09:00
Cheng Zhao
e07ea24610 remove unnecessary static_cast 2018-04-30 10:56:54 +09:00
Cheng Zhao
2225cc9608 refactor: manage widget_ in NativeWindow 2018-04-30 10:56:54 +09:00
Cheng Zhao
727cd68cee refactor: Use widget() instead of window_ 2018-04-30 10:56:54 +09:00
Cheng Zhao
6d18bd0633 refactor: Make NativeWindow inherit WidgetDelegate 2018-04-30 10:56:54 +09:00
Zeke Sikelianos
cc98bd6b6d
Merge pull request #12662 from electron/prevent-default
Stop overwriting prevent_default if default wasn't prevented
2018-04-26 12:12:18 -07: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
bughit
4fcd178c36 expose WebFrame#routingId (#12614)
* expose WebFrame#routingId and pass it to WebContents frame specific events along with frameProcessId; add WebContets.did-start-navigation event
* fix compilation error on ia32 Windows
2018-04-26 19:17:55 +09:00
Cheng Zhao
cf70267871 remove unnecessary overrides 2018-04-26 09:48:12 +09:00
Cheng Zhao
5e48dd9d45 be aware of views::Widget's layer 2018-04-25 15:10:29 +09:00
Cheng Zhao
39242c978f fix failed BrowserWindow tests 2018-04-25 15:10:29 +09:00
Cheng Zhao
75a624434c refactor: use views::Widget on macOS 2018-04-25 15:10:29 +09:00
Nitish Sakhawalkar
2579071b98 Deprecate did-get-response-details and did-get-redirect-request (#12615)
* Deprecate webContents events did-get-response-details and did-get-redirect-request.

* Update guest view files

* Update webview tag docs and update specs

* Update deprecate.event function

* Update comment

* Update more

* Update documentation for other deprecated event
2018-04-23 14:46:12 -05:00
Shelley Vohr
12a57ff1c2 clang-format objc files (#12673) 2018-04-20 11:47:04 -07:00
Cheng Zhao
28b85762fd
Merge pull request #12660 from electron/mac-views
Refactor NativeWindow (Part 8): Prepare work for using views::Widget on macOS
2018-04-20 21:31:28 +09:00
Robo
ff571f3b5d Part I: Move from base::Bind to base::BindOnce and remove unneeded base::Passed (#12661) 2018-04-20 19:55:05 +09:00
Cheng Zhao
aa5c80f8a6 Fix new clang warnings 2018-04-20 19:26:20 +09:00
Cheng Zhao
c44279bb10 Move AtomNSWindow to a new file 2018-04-20 19:26:20 +09:00
Cheng Zhao
569967ac21 Move QLPreviewPanelDataSource to AtomNSWindowDelegate 2018-04-20 19:17:08 +09:00
Cheng Zhao
f6a7e5ea23 Move NSTouchBarDelegate to AtomNSWindowDelegate 2018-04-20 19:15:45 +09:00
Cheng Zhao
8e9667d86c Manage AtomTouchBar in NativeWindow instead of AtomNSWindow 2018-04-20 19:15:01 +09:00
Cheng Zhao
ce54fd334d Move AtomNSWindowDelegate to a new file 2018-04-20 19:12:17 +09:00
Cheng Zhao
1c6c75da4f Merge the logic of managing ViewsDelegate 2018-04-20 19:10:37 +09:00
Cheng Zhao
9bc79f840e mac: Override NativeWidgetMac 2018-04-20 19:10:37 +09:00
Cheng Zhao
37a7df49d6 mac: Provide ViewsDelegate 2018-04-20 19:10:37 +09:00
deepak1556
30f1d0991b enable chromium style checker plugin for electron and brightray targets 2018-04-19 11:12:58 -07:00
Jeremy Apthorp
eb7ccf8afa Bring mac code into conformance with -Wobjc-missing-property-synthesis 2018-04-19 11:12:58 -07:00
Jeremy Apthorp
f3c00e96aa Bring mac code into conformance with -Wunguarded-availability 2018-04-19 11:12:58 -07:00
Jeremy Apthorp
27cee90e5e [chromium-style] move methods out of headers 2018-04-19 11:12:58 -07:00
Jeremy Apthorp
f1587da480 [chromium-style] out-of-line default constructors and destructors 2018-04-19 11:12:58 -07:00
Jeremy Apthorp
6c26bb1cf8 [chromium-style] destructors of ref-counted objects should be private 2018-04-19 11:12:10 -07:00
Jeremy Apthorp
e6695cf2ec [chromium-style] override / virtual warnings 2018-04-19 11:12:10 -07: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
Birunthan Mohanathas
cd407d1c3f Stop overwriting prevent_default if default wasn't prevented
This didn't actually cause any issues because there is only one listener
for the affected methods right now. Should we have added more, the last
called observer would have overwritten `prevent_default`. Lets only set
it when necessary to avoid this footgun in the future.
2018-04-19 12:45:21 +02:00
Cheng Zhao
7473b612c5 Make Menu API accept TopLevelWindow 2018-04-19 13:08:37 +09:00
Cheng Zhao
1340b17424 Do not return TopLevelWindow in BrowserWindow.getAllWindows 2018-04-19 13:08:37 +09:00
Cheng Zhao
e38f511737 Make BrowserWindow inheirt TopLevelWindow in JS 2018-04-19 13:08:37 +09:00
Cheng Zhao
71ebd99dfa Expose TopLevelWindow to JavaScript 2018-04-19 13:08:36 +09:00
Cheng Zhao
cfed9fa4b9 Make sure we append parent->child_windows after InitWith 2018-04-19 12:45:48 +09:00
Cheng Zhao
89d909ab43 Only include UIAutomationCoreApi.h where necessary 2018-04-19 11:14:55 +09:00
Shelley Vohr
c6f4bbd143
also format missing .cc files 2018-04-18 20:48:45 -04:00
Shelley Vohr
53bdf22c85
clang-format atom files 2018-04-18 20:48:45 -04:00
Zeke Sikelianos
40ff17c9f9
Merge pull request #12619 from electron/add-before-update-event
add new event to auto-updater
2018-04-16 12:43:15 -07:00
Samuel Attard
d06c79f5d3 Correct the default of allowRunningInsecureContent as per docs (#12556)
* Correct the default of allowRunningInsecureContent as per docs

* fix linting

* Update calls to match native_mate API change
2018-04-16 08:28:54 -05:00
Shelley Vohr
06892775d4
add new event to auto-updater 2018-04-14 21:29:36 -04:00
Cheng Zhao
858828d343
Refactor NativeWindow (Part 6): Move NativeWindow bindings to api::TopLevelWindow (#12596)
* Add atom::api::TopLevelWindow

* Make BrowserWindow inherit TopLevelWindow

* Fix reading from wrong weak map

* Read options after setting content view

* OnWindowClosed is not guarenteed to run now

* Fix the offscreen hack in BrowserWindow

* Fix building on Linux

* Fix tests on Linux

* Fix building on Windows
2018-04-14 11:04:23 +09:00
Zhuo Lu
a0cac05555 Clear cache storage data (#12546) 2018-04-13 13:03:16 -04:00
Shelley Vohr
d722008367
remove unnecessary ptr_util.h include 2018-04-12 22:34:26 -04:00
Shelley Vohr
b05932310b
replace base::MakeUnique with std::make_unique 2018-04-12 08:48:32 -04:00
Cheng Zhao
d706a30849 Fix crash when releasing window 2018-04-11 15:12:53 +09:00
Cheng Zhao
2b5bde4071 InstallView is no longer needed 2018-04-11 15:12:53 +09:00
Cheng Zhao
5a95aaaa54 kVibrancyType should be read in InitFromOptions 2018-04-11 15:12:53 +09:00
Cheng Zhao
cfd8ea8eb0 mac: Correctly unload previous content view 2018-04-11 15:12:53 +09:00
Cheng Zhao
56735d4ff5 Add NativeWindow::SetContentView 2018-04-11 15:12:53 +09:00
Cheng Zhao
13473ee138 web_view_ => content_view_ 2018-04-11 15:12:53 +09:00
Cheng Zhao
97e8800677 Remove web_contents from NativeWindow's constructor 2018-04-11 15:12:53 +09:00
Nitish Sakhawalkar
6fc819dae1 Fix transparency in capturePage (#12561)
* Fix transparent window capture. Transparency is preserved and not converted to black pixels anymore

* Add test to make sure aplha channel exists in captured image
2018-04-10 19:07:15 +09:00
Andreas
6b5e09478c Mouse forward on macOS (#12281)
* Accept mouse events according to the forward parameter on macOS.

* Update BrowserWindow docs: mouse forward is available on macOS
2018-04-09 19:35:05 +09:00
Cheng Zhao
41134f52d9 Fix memory leaks in file_dialog_mac.mm 2018-04-09 16:51:25 +09:00
Yuya Ochiai
2131dc839a Show file filter name for accessory view of file dialog
- Respect filters option of dialog.showOpenDialog() and
  dialog.showSaveDialog(). (#10335)
- Show "All Files" for <input> apart from "accept" attribute. (#11456)
2018-04-09 16:50:21 +09:00
Andrew MacDonald
6bfb122cd1 Add a display_id parameter to the desktopCapturer API. (#12417)
* Add a screen_api_id parameter to the desktopCapturer API.

When using the DirectX capturer on Windows, there was previously no way
to associate desktopCapturer/getUserMedia and electron.screen API
screens. This new parameter provides the association.

* Fix non-Windows build.

* Fix Mac.

* Fix Mac harder.

* JS lint

* clang-format C++ code.

* IWYU

* display_id, Linux comment, better test

* lint

* Fix tests on Linux.

* Add display_id documentation.
2018-04-09 14:43:35 +09: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
Charles Kerr
f8b8dc1494
Simplify views/menu_bar focus management (#12536)
* Simplify views/menu_bar focus management

* Make the linter happy

* Remove NativeWindowView focus manager listener API

* remove unnecessary change

* MenuBar ctor now takes a views::View
2018-04-05 21:53:08 -05:00
Charles Kerr
cad8eed6e4 Use ui:view's Activate() on Linux (#12539)
In NativeWindowViews, we started rolling our own _NET_ACTIVE_WINDOW
event in June 2016 to raise windows because Chromium's implementation
wasn't working as expected. (See commit 32b692b6)

I'm not seeing this behavior in our current version of libcc,
so I wonder if this workaround is still needed?
2018-04-05 22:39:53 -04:00
Jeremy Apthorp
f0d08f4da1 Propagate referrer to new windows (#12397)
* Propagate referrer to new windows

Fixes #9205

* Rearrange -new-window event arguments for backwards-compatibility

* Plumb referrer policy through guest-window-manager

* Document the Referrer structure and its uses

* Add tests for referrer in new windows

* Docs nits
2018-04-05 18:13:24 -05:00
Heilig Benedek
a14ebc80d2 Disable chromium's redraw locking on Windows when DWM is disabled (#12501)
* disable redraw locking on windows

* update libcc ref
2018-04-05 15:55:26 +09:00
Adrien Fery
5486a65702 Improve in-app purchase for MacOS (#12464)
* Add methods to finish transactions

* Add a method to get the product descriptions from the App Store

* Improve the documentation of a transaction structure

* Add a tutorial for In App Purchase

* Fix typo in In-App Purchase tutorial

* Fix style of In-App Purchase files

* Fix In-App-Purchase product structure conversion in amr64

* Fix code style in In-App Purchase tutorial documentation

* Fix typos in In-App Purchase documentation

* Fix typo in In-App Purchase spec

* Slight style fixes
2018-04-05 15:33:13 +09:00
Heilig Benedek
52b1065b3b Focus webview directly in offscreen mode (#12507) 2018-04-05 15:14:42 +09:00
Robo
c1404ff2c1 vendor: Update native mate to fix v8 DCHECK crash (#12534)
* update native_mate ref

* Remove MarkHighMemoryUsage api
2018-04-05 00:47:18 -05:00
Cheng Zhao
c75dd93b92
Move AutofillPopup from NativeWindow to WebContents (#12514) 2018-04-05 09:53:51 +09:00
Aleš Pergl
3a45d541f3 Expose IsOffScreen method always to JS. (#12530) 2018-04-04 12:19:08 -05:00
MadfishDT
200388ff96 add moveTop API to move window z-oder to top for win32, mac (#12485)
* add moveTop API to move window z-oder to top for win32, mac

* BrowserWindow::MoveTop SetMethod bug fix
2018-04-03 08:04:32 -05:00
Cheng Zhao
8fc5c6c862
Refactor NativeWindow (Part 3): Remove is_offscreen_dummy from NativeWindow (#12503)
* Don't use is_offscreen_dummy in MessageBox

* Don't use is_offscreen_dummy in DownloadManagerDelegate

* Don't use is_offscreen_dummy in CommonWebContentsDelegate

* Remove is_offscreen_dummy from NativeWindow
2018-04-03 12:19:35 +09:00
Nitish Sakhawalkar
fbff355742 Support for navigator.languages (#12419) 2018-04-02 12:47:00 +09:00
Robo
171230e45d Cleanup destruction of URLRequestContextGetter (#12305)
- Add Leak detector
 - Indicate shutdown of request context from Browser Context
 - Change stored references to URLRequestContextGetter to use BrowserContext
 - Destroy session properties explicitly
2018-03-30 08:24:55 -05:00
Zhuo Lu
c50a460ce6 Do not block main process for async dialog (#12404) 2018-03-22 08:57:33 -04:00
Clément Beffa
642f5a84d4 Workspace notifications support on macOS (#12093) 2018-03-22 18:41:03 +09:00
Cheng Zhao
05fcec829e Use Clone explicitly instead of MergeDictionary 2018-03-22 15:29:20 +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
001275339b Hide WebContentPreferences::GetWebContentsFromProcessID from public 2018-03-22 15:20:03 +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
Shelley Vohr
05dc04dacc
don't check darkmode for drawStatusBarBackgroundInRect (#12395) 2018-03-21 19:03:57 -04:00
Charles Kerr
0d7becff87
Use the appname as the tray icon's default tooltip (#12388)
This makes an upstream DCHECK happy in AppIndicatorIcon::SetToolTip.
Empty tooltip strings are discouraged, as discussed in commit log
b6c510aa543193337041517c2d70113840189b06.

Fixes #12386.
2018-03-21 12:15:30 -05:00
John Kleinschmidt
060b592fc8
Merge pull request #12348 from electron/fix-browser-view-draggable-region
Update draggable regions when changing BrowserView
2018-03-20 10:40:27 -04:00
Cheng Zhao
2e94a730cc Isolate the code using content::WebContentsImpl 2018-03-20 10:13:17 +03:00
Gellert Hegyi
a9cdd6614a fixes class name 2018-03-20 10:13:17 +03:00
Gellert Hegyi
0ad8815bbc fixes offscreen rendering issues 2018-03-20 10:13:17 +03:00
Cheng Zhao
d4969783d7 Avoid including web_contents_impl.h
This can fix the build error caused by duplicate typedefs.
2018-03-20 10:13:17 +03:00
deepak1556
e24c0dda5d add features module to detect availability of build time features at runtime 2018-03-20 10:13:17 +03:00
deepak1556
4b39d17e5f move pdf viewer behind feature flag 2018-03-20 10:13:17 +03: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
9702898dcd AccessTokenStore is only needed to initialize network location service 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
Aleksei Kuzmin
d3afb595dc Tab Capture in VIZ: CopyOutputRequest/Result API changes.
https://chromium-review.googlesource.com/637003
2018-03-20 10:13:16 +03:00
Aleksei Kuzmin
639be7f7bc Simplify transparent backgrounds
https://chromium-review.googlesource.com/669646
2018-03-20 10:13:16 +03:00
Cheng Zhao
d141d2445d Fix build error caused by base::Passed changes 2018-03-20 10:13:16 +03:00
deepak1556
b08d086b0f fix stale rebase 2018-03-20 10:13:16 +03:00
Cheng Zhao
76ef6e3ecc CertificateList => ScopedCERTCertificateList 2018-03-20 10:13:16 +03:00
deepak1556
719980a948 REVIEW: remove device emulation ipc dependecny on rvh 2018-03-20 10:13:15 +03:00
deepak1556
5684f8886f REVIEW: move ipc use from rvh to rfh 2018-03-20 10:13:15 +03:00
deepak1556
b552ad7065 add taskpriority when creating sequences task runners 2018-03-20 10:13:15 +03:00
deepak1556
1f2d229862 re-use title information from NavigationEntry 2018-03-20 10:13:15 +03:00
deepak1556
007ea500d0 REVIEW: Re-use devtools network throttling from content layer
https://chromium-review.googlesource.com/c/chromium/src/+/664356
2018-03-20 10:13:15 +03:00
Samuel Attard
8269a6dc37 Temporarily disable OnCursorChange
ScopedProfile is removed
https://chromium-review.googlesource.com/c/chromium/src/+/655147
2018-03-20 10:13:15 +03:00
Aleksei Kuzmin
aab6f27503 Move DrawQuads to components/viz/
https://chromium-review.googlesource.com/667539
2018-03-20 10:13:15 +03:00
Aleksei Kuzmin
74cedd3255 Move ReleaseCallbacks and CopyOutputRequests out of quads/
https://chromium-review.googlesource.com/682760
2018-03-20 10:13:15 +03:00
Aleksei Kuzmin
d1061692d5 Move CompositorFrame{Metadata} to viz/common/quads.
https://chromium-review.googlesource.com/676726
2018-03-20 10:13:14 +03:00
Aleksei Kuzmin
481c70311a Move SoftwareOutputDevice to the viz service display compositor.
https://chromium-review.googlesource.com/677463
2018-03-20 10:13:14 +03:00
Samuel Attard
7c8be94a6e IPC fixes for WebContents 2018-03-20 10:13:14 +03:00
Samuel Attard
a8e013dcb6 GetRenderProcessHost() has been removed for OOPI support, should use #include GetMainFrame()->GetProcess() 2018-03-20 10:13:14 +03:00
Samuel Attard
6402b23041 tracked_objects::Location --> base::Location 2018-03-20 10:08:58 +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
021e383418 GetBlockingPool has been removed 2018-03-20 10:08:58 +03:00
Samuel Attard
0291dc8214 Calling non-const callbacks requires some tricks 2018-03-20 10:08:58 +03:00
Samuel Attard
ce755483ba DialogClosedCallback are not const references anymore 2018-03-20 10:08:58 +03:00
Samuel Attard
41b9825f00 WebContents are no longer IPC Sender's 2018-03-20 10:08:58 +03:00
Samuel Attard
12066a60f3 make_scoped_refptr --> WrapRefCounted 2018-03-20 10:08:58 +03:00
Samuel Attard
4666879f94 WebContentsObserver no longer provides explicit_set, we can calculate it 2018-03-20 10:08:57 +03:00
Samuel Attard
fb55db665c AllowCertificateError no longer sends overridable 2018-03-20 10:08:57 +03:00
Samuel Attard
7f50c3d08e TracingController -> Coordinator -- content tracing now uses 'endpoints' instead of 'sinks' 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
Birunthan Mohanathas
20a0508a16 Update draggable regions when changing BrowserView
Fixes #12150.
2018-03-19 20:45:42 +02:00
Birunthan Mohanathas
42934a1006 Make BrowserView DragRegionViews children of the WebContents view
Previously they were children of the `InspectableWebContentsView` view,
which caused this assertion to fail:

f993888424/brightray/browser/mac/bry_inspectable_web_contents_view.mm (L162)
2018-03-19 20:45:40 +02:00
Birunthan Mohanathas
3b8ddd0997 Use NSView convertRect:toView: for BrowserView DragRegionView positioning 2018-03-19 20:44:05 +02:00
Birunthan Mohanathas
377e6c3210 Rename system_drag_exclude_areas => drag_exclude_rects 2018-03-19 20:44:05 +02:00
Birunthan Mohanathas
61160ff9e5 Store InspectableWebContents instead of InspectableWebContentsView in NativeBrowserView 2018-03-19 20:44:05 +02:00
Shelley Vohr
9599615b23
Fix nil tray title crash (#12352)
* Add check for title_ being nil

* remove print stub
2018-03-19 10:49:39 -05:00
Birunthan Mohanathas
6f6f388f38 Fix non-draggable regions on macOS (#12327)
This was a regression in 503b0ba1.
2018-03-17 06:49:11 +09:00
Charles Kerr
558ef7352d
Better GTK+ Menu color support (#12300)
* Better GTK+ Menu color support

 * Fix 'invisible menu' issue (#12275)

 * Now updates menu text color when focus changes!

 * Better caching of colors when system theme changes

 * Removed all GTK+ deprecation warnings from menubar

* Don't highlight menu text on mouseover in GTK+

* Fix textColor declaration scope error

* Simplify FocusManager connection management a bit

* Make the linter happy

* Decouple MenuBar view recoloring from rebuilding

This way we don't need to rebuild the subview each time a recolor
is needed, e.g. when window focus changes or the system theme changes

* Don't iterate child views if we don't need to

* Move variable declaration outside of a loop

* More efficient iteration of MenuBar children

* Cleaner MenuButton bounds testing

* Fix oops

* Add a nullptr check in MenuBar::GetItemCount()

* Simplify iteration in MenuBar::RebuildChildren()

* Make the linter happy

* Fix signed-unsigned comparison

* Remove declarations of nonexistent methods

* Make SubmenuButton accessor const

* Cleaner accelerator iteration

* Windows fixes
2018-03-17 06:37:36 +09:00
Robo
792837bd71 net: change mime type deduction in Change URLRequestAsarJob (#12319) 2018-03-16 16:48:26 +09:00
Charles Kerr
c2673aa970 Set appropriate defaults for webview options (#12271)
* Persist defaults to webPreferences object to JS land can read the inferred values instead of just user defined values

* Test inherited default propogation

* Refactor to remove coupling from fetching values and defaults

* Test description type

* Fix up tests
2018-03-15 13:56:46 +09:00
OJ Kwon
e7181eb89c feat(powerMonitor): expose interface to query system idle state (#11807)
* feat(BrowserWindow): expose interface to query system idle state

* test(BrowserWindow): update test cases for querySystemIdle interface

* docs(BrowserWindow): add querySystemIdle interface documentation

* refactor(powerMonitor): move querySystemIdle into powerMonitor

* test(powerMonitor): split test cases for all platform
2018-03-14 14:42:08 +09:00
Robo
e741bc0577 fix crash when using getWebPreferences api with devtools webContents (#12254) 2018-03-14 11:19:22 +09:00
Samuel Attard
8664dd2139
Merge pull request #12190 from electron/fix-double-preload-master
Ensure that a document has been created before sending IPC messages
2018-03-14 10:34:05 +09:00
Charles Kerr
86af20ded0
Linux named notifications (#12192)
* Set name & desktop-entry on Linux notifications

* DBusMock now honors verbose mode flag

* Disable DBus Notification tests on ia32
2018-03-12 09:33:06 +09:00
Robo
06bf72da67 remove process preference lock from AtomBrowserClient (#12194) 2018-03-09 12:37:26 -05:00
deepak1556
3cfe66e4c3 move ipc use from rvh to rfh 2018-03-09 15:01:09 +05:30
Cheng Zhao
83f01096c0 When a render process is crashed, it might be reused 2018-03-09 16:13:51 +09:00
Cheng Zhao
44c66fc284
Merge pull request #12167 from lyallh/menubar-autohide-fix
Fix menubar toggle alt key detection on focus
2018-03-09 10:13:32 +09:00
Aleš Pergl
0937b84b01 Use content origin in screen coordinates for calculating popup menu position (#12180) 2018-03-09 05:48:35 +09:00
Lyall Hamilton
ba24920fec Fix menubar toggle alt key detection on focus
Reset alt keypress flag on window blur so switching window via
Alt+* window manager keybindings can't incedentally trigger
annoying menubar toggles
2018-03-08 21:48:43 +13:00
Samuel Attard
8c138e74be More vibrancy fixes (#12157)
* Only set title bar to transparent when vibrant with a custom titlebar
* Correctly set the transparent state of the GpuSwitcher so vibrancy works on reload
* Document case where using frame: false without custom titleBarStyle and vibrant
2018-03-07 11:40:36 -05:00
Andreas
69e7afee26 fix dev tools window interfering with mouse forward (#12132) 2018-03-07 07:44:55 -05:00
Cheng Zhao
cc6bcb6c81 Fix some flaky tests in CI (#12153)
* Guard whole InitPrefs with ScopedAllowIO

Saw a crash:
0 0x7f8d2f7d918d base::debug::StackTrace::StackTrace()
1 0x7f8d2f7d755c base::debug::StackTrace::StackTrace()
2 0x7f8d2f867caa logging::LogMessage::~LogMessage()
3 0x7f8d2fa157c7 base::ThreadRestrictions::AssertIOAllowed()
4 0x7f8d2f83453a base::OpenFile()
5 0x7f8d2f82a967 base::ReadFileToStringWithMaxSize()
6 0x7f8d2f82ad44 base::ReadFileToString()
7 0x7f8d2f846f73 JSONFileValueDeserializer::ReadFileToString()
8 0x7f8d2f84738c JSONFileValueDeserializer::Deserialize()
9 0x7f8d35a5d1f6 <unknown>
10 0x7f8d35a5c217 JsonPrefStore::ReadPrefs()
11 0x7f8d35a87d3e PrefService::InitFromStorage()
12 0x7f8d35a87c60 PrefService::PrefService()
13 0x7f8d35a91a10 PrefServiceFactory::Create()
14 0x000000e86e1b brightray::BrowserContext::InitPrefs()
15 0x000000c2bd64 atom::AtomBrowserContext::AtomBrowserContext()
16 0x000000c320db atom::AtomBrowserContext::From()
17 0x000000b4b8b5 atom::api::Session::FromPartition()

* Fix done being called twice in setInterval test

The callback passed to browser process is called asyncly, so it is
possible that multiple callbacks has already been scheduled before we
can clearInternval.

* Fix failing test when dir name has special chars

The pdfSource is not escaped while parsedURL.search is.

* Call done with Error instead of string

* Fix crash caused by not removing input observer

Solve crash:
0 libcontent.dylib content::RenderWidgetHostImpl::DispatchInputEventWithLatencyInfo(blink::WebInputEvent const&, ui::LatencyInfo*) + 214
1 libcontent.dylib content::RenderWidgetHostImpl::ForwardMouseEventWithLatencyInfo(blink::WebMouseEvent const&, ui::LatencyInfo const&) + 1350
2 libcontent.dylib content::RenderWidgetHostViewMac::ProcessMouseEvent(blink::WebMouseEvent const&, ui::LatencyInfo const&) + 44
3 libcontent.dylib content::RenderWidgetHostInputEventRouter::RouteMouseEvent(content::RenderWidgetHostViewBase*, blink::WebMouseEvent*, ui::LatencyInfo const&) + 1817

* Print detailed error

* Run tests after server is ready
2018-03-07 14:40:27 +09:00
Cheng Zhao
411da169ac Repect old logic in windowWillUseStandardFrame 2018-03-06 16:54:20 +09:00
Cheng Zhao
78468098c5 Don't store WebContents in NativeWindow 2018-03-06 16:21:18 +09:00
Cheng Zhao
9000bd6679 views: Explicitly set initially focused view 2018-03-06 16:21:18 +09:00
Cheng Zhao
413fdc6f0d views: Show menu on window's content view 2018-03-06 16:21:18 +09:00
Cheng Zhao
9c7854aef6 NativeWindow is no longer WebContentsObserver 2018-03-06 16:21:18 +09:00
Cheng Zhao
bf862d1d07 views: Focus webContents in BrowserWindow 2018-03-06 16:21:17 +09:00
Cheng Zhao
8bbe28e998 No need to get BrowserContext from NativeWindow 2018-03-06 16:21:17 +09:00
Cheng Zhao
702f1631a3 Remove NativeWindow::FromWebContents 2018-03-06 16:21:17 +09:00
Cheng Zhao
eea4e60b73 Remove NativeWindow's webview APIs 2018-03-06 16:20:37 +09:00