Sha256: 10d44e1e967a4f22f05bcb967583655ad40b3e7922637a53ee3beb415d3967cd

Contents?: true

Size: 1.16 KB

Versions: 44

Compression:

Stored size: 1.16 KB

Contents

module Redcar
  class EditView
    module Actions
      class DeleteHandler
        def self.handle(edit_view, modifiers)
          return if modifiers.any?
          delete_next(edit_view)
        end
        
        def self.delete_next(edit_view)
          return if edit_view.document.selection?
          return if edit_view.document.block_selection_mode?
          doc = edit_view.document
          old_offset = doc.cursor_offset
          new_offset = ArrowRightHandler.move_right_offset(edit_view)
          doc.delete(old_offset, new_offset - old_offset)
          true
        end
      end
      
      class BackspaceHandler
        def self.handle(edit_view, modifiers)
          return if modifiers.any?
          delete_previous(edit_view)
        end
        
        def self.delete_previous(edit_view)
          return if edit_view.document.selection?
          return if edit_view.document.block_selection_mode?
          doc = edit_view.document
          old_offset = doc.cursor_offset
          new_offset = ArrowLeftHandler.move_left_offset(edit_view)
          doc.delete(new_offset, old_offset - new_offset)
          true
        end
      end
    end
  end
end

Version data entries

44 entries across 44 versions & 2 rubygems

Version Path
redcar-0.13 plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.13.5dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.13.4dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.13.3dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.13.2dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.13.1dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-0.12.1 plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.13.0dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-0.12 plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.12.27dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.12.26dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.12.25dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.12.24dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.12.23dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.12.22dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.12.21dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.12.20dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.12.19dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.12.18dev plugins/edit_view/lib/edit_view/actions/deletion.rb
redcar-dev-0.12.17dev plugins/edit_view/lib/edit_view/actions/deletion.rb