Commit Graph

184 Commits

Author SHA1 Message Date
Max Brunsfeld
d289ca4471 Fix unintended unload prevention for spec windows 2017-06-02 10:30:10 -07:00
Max Brunsfeld
dc320181fc Fix handling of .save and .saveAs rejections
* Make Pane.close, Pane.saveActiveItem, and Pane.saveActiveItemAs async.
* Refactor the logic for prompting to save on window unload
2017-05-31 17:46:04 -07:00
Ian Olsen
ddcf5460ed Merge pull request #14427 from atom/fb-hw-url-fix2
Fix the atom:// URL handler for real (with tests this time)
2017-05-24 08:41:43 -07:00
Lee Dohm
85e65ffd1c Merge pull request #14492 from mrngoitall/fix-report-issue-link
🐛 Fix Report Issue link to CONTRIBUTING.md
2017-05-22 12:02:41 -07:00
Antonio Scandurra
a7066e387f Fix lint errors
Signed-off-by: Nathan Sobo <nathan@github.com>
2017-05-19 11:07:38 +02:00
Antonio Scandurra
d158e44374 Merge branch 'master' into tj-upgrade-electron 2017-05-19 11:05:15 +02:00
Will Ngo
6283463d88 🐛 Fix Report Issue link to CONTRIBUTING.md 2017-05-18 14:31:27 -07:00
Lee Dohm
b28d0445d2 Fix search issues menu link
The previous link would give a 404 when the user was not logged in to
GitHub. This link works whether logged in or not.
2017-05-17 13:01:55 -07:00
hansonw
e8cd4bf431 Fix the atom:// URL handler for real (with tests this time) 2017-05-16 11:51:54 -07:00
Antonio Scandurra
729ae0ea51 Merge branch 'master' into tj-upgrade-electron
# Conflicts:
#	script/package.json
#	src/task.coffee
2017-05-11 18:05:12 +02:00
Bryant Ung
f464bb3579 Merge pull request #13947 from anatoli26/master
Make an option to always restore the last session
2017-05-08 09:33:23 -07:00
Antonio Scandurra
ce81ac6201 Disable zoom only after the window has finished loading 2017-05-04 13:50:17 +02:00
Nathan Sobo
1f068bde62 Enable experimental web platform features
This will facilitate #13880
2017-05-03 14:21:24 +02:00
Antonio Scandurra
d9004769e0 Disable auxclick 2017-05-03 14:21:24 +02:00
Wliu
d5c13d15bf setZoomLevelLimits -> setVisualZoomLevelLimits 2017-05-03 14:21:23 +02:00
Wliu
c005f7564a Remove unneeded backgroundColor 2017-05-03 14:21:23 +02:00
hansonw
b5eca7c429 Call PackageManager.initialize from URL handler 2017-04-28 13:22:23 -04:00
Damien Guard
55c6f8b29c Merge pull request #13813 from segevfiner/patch-1
Attempt fixing exception when trying to use portable electronUserData
2017-04-09 16:24:16 -07:00
Max Brunsfeld
89f1710cfe Wait for paths to open in main process test
Signed-off-by: Nathan Sobo <nathan@github.com>
2017-04-07 13:20:44 -07:00
Antonio Scandurra
0e1bc58310 ⬆️ electron-link 2017-04-04 11:36:49 +02:00
Hong Chen
89dae42092 Fix issue https://github.com/atom/atom/issues/14109 and https://github.com/atom/atom/issues/13978
First argument to dialog.showSaveDialog() needs to be a BrowserWindow

https://github.com/electron/electron/blob/master/docs/api/dialog.md
https://github.com/electron/electron/blob/master/lib/browser/api/dialog.js
2017-04-03 20:47:36 +08:00
Michelle Tilley
cc2cbfbb0a Emit event from AtomWindow when locations are loaded 2017-03-23 23:36:53 -07:00
Antonio Scandurra
31692f6e6c Merge branch 'master' into as-snapshot-atom-environment 2017-03-20 09:58:15 +01:00
Antonio Scandurra
ccbb276bf5 Bake source maps into the snapshot 2017-03-17 13:25:00 +01:00
Antonio Scandurra
81af989f0d Merge branch 'master' into as-snapshot-atom-environment 2017-03-16 21:08:41 +01:00
Antonio Scandurra
ad6a5ac3bf Don't send did-resolve-proxy messages to destroyed windows
This should fix some main process test failures we are observing on
AppVeyor.
2017-03-16 15:58:54 +01:00
Anatoli
a6e60762be Make an option to *always* restore the last session, no matter how Atom is invoked (#9643), part5: use _.deepClone from underscore-plus 2017-03-10 17:20:35 -03:00
Antonio Scandurra
05eb737a94 Set config schema entirely in the snapshot 2017-03-10 16:50:50 +01:00
Antonio Scandurra
c61df72548 Snapshot config, keymaps, tooltips, commands, grammars and styles 2017-03-10 16:48:00 +01:00
Antonio Scandurra
4b98843fae Merge branch 'master' into as-ns-startup-snapshot 2017-03-10 16:47:27 +01:00
Antonio Scandurra
1e040c62d9 Add AtomEnvironment.prototype.resolveProxy(url)
This new private API will allow settings-view to communicate
asynchronously with the main process to resolve proxies, instead of
using `remote` and blocking the renderer process during startup.
2017-03-10 16:08:02 +01:00
Antonio Scandurra
e61919cd60 Merge branch 'master' into as-ns-startup-snapshot 2017-03-10 15:04:26 +01:00
Antonio Scandurra
11961b09ac Merge pull request #13949 from atom/as-minimize-startup-sync-io
Minimize synchronous I/O during startup
2017-03-10 15:00:30 +01:00
Anatoli
07c0498cf1 Make an option to *always* restore the last session, no matter how Atom is invoked (#9643), part4: import cloneDeep directly from lodash 2017-03-10 06:13:05 -03:00
Antonio Scandurra
3d40f55747 Fix lint errors 2017-03-10 10:00:09 +01:00
Antonio Scandurra
73e8642b96 Merge branch 'master' into as-ns-startup-snapshot 2017-03-10 09:04:30 +01:00
Max Brunsfeld
4a1f98cb6c Create autoUpdateManager in AtomApplication constructor 2017-03-08 15:50:08 -08:00
Anatoli
6cc90c46ed Make an option to *always* restore the last session, no matter how Atom is invoked (#9643), part3: use _.cloneDeep from lodash instead of own clone function 2017-03-08 17:37:22 -03:00
Anatoli
9e41a1b490 Make an option to *always* restore the last session, no matter how Atom is invoked (#9643), part2: new option in Settings is merged with the old one, the result is a 3-value combobox [no, yes, always] 2017-03-08 10:38:08 -03:00
Antonio Scandurra
45d41ca69f Register enter/leave fullscreen events in the main process
This will still notify render processes when such events are triggered
without, however, incurring the additional cost of synchronously
retrieving a `BrowserWindow` (and its properties) via `remote` during
startup.
2017-03-07 10:54:42 +01:00
Antonio Scandurra
727472af58 Disable zoom in the main process
This commit will register the `display-added` and `display-removed`
events only once in the main process in order to disable zoom (see
https://github.com/atom/atom/pull/11345) directly instead of
unnecessarily paying for I/O in the renderer process during startup.
2017-03-07 10:54:42 +01:00
Antonio Scandurra
051e27dbcb Expose load settings to BrowserWindows as JSON
When accessing objects in the main process via the `remote` module,
Electron returns proxy objects that are references to the original ones.
This means that trying to access a remote object's property or function
results in a synchronous message exchange with the main process.

In Atom core we frequently access the load settings coming from the main
process, especially during startup. This caused a lot of synchronous I/O
which was blocking the renderer process for several milliseconds.

With this commit, instead of exposing load settings as a JavaScript
object, we serialize them to JSON in the main process and parse them
back to a JavaScript object in the renderer processes. This allows us to
get a full copy of the object locally and pay for I/O just once when
retrieving load settings from the main process for the first time.
2017-03-07 10:54:42 +01:00
Anatoli
b71a9bb010 Make an option to *always* restore the last session, no matter how Atom is invoked (#9643) 2017-03-07 04:56:10 -03:00
Antonio Scandurra
adb0e39166 WIP 2017-02-28 15:44:02 +01:00
Antonio Scandurra
5dbae1c317 Copy the generated snapshot into the app bundle 2017-02-24 10:39:05 +01:00
Antonio Scandurra
90c707a4c2 Merge branch 'master' into as-ns-startup-snapshot 2017-02-23 13:19:25 +01:00
Antonio Scandurra
264ff4a865 Merge branch 'master' into as-ns-startup-snapshot 2017-02-23 10:01:52 +01:00
simurai
ec9aec6686 Merge branch 'master' into sm-custom-title-bar 2017-02-21 21:56:53 +09:00
Max Brunsfeld
060b027e2a Respect the --resource-path flag 2017-02-17 14:16:53 -08:00
Segev Finer
5b7b121580 🐛 Attempt fixing exception when trying to use portable electronUserData
Whoops:

```
Cannot read property 'setPath' of undefined
TypeError: Cannot read property 'setPath' of undefined
    at Object.setUserData (C:\Users\Segev\Atom\Atom x64\resources\app.asar\src\atom-paths.js:53:12)
    at start (C:\Users\Segev\Atom\Atom x64\resources\app.asar\src\main-process\start.js:27:13)
    at Object.<anonymous> (C:\Users\Segev\Atom\Atom x64\resources\app.asar\src\main-process\main.js:36:1)
    at Module._compile (module.js:556:32)
    at Object.Module._extensions..js (module.js:565:10)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12)
    at Function.Module._load (module.js:424:3)
    at Object.<anonymous> (C:\Users\Segev\Atom\Atom x64\resources\electron.asar\browser\init.js:166:8)
    at Module._compile (module.js:556:32)
```

I didn't test this, submitted directly from GitHub.
2017-02-14 19:35:23 +02:00