109 Commits

Author SHA1 Message Date
Adam Roben
eb0f118cd0 Remove "[object Object]" output from tests 2013-02-28 08:36:35 -05:00
Corey Johnson & Nathan Sobo
9e8831f710 RootView.initialize no longer assigns window.rootView or calls open 2013-02-19 18:26:50 -07:00
Corey Johnson & Nathan Sobo
0b5ea8578f Eliminate rootView.project references. 2013-02-19 18:26:50 -07:00
Nathan Sobo
7f2747ead0 Make project a global and refactor startup process 2013-02-19 18:26:50 -07:00
Nathan Sobo
7bdd51b456 Rename deserializeView to deserialize
In additional, rename `registerViewClass(es)` to `registerDeserializer(s)`.
This moves us to a situation where any kind of object may want to be
deserialized, not just views.
2013-02-19 09:48:40 -07:00
Corey Johnson
958bc2bfab Moved atom.loadPackage to a spec-only helper function 2013-02-13 16:37:59 -08:00
Justin Palmer
b2ce4ca6d5 merge dev, fix conflicts from package rewrite 2013-02-09 20:17:29 -08:00
Corey Johnson & Kevin Sawicki
4619e1847f Manage package lifecycle in Atom instead of in RootView 2013-02-08 17:28:08 -08:00
Corey Johnson & Kevin Sawicki
c27489f608 Remove name parameter from RootView.activatePackage 2013-02-08 17:28:08 -08:00
Corey Johnson & Kevin Sawicki
ed0ced205b Store packages in array instead of a hash by name 2013-02-08 17:28:08 -08:00
Corey Johnson & Kevin Sawicki
8434bdfe91 Load package's configDefaults in AtomPackage
This was previously loaded in RootView.
2013-02-08 17:28:08 -08:00
Corey Johnson & Kevin Sawicki
b93f404fa1 Store packages instead of package modules in RootView 2013-02-08 17:28:07 -08:00
Corey Johnson & Kevin Sawicki
ac6ec1c2a7 Remove rootView as parameter to activate 2013-02-08 17:28:07 -08:00
Nathan Sobo
1cab51cefa RootView can no longer be focused.
Allowing root view to be focused was stealing focus away from the
editor whenever a click event made it to the root view. This unnecessary
switching of focus was interfering with the ability to drag tabs.

But if RootView can't be focused, focus ends up being returned to the
document body when there are no focusable elements. This would be fine,
except for the fact that we frequently bind global events on root view,
and so they aren't triggered when events are triggered on the body. We
could just bind all global events on the body, but this would require
us to always attach elements to the DOM during specs, which is a serious
performance killer in specs.

The workaround is in the keymap. When the keymap handles a key event
that was triggered on the body, it triggers the corresponding semantic
event on the root view anyway, so from the event perspective, it's as
if the root view actually had focus. The only place this might fall
down is if someone wants to capture raw key events. But that's the
keymap's job anyway, and we maybe add a hook on the keymap if such a
need ever arises.
2013-02-08 17:33:37 -07:00
Corey Johnson
9b1cb29e1f Don't store fontSize and fontFamily as instance variables 2013-01-30 12:20:02 -08:00
Kevin Sawicki
0ad71a6008 un-f RootView spec 2013-01-17 17:25:12 -08:00
Brian Lopez & Nathan Sobo
b82e9df5f5 Fix crash when deserializing a pane without a wrapped view 2013-01-17 16:30:09 -08:00
Kevin Sawicki
d27080cee6 Always set pathToOpen in RootView.initialize
Without this an untitled buffer will be opened when
Atom is reopened after being closed with no editors
open.
2013-01-10 16:24:40 -08:00
Nathan Sobo
46331ded03 Merge remote-tracking branch 'origin/command-extensions' into dev
Conflicts:
	spec/app/editor-spec.coffee
	spec/app/root-view-spec.coffee
	src/app/editor.coffee
	src/extensions/strip-trailing-whitespace.coffee
2013-01-09 14:18:10 -07:00
Nathan Sobo
0624ebaf5d Set config defaults for a package from its module's configDefaults 2013-01-04 17:23:24 -07:00
Nathan Sobo
8591c86733 Pass a name string to RootView.activatePackage & deactivatePackage
Previously we were relying on the package module itself to have a
`name` field. But now that we're using `atom.loadPackage` to load up
packages, we can infer the name of the module from the name of the
package directory.
2013-01-04 14:33:01 -07:00
Kevin Sawicki & Nathan Sobo
2ffc0cf13d Rename 'active-editor-path-change' to 'root-view:active-path-changed' 2013-01-04 11:25:45 -07:00
Nathan Sobo
25aadda742 Merge branch 'master' into config 2012-12-20 22:17:32 -07:00
Kevin Sawicki
7efaf084a0 Use editor settings for creating comparison string showing invisibles 2012-12-20 15:42:38 -08:00
Nathan Sobo
7dcb12ada2 RootView talks about packages and packageModules, not extensions
Now you call `rootView.activatePackage`, etc
2012-12-19 19:24:44 -07:00
Nathan Sobo
a7d1a29748 Use config.get/set methods. config.update now takes no args. 2012-12-17 18:52:20 -07:00
Corey Johnson & Nathan Sobo
8a675fd538 Use config.update w/ a key path everywhere we update the config 2012-12-14 15:21:36 -08:00
Nathan Sobo
c9b7618ea0 Move custom invisible glyph spec to editor spec 2012-12-12 15:55:12 -08:00
Nathan Sobo
3c2b84a46d Add config.editor.fontSize 2012-12-12 15:23:36 -08:00
Corey Johnson
5bdfc49f3f Window's title matches TextMate pattern of "#{basename} – #{project.path}" 2012-11-15 17:08:37 -08:00
Corey Johnson
7f999f4a96 Store the RootView's title as a member var instead of on document.title.
Now the window title is mocked to remain static when the spec suite is run.
2012-11-15 15:55:37 -08:00
Corey Johnson
b85a95eaa1 Make leading spaces atomic (length based on tabLength) 2012-11-06 09:03:54 -08:00
Kevin Sawicki
910ca47a61 Allow setting of invisibles on editor 2012-11-02 17:51:22 -07:00
Kevin Sawicki
6d7fac2bf8 💄 2012-11-02 17:51:22 -07:00
Will Farrington
8dbeb9f3d2 first spike at customizable invisibles characters 2012-11-02 17:51:16 -07:00
Corey Johnson & Nathan Sobo
9303aaa8fd Rename root-view: event prefix to window: 2012-10-19 12:51:36 -06:00
Corey Johnson & Nathan Sobo
93cbe2bb22 Create root-view:toggle-invisibles event 2012-10-18 14:44:21 -07:00
Kevin Sawicki
220044c8bd Add eachBuffer helper to RootView
This allows extensions to bind a callback to all current
and future buffers.
2012-10-12 09:16:53 -07:00
Kevin Sawicki
e2c7bca3cc De-f describe 2012-10-10 18:43:56 -07:00
Kevin Sawicki
d4aeb1bb95 Move EditorCommand helpers elsewhere
RootView and Editor now have helpers that support
binding events to callbacks, binding a callback to
all current and future editors, and replacing the
selected text via a transforming callback.
2012-10-10 18:41:20 -07:00
Nathan Sobo
eae7fcdd97 Fix breaking due to "root-view:" prefixed events 2012-10-05 10:07:37 -10:00
Kevin Sawicki
6412cde7a8 Support guide column callback function
This allows a config function to be registered
in the atom.coffee file to support different wrap
guide columns depending on the type of file being
viewed.
2012-09-29 11:44:05 -07:00
Nathan Sobo
1d9cc53e7f RootView focuses the *first* focusable child.
This prevents an issue where the fuzzy finder's mini-editor would get focused again when the fuzzy finder was being hidden.
2012-09-25 17:38:48 -06:00
Corey Johnson & Nathan Sobo
685cbc3575 When focused, RootView retains focus itself if it has no focusable children 2012-09-25 15:11:07 -06:00
Corey Johnson
d13796074b RootView passes focus to a child element with a tabindex of -1 (if one exists) 2012-09-25 13:22:06 -07:00
Kevin Sawicki
8393af2cd6 Serialize root view font size 2012-09-20 09:31:04 -07:00
Kevin Sawicki
54180462f6 Match describe to method name 2012-09-19 17:08:17 -07:00
Kevin Sawicki
f7670dc1a0 Add support for save all via meta-S 2012-09-19 17:03:50 -07:00
Corey Johnson & Nathan Sobo
44db540528 All specs pass 2012-08-30 17:12:52 -06:00
Corey Johnson & Nathan Sobo
12b06ddf0c Get spec suite running (lots of failures) 2012-08-27 17:36:36 -05:00