Commit graph

397 commits

Author SHA1 Message Date
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
adammeyer
fbb3a288ec Allow custom window level when sending window to top 2016-09-21 13:35:59 -04:00
Anthony Tseng
269a87b26f Emit scroll-touch-edge event instead of changing the behavior of scroll-touch-begin/end
fix #6873
2016-09-17 22:50:10 +08:00
Cheng Zhao
f28e8d7168 Fix API changes of Chrome 53 2016-09-14 16:22:43 +09:00
Cheng Zhao
7ed33dfbee Merge pull request #7077 from miniak/title-bar-style
Add support for titleBarStyle: 'hidden-inset' on OS X 10.9
2016-09-09 20:27:26 +09:00
Kevin Sawicki
8652888e27 End sheet in parent when closing modal window 2016-09-07 15:24:37 -07:00
Milan Burda
9911e60f5b Add support for titleBarStyle: 'hidden-inset' on OS X 10.9 2016-09-03 01:33:20 +02:00
Cheng Zhao
105597c7e8 Merge pull request #6848 from miniak/titlebar-style-hidden
Add support for titleBarStyle: 'hidden' on OS X 10.9
2016-08-18 14:40:54 +09:00
Cheng Zhao
06d2dfe119 Merge pull request #6788 from electron/felix-progress-enum
Use enum to declare ProgressState
2016-08-18 14:35:00 +09:00
Kevin Sawicki
86e5bd3552 Disable resize during any stylemask change 2016-08-15 13:18:22 -07:00
Milan Burda
ab8fd49c72 Add support for titleBarStyle: 'hidden' on OS X 10.9 (hidden-inset falls back to hidden) 2016-08-15 22:10:38 +02: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
Cheng Zhao
81244c2221 Merge pull request #6768 from electron/felix-set-progress
Enable mode indication for setProgressBar
2016-08-09 20:58:07 +09: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
Cheng Zhao
f5abae31a3 Code cleanup for native_window_mac
Method definitions should matche sequence of declarations.
2016-08-08 20:15:45 +09:00
Anthony Tseng
1aedccaeeb Fix scroll conflict 2016-08-06 14:02:40 +08:00
Cheng Zhao
3be68ba136 Merge pull request #6736 from electron/maximizable-state
Always restore maximizable state after changing window behavior/style
2016-08-05 17:25:22 +09:00
Kevin Sawicki
b77a553de7 Always reset maximizable state 2016-08-04 16:50:22 -07:00
Kevin Sawicki
52199a008d Add initial setContentBounds method 2016-08-04 12:02:24 -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
gellert
0bb5dabf99 omits setMouseDownCanMoveWindow call for OffScreenView 2016-08-04 12:00:35 +02:00
Cheng Zhao
3335792200 Remove some unneeded hacks for old OS X versions 2016-07-12 15:15:47 +09:00
Cheng Zhao
2ee8142136 Fix transparent window having border on OS X 10.9 2016-07-12 15:01:37 +09:00
Cheng Zhao
31e67788a2 mac: Do not change window size when in fullscreen 2016-07-11 16:44:42 +09:00
Cheng Zhao
381366daf1 Fix indention 2016-07-11 16:43:01 +09:00
Cheng Zhao
db8787fce1 The fullscreen button should always be hidden for frameless window 2016-07-11 16:00:29 +09:00
Cheng Zhao
7848608198 Replace DialogScope with UnresponsiveSuppressor
The latter is global-wide.
2016-07-11 15:29:03 +09:00
Cheng Zhao
d23c1bf917 Cleanup the code of SetBounds 2016-07-07 20:02:18 +09:00
Samuel Attard
ceb2864881 Move size bounding logic to SetBounds 2016-07-07 20:55:10 +12:00
Samuel Attard
6bd343b112 Bound the target width and height of window when calling SetSize 2016-07-07 00:49:35 +12:00
Cheng Zhao
7f3a296050 mac: Avoid calling setTitleVisibility for OS X 10.9 2016-06-23 13:00:14 +09:00
Milan Burda
c243cf0c0f Add BrowserWindow.prototype.setContentProtection(enable) 2016-06-22 10:40:33 +02:00
Cheng Zhao
8ffd069689 mac: Fix maximize/unmaximize event emitted before window is maximized 2016-06-22 14:06:54 +09:00
Cheng Zhao
5674e8d114 Only define enable/disable API for views 2016-06-20 15:44:50 +09:00
Cheng Zhao
e33e4be257 macOS: Use sheet window as modal window 2016-06-20 14:49:24 +09:00
Cheng Zhao
1866dbe608 Move disable counter to NativeWindow from api::Window 2016-06-20 11:48:46 +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
f2cbd7cb36 mac: Add win.beginSheet(sheet)/endSheet(sheet) API 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
fb7e7b315c mac: Close all child windows before closing current window 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
6f4899bd94 Merge pull request #6068 from electron/redispatch-events
Redispatch events to handle native OSX shortcuts
2016-06-19 11:22:02 +00:00
Leonard Lamprecht
67dd19ed0f Replace OS X and Mac OS with macOS 2016-06-18 15:26:26 +02:00
Kevin Sawicki
0e65977a3c Use EventDispatchingWindow from brightray 2016-06-17 11:11:50 -07:00
Kevin Sawicki
1762599df0 Remove unused variable 2016-06-17 09:12:59 -07:00
Kevin Sawicki
a2bbfea9e0 Redispatch events to handle native shortcuts 2016-06-17 09:12:59 -07:00
Cheng Zhao
57ed682e34 Merge pull request #6091 from electron/icon-progress-crash
Fix crash setting progress after setting dock icon
2016-06-17 03:29:49 +00:00
Cheng Zhao
6b20d6c189 Don't change the behavior of transparent window 2016-06-17 11:02:37 +09:00
Cheng Zhao
9eea973d31 Use the setTitleVisibility to control tittlebar's visibility 2016-06-17 10:54:50 +09:00
Kevin Sawicki
5f0238ebf4 Add subview whenever content view is empty 2016-06-16 14:57:23 -07:00
bridiver
2094b39460 set the title for hidden and hidden-inset windows so they show up in the window menu list
fixes #6088
2016-06-16 13:12:53 -07: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
Kevin Sawicki
9f93f4e27f Set maximizable state after installing view 2016-06-08 13:56:45 -07:00
Kevin Sawicki
70996c79ba Add showDefinitionForSelection webContents proxy method 2016-06-08 10:19:43 -07:00
Kevin Sawicki
6360a5cae4 Add deprecation TODO for BrowserWindow.showDefinitionForSelection 2016-06-08 10:15:36 -07:00
Cheng Zhao
b444211d6f Fix title of frameless window showing as empty under fullscreen 2016-06-07 17:26:26 +09:00
Cheng Zhao
a176aaee01 Merge pull request #5734 from danhp/fix-aspect-ratio
Fix 'setAspectRatio(0)' not resetting the default behaviour.
2016-05-30 01:14:03 +00:00
Kevin Sawicki
b465f2c3c4 Remove duplicate hidden-inset check 2016-05-27 13:27:35 -07:00
Daniel Pham
0c710fce33 🍎 Fix 'setAspectRatio(0)' not resetting the default behaviour. 2016-05-27 08:56:34 -04:00
Daniel Pham
d1c302800f Fix: Properly notify observers when window prevents close 2016-05-25 19:26:57 -04:00
Cheng Zhao
9f858e1243 Merge branch 'master' into chrome51 2016-05-23 19:49:43 +09:00
Cheng Zhao
1b9bced8c0 Merge pull request #5644 from leethomas/fix/osx-aspect-ratio
🍎  let Cocoa handle keeping aspect ratio on window resize
2016-05-23 08:15:44 +00:00
leethomas
de27b34891 disregard extraSize when initially setting the aspect ratio 2016-05-22 19:09:21 -07:00
Cheng Zhao
7ba391da7c Update to API changes of Chrome 51 2016-05-23 10:59:39 +09:00
leethomas
1d61f987cb code styling 2016-05-22 18:59:00 -07:00
leethomas
09de0c2766 call base SetAspectRatio in NativeWindowMac implementation 2016-05-22 17:22:57 -07:00
leethomas
ac6e4aff5e comments 2016-05-22 17:00:14 -07:00
leethomas
7aaf974362 override SetAspectRatio for NativeWindowMac 2016-05-22 16:50:50 -07:00
leethomas
8f7a04f9c3 🍎 let Cocoa handle keeping the aspect ratio whenever the edges are dragged 2016-05-22 15:43:47 -07:00
leethomas
359123458d 🍎 allow x-axis offset to be set for sheets 2016-05-18 23:45:54 -07:00
Cheng Zhao
5f6c468f0f Handle keyboard events for WebContents that do not have owner window 2016-05-18 13:57:48 +09:00
Cheng Zhao
13bfb099a2 Fix the toolbar showing when titleBarStyle is hidden-inset 2016-05-17 16:25:18 +09:00
Cheng Zhao
f53aabaef5 Implement titleBarStyle without using NSFullSizeContentViewWindowMask 2016-05-17 15:48:14 +09:00
Milan Burda
e1516d4244 Fix BrowserWindow.maximize/unmaximize on Mac 2016-04-23 01:16:31 +02:00
Cheng Zhao
18f5fcde60 Fix some coding style issues 2016-04-20 09:18:50 +09:00
Ben Gotow
65c37fe64b Create local variable to typecast view 2016-04-16 10:57:39 -04:00
Ben Gotow
c87c49f4c8 Allow sheets to be attached at a custom offset #4679
Adds a new "setSheetOffset" API to the `dialog` module, which allows you to change the attachment point for sheets on Mac OS X. I put the API on the dialog module, even though Mac OS X requires that the native window hold and return the desired offset.

1. I was originally hoping to make this an argument on the actual dialog.show* calls, but it seems the parameter set is defined in `libchromiumcontent` and I wasn't sure it would be appropriate to add there?

2.  The API could also be on the BrowserWindow (eg `BrowserWindow.setSheetOffset`). I don't have a strong preference, but I think it's more discoverable on the `dialog` module.
2016-04-16 10:16:43 -04:00
Cheng Zhao
b84a178ceb Set the backgroundColor of RenderWidgetHostView 2016-04-14 21:52:17 +09:00
Cheng Zhao
f94661547c mac: backgroundColor should not change titlebar color 2016-04-03 11:59:21 +09:00
Cheng Zhao
1980d85f3e Fix converting SkColor to NSColor
Close #4992.
2016-04-02 21:18:15 +09:00
Cheng Zhao
cb470cb94b Use BrowserWindow's backgroundColor as renderer view's background color 2016-04-02 20:46:50 +09:00
James Wheare
8482109dea Switch to a single OS X swipe event with a direction argument 2016-03-23 15:20:11 +00:00
James Wheare
03319a5426 OSX: Capture 3-finger swipe events in NativeWindow 2016-03-18 15:21:19 +00:00
Arek Sredzki
fcc1f4d7ed Finalized browser-window show & hide events, added tests & fixed os x implementation 2016-03-10 13:51:31 -08:00
Cheng Zhao
2a0be28111 Merge pull request #4682 from phamdaniel/ismaximized
Fix `isMaximized()` in window for when resizable is set to false on OSX
2016-03-06 19:23:46 +09:00
Cheng Zhao
d93ccd47a8 Merge pull request #4670 from atom/cmd-backtick-order
Use sendAction for cycling windows
2016-03-06 16:17:38 +09:00
Cheng Zhao
114801d412 Remove the duplicate logic on OS X 2016-03-05 21:54:41 +09:00
Daniel Pham
d5f5cdb45a 🍎Fix 'isMaximized()' for non resizable windows 2016-03-05 01:39:48 -05:00
Kevin Sawicki
be67dca686 Use _cycleWindows selector to implement cmd-` 2016-03-03 20:53:58 -08:00
Cheng Zhao
12569f2c9d mac: Simulate the behavior of cmd+~ when OS X didn't handle it 2016-02-18 18:32:13 +08:00
Cheng Zhao
a83aee90e5 No need to use scoped_nsobject for id 2016-01-25 15:15:58 +08:00
Cheng Zhao
059d97e1aa Merge pull request #4181 from bengotow/scroll-touch-events
Extend NativeWindow to track touch-based scroll events on OS X
2016-01-25 14:47:54 +08:00
Cheng Zhao
7761815339 Merge branch 'bg-color-pr' of https://github.com/evgenyzinoviev/electron 2016-01-24 21:33:53 +08:00
Cheng Zhao
c41de501cb spec: Test the -able methods 2016-01-24 14:31:37 +08:00
Cheng Zhao
010cc3276a Simplify the setStyleMask calls 2016-01-24 14:31:37 +08:00
Cheng Zhao
239bfe970c Make hasShadow work on Windows/Linux 2016-01-24 14:31:37 +08:00
Cheng Zhao
d704b3f7ba Reorgnize how attributes work 2016-01-24 14:31:37 +08:00
Cheng Zhao
ae7e96f181 Fix fullscreenable on EL Capitan 2016-01-24 14:31:36 +08:00