Shelley Vohr
ae632193c0
migrate to virtual void and start mac impl
2018-02-06 08:21:53 -05:00
Heilig Benedek
bb5eecc16c
Use SizeConstraints instead of window events
2017-11-23 21:25:25 +01: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
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
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
Andreas Flöjt
3d33da7696
Make mouse forward option of setIgnoreMouseMessages and update documentation.
2017-08-14 20:21:00 +02:00
Andreas Flöjt
60c0bf1636
Set up legacy window subclass and mouse hook during setForwardMouseMessages.
...
As opposed to when a legacy window is created/destroyed. This enables forwarding on a per-window basis.
2017-08-14 18:12:55 +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
0736de1e8d
Fix lint errors
2017-08-03 23:23:42 +02: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
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
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
Gary Wilber
f19924bcb0
Add Invalidate method to NativeWindow and add Mac implementation
2017-02-13 19:41:24 -08:00
leethomas
b67d515a76
fix signature for SetAlwaysOnTop in native window views
2017-01-26 07:24:20 -08:00
leethomas
1f5518b91e
throw an error for out of bounds window levels
2017-01-24 20:14:09 -08:00
leethomas
7a0a87a6f3
implement relative window levels, closes #8153
2017-01-23 23:42:33 -08:00
Samuel Attard
621a934160
Fix maximize --> unmaximize positioning issue
2016-11-22 16:07:05 +11:00
Samuel Attard
c65033a13b
Revert "incorrect position when restored from maximize-on-top-drag under Windows #7630 "
...
This reverts commit a2b3abbf47
.
2016-11-22 15:49:56 +11:00
liusi
a2b3abbf47
incorrect position when restored from maximize-on-top-drag under Windows #7630
2016-10-27 17:42:43 +08:00
Paul Betts
6fdf40b038
Code Cleanup
2016-10-14 12:17:32 -07:00
Paul Betts
0df21afcdf
Check harder before enabling Accessibility support
2016-10-13 11:46:55 -07:00
adammeyer
783d47f78b
custom window level as string
2016-09-21 22:49:06 -04:00
adammeyer
fbb3a288ec
Allow custom window level when sending window to top
2016-09-21 13:35:59 -04:00
Felix Rieseberg
8b85ee8a20
🔧 Use enum to declare ProgressState
...
As recommended in #6768 , this commit adds an enum for progress states for windows.
2016-08-10 08:56:26 -07:00
Felix Rieseberg
73c91dae9e
🔧 Enable mode indication for setProgressBar
...
This commit enables setting a mode for the setProgressBar method.
Old behavior is kept intact, usage is entirely optional.
2016-08-08 15:52:20 -07:00
Kevin Sawicki
a190495df3
Use bounds for converting window/content sizes
2016-08-04 11:27:27 -07:00
Kevin Sawicki
48cc13d009
Add BrowserWindow.getClientBounds API
2016-08-04 09:58:35 -07:00
Cheng Zhao
01ebc77228
Fix styling issues
2016-08-01 09:58:33 +09:00
liusi
db671702df
fix maximize restore issue caused by restore window size change
2016-07-31 21:49:54 +08:00
Cheng Zhao
f77b9db069
Fix unmaximize() not working
2016-07-09 23:16:57 +09:00
Cheng Zhao
5979c1464f
Remember bounds instead of size
2016-07-09 23:10:36 +09:00
Cheng Zhao
2ece9e2885
Add thickFrame option
2016-07-09 21:49:15 +09:00
Kevin Sawicki
2faf00dc19
Only use default accelerator in Windows/Linux app menu
2016-07-07 11:50:19 -07:00
Milan Burda
c243cf0c0f
Add BrowserWindow.prototype.setContentProtection(enable)
2016-06-22 10:40:33 +02:00
Cheng Zhao
5674e8d114
Only define enable/disable API for views
2016-06-20 15:44:50 +09:00
Cheng Zhao
1866dbe608
Move disable counter to NativeWindow from api::Window
2016-06-20 11:48:46 +09:00
Cheng Zhao
9aa7291627
linux: Implement win.disable/enable/isEnabled() API
2016-06-20 11:16:41 +09:00
Cheng Zhao
f4bec78ccb
linux: Implement win.setParentWindow(parent)
2016-06-20 11:16:41 +09:00
Cheng Zhao
85ba382027
Add "parent" option for BrowserWindow
2016-06-20 11:16:41 +09:00
Cheng Zhao
1a4b4a65c9
mac: Add win.disable/enable/isEnabled() API
2016-06-20 11:16:41 +09:00
Cheng Zhao
fd42e3dc84
mac: Add win.setParentWindow(parent) API
2016-06-20 11:16:41 +09:00
Cheng Zhao
8eca728e0a
Add focusable option
2016-06-13 17:10:28 +09:00
Milan Burda
7a1d1ee0ea
Add BrowserWindow.prototype.setIgnoreFocus
2016-06-12 20:20:57 +02:00
Cheng Zhao
cae25cab3e
Implement SetIgnoreMouseEvents for Windows
2016-06-07 19:38:41 +09:00