Skip to content

Commit 1ac49bf

Browse files
author
Dennis Sheirer
committed
#1603 Resolves issue with de-duplicating events to allow call duration values to display correctly and minimize the quantity of duplicate events.
1 parent c302c4d commit 1ac49bf

File tree

1 file changed

+14
-13
lines changed

1 file changed

+14
-13
lines changed

src/main/java/io/github/dsheirer/module/decode/event/ClearableHistoryModel.java

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -56,12 +56,21 @@ public T getItem(int index)
5656
*/
5757
public void add(T item)
5858
{
59-
mItems.addFirst(item);
60-
ClearableHistoryModel.this.fireTableRowsInserted(0, 0);
61-
while(mItems.size() > mHistorySize)
59+
if(mItems.contains(item))
6260
{
63-
mItems.removeLast();
64-
super.fireTableRowsDeleted(mItems.size() - 1, mItems.size() - 1);
61+
int itemRow = mItems.indexOf(item);
62+
fireTableRowsUpdated(itemRow, itemRow);
63+
}
64+
else
65+
{
66+
mItems.addFirst(item);
67+
fireTableRowsInserted(0, 0);
68+
69+
while(mItems.size() > mHistorySize)
70+
{
71+
mItems.removeLast();
72+
fireTableRowsDeleted(mItems.size() - 1, mItems.size() - 1);
73+
}
6574
}
6675
}
6776

@@ -100,14 +109,6 @@ public int getHistorySize()
100109
return mHistorySize;
101110
}
102111

103-
/**
104-
* Resets the history size to the default value.
105-
*/
106-
public void resetHistorySize()
107-
{
108-
setHistorySize(DEFAULT_HISTORY_SIZE);
109-
}
110-
111112
/**
112113
* Sets the history size
113114
* @param historySize

0 commit comments

Comments
 (0)