Nathan Sobo
72fe586101
Remove the concept of focus from the model
2014-01-10 17:27:28 -07:00
Nathan Sobo
ddf7c04e66
Use -> arrows on methods moved to the model
2014-01-10 15:51:27 -07:00
Nathan Sobo
c127237cc6
Upgrade tabs to 0.17.0 so they unsubscribe when the pane is removed
2014-01-10 15:49:46 -07:00
Nathan Sobo
9694d255f0
Simplify item removal
...
- Move emitting of item removal event into ::removeItemAtIndex. Pass a
destroying param instead of setting state.
- Destroy the pane if ::items is empty at the in the item removal
method, rather than with a condition. This gives the item removal event
a chance to fire first.
2014-01-10 15:48:08 -07:00
Nathan Sobo
23e805fe9e
Remove assertion for impossible situation
...
We were testing the behavior of returning the active pane by removing
the active class from its view. But "active" is a model-level concept
now, so this assertion makes no sense.
2014-01-10 15:28:55 -07:00
Nathan Sobo
c7fded0d7f
Only emit 'pane:removed' events if the pane is actually destroyed
...
The pane may only be detached temporarily during splitting/unsplitting
2014-01-10 15:04:51 -07:00
Nathan Sobo
284d823ad5
Tighten up search for parent pane
...
The introduction of the .flexbox-redraw-hack required the query to be
loosened, but I went too far. We don't want to return a pane for mini
editors that happen to be nested on another view that's inside a pane.
2014-01-10 14:36:07 -07:00
Nathan Sobo
1ee783fdb9
Base PaneContainer::getActivePane on the model's active pane
2014-01-10 13:44:02 -07:00
Nathan Sobo
47870a1214
Remove views (rather than detaching) if Pane::destroyItem is called
2014-01-10 13:35:18 -07:00
Nathan Sobo
7801d8562f
Upgrade archive-view to 0.19.0 for .flexbox-repaint-hack fix
2014-01-10 13:08:47 -07:00
Nathan Sobo
104271861c
Upgrade markdown-preview to 0.24.0 for .flexbox-repaint-hack fix
2014-01-10 13:07:39 -07:00
Nathan Sobo
7665cd1a6a
When a pane view is removed in anyway, make sure its model is destroyed
2014-01-10 12:35:12 -07:00
Nathan Sobo
4b0d22917b
Trust CSS to perform layout now that we've switched to flexbox
...
The behavior of flexbox is actually slightly different in that it
divides space evenly among the immediate children of a row or column
rather than accounting for all splits. But it's actually not that big
a deal.
2014-01-10 12:12:44 -07:00
Nathan Sobo
720b2ad47d
Upgrade to serializable 0.3.0 to handle undefined states
2014-01-10 12:11:19 -07:00
Nathan Sobo
d34327a667
Remove the EditorView when Editor is destroyed
2014-01-10 11:56:27 -07:00
Nathan Sobo
d2146f9b2e
Emit 'pane:removed' event in container when last pane is removed
...
Doing it in the pane view is awkward because the view may have already
been detached.
2014-01-10 11:45:08 -07:00
Nathan Sobo
732d36af28
Null guard container in Pane::makeActive
...
Panes can exist outside of containers, albeit only briefly. If
::makeActive is called when the pane is in this state, consider it a
no-op.
2014-01-10 11:37:42 -07:00
Nathan Sobo
edfc86f153
Make PaneContainer::getActivePaneItem retrieve it from the model
2014-01-10 11:34:26 -07:00
Nathan Sobo
339e30d973
Account for pane axis class name changes in pane-container-spec
2014-01-10 11:25:02 -07:00
Nathan Sobo
5e1e092650
When the last pane is destroyed, null out the root and active pane
2014-01-10 11:22:19 -07:00
Nathan Sobo
c69febd44d
Preserve the active pane across serialization
2014-01-10 11:22:02 -07:00
Nathan Sobo
a9d7564f3e
Account for the .flexbox-repaint-hack in WorkspaceView::getEditorViews
2014-01-10 11:21:10 -07:00
Nathan Sobo
a0b733b53d
Skip the flexbox-repaint-hack when seeking editor pane with ::parents
2014-01-10 11:20:12 -07:00
Nathan Sobo
1c7eef89c3
Merge branch 'master' into ns-pane-splits-with-models
2014-01-10 10:40:52 -07:00
Nathan Sobo
6eacfa7077
Call Range::toString, not ::inspect in DisplayBufferMarker::inspect
2014-01-09 19:04:52 -07:00
Nathan Sobo
9aefafb831
Use PaneContainerModel::$activePaneItem for 'active-item-changed' events
...
Yay behaviors
2014-01-09 18:58:01 -07:00
Nathan Sobo
5a3353ec28
Add PaneContainer view to deserializers
2014-01-09 18:35:16 -07:00
Nathan Sobo
e87b8dc463
Remove focusNext/PreviousPane methods from PaneContainer view
2014-01-09 18:35:01 -07:00
Nathan Sobo
60daa483e6
Include orientation when serializing PaneAxisModel
2014-01-09 18:34:09 -07:00
Nathan Sobo
cd699d8b9b
Transfer focus to the root view when the last focused pane is destroyed
2014-01-09 18:17:08 -07:00
Ben Ogle
d33a962848
Upgrade to find-and-replace@0.70.0
2014-01-09 17:12:33 -08:00
Ben Ogle
0d2067e1a4
Merge pull request #1400 from atom/bo-fuck-rejection
...
Dont use reject in project::scan cancel
2014-01-09 17:09:58 -08:00
Nathan Sobo
8647137952
Remove active status management from Pane view; rely on model instead
2014-01-09 18:00:54 -07:00
Ben Ogle
fbcfad28c3
Reject is broken. Ugh. Just resolve it
2014-01-09 17:00:34 -08:00
Nathan Sobo
5e1b2e2696
Manage the active pane at the model level
2014-01-09 18:00:19 -07:00
Kevin Sawicki
a0346e95cf
Upgrade to markdow-preview@0.23.0
2014-01-09 15:37:08 -08:00
Kevin Sawicki
20ee7b432c
Wrap item in array since it is a trigger call
2014-01-09 15:18:44 -08:00
Nathan Sobo
4026e6ca5c
Properly serialize pane focus state
2014-01-09 16:09:22 -07:00
Corey Johnson
378901e0d2
Merge pull request #1375 from atom/ns-fix-crash-exit
...
Properly exit when render process crashes if exitWhenDone option is true
2014-01-09 15:08:56 -08:00
Nathan Sobo
964abd3141
Suppress blur when replacing a pane axis with its last child
...
If the pane axis contains a child pane, its temporary removal from the
DOM causes a blur event that we don't want to screw up our focused
state.
2014-01-09 16:08:52 -07:00
Nathan Sobo
5ca7ad3bce
Add spec for destroyed pane items getting removed at the model layer
2014-01-09 16:07:57 -07:00
Nathan Sobo
4dcba4bb27
Destroy remaining items when a pane is destroyed
2014-01-09 16:06:02 -07:00
Nathan Sobo
073ea84d69
Handle consequences of item removal in the model
2014-01-09 16:05:00 -07:00
Nathan Sobo
2965d2e974
Bind Pane view's focus to focus state on the model
...
It's a bit tricky… we don't want to blur the model when focusing the
pane's active view causes a focusout event on the pane, so we use
::suppressBlur on the model to prevent it from blurring as the focus
is transferred.
2014-01-09 16:01:52 -07:00
Nathan Sobo
a67f0d4d57
Make PaneModel::items an observable sequence
2014-01-09 15:53:52 -07:00
Nathan Sobo
5309d5f24d
Add ability to suppress blur on all focusable objects in a focus context
...
When a view receives a 'focusout' event, we relay that to the model by
calling ::blur. This is great for when users initiate the change in
focus, but 'focusout' events can *also* be caused by elements being
temporarily detached from the DOM.
The ::suppressBlur method gives the ability to ignore blur calls during
a certain operation. This is helpful, for example, when we want to
detach a model and reattach it somewhere else without changing its focus
state.
2014-01-09 15:46:32 -07:00
Nathan Sobo
af3ca57094
Make focus state distinct until changed on Focusable objects
2014-01-09 15:43:05 -07:00
Corey Johnson
db375cd190
Merge pull request #1398 from atom/cj-show-free-disk-space
...
Show low disk space errors when running CI
2014-01-09 14:40:01 -08:00
Kevin Sawicki
d96b63d791
Move enable/disable to parent Package class
...
This was previously unimplemented in TextMatePackage causing exceptions
when trying to enable/disable a package of that type.
2014-01-09 14:13:49 -08:00
probablycorey
e435b48750
Display warning if disk space is kind of full
2014-01-09 13:58:24 -08:00