'Rotate the kill ring, then yank back the new top.'

def rotate(self):

    if self._prev_yank:
        text = self._ring.rotate()
        if text:
            self._skip_cursor = True
            cursor = self._text_edit.textCursor()
            cursor.movePosition(QTextCursor.Left, QTextCursor.KeepAnchor, n=len(self._prev_yank))
            cursor.insertText(text)
            self._prev_yank = text
