-
- bool row_selection = row.sel_beg != -1 && row.sel_end != -1;
- if (row_selection) {
- DocIterator beg = bv_->cursor().selectionBegin();
- DocIterator end = bv_->cursor().selectionEnd();
- // FIXME (not here): pit is not updated when extending
- // a selection to a new row with cursor right/left
- bool const beg_margin = beg.pit() < pit;
- bool const end_margin = end.pit() > pit;
- beg.pit() = pit;
- beg.pos() = row.sel_beg;
- end.pit() = pit;
- end.pos() = row.sel_end;
- drawRowSelection(pi, x, row, beg, end, beg_margin, end_margin);
- }
+
+ if (row.selection())
+ drawRowSelection(pi, x, row, cur, pit);