List.java (replaceItem): Prevent selection to move with replace and minimize flickering.

2003-12-18  Fernando Nasser  <fnasser@redhat.com>

        * java/awt/List.java (replaceItem): Prevent selection to move with
        replace and minimize flickering.

From-SVN: r74814
This commit is contained in:
Fernando Nasser 2003-12-19 02:53:36 +00:00 committed by Fernando Nasser
parent 6310608457
commit d416de057b
2 changed files with 20 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2003-12-18 Fernando Nasser <fnasser@redhat.com>
* java/awt/List.java (replaceItem): Prevent selection to move with
replace and minimize flickering.
2003-12-18 Michael Koch <konqueror@gmx.de>
* libltdl/ltdl.c: Define __private_extern__ if needed.

View File

@ -647,8 +647,21 @@ clear()
public synchronized void
replaceItem(String item, int index) throws IllegalArgumentException
{
remove(index);
addItem(item, index);
if ((index < 0) || (index >= items.size()))
throw new IllegalArgumentException("Bad list index: " + index);
items.insertElementAt(item, index + 1);
items.removeElementAt (index);
if (peer != null)
{
ListPeer l = (ListPeer) peer;
/* We add first and then remove so that the selected
item remains the same */
l.add (item, index + 1);
l.delItems (index, index);
}
}
/*************************************************************************/