Kevin Sawicki
1493d6763c
Make custom window buttons an option
2017-06-05 12:50:18 -07:00
Kevin Sawicki
2880cfdc9c
🎨 Minor formatting tweaks
2017-06-05 11:08:05 -07:00
mst128256
96251e55de
Removed commented code
2017-06-05 10:41:52 -07:00
mst128256
9b4664daa5
Area near the top border in frameless window is clickable
2017-06-05 10:41:52 -07:00
gellert
039908a244
various fixes for macos
2017-05-23 11:41:59 +02:00
gellert
062b1ed43e
moves createviewfordwidget method to osrrwhv
2017-05-10 22:19:05 +02:00
Cheng Zhao
6be10ffef2
Fix more API changes due to name changes
2017-04-27 16:34:52 +09: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
Kevin Sawicki
7f8e490839
Take const reference
2017-04-04 12:50:41 -07: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
f5a75c4e87
Merge pull request #9076 from electron/cleanup-cpp
...
Cleanup cpp codebase
2017-04-03 08:30:08 -07:00
Haojian Wu
34a91434aa
Remove extra spaces.
2017-04-01 22:01:29 +02:00
Kevin Sawicki
08db63c3cc
Only define NSWindowTabbingModeDisallowed on pre-10.12
2017-03-31 11:28:55 -07:00
Haojian Wu
e8abee9ca9
Replace C-style casts with static_cast.
2017-03-30 23:05:47 +02:00
Kevin Sawicki
42300ae58e
Make tabbing identifier var local
2017-03-30 13:47:11 -07:00
Kevin Sawicki
c8b992fa39
Remove 10.12 check handled by respondsToSelector
2017-03-30 13:46:34 -07:00
Haojian Wu
d425b63b0d
NULL => nullptr
2017-03-30 22:12:14 +02:00
Tony Ganch
bd935b213f
Fix compilation against macOS 10.10 SDK
2017-03-30 15:13:49 +02:00
Tony Ganch
a7565f0d57
Enable native tabs on macOS
2017-03-29 13:51:39 +02:00
Kevin Sawicki
edebb32014
Drop nullable for consistency
2017-03-03 14:07:59 -08:00
Kevin Sawicki
ca2898a60e
Check that window responds to touchBar selector for pre-10.12.1 compat
2017-03-03 14:00:39 -08:00
Kevin Sawicki
d1edd80ef8
Use NSTouchBar itemForIdentifier to lookup existing item
2017-03-03 14:00:39 -08:00
Kevin Sawicki
5fe3ac60fa
Check that atom_touch_bar_ is set
2017-03-03 14:00:39 -08:00
Kevin Sawicki
708ed9d1cd
Store ordered settings in AtomTouchBar
2017-03-03 14:00:39 -08:00
Kevin Sawicki
51f1c5a557
Use SetTouchBar withe empty vector instead of DestroyTouchBar
2017-03-03 14:00:39 -08:00
Kevin Sawicki
b959f782f6
Rename instance variable maps
2017-03-03 14:00:39 -08:00
Kevin Sawicki
ec500b2852
Use scoped_nsobject to match Chrome implementation
2017-03-03 14:00:38 -08:00
Kevin Sawicki
823b3baed0
Use vector of dictionaries instead of mate::Arguments
2017-03-03 14:00:38 -08:00
Kevin Sawicki
98f5858b11
Initial support for dynamic properties
2017-03-03 14:00:38 -08:00
Kevin Sawicki
1972e2eff9
Update renamed variable
2017-03-03 14:00:38 -08:00
Kevin Sawicki
28f2a4951b
touch_bar_helper_ -> atom_touch_bar_
2017-03-03 14:00:38 -08:00
Kevin Sawicki
b39b49a15a
Rename to touch_bar_helper_ to differentiate from touchBar property
2017-03-03 14:00:38 -08:00
Kevin Sawicki
14ef5c5957
Reset helper when makeTouchBar is called
2017-03-03 14:00:38 -08:00
Kevin Sawicki
48515d9ecc
Ignore objective-c header lint
2017-03-03 14:00:38 -08:00
Kevin Sawicki
b632cdd37d
Extract helper class to encapsulate touch bar items
2017-03-03 14:00:38 -08:00
Kevin Sawicki
1b5149ae7a
Few memory and scope tweaks
2017-03-03 14:00:38 -08:00
Kevin Sawicki
b16d649819
Use skia color helpers
2017-03-03 14:00:38 -08:00
Kevin Sawicki
69638a399c
Make touchBar readwrite/nullable
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
ba3fbc9d1b
Fix Group items
2017-03-03 14:00:38 -08:00
Samuel Attard
28d5c8bbde
Add updateConfig ability to other items
2017-03-03 14:00:38 -08:00
Samuel Attard
dd09c91cf2
initial work on updating touch bar item config without rerender
2017-03-03 14:00:38 -08:00
Samuel Attard
257b32b84b
Remove unused ident
2017-03-03 14:00:38 -08:00
Samuel Attard
43cc5079d8
Implement group item
2017-03-03 14:00:38 -08:00
Samuel Attard
269d899a99
Implement popOver item type (woo hoo it worked)
2017-03-03 14:00:38 -08:00
Samuel Attard
c92c4138a8
Add Slider item type and add options to the button type
2017-03-03 14:00:38 -08:00
Samuel Attard
18c7c3ece8
Make label and colorpicker types work
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
Samuel Attard
703b5738c8
Initial TouchBar Magic
...
* Make the AtomNSWindow also a NSTouchbarDelegate
* Implement basic makeTouchBar and makeItemForIdentifier methods
* Initial sending of touch / update events through IPC to BrowserWindowObjects
TODO:
* JS API
* JS Object Converters
* Generalize methods so that popovers can work
2017-03-03 14:00:38 -08:00
gellert
a1ede4a4b0
fixes os version check of vibrancy
2017-02-18 20:25:03 +01:00
Kevin Sawicki
82f452568c
🎨 Minor formatting tweaks
2017-02-14 11:09:15 -08:00
Gary Wilber
f19924bcb0
Add Invalidate method to NativeWindow and add Mac implementation
2017-02-13 19:41:24 -08:00
Kevin Sawicki
0f98c9d3fb
Use at least OS version checks
2017-02-07 09:32:40 -08:00
Cheng Zhao
3224c39371
Mac's version checking function has changed
2017-02-06 10:34:28 -08:00
Kevin Sawicki
9b2b6da3a3
Wrap params at 80 characters
2017-01-30 15:32:05 -08:00
leethomas
edbb786fb4
use kCGMinimumWindowLevelKey to get the minimum level
2017-01-26 19:12:10 -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
Daijiro Wachi
a23d8ed702
do not call SetFullScreen in SetKiosk if it's already fullscreen mode
2017-01-19 00:40:34 +01:00
Daijiro Wachi
436a6d5c0f
Save a fullScreen state for Kiosk mode
2017-01-14 00:04:51 +01:00
Kevin Sawicki
f3b03908f9
Revert "Smooth corners for vibrancy view"
2017-01-10 10:34:55 -08:00
gellert
bfafc6d5fd
indentation fix
2017-01-06 23:54:24 +01:00
gellert
c5fe173e47
adds autorelease to nsimage
2017-01-06 14:32:34 +01:00
gellert
456ea04683
adds mask image for smooth vibrant view corners
2017-01-06 14:26:16 +01:00
Kevin Sawicki
c70eb81e32
Use firstObject instead of objectAtIndex:0
2016-12-20 13:49:35 -08:00
Kevin Sawicki
e77fa72d6d
Merge pull request #8167 from seanchas116/fix-modal-corner
...
🍎 Make sure no round corners for modal windows
2016-12-12 10:05:47 -08:00
Sindre Sorhus
3dde669ee8
🍎 Remove deprecated dock
window level
...
According to the Apple docs, the `NSDockWindowLevel` constant is deprecated: https://developer.apple.com/reference/appkit/nsdockwindowlevel?language=objc
2016-12-09 12:46:49 +01:00
Ryohei Ikegami
ccdeb915fa
🍎 Make sure no round corners for modal windows
2016-12-08 12:12:53 +09:00
Birunthan Mohanathas
18c49285a8
Add BrowserWindow.setAutoHideCursor for macOS
...
The `disableAutoHideCursor` BrowserWindow option can be used to control
auto-hiding behavior when the window is created. This new API is needed
to dynamically change the behavior after the fact.
2016-11-29 09:46:00 -08:00
Daniel Pham
d5a0dd39a1
🎁 Add 'win.closeFilePreview()'
2016-11-28 14:25:11 -08:00
Kevin Sawicki
2fc46f638f
🎨
2016-11-21 08:45:46 -08:00
Kevin Sawicki
a991570677
intrinsicWidth -> pageWidth
2016-11-21 08:45:46 -08:00
Kevin Sawicki
b02c0e6f46
Remove unneeded proportion calculation
2016-11-21 08:45:46 -08:00
Kevin Sawicki
7916981da2
zoomToContentSize -> zoomToPageWidth
2016-11-21 08:45:46 -08:00
Kevin Sawicki
c5790e39dc
Add support for zooming to content size
2016-11-21 08:45:46 -08:00
Kevin Sawicki
dcb3a13361
Use values directly since constants are 10.11+
2016-11-14 16:43:05 -08:00
Kevin Sawicki
483e007b69
🎨
2016-11-11 08:51:33 -08:00
Kevin Sawicki
2d8a61a775
autorelease NSVisualEffectView
2016-11-11 08:51:29 -08:00
gellert
5e62d28e50
adds test, adds view to AtomNSWindow and minor fixes
2016-11-11 08:49:57 -08:00
gellert
2cf30c0d63
remove method transferred to set with null
2016-11-11 08:49:57 -08:00
gellert
8ad50d1e35
adds vibrancy effect for macos
2016-11-11 08:49:57 -08:00
Kevin Sawicki
d85c4da11b
Minor formatting tweaks
2016-10-26 09:55:34 +09:00
Kevin Sawicki
d982376fc4
filename -> displayName
2016-10-26 09:47:38 +09:00
Pierre Laurac
d26601f695
Convention naming
2016-10-26 09:07:38 +09:00
Pierre Laurac
0ec57cca32
last linter commit
2016-10-26 09:06:50 +09:00
Pierre Laurac
cf5fc3f922
more linter
2016-10-26 09:06:44 +09:00
Pierre Laurac
1f60aff73d
linter
2016-10-26 09:06:39 +09:00
Pierre Laurac
9b19e6ee38
Changing names and memory leak fix
2016-10-26 09:05:42 +09:00
Pierre Laurac
e759ce72b5
Using UTF8 String for filepath and filename
2016-10-26 09:05:27 +09:00
Pierre Laurac
2f7cceb11c
Removing extra line break
2016-10-26 09:03:55 +09:00
Pierre Laurac
002462ce7b
Removing unused header dependencies
2016-10-26 09:03:49 +09:00
Pierre Laurac
9673cee4d7
Using string from the std
2016-10-26 09:02:36 +09:00
Pierre Laurac
526debb5ab
Adding easy way to preview files
2016-10-26 09:02:29 +09:00
Pierre Laurac
fb444f646b
default template for PreviewFile
2016-10-26 09:02:21 +09:00
Kevin Sawicki
1807458c66
Only begin sheet when no sheet parent
2016-09-30 10:43:43 -07:00
Kevin Sawicki
df03c92249
Compare against NSNormalWindowLevel in IsAlwaysOnTop
2016-09-22 09:41:06 -07:00
Kevin Sawicki
bce62622bb
Fix compiler errors
2016-09-22 09:22:28 -07:00
adammeyer
783d47f78b
custom window level as string
2016-09-21 22:49:06 -04:00