Fixed bug #1621 - if a floater was too wide and it was right aligned it would end up positioned off the left edge of the block

This commit is contained in:
kipp%netscape.com 1998-12-08 03:57:12 +00:00
Родитель 81f4c717f0
Коммит 320f0facc1
6 изменённых файлов: 30 добавлений и 0 удалений

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

@ -3706,6 +3706,11 @@ nsBlockReflowState::PlaceFloater(nsPlaceholderFrame* aPlaceholder,
else {
aIsLeftFloater = PR_FALSE;
region.x = mCurrentBand.availSpace.XMost() - region.width;
// In case the floater is too big, don't go past the left edge
if (region.x < mCurrentBand.availSpace.x) {
region.x = mCurrentBand.availSpace.x;
}
}
region.y = mY - mBorderPadding.top;
if (region.y < 0) {

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

@ -3706,6 +3706,11 @@ nsBlockReflowState::PlaceFloater(nsPlaceholderFrame* aPlaceholder,
else {
aIsLeftFloater = PR_FALSE;
region.x = mCurrentBand.availSpace.XMost() - region.width;
// In case the floater is too big, don't go past the left edge
if (region.x < mCurrentBand.availSpace.x) {
region.x = mCurrentBand.availSpace.x;
}
}
region.y = mY - mBorderPadding.top;
if (region.y < 0) {

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

@ -3706,6 +3706,11 @@ nsBlockReflowState::PlaceFloater(nsPlaceholderFrame* aPlaceholder,
else {
aIsLeftFloater = PR_FALSE;
region.x = mCurrentBand.availSpace.XMost() - region.width;
// In case the floater is too big, don't go past the left edge
if (region.x < mCurrentBand.availSpace.x) {
region.x = mCurrentBand.availSpace.x;
}
}
region.y = mY - mBorderPadding.top;
if (region.y < 0) {

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

@ -3706,6 +3706,11 @@ nsBlockReflowState::PlaceFloater(nsPlaceholderFrame* aPlaceholder,
else {
aIsLeftFloater = PR_FALSE;
region.x = mCurrentBand.availSpace.XMost() - region.width;
// In case the floater is too big, don't go past the left edge
if (region.x < mCurrentBand.availSpace.x) {
region.x = mCurrentBand.availSpace.x;
}
}
region.y = mY - mBorderPadding.top;
if (region.y < 0) {

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

@ -3706,6 +3706,11 @@ nsBlockReflowState::PlaceFloater(nsPlaceholderFrame* aPlaceholder,
else {
aIsLeftFloater = PR_FALSE;
region.x = mCurrentBand.availSpace.XMost() - region.width;
// In case the floater is too big, don't go past the left edge
if (region.x < mCurrentBand.availSpace.x) {
region.x = mCurrentBand.availSpace.x;
}
}
region.y = mY - mBorderPadding.top;
if (region.y < 0) {

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

@ -3706,6 +3706,11 @@ nsBlockReflowState::PlaceFloater(nsPlaceholderFrame* aPlaceholder,
else {
aIsLeftFloater = PR_FALSE;
region.x = mCurrentBand.availSpace.XMost() - region.width;
// In case the floater is too big, don't go past the left edge
if (region.x < mCurrentBand.availSpace.x) {
region.x = mCurrentBand.availSpace.x;
}
}
region.y = mY - mBorderPadding.top;
if (region.y < 0) {