back out fix for 169481 deleting msgs in threaded view messages up indentation, until I can completely fix it r/sr/a=sspitzer

This commit is contained in:
bienvenu%netscape.com 2003-05-09 14:46:10 +00:00
Родитель 348e5dba28
Коммит b78a0cf153
1 изменённых файлов: 20 добавлений и 16 удалений

Просмотреть файл

@ -576,25 +576,29 @@ NS_IMETHODIMP nsMsgThreadedDBView::OnParentChanged (nsMsgKey aKeyChanged, nsMsgK
{
// we need to adjust the level of the hdr whose parent changed, and invalidate that row,
// iff we're in threaded mode.
if (m_viewFlags & nsMsgViewFlagsType::kThreadedDisplay)
if (PR_FALSE && m_viewFlags & nsMsgViewFlagsType::kThreadedDisplay)
{
nsMsgViewIndex parentIndex = FindViewIndex(newParent);
if (parentIndex != nsMsgViewIndex_None)
nsMsgViewIndex childIndex = FindViewIndex(aKeyChanged);
if (childIndex != nsMsgViewIndex_None)
{
nsMsgViewIndex childIndex = FindViewIndex(aKeyChanged);
if (childIndex != nsMsgViewIndex_None)
{
PRInt32 levelChanged = m_levels[childIndex];
m_levels[childIndex] = m_levels[parentIndex] + 1;
for (nsMsgViewIndex viewIndex = childIndex + 1; viewIndex < GetSize() && m_levels[viewIndex] > levelChanged; viewIndex++)
{
m_levels[viewIndex] = m_levels[viewIndex] - 1;
NoteChange(viewIndex, 1, nsMsgViewNotificationCode::changed);
}
NoteChange(childIndex, 1, nsMsgViewNotificationCode::changed);
}
nsMsgViewIndex parentIndex = FindViewIndex(newParent);
PRInt32 newParentLevel = (parentIndex == nsMsgViewIndex_None) ? -1 : m_levels[parentIndex];
nsMsgViewIndex oldParentIndex = FindViewIndex(oldParent);
PRInt32 oldParentLevel = (oldParentIndex != nsMsgViewIndex_None || newParent == nsMsgKey_None)
? m_levels[oldParentIndex] : -1 ;
PRInt32 levelChanged = m_levels[childIndex];
PRInt32 parentDelta = oldParentLevel - newParentLevel;
m_levels[childIndex] = (newParent == nsMsgKey_None) ? 0 : newParentLevel + 1;
if (parentDelta > 0)
{
for (nsMsgViewIndex viewIndex = childIndex + 1; viewIndex < GetSize() && m_levels[viewIndex] > levelChanged; viewIndex++)
{
m_levels[viewIndex] = m_levels[viewIndex] - parentDelta;
NoteChange(viewIndex, 1, nsMsgViewNotificationCode::changed);
}
}
NoteChange(childIndex, 1, nsMsgViewNotificationCode::changed);
}
}
return NS_OK;
}