anchor.diff:  	{SpaceWidth, LineHeight} = wxDC:getTextExtent(DC, " "),
   	ok = wxDC:clear(DC),
   	ok = draw_buffer_lines(DC, Buffer, LineHeight, SpaceWidth),
  -	ok = draw_caret(DC, Buffer, Caret, LineHeight, SpaceWidth),
  +	case BlinkCaretState of
  +		on ->
  +			ok = draw_caret(DC, Buffer, Caret, LineHeight, SpaceWidth);
  +		off ->
  +			ok
  +	end,
   	wxFont:destroy(Font),
   	wxPaintDC:destroy(DC),
   	ok.
  
positive.code: handle_info(#wx{event = #wxClose{}}, #state{win = #main_window{window = Window}} = State) ->
  	wxWindow:destroy(Window),
  	{stop, normal, State};
  handle_info(#wx{event = #wxKey{} = KeyEvent}, State) ->
  	{noreply, handle_key(KeyEvent, State)};
  handle_info(#ee_pubsub_message{message = {document_inserted, DocPid}}, #state{win = #main_window{window = Window}, doc_set = DocSet0} = State) ->
  	{ok, DocSet1} = ee_doc_set:add_focus_document_view(DocSet0, DocPid),
  	ee_buffer_server:add_subscriber(DocPid, self()),
  
negative.code: 	ok.
  
  handle_call({get_buffer}, _From, #state{doc_set = #ee_doc_set{focus_doc = undefined}} = State) ->
  	{reply, {undefined, #ee_caret{}, off}, State};
  handle_call({get_buffer}, _From, #state{doc_set = #ee_doc_set{focus_doc = #ee_doc_view{buffer = Buffer, caret = Caret}}, blink_caret = BlinkCaret} = State) ->
  	#blink_caret{state = BlinkCaretState} = BlinkCaret,
  	%% TODO: Encapsulate doc view in doc set API.
  	{reply, {Buffer, Caret, BlinkCaretState}, State};
  handle_call(Msg, _From, _State) ->
  	erlang:error({bad_call, Msg}).
  
  