Skip to content

#3398 Remove 3p logos from the viewer #3404

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jan 14, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
124 changes: 0 additions & 124 deletions indra/newview/llprogressview.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -81,8 +81,6 @@ bool LLProgressView::postBuild()
{
mProgressBar = getChild<LLProgressBar>("login_progress_bar");

mLogosLabel = getChild<LLTextBox>("logos_lbl");

mProgressText = getChild<LLTextBox>("progress_text");
mMessageText = getChild<LLTextBox>("message_text");

Expand Down Expand Up @@ -234,33 +232,6 @@ void LLProgressView::drawStartTexture(F32 alpha)
gGL.popMatrix();
}

void LLProgressView::drawLogos(F32 alpha)
{
if (mLogosList.empty())
{
return;
}

// logos are tied to label,
// due to potential resizes we have to figure offsets out on draw or resize
S32 offset_x, offset_y;
mLogosLabel->localPointToScreen(0, 0, &offset_x, &offset_y);
std::vector<TextureData>::const_iterator iter = mLogosList.begin();
std::vector<TextureData>::const_iterator end = mLogosList.end();
for (; iter != end; iter++)
{
gl_draw_scaled_image_with_border(iter->mDrawRect.mLeft + offset_x,
iter->mDrawRect.mBottom + offset_y,
iter->mDrawRect.getWidth(),
iter->mDrawRect.getHeight(),
iter->mTexturep.get(),
UI_VERTEX_COLOR % alpha,
false,
iter->mClipRect,
iter->mOffsetRect);
}
}

void LLProgressView::draw()
{
static LLTimer timer;
Expand All @@ -276,7 +247,6 @@ void LLProgressView::draw()
}

LLPanel::draw();
drawLogos(alpha);
return;
}

Expand All @@ -289,7 +259,6 @@ void LLProgressView::draw()

drawStartTexture(alpha);
LLPanel::draw();
drawLogos(alpha);

// faded out completely - remove panel and reveal world
if (mFadeToWorldTimer.getElapsedTimeF32() > FADE_TO_WORLD_TIME )
Expand Down Expand Up @@ -324,7 +293,6 @@ void LLProgressView::draw()
drawStartTexture(1.0f);
// draw children
LLPanel::draw();
drawLogos(1.0f);
}

void LLProgressView::setText(const std::string& text)
Expand All @@ -343,90 +311,6 @@ void LLProgressView::setMessage(const std::string& msg)
mMessageText->setValue(mMessage);
}

void LLProgressView::loadLogo(const std::string &path,
const U8 image_codec,
const LLRect &pos_rect,
const LLRectf &clip_rect,
const LLRectf &offset_rect)
{
// We need these images very early, so we have to force-load them, otherwise they might not load in time.
if (!gDirUtilp->fileExists(path))
{
return;
}

LLPointer<LLImageFormatted> start_image_frmted = LLImageFormatted::createFromType(image_codec);
if (!start_image_frmted->load(path))
{
LL_WARNS("AppInit") << "Image load failed: " << path << LL_ENDL;
return;
}

LLPointer<LLImageRaw> raw = new LLImageRaw;
if (!start_image_frmted->decode(raw, 0.0f))
{
LL_WARNS("AppInit") << "Image decode failed " << path << LL_ENDL;
return;
}
// HACK: getLocalTexture allows only power of two dimentions
raw->expandToPowerOfTwo();

TextureData data;
data.mTexturep = LLViewerTextureManager::getLocalTexture(raw.get(), false);
data.mDrawRect = pos_rect;
data.mClipRect = clip_rect;
data.mOffsetRect = offset_rect;
mLogosList.push_back(data);
}

void LLProgressView::initLogos()
{
mLogosList.clear();

const U8 image_codec = IMG_CODEC_PNG;
const LLRectf default_clip(0.f, 1.f, 1.f, 0.f);
const S32 default_height = 28;
const S32 default_pad = 15;

S32 icon_width, icon_height;

// We don't know final screen rect yet, so we can't precalculate position fully
S32 texture_start_x = (S32)mLogosLabel->getFont()->getWidthF32(mLogosLabel->getWText().c_str()) + default_pad;
S32 texture_start_y = -7;

// Normally we would just preload these textures from textures.xml,
// and display them via icon control, but they are only needed on
// startup and preloaded/UI ones stay forever
// (and this code was done already so simply reused it)
std::string temp_str = gDirUtilp->getExpandedFilename(LL_PATH_DEFAULT_SKIN, "textures", "3p_icons");

temp_str += gDirUtilp->getDirDelimiter();

#ifdef LL_HAVOK
// original image size is 342x113, central element is on a larger side
// plus internal padding, so it gets slightly more height than desired 32
icon_width = 88;
icon_height = 29;
S32 pad_havok_y = -1;
loadLogo(temp_str + "havok_logo.png",
image_codec,
LLRect(texture_start_x, texture_start_y + pad_havok_y + icon_height, texture_start_x + icon_width, texture_start_y + pad_havok_y),
default_clip,
default_clip);

texture_start_x += icon_width + default_pad;
#endif //LL_HAVOK

// 108x41
icon_width = 74;
icon_height = default_height;
loadLogo(temp_str + "vivox_logo.png",
image_codec,
LLRect(texture_start_x, texture_start_y + icon_height, texture_start_x + icon_width, texture_start_y),
default_clip,
default_clip);
}

void LLProgressView::initStartTexture(S32 location_id, bool is_in_production)
{
if (gStartTexture.notNull())
Expand Down Expand Up @@ -505,19 +389,11 @@ void LLProgressView::initStartTexture(S32 location_id, bool is_in_production)
void LLProgressView::initTextures(S32 location_id, bool is_in_production)
{
initStartTexture(location_id, is_in_production);
initLogos();

childSetVisible("panel_icons", !mLogosList.empty());
childSetVisible("panel_top_spacer", mLogosList.empty());
}

void LLProgressView::releaseTextures()
{
gStartTexture = NULL;
mLogosList.clear();

childSetVisible("panel_top_spacer", true);
childSetVisible("panel_icons", false);
}

void LLProgressView::setCancelButtonVisible(bool b, const std::string& label)
Expand Down
19 changes: 0 additions & 19 deletions indra/newview/llprogressview.h
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,6 @@ class LLProgressView :

/*virtual*/ void draw();
void drawStartTexture(F32 alpha);
void drawLogos(F32 alpha);

/*virtual*/ bool handleHover(S32 x, S32 y, MASK mask);
/*virtual*/ bool handleKeyHere(KEY key, MASK mask);
Expand Down Expand Up @@ -86,7 +85,6 @@ class LLProgressView :
protected:
LLProgressBar* mProgressBar;
LLMediaCtrl* mMediaCtrl;
LLTextBox* mLogosLabel = nullptr;
LLTextBox* mProgressText = nullptr;
LLTextBox* mMessageText = nullptr;
F32 mPercentDone;
Expand All @@ -105,25 +103,8 @@ class LLProgressView :

bool handleUpdate(const LLSD& event_data);
static void onIdle(void* user_data);
void loadLogo(const std::string &path, const U8 image_codec, const LLRect &pos_rect, const LLRectf &clip_rect, const LLRectf &offset_rect);
// logos have unusual location and need to be preloaded to not appear grey, then deleted
void initLogos();
// Loads a bitmap to display during load
void initStartTexture(S32 location_id, bool is_in_production);

private:
// We need to draw textures on login, but only once.
// So this vector gets filled up for textures to render and gets cleaned later
// Some textures have unusual requirements, so we are rendering directly
class TextureData
{
public:
LLPointer<LLViewerTexture> mTexturep;
LLRect mDrawRect;
LLRectf mClipRect;
LLRectf mOffsetRect;
};
std::vector<TextureData> mLogosList;
};

#endif // LL_LLPROGRESSVIEW_H
Binary file not shown.
Binary file not shown.
Binary file not shown.
2 changes: 0 additions & 2 deletions indra/newview/skins/default/xui/de/panel_progress.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
<?xml version="1.0" ?>
<panel name="login_progress_panel">
<layout_panel name="panel_icons"/>
<layout_stack name="vertical_centering"/>
<layout_panel name="panel4"/>
<layout_panel name="center"/>
<layout_stack name="horizontal_centering">
<text name="logos_lbl">Second Life verwendet</text>
</layout_stack>
</panel>
40 changes: 4 additions & 36 deletions indra/newview/skins/default/xui/en/panel_progress.xml
Original file line number Diff line number Diff line change
Expand Up @@ -44,38 +44,30 @@
width="670" />
<layout_panel
auto_resize="false"
height="275"
height="240"
layout="topleft"
min_height="275"
min_height="240"
name="panel4"
width="670">
<icon
color="LoginProgressBoxCenterColor"
follows="left|right|bottom|top"
height="275"
height="240"
image_name="Rounded_Square"
layout="topleft"
left="0"
top="0"
width="670" />
<layout_stack
follows="left|right|top|bottom"
height="275"
height="240"
layout="topleft"
left="0"
orientation="vertical"
name="vertical_centering"
animate="false"
top="0"
width="670">
<layout_panel
auto_resize="false"
height="30"
layout="topleft"
min_height="30"
name="panel_top_spacer"
width="670">
</layout_panel>
<layout_panel
auto_resize="false"
height="100"
Expand Down Expand Up @@ -142,30 +134,6 @@
right="-90"
word_wrap="true"/>
</layout_panel>
<layout_panel
auto_resize="false"
height="40"
layout="topleft"
min_height="40"
name="panel_icons"
width="670">
<!--Logos are tied to following label from code-->
<text
follows="left|right|top"
layout="topleft"
font="SansSerifLarge"
font_shadow="none"
halign="left"
height="16"
width="240"
left="47"
top="6"
line_spacing.pixels="2"
name="logos_lbl"
text_color="LoginProgressBoxTextColor">
Second Life uses
</text>
</layout_panel>
</layout_stack>
</layout_panel>
<layout_panel
Expand Down
2 changes: 0 additions & 2 deletions indra/newview/skins/default/xui/es/panel_progress.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
<?xml version="1.0" ?>
<panel name="login_progress_panel">
<layout_panel name="panel_icons"/>
<layout_stack name="vertical_centering"/>
<layout_panel name="panel4"/>
<layout_panel name="center"/>
<layout_stack name="horizontal_centering">
<text name="logos_lbl">Usos de Second Life</text>
</layout_stack>
</panel>
2 changes: 0 additions & 2 deletions indra/newview/skins/default/xui/fr/panel_progress.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
<?xml version="1.0" ?>
<panel name="login_progress_panel">
<layout_panel name="panel_icons"/>
<layout_stack name="vertical_centering"/>
<layout_panel name="panel4"/>
<layout_panel name="center"/>
<layout_stack name="horizontal_centering">
<text name="logos_lbl">Second Life utilise</text>
</layout_stack>
</panel>
2 changes: 0 additions & 2 deletions indra/newview/skins/default/xui/it/panel_progress.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
<?xml version="1.0" ?>
<panel name="login_progress_panel">
<layout_panel name="panel_icons"/>
<layout_stack name="vertical_centering"/>
<layout_panel name="panel4"/>
<layout_panel name="center"/>
<layout_stack name="horizontal_centering">
<text name="logos_lbl">Utilizzi di Second Life</text>
</layout_stack>
</panel>
4 changes: 0 additions & 4 deletions indra/newview/skins/default/xui/ja/panel_progress.xml
Original file line number Diff line number Diff line change
@@ -1,12 +1,8 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="login_progress_panel">
<layout_panel name="panel_icons"/>
<layout_stack name="vertical_centering"/>
<layout_panel name="panel4"/>
<layout_panel name="center"/>
<layout_stack name="horizontal_centering">
<text name="logos_lbl">
セカンドライフ使用
</text>
</layout_stack>
</panel>
5 changes: 0 additions & 5 deletions indra/newview/skins/default/xui/pl/panel_progress.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,6 @@
<layout_stack name="vertical_centering">
<layout_panel name="panel4">
<layout_stack name="vertical_centering">
<layout_panel name="panel_icons">
<text name="logos_lbl">
Second Life używa
</text>
</layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>
Expand Down
2 changes: 0 additions & 2 deletions indra/newview/skins/default/xui/pt/panel_progress.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
<?xml version="1.0" ?>
<panel name="login_progress_panel">
<layout_panel name="panel_icons"/>
<layout_stack name="vertical_centering"/>
<layout_panel name="panel4"/>
<layout_panel name="center"/>
<layout_stack name="horizontal_centering">
<text name="logos_lbl">Usos do Second Life</text>
</layout_stack>
</panel>
Loading