Hi!
I gave this patch a try.
It works well, the ns port now behaves like the win32 and gtk+ parts of Emacs.
Do you want me to push it to master?
-- Anders
Ps. When the text area doesn't partially overlap a column, the cursor can be drawn in the fringe. It's a bit unfortunate that when it do overlap, only the part of the cursor in the text area is drawn. A worst case scenario is that only a single pixel of the cursor is visible. An ideal solution would be to draw the cursor partially in the text area and partially in the fringe, but without leaving garbage behind when moved. However, this is nothing that we can solve here and now as it would require change to all emacs ports and possibly the core system.