merge
commit
3e73b75fa2
|
|
@ -1888,41 +1888,50 @@ void LLFloaterView::reshapeFloater(S32 width, S32 height, BOOL called_from_paren
|
|||
// dependents use same follow flags as their "dependee"
|
||||
continue;
|
||||
}
|
||||
LLRect r = floaterp->getRect();
|
||||
|
||||
// Compute absolute distance from each edge of screen
|
||||
S32 left_offset = llabs(r.mLeft - 0);
|
||||
S32 right_offset = llabs(old_width - r.mRight);
|
||||
|
||||
S32 top_offset = llabs(old_height - r.mTop);
|
||||
S32 bottom_offset = llabs(r.mBottom - 0);
|
||||
|
||||
// Make if follow the edge it is closest to
|
||||
U32 follow_flags = 0x0;
|
||||
|
||||
if (left_offset < right_offset)
|
||||
if (floaterp->isMinimized())
|
||||
{
|
||||
follow_flags |= FOLLOWS_LEFT;
|
||||
follow_flags |= (FOLLOWS_LEFT | FOLLOWS_TOP);
|
||||
}
|
||||
else
|
||||
{
|
||||
follow_flags |= FOLLOWS_RIGHT;
|
||||
}
|
||||
LLRect r = floaterp->getRect();
|
||||
|
||||
// "No vertical adjustment" usually means that the bottom of the view
|
||||
// has been pushed up or down. Hence we want the floaters to follow
|
||||
// the top.
|
||||
if (!adjust_vertical)
|
||||
{
|
||||
follow_flags |= FOLLOWS_TOP;
|
||||
}
|
||||
else if (top_offset < bottom_offset)
|
||||
{
|
||||
follow_flags |= FOLLOWS_TOP;
|
||||
}
|
||||
else
|
||||
{
|
||||
follow_flags |= FOLLOWS_BOTTOM;
|
||||
// Compute absolute distance from each edge of screen
|
||||
S32 left_offset = llabs(r.mLeft - 0);
|
||||
S32 right_offset = llabs(old_width - r.mRight);
|
||||
|
||||
S32 top_offset = llabs(old_height - r.mTop);
|
||||
S32 bottom_offset = llabs(r.mBottom - 0);
|
||||
|
||||
|
||||
if (left_offset < right_offset)
|
||||
{
|
||||
follow_flags |= FOLLOWS_LEFT;
|
||||
}
|
||||
else
|
||||
{
|
||||
follow_flags |= FOLLOWS_RIGHT;
|
||||
}
|
||||
|
||||
// "No vertical adjustment" usually means that the bottom of the view
|
||||
// has been pushed up or down. Hence we want the floaters to follow
|
||||
// the top.
|
||||
if (!adjust_vertical)
|
||||
{
|
||||
follow_flags |= FOLLOWS_TOP;
|
||||
}
|
||||
else if (top_offset < bottom_offset)
|
||||
{
|
||||
follow_flags |= FOLLOWS_TOP;
|
||||
}
|
||||
else
|
||||
{
|
||||
follow_flags |= FOLLOWS_BOTTOM;
|
||||
}
|
||||
}
|
||||
|
||||
floaterp->setFollows(follow_flags);
|
||||
|
|
@ -2172,16 +2181,16 @@ void LLFloaterView::getMinimizePosition(S32 *left, S32 *bottom)
|
|||
const LLFloater::Params& default_params = LLFloater::getDefaultParams();
|
||||
S32 floater_header_size = default_params.header_height;
|
||||
static LLUICachedControl<S32> minimized_width ("UIMinimizedWidth", 0);
|
||||
S32 col = 0;
|
||||
LLRect snap_rect_local = getLocalSnapRect();
|
||||
for(S32 row = snap_rect_local.mBottom;
|
||||
row < snap_rect_local.getHeight() - floater_header_size;
|
||||
row += floater_header_size ) //loop rows
|
||||
{
|
||||
for(col = snap_rect_local.mLeft;
|
||||
col < snap_rect_local.getWidth() - minimized_width;
|
||||
col += minimized_width)
|
||||
for(S32 col = snap_rect_local.mLeft;
|
||||
col < snap_rect_local.getWidth() - minimized_width;
|
||||
col += minimized_width)
|
||||
{
|
||||
for(S32 row = snap_rect_local.mTop - floater_header_size;
|
||||
row > floater_header_size;
|
||||
row -= floater_header_size ) //loop rows
|
||||
{
|
||||
|
||||
bool foundGap = TRUE;
|
||||
for(child_list_const_iter_t child_it = getChildList()->begin();
|
||||
child_it != getChildList()->end();
|
||||
|
|
|
|||
|
|
@ -873,6 +873,9 @@ bool idle_startup()
|
|||
gViewerWindow->getWindow()->show();
|
||||
display_startup();
|
||||
|
||||
//DEV-10530. do cleanup. remove at some later date. jan-2009
|
||||
LLFloaterPreference::cleanupBadSetting();
|
||||
|
||||
// DEV-16927. The following code removes errant keystrokes that happen while the window is being
|
||||
// first made visible.
|
||||
#ifdef _WIN32
|
||||
|
|
@ -1900,9 +1903,6 @@ bool idle_startup()
|
|||
//DEV-17797. get null folder. Any items found here moved to Lost and Found
|
||||
LLInventoryModel::findLostItems();
|
||||
|
||||
//DEV-10530. do cleanup. remove at some later date. jan-2009
|
||||
LLFloaterPreference::cleanupBadSetting();
|
||||
|
||||
LLStartUp::setStartupState( STATE_PRECACHE );
|
||||
timeout.reset();
|
||||
return FALSE;
|
||||
|
|
|
|||
Loading…
Reference in New Issue