if you put cursor on child1 the function return row 3 (child2) instead of -1
O btw i think i detected the sam error of you, when i expand manualy by clicking a node and then do a searchnext the cursor is on a correct position but i cant see it, obliged to roll up the grid.