libide: add IdeSourceView::paste-clipboard-extended
This gasctionsignal allows us a bit more control over how the paste will be interprited. For example, we can allow/disallow smart pasting of lines (lines with trailing \n such as those from `yy` in vim mode). It also allows us to specifiy if they should happen before or after the current cursor. If place_cursor_at_original is FALSE, then we will move the insertion cursor to the beginning of the pasted text (which may be on a different line if smart_lines is TRUE).
Showing with 72 additions and 21 deletions