nsASXULWindowEarlyToLateEnumerator::nsASXULWindowEarlyToLateEnumerator(
    const PRUnichar *aTypeString,
    nsWindowMediator &aMediator) :
    nsASXULWindowEnumerator(aTypeString, aMediator)
{
    mCurrentPosition = aMediator.mOldestWindow;
    AdjustInitialPosition();
}
nsASXULWindowFrontToBackEnumerator::nsASXULWindowFrontToBackEnumerator(
    const PRUnichar *aTypeString,
    nsWindowMediator &aMediator) :
    nsASXULWindowEnumerator(aTypeString, aMediator)
{
    mCurrentPosition = aMediator.mTopmostWindow;
    AdjustInitialPosition();
}
nsASXULWindowBackToFrontEnumerator::nsASXULWindowBackToFrontEnumerator(
    const PRUnichar *aTypeString,
    nsWindowMediator &aMediator) :
    nsASXULWindowEnumerator(aTypeString, aMediator)
{
    mCurrentPosition = aMediator.mTopmostWindow ?
                       aMediator.mTopmostWindow->mHigher : nsnull;
    AdjustInitialPosition();
}
nsASDOMWindowBackToFrontEnumerator::nsASDOMWindowBackToFrontEnumerator(
    const char16_t *aTypeString,
    nsWindowMediator &aMediator) :
  nsASDOMWindowEnumerator(aTypeString, aMediator)
{
  mCurrentPosition = aMediator.mTopmostWindow ?
                     aMediator.mTopmostWindow->mHigher : nullptr;
  AdjustInitialPosition();
}