diff --git a/.github/workflows/build_viewer.yml b/.github/workflows/build_viewer.yml index 282225e71d..c5e2b1cf26 100644 --- a/.github/workflows/build_viewer.yml +++ b/.github/workflows/build_viewer.yml @@ -167,7 +167,7 @@ jobs: path_sep="\\" fi function find_most_recent_bundle() { - local pattern="$1.*$2.*" + local pattern="$1-.*$2-.*" local most_recent_file=$(ls -t "${{ github.workspace }}" | grep "$pattern" | head -1) if [ -z "$most_recent_file" ]; then echo "" diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index e6367dfde6..251d65f10e 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -7741,7 +7741,7 @@ Type String Value - https://status.secondlifegrid.net/history.atom + https://status.secondlifegrid.net/history.rss GridStatusUpdateDelay diff --git a/indra/newview/llfilepicker.cpp b/indra/newview/llfilepicker.cpp index bdb03f287b..5372969e5f 100644 --- a/indra/newview/llfilepicker.cpp +++ b/indra/newview/llfilepicker.cpp @@ -876,25 +876,25 @@ void set_nav_save_data(LLFilePicker::ESaveFilter filter, std::string &extension, break; // Export filter - case FFSAVE_EXPORT: + case LLFilePicker::FFSAVE_EXPORT: type = "OXP "; creator = "\?\?\?\?"; extension = "oxp"; break; - case FFSAVE_COLLADA: + case LLFilePicker::FFSAVE_COLLADA: type = "DAE "; creator = "\?\?\?\?"; extension = "dae"; break; // CSV Filter - case FFSAVE_CSV: + case LLFilePicker::FFSAVE_CSV: type = "CSV "; creator = "\?\?\?\?"; extension = "csv"; break; // - case FFSAVE_BEAM: - case FFSAVE_XML: + case LLFilePicker::FFSAVE_BEAM: + case LLFilePicker::FFSAVE_XML: type = "XML "; creator = "\?\?\?\?"; extension = "xml"; @@ -1724,6 +1724,36 @@ BOOL LLFilePicker::getMultipleOpenFiles( ELoadFilter filter, bool blocking) } #elif LL_FLTK + +BOOL LLFilePicker::getOpenFileModeless(ELoadFilter filter, + void (*callback)(bool, std::vector &, void*), + void *userdata) +{ + // not supposed to be used yet, use LLFilePickerThread + LL_ERRS() << "NOT IMPLEMENTED" << LL_ENDL; + return FALSE; +} + + +BOOL LLFilePicker::getMultipleOpenFilesModeless(ELoadFilter filter, + void (*callback)(bool, std::vector &, void*), + void *userdata ) +{ + // not supposed to be used yet, use LLFilePickerThread + LL_ERRS() << "NOT IMPLEMENTED" << LL_ENDL; + return FALSE; +} + +BOOL LLFilePicker::getSaveFileModeless(ESaveFilter filter, + const std::string& filename, + void (*callback)(bool, std::string&, void*), + void *userdata) +{ + // not supposed to be used yet, use LLFilePickerThread + LL_ERRS() << "NOT IMPLEMENTED" << LL_ENDL; + return FALSE; +} + BOOL LLFilePicker::getSaveFile( ESaveFilter filter, const std::string& filename, bool blocking ) { return openFileDialog( filter, blocking, eSaveFile ); diff --git a/indra/newview/llfloaterimagepreview.cpp b/indra/newview/llfloaterimagepreview.cpp index 244e47b706..65f9bc8578 100644 --- a/indra/newview/llfloaterimagepreview.cpp +++ b/indra/newview/llfloaterimagepreview.cpp @@ -123,6 +123,12 @@ BOOL LLFloaterImagePreview::postBuild() getChildView("bad_image_text")->setVisible(FALSE); + // FIRE-32944 - Hide some items if texture is invalid + LLCheckBoxCtrl* temp_check = getChild("temp_check"); + LLCheckBoxCtrl* lossless_check = getChild("lossless_check"); + LLUICtrl* uploaded_size_text = getChild("uploaded_size_text"); + // + if (mRawImagep.notNull() && gAgent.getRegion() != NULL) { mAvatarPreview = new LLImagePreviewAvatar(256, 256); @@ -142,16 +148,14 @@ BOOL LLFloaterImagePreview::postBuild() //} if (mRawImagep->getWidth() * mRawImagep->getHeight () <= LL_IMAGE_REZ_LOSSLESS_CUTOFF * LL_IMAGE_REZ_LOSSLESS_CUTOFF) { - LLCheckBoxCtrl* check_box = getChild("lossless_check"); - check_box->setEnabled(TRUE); - check_box->setVisible(TRUE); - check_box->setControlVariable(gSavedSettings.getControl("LosslessJ2CUpload")); + lossless_check->setEnabled(TRUE); + lossless_check->setVisible(TRUE); + lossless_check->setControlVariable(gSavedSettings.getControl("LosslessJ2CUpload")); } else { - LLCheckBoxCtrl* check_box = getChild("lossless_check"); - check_box->setEnabled(FALSE); - check_box->setVisible(FALSE); + lossless_check->setEnabled(FALSE); + lossless_check->setVisible(FALSE); } // @@ -162,21 +166,22 @@ BOOL LLFloaterImagePreview::postBuild() { gSavedSettings.setBOOL("TemporaryUpload", FALSE); } - getChild("temp_check")->setVisible(enable_temp_uploads); + temp_check->setVisible(enable_temp_uploads); // // detect and strip empty alpha layers from images on upload getChild("ok_btn")->setCommitCallback(boost::bind(&LLFloaterImagePreview::onBtnUpload, this)); - getChild("uploaded_size_text")->setTextArg("[X_RES]", llformat("%d", mRawImagep->getWidth())); - getChild("uploaded_size_text")->setTextArg("[Y_RES]", llformat("%d", mRawImagep->getHeight())); + uploaded_size_text->setTextArg("[X_RES]", llformat("%d", mRawImagep->getWidth())); + uploaded_size_text->setTextArg("[Y_RES]", llformat("%d", mRawImagep->getHeight())); + uploaded_size_text->setVisible(TRUE); mEmptyAlphaCheck = getChild("strip_alpha_check"); if (mRawImagep->getComponents() != 4) { getChild("image_alpha_warning")->setVisible(false); - getChild("uploaded_size_text")->setTextArg("[ALPHA]", getString("no_alpha")); + uploaded_size_text->setTextArg("[ALPHA]", getString("no_alpha")); return true; } @@ -205,7 +210,7 @@ BOOL LLFloaterImagePreview::postBuild() mEmptyAlphaCheck->setValue(false); } - getChild("uploaded_size_text")->setTextArg("[ALPHA]", getString(mEmptyAlphaCheck->getValue() ? "no_alpha" : "with_alpha")); + uploaded_size_text->setTextArg("[ALPHA]", getString(mEmptyAlphaCheck->getValue() ? "no_alpha" : "with_alpha")); // } else @@ -216,6 +221,12 @@ BOOL LLFloaterImagePreview::postBuild() getChildView("clothing_type_combo")->setEnabled(FALSE); getChildView("ok_btn")->setEnabled(FALSE); + // FIRE-32944 - Hide some items if texture is invalid + uploaded_size_text->setVisible(FALSE); + lossless_check->setVisible(FALSE); + temp_check->setVisible(FALSE); + // + if(!mImageLoadError.empty()) { getChild("bad_image_text")->setValue(mImageLoadError.c_str()); diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp index 917618d49e..4e505557ad 100644 --- a/indra/newview/llimview.cpp +++ b/indra/newview/llimview.cpp @@ -4476,6 +4476,7 @@ void typingNameCallback(const LLUUID& av_id, const LLAvatarName& av_name, const LLUUID::null, LLVector3::zero, false, + 0, true ); } @@ -4548,6 +4549,7 @@ void typingNameCallback(const LLUUID& av_id, const LLAvatarName& av_name, const LLUUID::null, LLVector3::zero, false, + 0, true ); @@ -4570,6 +4572,7 @@ void typingNameCallback(const LLUUID& av_id, const LLAvatarName& av_name, const LLUUID::null, LLVector3::zero, false, + 0, true); LLGiveInventory::doGiveInventoryItem(av_id, item, session_id); } diff --git a/indra/newview/skins/default/xui/en/panel_presets_camera_pulldown.xml b/indra/newview/skins/default/xui/en/panel_presets_camera_pulldown.xml index 44798aa39a..6d591a4eee 100644 --- a/indra/newview/skins/default/xui/en/panel_presets_camera_pulldown.xml +++ b/indra/newview/skins/default/xui/en/panel_presets_camera_pulldown.xml @@ -8,7 +8,7 @@ border="false" chrome="true" follows="bottom" - height="157" + height="257" layout="topleft" name="presets_camera_pulldown" width="225"> @@ -29,7 +29,7 @@ follows="left|top" layout="topleft" column_padding="0" - height="100" + height="200" width="215" draw_heading="false" draw_stripes="false" @@ -53,7 +53,7 @@ layout="topleft" left="5" name="horiz_separator" - top_delta="105" + top_delta="205" width="215" />