Browse Source

Additional CR+LF fixes

merge-requests/365/head
eidheim 9 years ago
parent
commit
1ce55fbc20
  1. 10
      src/source.cc
  2. 6
      src/source_diff.cc

10
src/source.cc

@ -1347,9 +1347,9 @@ bool Source::View::on_key_press_event(GdkEventKey* key) {
break;
if(iter.starts_line())
empty_line=true;
if(empty_line && !iter.ends_line() && *iter!=' ' && *iter!='\t')
if(empty_line && !iter.ends_line() && *iter!='\n' && *iter!=' ' && *iter!='\t')
empty_line=false;
if(!text_found && !iter.ends_line() && *iter!=' ' && *iter!='\t')
if(!text_found && !iter.ends_line() && *iter!='\n' && *iter!=' ' && *iter!='\t')
text_found=true;
if(empty_line && text_found && iter.ends_line())
break;
@ -1375,9 +1375,9 @@ bool Source::View::on_key_press_event(GdkEventKey* key) {
break;
if(iter.ends_line())
empty_line=true;
if(empty_line && !iter.ends_line() && *iter!=' ' && *iter!='\t')
if(empty_line && !iter.ends_line() && *iter!='\n' && *iter!=' ' && *iter!='\t')
empty_line=false;
if(!text_found && !iter.ends_line() && *iter!=' ' && *iter!='\t')
if(!text_found && !iter.ends_line() && *iter!='\n' && *iter!=' ' && *iter!='\t')
text_found=true;
if(empty_line && text_found && iter.starts_line())
break;
@ -1386,6 +1386,8 @@ bool Source::View::on_key_press_event(GdkEventKey* key) {
if(empty_line) {
iter=get_iter_at_line_end(iter.get_line());
iter.forward_char();
if(!iter.starts_line()) // For CR+LF
iter.forward_char();
}
if((key->state&GDK_SHIFT_MASK)>0)
get_buffer()->select_range(iter, selection_start_iter);

6
src/source_diff.cc

@ -289,10 +289,8 @@ Gtk::TextIter Source::DiffView::get_iter_at_line_end(int line_nr) {
else if(line_nr+1<get_buffer()->get_line_count()) {
auto iter=get_buffer()->get_iter_at_line(line_nr+1);
iter.backward_char();
auto previous_iter=iter;
previous_iter.backward_char();
if(*previous_iter=='\r')
return previous_iter;
if(!iter.ends_line()) // for CR+LF
iter.backward_char();
return iter;
}
else {

Loading…
Cancel
Save