Commit Graph

293 Commits

Author SHA1 Message Date
Nathan Sobo
2075f06404 WIP: Introduce dummy scrollbars
Still need tests on all of this
2017-05-05 09:29:28 +02:00
Nathan Sobo
a0c84d592a Remove ViewRegistry.pollDocument
Supporting it via mutation observers has a bad impact on frame rate.
2017-05-03 14:21:24 +02:00
Antonio Scandurra
fb6834d68b Require TextEditorElement eagerly
With snapshots, all the forbidden modules are required lazily. In the
case of `TextEditorElement` this can be problematic because users might
create editors via `document.createElement('atom-text-editor')`.

With this commit we will eagerly require
`src/text-editor-element.coffee`, thus forcing `TextEditorElement` to
register the HTML custom element and fixing the issue.
2017-04-13 11:03:35 +02:00
Matthew Dapena-Tretter
ddd8a8b978 Add atom.whenShellEnvironmentLoaded()
This provides a way to be notified when the shell environment has
loaded—even if it's already happened.
2017-04-11 18:10:00 -07:00
Max Brunsfeld
48336fb95e Don't use workspace's itemLocationStore in tests 2017-04-07 15:30:44 -07:00
Nathan Sobo
ec576b12bc Remove PaneContainer.monitorActivePaneItem
Call didChangeActiveItemOnPane directly from panes and when the active
pane changes instead.
2017-04-06 13:18:18 -06:00
Max Brunsfeld
9ecbc85be5 Remove more usages of getView, document getElement API 2017-04-05 17:02:59 -07:00
Max Brunsfeld
78d8e67609 Add Gutter.getElement, remove Gutter view provider 2017-04-05 17:01:54 -07:00
Max Brunsfeld
6344f9884d Add PaneAxis.getElement, remove PaneAxis view provider 2017-04-05 16:25:53 -07:00
Max Brunsfeld
d0421a75c8 Add Panel.getElement and remove Panel view provider 2017-04-05 16:10:21 -07:00
Max Brunsfeld
d1e8e359ce Add PanelContainer.getElement, remove PanelContainer view provider 2017-04-05 16:03:33 -07:00
Max Brunsfeld
6d55371930 Add Workspace.getElement method, remove WorkspaceElement view provider 2017-04-05 15:32:00 -07:00
Antonio Scandurra
cef72fd66f Merge pull request #14080 from atom/as-preload-packages
Packages preloading
2017-04-03 09:59:34 +02:00
Max Brunsfeld
817467f0a8 Merge branch 'master' into fb-mdt-docks 2017-03-30 11:16:21 -07:00
Antonio Scandurra
de47a26c5d WIP: Start preloading packages 2017-03-28 10:22:29 +02:00
Michelle Tilley
1651f0fd76 👕 2017-03-23 23:57:53 -07:00
Michelle Tilley
f657bd13c6 👕 2017-03-23 23:44:38 -07:00
Michelle Tilley
cc2cbfbb0a Emit event from AtomWindow when locations are loaded 2017-03-23 23:36:53 -07:00
Matthew Dapena-Tretter
d9e1fcc70b Merge branch 'master' into HEAD
* master: (43 commits)
  If one arch fails, kill the other for perf on appveyor
  ⬆️ dalek@0.2.1
  Revert "⬆️ all packages that use atom-select-list"
  ⬆️ atom-keymap
  ⬆️ status-bar
  ⬆️ all packages that use atom-select-list
  ⬆️ language-ruby@0.71.0
  ⬆️ autocomplete-css@0.16.1
  Ensure `packagesCache` exists before accessing it
  🎨
  ⬆️ less-cache
  Use `core/` instead of `<embedded>` for keymaps loaded during snapshot
  Set also defaultSettings.core.projectHome when initializing Config
  Fix tests
  ⬆️ atom-keymap
  Replace CommandRegistry.addBundled with a boolean param in .add
  Delete unused build scripts
  🔥 Remove parserlib
  Resolve style sheets paths during `script/build` for bundled packages
  Don't use cached less sources and imported files in dev mode
  ...
2017-03-23 18:47:46 -07:00
Katrina Uychaco
4c1cb16e77 Merge remote-tracking branch 'origin/master' into ku-mkt-restore-atom-env-when-adding-folder-to-fresh-window 2017-03-22 20:36:59 -07:00
Michelle Tilley
d9b73fa645 Restore state when opening folders to applicable windows
Note: "clean window" is defined as 1) having an empty project and 2)
having no pane items or only empty unnamed buffers

When project is empty and there is saved state associated with the
opened/added folders...
* Open a file or folder (from command line or Open menu)
  * If we have a clean window, restore project state in window
  * If window is dirty, restore saved state in new window
2017-03-22 20:25:57 -07:00
Michelle Tilley
910fef97a0 Restore state when adding folders to applicable windows
Note: "clean window" is defined as 1) having an empty project and 2)
having no pane items or only empty unnamed buffers

Adding folder(s)
* If we have a clean window, restore project state in window
* If window is dirty, prompt user to
  * add folder to the existing window LOSING state
  * OR open project folder in a new window
2017-03-22 20:24:50 -07:00
Matthew Dapena-Tretter
98e7fcc505 Prefer getElement() to view registry for Docks, PaneContainer & Pane 2017-03-20 22:39:23 -07:00
Max Brunsfeld
91780e6f18 Merge branch 'master' into fb-mdt-docks 2017-03-20 11:26:42 -07:00
Antonio Scandurra
95cf200a7c Merge branch 'as-snapshot-atom-environment' into as-ns-optimize-stylesheets-loading
# Conflicts:
#	script/tdd
2017-03-20 10:06:57 +01:00
Antonio Scandurra
31692f6e6c Merge branch 'master' into as-snapshot-atom-environment 2017-03-20 09:58:15 +01:00
Matthew Dapena-Tretter
3ff830102f Serialize docks 2017-03-18 15:31:57 -07:00
Antonio Scandurra
0c8e515f9f Don't change on{Will,Did}ThrowError events parameter 2017-03-17 13:16:23 +01:00
Antonio Scandurra
cbe60bd53d Use the generated snapshot source map in source-map-support
This will report the correct file and line numbers on stack traces
instead of always showing `<embedded>:absoluteLineNumber`. As a result,
it will also fix the `notifications` package, which will be able again
to identify which package threw an exception and to create an issue on
its repository.
2017-03-17 12:28:22 +01:00
Antonio Scandurra
b2ef8abf0a Don't use cached less sources and imported files in dev mode 2017-03-14 13:50:22 +01:00
Antonio Scandurra
dc76e2e144 Load base style sheets in AtomEnvironment again 2017-03-14 08:59:21 +01:00
Antonio Scandurra
70177e5a4d Merge branch 'as-snapshot-atom-environment' into as-ns-optimize-stylesheets-loading
# Conflicts:
#	script/package.json
#	script/tdd
#	src/atom-environment.coffee
#	src/context-menu-manager.coffee
#	src/keymap-extensions.coffee
#	src/theme-manager.coffee
#	src/workspace-element.coffee
2017-03-13 08:32:12 +01:00
Antonio Scandurra
ea440148d8 Fix remaining tests 2017-03-12 11:57:16 +01:00
Antonio Scandurra
fbcbfc4889 Validate selectors only in devMode 2017-03-11 18:56:29 +01:00
Antonio Scandurra
8bd409ede3 Fix dev mode 2017-03-11 18:50:13 +01:00
Antonio Scandurra
05eb737a94 Set config schema entirely in the snapshot 2017-03-10 16:50:50 +01:00
Antonio Scandurra
f5a19a6904 Move StateStore into the snapshot 2017-03-10 16:50:50 +01:00
Antonio Scandurra
c4d0944c0d Snapshot more objects 2017-03-10 16:49:53 +01:00
Antonio Scandurra
c61df72548 Snapshot config, keymaps, tooltips, commands, grammars and styles 2017-03-10 16:48:00 +01:00
Antonio Scandurra
44e3573fcb Start moving AtomEnvironment instantiation bits inside the snapshot 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
69ea645b85 Fix lint errors 2017-03-10 16:31:20 +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
7e761d39af Fall back to local storage when no history can be found 2017-03-10 14:37:37 +01:00
Antonio Scandurra
73e8642b96 Merge branch 'master' into as-ns-startup-snapshot 2017-03-10 09:04:30 +01:00
Katrina Uychaco
2e2438ca27 Restore saved state when adding folder to empty project via open command 2017-03-08 14:41:41 -08:00
Katrina Uychaco
d891f2376c Restore saved state when adding folders to empty project 2017-03-08 14:40:58 -08:00
Katrina Uychaco
12ea7a7300 Add AtomEnvironment::restoreStateIntoEnvironment
This takes an existing Atom environment and restores a saved state from
the IndexDB state storage into it by:

1. Serializing the existing pane items
2. Restoring the saved state
3. Deserializing the saved pane items into the newly restored
environment
2017-03-08 14:15:36 -08:00
Katrina Uychaco
b701bc790e Add optional state key to AtomEnvironment::saveState and ::loadState 2017-03-08 14:12:42 -08:00