summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/app_settings/settings.xml2
-rw-r--r--indra/newview/llagent.cpp21
-rw-r--r--indra/newview/llappviewer.cpp13
-rw-r--r--indra/newview/llfloatermediasettings.cpp6
-rw-r--r--indra/newview/llfloaterpreference.cpp6
-rw-r--r--indra/newview/llpanelclassified.cpp11
-rw-r--r--indra/newview/lltexturecache.cpp6
-rw-r--r--indra/newview/lltexturefetch.cpp26
-rw-r--r--indra/newview/lltexturefetch.h2
-rw-r--r--indra/newview/llvoavatarself.cpp18
-rw-r--r--indra/newview/llvoavatarself.h1
-rw-r--r--indra/newview/skins/default/xui/en/panel_region_general.xml45
-rw-r--r--indra/newview/skins/default/xui/en/panel_status_bar.xml2
-rw-r--r--indra/newview/skins/default/xui/fr/panel_status_bar.xml2
-rw-r--r--indra/newview/skins/default/xui/ja/menu_viewer.xml6
15 files changed, 124 insertions, 43 deletions
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index a653d5d353..2fb3f52692 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -4345,7 +4345,7 @@
<key>Type</key>
<string>String</string>
<key>Value</key>
- <string>home</string>
+ <string>last</string>
</map>
<key>LoginPage</key>
<map>
diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp
index 1da7d450c9..c5d7f6f118 100644
--- a/indra/newview/llagent.cpp
+++ b/indra/newview/llagent.cpp
@@ -5845,15 +5845,22 @@ void LLAgent::processAgentCachedTextureResponse(LLMessageSystem *mesgsys, void *
mesgsys->getUUIDFast(_PREHASH_WearableData, _PREHASH_TextureID, texture_id, texture_block);
mesgsys->getU8Fast(_PREHASH_WearableData, _PREHASH_TextureIndex, texture_index, texture_block);
- if (texture_id.notNull()
- && (S32)texture_index < BAKED_NUM_INDICES
+ if ((S32)texture_index < BAKED_NUM_INDICES
&& gAgentQueryManager.mActiveCacheQueries[texture_index] == query_id)
{
- //llinfos << "Received cached texture " << (U32)texture_index << ": " << texture_id << llendl;
- avatarp->setCachedBakedTexture(LLVOAvatarDictionary::bakedToLocalTextureIndex((EBakedTextureIndex)texture_index), texture_id);
- //avatarp->setTETexture( LLVOAvatar::sBakedTextureIndices[texture_index], texture_id );
- gAgentQueryManager.mActiveCacheQueries[texture_index] = 0;
- num_results++;
+ if (texture_id.notNull())
+ {
+ //llinfos << "Received cached texture " << (U32)texture_index << ": " << texture_id << llendl;
+ avatarp->setCachedBakedTexture(LLVOAvatarDictionary::bakedToLocalTextureIndex((EBakedTextureIndex)texture_index), texture_id);
+ //avatarp->setTETexture( LLVOAvatar::sBakedTextureIndices[texture_index], texture_id );
+ gAgentQueryManager.mActiveCacheQueries[texture_index] = 0;
+ num_results++;
+ }
+ else
+ {
+ // no cache of this bake. request upload.
+ avatarp->requestLayerSetUpload((EBakedTextureIndex)texture_index);
+ }
}
}
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index dfbf05db52..b1db7bf481 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -1533,7 +1533,7 @@ bool LLAppViewer::cleanup()
LLAvatarIconIDCache::getInstance()->save();
llinfos << "Shutting down Threads" << llendflush;
-
+
// Let threads finish
LLTimer idleTimer;
idleTimer.reset();
@@ -1547,19 +1547,26 @@ bool LLAppViewer::cleanup()
pending += LLVFSThread::updateClass(0);
pending += LLLFSThread::updateClass(0);
F64 idle_time = idleTimer.getElapsedTimeF64();
- if (!pending || idle_time >= max_idle_time)
+ if(!pending)
+ {
+ break ; //done
+ }
+ else if(idle_time >= max_idle_time)
{
llwarns << "Quitting with pending background tasks." << llendl;
break;
}
}
-
+
// Delete workers first
// shotdown all worker threads before deleting them in case of co-dependencies
sTextureCache->shutdown();
sTextureFetch->shutdown();
sImageDecodeThread->shutdown();
+ sTextureFetch->shutDownTextureCacheThread() ;
+ sTextureFetch->shutDownImageDecodeThread() ;
+
delete sTextureCache;
sTextureCache = NULL;
delete sTextureFetch;
diff --git a/indra/newview/llfloatermediasettings.cpp b/indra/newview/llfloatermediasettings.cpp
index 62ec17f89a..ee68faf84b 100644
--- a/indra/newview/llfloatermediasettings.cpp
+++ b/indra/newview/llfloatermediasettings.cpp
@@ -242,6 +242,12 @@ void LLFloaterMediaSettings::onBtnApply( void* userdata )
sInstance->commitFields();
sInstance->apply();
+
+ sInstance->mInitialValues.clear();
+ sInstance->mPanelMediaSettingsGeneral->getValues( sInstance->mInitialValues );
+ sInstance->mPanelMediaSettingsSecurity->getValues( sInstance->mInitialValues );
+ sInstance->mPanelMediaSettingsPermissions->getValues( sInstance->mInitialValues );
+
}
////////////////////////////////////////////////////////////////////////////////
diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp
index 839d3f0c21..8bffe9bf57 100644
--- a/indra/newview/llfloaterpreference.cpp
+++ b/indra/newview/llfloaterpreference.cpp
@@ -537,10 +537,10 @@ void LLFloaterPreference::onOpen(const LLSD& key)
{
childSetText("maturity_desired_textbox", maturity_combo->getSelectedItemLabel());
childSetVisible("maturity_desired_combobox", false);
-
- // Display selected maturity icons.
- onChangeMaturity();
}
+
+ // Display selected maturity icons.
+ onChangeMaturity();
// Enabled/disabled popups, might have been changed by user actions
// while preferences floater was closed.
diff --git a/indra/newview/llpanelclassified.cpp b/indra/newview/llpanelclassified.cpp
index c4684e9827..9f24ddc799 100644
--- a/indra/newview/llpanelclassified.cpp
+++ b/indra/newview/llpanelclassified.cpp
@@ -1696,7 +1696,8 @@ void LLPanelClassifiedEdit::processProperties(void* data, EAvatarProcessorType t
setPosGlobal(c_info->pos_global);
setClassifiedLocation(createLocationText(c_info->parcel_name, c_info->sim_name, c_info->pos_global));
- getChild<LLComboBox>("category")->setCurrentByIndex(c_info->category + 1);
+ // *HACK see LLPanelClassifiedEdit::sendUpdate()
+ getChild<LLComboBox>("category")->setCurrentByIndex(c_info->category - 1);
getChild<LLComboBox>("category")->resetDirty();
bool mature = is_cf_mature(c_info->flags);
@@ -1705,6 +1706,7 @@ void LLPanelClassifiedEdit::processProperties(void* data, EAvatarProcessorType t
getChild<LLComboBox>("content_type")->setCurrentByIndex(mature ? CB_ITEM_MATURE : CB_ITEM_PG);
childSetValue("auto_renew", auto_renew);
childSetValue("price_for_listing", c_info->price_for_listing);
+ childSetEnabled("price_for_listing", isNew());
resetDirty();
setInfoLoaded(true);
@@ -1763,6 +1765,7 @@ void LLPanelClassifiedEdit::resetControls()
getChild<LLComboBox>("content_type")->setCurrentByIndex(0);
childSetValue("auto_renew", false);
childSetValue("price_for_listing", MINIMUM_PRICE_FOR_LISTING);
+ childSetEnabled("price_for_listing", TRUE);
}
bool LLPanelClassifiedEdit::canClose()
@@ -1799,7 +1802,9 @@ void LLPanelClassifiedEdit::sendUpdate()
c_data.agent_id = gAgent.getID();
c_data.classified_id = getClassifiedId();
- c_data.category = getCategory();
+ // *HACK
+ // Categories on server start with 1 while combo-box index starts with 0
+ c_data.category = getCategory() + 1;
c_data.name = getClassifiedName();
c_data.description = getDescription();
c_data.parcel_id = getParcelId();
@@ -1814,7 +1819,7 @@ void LLPanelClassifiedEdit::sendUpdate()
U32 LLPanelClassifiedEdit::getCategory()
{
LLComboBox* cat_cb = getChild<LLComboBox>("category");
- return cat_cb->getCurrentIndex() + 1;
+ return cat_cb->getCurrentIndex();
}
U8 LLPanelClassifiedEdit::getFlags()
diff --git a/indra/newview/lltexturecache.cpp b/indra/newview/lltexturecache.cpp
index 91c303c79e..3116c8feb0 100644
--- a/indra/newview/lltexturecache.cpp
+++ b/indra/newview/lltexturecache.cpp
@@ -750,6 +750,7 @@ LLTextureCache::LLTextureCache(bool threaded)
LLTextureCache::~LLTextureCache()
{
+ clearDeleteList() ;
}
//////////////////////////////////////////////////////////////////////////////
@@ -1574,6 +1575,11 @@ bool LLTextureCache::readComplete(handle_t handle, bool abort)
{
worker = iter->second;
complete = worker->complete();
+
+ if(!complete && abort)
+ {
+ abortRequest(handle, true) ;
+ }
}
if (worker && (complete || abort))
{
diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp
index 0053ce8df8..b1b3ae473c 100644
--- a/indra/newview/lltexturefetch.cpp
+++ b/indra/newview/lltexturefetch.cpp
@@ -431,11 +431,11 @@ LLTextureFetchWorker::~LLTextureFetchWorker()
// << " Desired=" << mDesiredDiscard << llendl;
llassert_always(!haveWork());
lockWorkMutex();
- if (mCacheReadHandle != LLTextureCache::nullHandle())
+ if (mCacheReadHandle != LLTextureCache::nullHandle() && mFetcher->mTextureCache)
{
mFetcher->mTextureCache->readComplete(mCacheReadHandle, true);
}
- if (mCacheWriteHandle != LLTextureCache::nullHandle())
+ if (mCacheWriteHandle != LLTextureCache::nullHandle() && mFetcher->mTextureCache)
{
mFetcher->mTextureCache->writeComplete(mCacheWriteHandle, true);
}
@@ -1429,6 +1429,8 @@ LLTextureFetch::LLTextureFetch(LLTextureCache* cache, LLImageDecodeThread* image
LLTextureFetch::~LLTextureFetch()
{
+ clearDeleteList() ;
+
// ~LLQueuedThread() called here
}
@@ -1737,6 +1739,26 @@ S32 LLTextureFetch::update(U32 max_time_ms)
return res;
}
+//called in the MAIN thread after the TextureCacheThread shuts down.
+void LLTextureFetch::shutDownTextureCacheThread()
+{
+ if(mTextureCache)
+ {
+ llassert_always(mTextureCache->isQuitting() || mTextureCache->isStopped()) ;
+ mTextureCache = NULL ;
+ }
+}
+
+//called in the MAIN thread after the ImageDecodeThread shuts down.
+void LLTextureFetch::shutDownImageDecodeThread()
+{
+ if(mImageDecodeThread)
+ {
+ llassert_always(mImageDecodeThread->isQuitting() || mImageDecodeThread->isStopped()) ;
+ mImageDecodeThread = NULL ;
+ }
+}
+
// WORKER THREAD
void LLTextureFetch::startThread()
{
diff --git a/indra/newview/lltexturefetch.h b/indra/newview/lltexturefetch.h
index 5213c4f488..ef2ec520bf 100644
--- a/indra/newview/lltexturefetch.h
+++ b/indra/newview/lltexturefetch.h
@@ -58,6 +58,8 @@ public:
~LLTextureFetch();
/*virtual*/ S32 update(U32 max_time_ms);
+ void shutDownTextureCacheThread() ; //called in the main thread after the TextureCacheThread shuts down.
+ void shutDownImageDecodeThread() ; //called in the main thread after the ImageDecodeThread shuts down.
bool createRequest(const std::string& url, const LLUUID& id, const LLHost& host, F32 priority,
S32 w, S32 h, S32 c, S32 discard, bool needs_aux);
diff --git a/indra/newview/llvoavatarself.cpp b/indra/newview/llvoavatarself.cpp
index acd12099cd..7dc8772753 100644
--- a/indra/newview/llvoavatarself.cpp
+++ b/indra/newview/llvoavatarself.cpp
@@ -1292,19 +1292,23 @@ BOOL LLVOAvatarSelf::isTextureDefined(LLVOAvatarDefines::ETextureIndex type, U32
}
//-----------------------------------------------------------------------------
-// virtual
// requestLayerSetUploads()
//-----------------------------------------------------------------------------
void LLVOAvatarSelf::requestLayerSetUploads()
{
for (U32 i = 0; i < mBakedTextureDatas.size(); i++)
{
- ETextureIndex tex_index = mBakedTextureDatas[i].mTextureIndex;
- BOOL layer_baked = isTextureDefined(tex_index, gAgentWearables.getWearableCount(tex_index));
- if (!layer_baked && mBakedTextureDatas[i].mTexLayerSet)
- {
- mBakedTextureDatas[i].mTexLayerSet->requestUpload();
- }
+ requestLayerSetUpload((EBakedTextureIndex)i);
+ }
+}
+
+void LLVOAvatarSelf::requestLayerSetUpload(LLVOAvatarDefines::EBakedTextureIndex i)
+{
+ ETextureIndex tex_index = mBakedTextureDatas[i].mTextureIndex;
+ bool layer_baked = isTextureDefined(tex_index, gAgentWearables.getWearableCount(tex_index));
+ if (!layer_baked && mBakedTextureDatas[i].mTexLayerSet)
+ {
+ mBakedTextureDatas[i].mTexLayerSet->requestUpload();
}
}
diff --git a/indra/newview/llvoavatarself.h b/indra/newview/llvoavatarself.h
index dc70996f0b..df3493c434 100644
--- a/indra/newview/llvoavatarself.h
+++ b/indra/newview/llvoavatarself.h
@@ -222,6 +222,7 @@ protected:
//--------------------------------------------------------------------
public:
void requestLayerSetUploads();
+ void requestLayerSetUpload(LLVOAvatarDefines::EBakedTextureIndex i);
void requestLayerSetUpdate(LLVOAvatarDefines::ETextureIndex i);
LLTexLayerSet* getLayerSet(LLVOAvatarDefines::ETextureIndex index) const;
diff --git a/indra/newview/skins/default/xui/en/panel_region_general.xml b/indra/newview/skins/default/xui/en/panel_region_general.xml
index 1bbe9d80c0..4acfa42c23 100644
--- a/indra/newview/skins/default/xui/en/panel_region_general.xml
+++ b/indra/newview/skins/default/xui/en/panel_region_general.xml
@@ -171,27 +171,48 @@
width="100">
Rating:
</text>
- <combo_box
+ <icons_combo_box
+ follows="left|top"
height="20"
label="Moderate"
layout="topleft"
left_delta="100"
name="access_combo"
top_delta="0"
- width="85">
- <combo_box.item
+ width="105">
+ <icons_combo_box.drop_down_button
+ image_overlay="Parcel_M_Light"
+ image_overlay_alignment="left"
+ imgoverlay_label_space="3"
+ pad_left="3"/>
+ <icons_combo_box.item
label="Adult"
- name="Adult"
- value="42" />
- <combo_box.item
+ value="42">
+ <item.columns
+ halign="center"
+ type="icon"
+ value="Parcel_R_Light"
+ width="20"/>
+ </icons_combo_box.item>
+ <icons_combo_box.item
label="Moderate"
- name="Mature"
- value="21" />
- <combo_box.item
+ value="21">
+ <item.columns
+ halign="center"
+ type="icon"
+ value="Parcel_M_Light"
+ width="20"/>
+ </icons_combo_box.item>
+ <icons_combo_box.item
label="General"
- name="PG"
- value="13" />
- </combo_box>
+ value="13">
+ <item.columns
+ halign="center"
+ type="icon"
+ value="Parcel_PG_Light"
+ width="20"/>
+ </icons_combo_box.item>
+ </icons_combo_box>
<button
enabled="false"
follows="left|top"
diff --git a/indra/newview/skins/default/xui/en/panel_status_bar.xml b/indra/newview/skins/default/xui/en/panel_status_bar.xml
index 8a1f74c46c..0c870e155b 100644
--- a/indra/newview/skins/default/xui/en/panel_status_bar.xml
+++ b/indra/newview/skins/default/xui/en/panel_status_bar.xml
@@ -51,7 +51,7 @@
image_unselected="spacer35.tga"
image_pressed="spacer35.tga"
height="16"
- right="-220"
+ right="-230"
label_shadow="false"
name="buycurrency"
tool_tip="My Balance"
diff --git a/indra/newview/skins/default/xui/fr/panel_status_bar.xml b/indra/newview/skins/default/xui/fr/panel_status_bar.xml
index b9bc1dd9d8..657bf792cf 100644
--- a/indra/newview/skins/default/xui/fr/panel_status_bar.xml
+++ b/indra/newview/skins/default/xui/fr/panel_status_bar.xml
@@ -21,7 +21,7 @@
<panel.string name="buycurrencylabel">
[AMT] L$
</panel.string>
- <button label="" label_selected="" name="buycurrency" right="-250" tool_tip="Mon solde"/>
+ <button label="" label_selected="" name="buycurrency" tool_tip="Mon solde"/>
<button label="Acheter" name="buyL" tool_tip="Cliquez pour acheter plus de L$"/>
<text name="TimeText" tool_tip="Heure actuelle (Pacifique)">
00h00 PST
diff --git a/indra/newview/skins/default/xui/ja/menu_viewer.xml b/indra/newview/skins/default/xui/ja/menu_viewer.xml
index e6fb07f120..bcad812457 100644
--- a/indra/newview/skins/default/xui/ja/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/ja/menu_viewer.xml
@@ -241,7 +241,7 @@
<menu label="レンダーテスト" name="Render Tests">
<menu_item_check label="カメラオフセット" name="Camera Offset"/>
<menu_item_check label="フレームレートをランダム化" name="Randomize Framerate"/>
- <menu_item_check label="Periodic Slow Frame" name="Periodic Slow Frame"/>
+ <menu_item_check label="定期的に遅いフレームを挿入する" name="Periodic Slow Frame"/>
<menu_item_check label="フレームテスト" name="Frame Test"/>
</menu>
<menu label="メタデータのレンダー" name="Render Metadata">
@@ -344,7 +344,7 @@
<menu_item_call label="PG のトグル" name="Toggle PG"/>
<menu_item_check label="選択アバター許可" name="Allow Select Avatar"/>
</menu>
- <menu_item_call label="Params をデフォルトで実行する" name="Force Params to Default"/>
+ <menu_item_call label="パラメータを強制的にデフォルトにする" name="Force Params to Default"/>
<menu_item_check label="アニメーション情報" name="Animation Info"/>
<menu_item_check label="スローモーションのアニメーション" name="Slow Motion Animations"/>
<menu_item_check label="見ているものを表示する" name="Show Look At"/>
@@ -361,7 +361,7 @@
</menu>
<menu_item_check label="HTTP Texture" name="HTTP Textures"/>
<menu_item_call label="圧縮画像" name="Compress Images"/>
- <menu_item_check label="Output Debug Minidump" name="Output Debug Minidump"/>
+ <menu_item_check label="デバッグ用のミニダンプを出力する" name="Output Debug Minidump"/>
<menu_item_check label="次回の起動時にコンソールウィンドウを表示する" name="Console Window"/>
<menu_item_check label="管理者メニューを表示する" name="View Admin Options"/>
<menu_item_call label="管理者ステータスの呼び出し" name="Request Admin Options"/>