diff options
| -rwxr-xr-x | indra/newview/app_settings/settings.xml | 12 | ||||
| -rw-r--r-- | indra/newview/llviewerdisplay.cpp | 11 | 
2 files changed, 21 insertions, 2 deletions
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index c817579e9e..4b93cef57f 100755 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -14170,5 +14170,17 @@      <key>Value</key>      <integer>0</integer>    </map> + +  <key>DisablePrecacheDelayAfterTeleporting</key> +  <map> +    <key>Comment</key> +    <string>Disables the artificial delay in the viewer that precaches some incoming assets</string> +    <key>Persist</key> +    <integer>0</integer> +    <key>Type</key> +    <string>Boolean</string> +    <key>Value</key> +    <integer>0</integer> +  </map>  </map>  </llsd> diff --git a/indra/newview/llviewerdisplay.cpp b/indra/newview/llviewerdisplay.cpp index bd8377e281..25abf768cb 100644 --- a/indra/newview/llviewerdisplay.cpp +++ b/indra/newview/llviewerdisplay.cpp @@ -417,14 +417,21 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot)  			gAgent.setTeleportMessage(  				LLAgent::sTeleportProgressMessages["arriving"]);  			gTextureList.mForceResetTextureStats = TRUE; -			gAgentCamera.resetView(TRUE, TRUE); -			 +			gAgentCamera.resetView(TRUE, TRUE);	 +			if ( gSavedSettings.getBOOL("DisablePrecacheDelayAfterTeleporting") ) +			{ +				gViewerWindow->setShowProgress(FALSE); +				gTeleportDisplay = FALSE; +				gAgent.setTeleportState( LLAgent::TELEPORT_NONE ); +			} +				  			break;  		case LLAgent::TELEPORT_ARRIVING:  			// Make the user wait while content "pre-caches"  			{  				F32 arrival_fraction = (gTeleportArrivalTimer.getElapsedTimeF32() / TELEPORT_ARRIVAL_DELAY); +			  				if( arrival_fraction > 1.f )  				{  					arrival_fraction = 1.f;  | 
