 		
 		row = 0
 		while (row <= selectedRow) {
-			if rowHasAtLeastOneUnreadArticle(row) {
+			if rowHasAtLeastOneUnreadArticle(row) && !rowIsGroupItem(row) {
 				return row
 			}
 			row += 1

		return false
	}

	func rowContainingNextUnread() -> Int? {
		
		let selectedRow = outlineView.selectedRow
		let numberOfRows = outlineView.numberOfRows
		var row = selectedRow + 1
		
		while (row < numberOfRows) {
			if rowHasAtLeastOneUnreadArticle(row) {
				return row
			}
			row += 1

	
	func goToNextUnread() {
		
		guard let row = nextSelectableRowWithUnreadArticle() else {
			assertionFailure("goToNextUnread called before checking if there is a next unread.")
			return
		}
