Nathan Sobo
d466abdc64
Fix DisplayBuffer spec
2013-04-29 21:01:47 -06:00
Nathan Sobo
f4be899ae9
Switch EditSession over to object-oriented markers API
2013-04-29 21:01:47 -06:00
Nathan Sobo
5403bc647a
Convert display buffer markers to object-oriented API
2013-04-29 21:01:47 -06:00
Nathan Sobo
482eb6c0de
Give TextBuffer an object-oriented marker interface
...
The previous API revolved around methods on TextBuffer for querying
and manipulating markers based on their id. Now marker creation
methods return marker objects. These are still retrievable by id so
they can be dealt with across serialization boundaries in the future,
but you deal with them directly as objects.
2013-04-29 21:01:47 -06:00
Nathan Sobo
e02e4cd975
Add DisplayBuffer.findMarker[s]
2013-04-29 21:01:47 -06:00
Nathan Sobo
64aaf670ed
Add startRow and endRow special attributes to TextBuffer.findMarker[s]
2013-04-29 21:01:46 -06:00
Nathan Sobo
0f0480b79f
Add Buffer.findMarker[s], which returns marker[s] matching attributes
2013-04-29 21:01:46 -06:00
Nathan Sobo
df6feab346
Add Range.compare
2013-04-29 21:01:46 -06:00
Corey Johnson
9180060920
Revert "Listen for mouse events on scrollView instead of renderedLines"
...
You can't listen on scroll view because that makes
it impossible to scroll using the scrollbar
Opens #464
This reverts commit fdae5fd89c
.
2013-04-29 15:07:38 -07:00
Corey Johnson
fdae5fd89c
Listen for mouse events on scrollView instead of renderedLines
...
It was not possible to click on the lower part of the last line
when the editor was scrollable and listening for mousedown events on renderedLines.
Closes #464
2013-04-29 14:59:23 -07:00
Corey Johnson
8e218de3e7
💄
2013-04-29 14:59:23 -07:00
Corey Johnson & Kevin Sawicki
0d8a6782b3
Stop tokenizing line when the same rule is pushed more than once
...
Previously Rails classes would infinitly loop if the Ruby on Rails
grammar was loaded but the Ruby grammar had not been. This occurred
because a rule was continually pushing itself on the stack but never
advancing.
Now if the position does not advance and the last two rules in the
stack have the same scope the last rule is popped and the entire line
is tokenized with the current scopes.
Closes #524 #486
2013-04-29 12:10:40 -07:00
Kevin Sawicki
5a84814e27
Undasherize the namespace when no event exists
...
This would present the new-window event as "New Window"
instead of "New-window".
2013-04-29 10:49:31 -07:00
Kevin Sawicki
df6809e705
Bind meta-N to open a new untitled editor
2013-04-29 10:27:39 -07:00
Kevin Sawicki
c54766a08a
Don't show indent guide in mini editor
2013-04-26 17:31:54 -07:00
probablycorey
9f85ba4f7d
Empty editors trigger config to delete the associated config key
2013-04-26 15:36:58 -07:00
Corey Johnson & Nathan Sobo
1b98bf706e
Setting value to null/undefined removes key from config
2013-04-26 15:36:58 -07:00
Corey Johnson & Nathan Sobo
c923b561e2
💄
2013-04-26 15:36:57 -07:00
probablycorey
ecad6bc2a8
Don't allow float or int Editor's to have NaN as a value
2013-04-26 15:36:57 -07:00
probablycorey
cedea831f7
Config panel handles binding for Editors
2013-04-26 15:36:57 -07:00
Nathan Sobo
232978ea9d
Themes can be disabled by clicking their 'x' icon in the enabled list
2013-04-26 15:36:14 -07:00
Nathan Sobo
ad0bcc3851
Update enabled themes list when config key is updated
2013-04-26 15:36:13 -07:00
Nathan Sobo
b110f430ee
Update 'config.themes' config key when enabled themes list is sorted
2013-04-26 15:36:13 -07:00
Nathan Sobo
0d520e9930
Add a package config panel with the list of enabled packages
2013-04-26 15:36:13 -07:00
Nathan Sobo
b70ff1b164
Don't assign window.jQuery in jasmine-jquery.js
helper
...
I wrap it in a function wrapper to ensure that the assignment
`var jQuery` doesn't end up assigning a window global.
2013-04-26 15:36:13 -07:00
Nathan Sobo
5a291e8188
Use bootstrap stacked nav-pills for panels menu in config window
2013-04-26 15:36:12 -07:00
Nathan Sobo
c90579956f
Un-f
2013-04-26 15:36:11 -07:00
Nathan Sobo
495230435f
Allow packages to be enabled / disabled from general config panel
2013-04-26 15:36:11 -07:00
Nathan Sobo
f0cddf9f32
Serialize the state of the config window on refresh
2013-04-26 15:36:11 -07:00
Nathan Sobo
422d89a7ed
Handle checkbox fields in config panel
2013-04-26 15:34:48 -07:00
Nathan Sobo
5e0dd80366
Remove overkill assertions
2013-04-26 15:34:48 -07:00
Nathan Sobo
bb287cb465
Add ConfigPanel superclass that can bind fields to config values
...
When you give a config field a `name` attribute based on a config key
path, such as 'editor.fontSize', it is automatically kept in sync with
the config value. You can also specify a `type` attribute of 'int' or
'float' to automatically convert the field value to a numeric type.
Specifying a type of 'string' is optional to signal no conversion.
2013-04-26 15:32:47 -07:00
Nathan Sobo
252159afcf
Add super basic styling to config view and 2 non-functional panels
2013-04-26 15:32:47 -07:00
Nathan Sobo
6c43fd5c9d
Set up dev tools event handler when binding default keys
2013-04-26 15:32:47 -07:00
Nathan Sobo
2f60ffcfce
Add ability to add panels to the config view
2013-04-26 15:32:47 -07:00
Nathan Sobo
8980a97895
Add atom.activatePackageConfig, which is called in config windows
...
This calls an optional `activateConfig` method on the package's main
module, which allows it to add a configuration interface to the
`configView`.
2013-04-26 15:32:47 -07:00
Nathan Sobo
9d2d3d5c00
Rename window methods to distinguish editor window from config window
2013-04-26 15:32:46 -07:00
Nathan Sobo
f62e81bca8
Add config.observeUserConfig
2013-04-26 15:32:46 -07:00
Nathan Sobo
ab1b90804e
Add specs for successful calls to .loadUserConfig
2013-04-26 15:31:18 -07:00
Nathan Sobo
9fe264ded4
💄
2013-04-26 15:31:18 -07:00
Nathan Sobo
3a05731f2d
Eliminate EditSession references from tokenized-buffer-spec
2013-04-25 17:16:51 -06:00
Nathan Sobo
9c7ff78fc8
Move language-specific integration tests to text-mate-grammar-spec
2013-04-25 17:15:27 -06:00
Nathan Sobo
4fdc9fba63
Eliminate EditSession dependencies in DisplayBuffer spec
2013-04-25 16:18:39 -06:00
Nathan Sobo
0d78098dbf
Make TokenizedBuffer select its own grammar, not LanguageMode
...
This is part of an effort to disentangle LanguageMode, DisplayBuffer,
and TokenizedBuffer. It should be easy to create a DisplayBuffer
without creating an EditSession… let's get the dependencies flowing
in a single direction.
2013-04-25 15:13:00 -06:00
Nathan Sobo
0f623b3d08
Move structural folding logic to LanguageMode
...
DisplayBuffer should just focus on providing basic support for folding.
Scanning the structure of the code, looking at scopes, etc is more the
domain of the LanguageMode object.
2013-04-25 14:06:53 -06:00
Nathan Sobo
60f945aafd
Move structural folding specs to edit-session-spec
...
Structural folding should really be handled at the edit session level
so that the DisplayBuffer doesn't need access to the LanguageMode. It
should only be concerned with the raw ability to create folds.
2013-04-25 14:06:53 -06:00
Nathan Sobo
ca3b0c97da
💄 getter renames
2013-04-25 14:06:52 -06:00
Kevin Sawicki
875555d933
Rename invisible class to invisible-character
...
Bootstrap defines this class with visibility: hidden
which we don't want since invisible characters should
be visible.
2013-04-25 10:02:33 -07:00
Kevin Sawicki
2803da2f8b
Replace offsUtilscreen with offscreen
2013-04-24 17:59:50 -07:00
Kevin Sawicki
4e8c6e29ad
Use @ instead of this.
2013-04-24 17:57:59 -07:00