From fe2cfff7a67c7e5a800d7fd2467ba28621bdce9c Mon Sep 17 00:00:00 2001 From: Max Brunsfeld Date: Wed, 13 May 2015 17:00:30 -0700 Subject: [PATCH] Allocate fewer objects for fold attributes in DisplayBuffer --- src/display-buffer.coffee | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/display-buffer.coffee b/src/display-buffer.coffee index f4c078b17..37120dd83 100644 --- a/src/display-buffer.coffee +++ b/src/display-buffer.coffee @@ -42,6 +42,7 @@ class DisplayBuffer extends Model @disposables.add @buffer.onDidUpdateMarkers @handleBufferMarkersUpdated @disposables.add @buffer.onDidCreateMarker @handleBufferMarkerCreated @updateAllScreenLines() + @foldMarkerAttributes = Object.freeze({class: 'fold', displayBufferId: @id}) @createFoldForMarker(marker) for marker in @buffer.findMarkers(@getFoldMarkerAttributes()) subscribeToScopedConfigSettings: => @@ -1075,8 +1076,11 @@ class DisplayBuffer extends Model findFoldMarkers: (attributes) -> @buffer.findMarkers(@getFoldMarkerAttributes(attributes)) - getFoldMarkerAttributes: (attributes={}) -> - _.extend(attributes, class: 'fold', displayBufferId: @id) + getFoldMarkerAttributes: (attributes) -> + if attributes + _.extend(attributes, @foldMarkerAttributes) + else + @foldMarkerAttributes pauseMarkerChangeEvents: -> marker.pauseChangeEvents() for marker in @getMarkers()