Cheng Zhao
78468098c5
Don't store WebContents in NativeWindow
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
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
Cheng Zhao
3b3e69f8b2
Save browser_view_ in the NativeWindow
...
No need to store it separately in subclasses.
2018-03-06 16:20:37 +09:00
Cheng Zhao
503b0ba1b1
mac: Move draggable region code to BrowserWindow
...
On macOS current draggable region implementation highly relies on
WebContents, the code is only meaningful for BrowserWindow.
2018-03-06 16:20:37 +09:00
Cheng Zhao
1681ee35db
Set WebContents background color in BrowserWindow
2018-03-06 16:20:37 +09:00
Cheng Zhao
cad3d694ab
mac: Remove access to webContents in windowWillUseStandardFrame
2018-03-06 16:20:37 +09:00
Shelley Vohr
2abc69780e
move native-mate back into the api layer
2018-02-27 13:00:42 -08:00
Samuel Attard
5336b4a89c
Pass arguments instance through the chain in order to throw error
2018-02-27 16:11:58 +11:00
Cheng Zhao
c611eb061d
Move InputEventObserver to api::BrowserWindow
2018-02-22 19:01:45 +09:00
Cheng Zhao
aa3eafcea1
Move closing logic to api::BrowserWindow
...
Closing a BrowserWindow is essentially closing a WebContents, the logic
should not be in NativeWindow.
2018-02-22 19:01:45 +09:00
Cheng Zhao
66fab65a1a
Add NativeWindowObserver::OnCloseButtonClicked
2018-02-22 19:01:45 +09:00
Cheng Zhao
a3124e8873
Use observer to provide OnRendererUnresponsive
2018-02-22 19:01:45 +09:00
Cheng Zhao
bffb31c337
Remove OnMessageReceived from NativeWindow
2018-02-22 19:01:45 +09:00
Cheng Zhao
44e7282b4b
The UpdateDraggableRegions does not share implementations
2018-02-22 19:01:45 +09:00
Cheng Zhao
6650a06339
Move RenderViewCreated logic to api::BrowserWindow
2018-02-22 19:01:45 +09:00
Cheng Zhao
c256a43139
Move ready-to-show to api::BrowserWindow
2018-02-22 19:01:45 +09:00
Shelley Vohr
ae632193c0
migrate to virtual void and start mac impl
2018-02-06 08:21:53 -05:00
deepak1556
99e26b8318
fix: draggable region ipc should be frame based
2018-01-01 22:54:02 +05:30
Cheng Zhao
5e4914700e
Enable using external WebContents as devtools
2017-12-01 10:35:23 +09:00
Cheng Zhao
7e0593950c
Code style fixes
2017-11-13 16:13:54 +09:00
Heilig Benedek
276e12ce71
pass on web_contents to properly handle devtools
2017-11-13 15:50:50 +09:00
Heilig Benedek
f8b3009ebf
restructure code to use web_preferences if possible
2017-11-13 15:50:49 +09:00
Heilig Benedek
71b36ef54d
don't show the dummy window for the rest of the dialogs too on mac
2017-11-13 15:46:46 +09:00
Heilig Benedek
35dc6d03b9
lint fix
2017-11-13 15:46:46 +09:00
Heilig Benedek
e39aacb30e
fix a bug that caused a crash when using an offscreen window with detached devtools, related to autofill popups
2017-11-13 15:46:46 +09:00
Cheng Zhao
8c5bb5969c
Merge pull request #10667 from dittos/window-opacity
...
Add window opacity support
2017-10-04 15:03:45 +09:00
Daniel Ma
1bb042a661
feat(NativeWindowMac): addTabbedWindow
...
Add support for the [`NSWindow addTabbedWindow`][nsw] method on MacOSX
This plays nicely with the changes from #9052 and #9725
Usage samples available in [this commit][c] in my fork of
`electron-quick-start`
[nsw]: https://developer.apple.com/documentation/appkit/nswindow/1855947-addtabbedwindow
[c]: 79f06591df
2017-10-03 20:11:16 +09:00
Taeho Kim
7570ec9d39
Add BrowserWindow.getOpacity for consistency
2017-10-03 00:08:10 +09:00
Ted Kim
7f2c4a9e06
Add window opacity support
2017-09-29 17:49:10 +09:00
Cheng Zhao
a19a229a59
Merge pull request #10254 from zachflower/feature/simple-fullscreen-mode
...
Feature/simple fullscreen mode
2017-09-14 09:39:50 +09:00
Cheng Zhao
10ab870237
Merge pull request #10321 from kaylanm/macos-native-tab-api
...
🍎 Add macOS native tab methods to window API
2017-09-11 18:49:56 +09:00
Michael Kaylan
b4428e7e41
🍎 Add macOS native tab methods to window API
2017-08-21 23:24:30 -04:00
Andreas Flöjt
3d33da7696
Make mouse forward option of setIgnoreMouseMessages and update documentation.
2017-08-14 20:21:00 +02:00
Zachary Flower
ba5fa2c8b1
Add support for simple (pre-Lion) fullscreen on Mac OS
2017-08-13 00:28:33 -06:00
Andreas Flöjt
a84fa0eecb
🏁 Add API to forward mouse messages.
...
As opposed to the existing setIgnoreMouseEvents this call makes Chromium aware of mouse movements, allowing the user to stop forwarding according to movements in the webpage.
2017-08-02 21:16:37 +02:00
Daniel Ma
4fb9f825b1
Add "New Tab" button for Native macOS Tabs
...
Adds responders for `newWindowForTab` to `AtomApplicationDelegate` and
`NativeWindowMac`, so that `BrowserWindow`s with a `tabbingIdentifier`
will get the new tab button, and both `app` and `window` will emit a
`new-tab-for-window` event.
2017-06-11 02:26:26 -07:00
Heilig Benedek
192cd7787b
move popup related code to nativewindow
2017-05-26 03:39:36 +02:00
Heilig Benedek
d5c038a7fb
ci build fix
2017-05-21 20:57:19 +02:00
Heilig Benedek
20d2ab29ab
Add support for child and popup windows in OSR
2017-05-10 22:19:05 +02:00
Hari Krishna Reddy Juturu
8a32826876
Removing #ifdef windows for endsession methods
2017-04-24 11:49:21 -07:00
Hari Krishna Reddy Juturu
3c3e14b820
End session event on browser window
2017-04-21 14:22:11 -07:00
Kevin Sawicki
29a3e11893
Group sheet event methods with other macOS methods
2017-04-20 10:32:14 -07:00
Yuya Ochiai
75184046f6
Add events to manage sheets of macOS BrowserWindow
2017-04-15 16:26:45 +09: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
Samuel Attard
60cc862031
Make everything pointer like
2017-04-04 12:50:41 -07:00
Samuel Attard
4d6b0fc01b
Add a method to set the escape identifier on the touch bar
2017-04-04 12:50:41 -07:00
Kevin Sawicki
51f1c5a557
Use SetTouchBar withe empty vector instead of DestroyTouchBar
2017-03-03 14:00:39 -08:00
Kevin Sawicki
812beb240b
Remove unneeded includes
2017-03-03 14:00:38 -08:00