   (loop for item in list
         if (listp item) nconc (svn-status-flatten-list item)
         else collect item))
+
+;; no idea, if there is a simpler way to achieve this...
+(defun svn-status-window-line-position ()
+  "Return the window line at point."
+  (let ((edges (window-inside-edges))
+	(x-y (posn-x-y (posn-at-point))))
+    (+ (car (cdr edges))
+       (/ (or (cdr x-y) 0) (frame-char-height)))))
 
 ;;;###autoload
 (defun svn-checkout (repos-url path)

  (setq svn-status-display-full-path (not svn-status-display-full-path))
  (message "The %s buffer will%s use full path names." svn-status-buffer-name
           (if svn-status-display-full-path "" " not"))
  (svn-status-update))

(defun svn-status-set-trac-project-root ()
  (interactive)

        (progn
          (goto-char fname-pos)
          (svn-status-goto-file-name fname)
          (goto-char (+ column (svn-point-at-bol)))
          (recenter window-line-pos))
      (goto-char (+ (next-overlay-change (point-min)) svn-status-default-column)))))

(defun svn-status-parse-info (arg)
