gitk: Fix cherry-picking to insert a real row not a fake row
authorPaul Mackerras <paulus@samba.org>
Wed, 13 Feb 2008 11:12:31 +0000 (22:12 +1100)
committerPaul Mackerras <paulus@samba.org>
Wed, 13 Feb 2008 11:12:31 +0000 (22:12 +1100)
commitb8a938cf78026eedafc202716b27986fdacb86e3
tree531fd51fdeba0325d36fa2fc3f1c25e4790d9f3e
parent5a7f577dcedeff60e5267fd9efbfb05987a359e4
gitk: Fix cherry-picking to insert a real row not a fake row

The insertrow/removerow functions were really only suitable for
inserting/removing a fake row such as the ones used for showing
the local changes.  When used to insert a real new row from a
cherry-pick, they left things in an inconsistent state which then
caused various strange layout errors.

This renames insertrow/removerow to insertfakerow/removefakerow
and adds a new insertrow that does actually go to all the trouble
of creating a new arc and setting it up.  This is more work but
keeps things consistent.

This also fixes a bug where cherrypick was not setting mainheadid,
and one where selectline wasn't always resulting in targetrow/id
being set to the selected row/id.  Also insert/removefakerow now
adjust numcommits and call setcanvscroll.

Signed-off-by: Paul Mackerras <paulus@samba.org>
gitk