From d0fb6d12ed15efa02f881903b0741d7cc3139cab Mon Sep 17 00:00:00 2001 From: Armin Weatherwax Date: Tue, 1 Mar 2011 14:13:55 +0100 Subject: fix gstreamer plugin doesn't compile on linux --- .../gstreamer010/media_plugin_gstreamer010.cpp | 106 ++++++++++----------- 1 file changed, 53 insertions(+), 53 deletions(-) (limited to 'linden') diff --git a/linden/indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp b/linden/indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp index 7e2833a..553cdd5 100755 --- a/linden/indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp +++ b/linden/indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp @@ -181,7 +181,7 @@ MediaPluginGStreamer010::MediaPluginGStreamer010( mVideoSink ( NULL ), mCommand ( COMMAND_NONE ) { - writeToLog("MediaPluginGStreamer010 PID=%u", U32(LL_GETPID())); + writeToLog((char*)"MediaPluginGStreamer010 PID=%u", U32(LL_GETPID())); } /////////////////////////////////////////////////////////////////////////////// @@ -236,7 +236,7 @@ MediaPluginGStreamer010::processGSTEvents(GstBus *bus, GST_MESSAGE_TYPE(message) != GST_MESSAGE_BUFFERING && GST_MESSAGE_TYPE(message) != GST_MESSAGE_TAG) { - writeToLog("Got GST message type: %s", GST_MESSAGE_TYPE_NAME (message)); + writeToLog((char*)"Got GST message type: %s", GST_MESSAGE_TYPE_NAME (message)); } switch (GST_MESSAGE_TYPE (message)) @@ -246,7 +246,7 @@ MediaPluginGStreamer010::processGSTEvents(GstBus *bus, // NEEDS GST 0.10.11+ and America discovered by C.Columbus gint percent = 0; gst_message_parse_buffering(message, &percent); - writeToLog("GST buffering: %d%%", percent); + writeToLog((char*)"GST buffering: %d%%", percent); break; } @@ -260,7 +260,7 @@ MediaPluginGStreamer010::processGSTEvents(GstBus *bus, &pending_state); #ifdef LL_GST_REPORT_STATE_CHANGES // not generally very useful, and rather spammy. - writeToLog("state change (old,,pending): %s,<%s>,%s", + writeToLog((char*)"state change (old,,pending): %s,<%s>,%s", get_gst_state_name(old_state), get_gst_state_name(new_state), get_gst_state_name(pending_state)); @@ -290,7 +290,7 @@ MediaPluginGStreamer010::processGSTEvents(GstBus *bus, gchar *debug = NULL; gst_message_parse_error (message, &err, &debug); - writeToLog("GST error: %s", err?err->message:"(unknown)"); + writeToLog((char*)"GST error: %s", err?err->message:"(unknown)"); if (err) g_error_free (err); g_free (debug); @@ -307,7 +307,7 @@ MediaPluginGStreamer010::processGSTEvents(GstBus *bus, gchar *debug = NULL; gst_message_parse_info (message, &err, &debug); - writeToLog("GST info: %s", err?err->message:"(unknown)"); + writeToLog((char*)"GST info: %s", err?err->message:"(unknown)"); if (err) g_error_free (err); g_free (debug); @@ -320,7 +320,7 @@ MediaPluginGStreamer010::processGSTEvents(GstBus *bus, gchar *debug = NULL; gst_message_parse_warning (message, &err, &debug); - writeToLog("GST warning: %s", err?err->message:"(unknown)"); + writeToLog((char*)"GST warning: %s", err?err->message:"(unknown)"); if (err) g_error_free (err); g_free (debug); @@ -337,7 +337,7 @@ MediaPluginGStreamer010::processGSTEvents(GstBus *bus, if ( gst_tag_list_get_string(new_tags, GST_TAG_TITLE, &title) ) { - //writeToLog("Title: %s", title); + //writeToLog((char*)"Title: %s", title); std::string newtitle(title); gst_tag_list_free(new_tags); @@ -356,10 +356,10 @@ MediaPluginGStreamer010::processGSTEvents(GstBus *bus, case GST_MESSAGE_EOS: { /* end-of-stream */ - writeToLog("GST end-of-stream."); + writeToLog((char*)"GST end-of-stream."); if (mIsLooping) { - //writeToLog("looping media..."); + //writeToLog((char*)"looping media..."); double eos_pos_sec = 0.0F; bool got_eos_position = getTimePos(eos_pos_sec); @@ -368,7 +368,7 @@ MediaPluginGStreamer010::processGSTEvents(GstBus *bus, // if we know that the movie is really short, don't // loop it else it can easily become a time-hog // because of GStreamer spin-up overhead - writeToLog("really short movie (%0.3fsec) - not gonna loop this, pausing instead.", eos_pos_sec); + writeToLog((char*)"really short movie (%0.3fsec) - not gonna loop this, pausing instead.", eos_pos_sec); // inject a COMMAND_PAUSE mCommand = COMMAND_PAUSE; } @@ -387,7 +387,7 @@ MediaPluginGStreamer010::processGSTEvents(GstBus *bus, else #endif // LLGST_LOOP_BY_SEEKING { // use clumsy stop-start to loop - writeToLog("didn't loop by rewinding - stopping and starting instead..."); + writeToLog((char*)"didn't loop by rewinding - stopping and starting instead..."); stop(); play(1.0); } @@ -433,7 +433,7 @@ MediaPluginGStreamer010::navigateTo ( const std::string urlIn ) setStatus(STATUS_LOADING); - writeToLog("Setting media URI: %s", urlIn.c_str()); + writeToLog((char*)"Setting media URI: %s", urlIn.c_str()); mSeekWanted = false; @@ -461,13 +461,13 @@ MediaPluginGStreamer010::update(int milliseconds) if (!mDoneInit) return false; // error - //writeToLog("updating media..."); + //writeToLog((char*)"updating media..."); // sanity check if (NULL == mPump || NULL == mPlaybin) { - writeToLog("dead media..."); + writeToLog((char*)"dead media..."); return false; } @@ -497,7 +497,7 @@ MediaPluginGStreamer010::update(int milliseconds) GST_OBJECT_LOCK(mVideoSink); if (mVideoSink->retained_frame_ready) { - writeToLog("NEW FRAME READY"); + writeToLog((char*)"NEW FRAME READY"); if (mVideoSink->retained_frame_width != mCurrentWidth || mVideoSink->retained_frame_height != mCurrentHeight) @@ -528,7 +528,7 @@ MediaPluginGStreamer010::update(int milliseconds) GST_OBJECT_UNLOCK(mVideoSink); mCurrentRowbytes = neww * newd; - writeToLog("video container resized to %dx%d", + writeToLog((char*)"video container resized to %dx%d", neww, newh); mDepth = newd; @@ -556,7 +556,7 @@ MediaPluginGStreamer010::update(int milliseconds) } GST_OBJECT_UNLOCK(mVideoSink); - writeToLog("NEW FRAME REALLY TRULY CONSUMED, TELLING HOST"); + writeToLog((char*)"NEW FRAME REALLY TRULY CONSUMED, TELLING HOST"); setDirty(0,0,mCurrentWidth,mCurrentHeight); } @@ -567,7 +567,7 @@ MediaPluginGStreamer010::update(int milliseconds) GST_OBJECT_UNLOCK(mVideoSink); - writeToLog("NEW FRAME not consumed, still waiting for a shm segment and/or shm resize"); + writeToLog((char*)"NEW FRAME not consumed, still waiting for a shm segment and/or shm resize"); } return true; @@ -606,7 +606,7 @@ MediaPluginGStreamer010::mouseMove( int x, int y ) bool MediaPluginGStreamer010::pause() { - writeToLog("pausing media..."); + writeToLog((char*)"pausing media..."); // todo: error-check this? gst_element_set_state(mPlaybin, GST_STATE_PAUSED); return true; @@ -615,7 +615,7 @@ MediaPluginGStreamer010::pause() bool MediaPluginGStreamer010::stop() { - writeToLog("stopping media..."); + writeToLog((char*)"stopping media..."); // todo: error-check this? gst_element_set_state(mPlaybin, GST_STATE_READY); return true; @@ -625,7 +625,7 @@ bool MediaPluginGStreamer010::play(double rate) { // NOTE: we don't actually support non-natural rate. - writeToLog("playing media... rate=%f", rate); + writeToLog((char*)"playing media... rate=%f", rate); // todo: error-check this? gst_element_set_state(mPlaybin, GST_STATE_PLAYING); return true; @@ -662,7 +662,7 @@ MediaPluginGStreamer010::seek(double time_sec) GST_SEEK_TYPE_SET, gint64(time_sec*GST_SECOND), GST_SEEK_TYPE_NONE, GST_CLOCK_TIME_NONE); } - writeToLog("MEDIA SEEK REQUEST to %f sec result was %d", + writeToLog((char*)"MEDIA SEEK REQUEST to %f sec result was %d", float(time_sec), int(success)); return success; } @@ -716,7 +716,7 @@ MediaPluginGStreamer010::load() setStatus(STATUS_LOADING); - writeToLog("setting up media..."); + writeToLog((char*)"setting up media..."); mIsLooping = false; mVolume = (float) 0.1234567; // minor hack to force an initial volume update @@ -755,7 +755,7 @@ MediaPluginGStreamer010::load() GST_SLVIDEO(gst_element_factory_make ("private-slvideo", "slvideo")); if (!mVideoSink) { - writeToLog("Could not instantiate private-slvideo element."); + writeToLog((char*)"Could not instantiate private-slvideo element."); // todo: cleanup. setStatus(STATUS_ERROR); return false; // error @@ -774,7 +774,7 @@ MediaPluginGStreamer010::unload () if (!mDoneInit) return false; // error - writeToLog("unloading media..."); + writeToLog((char*)"unloading media..."); // stop getting callbacks for this bus g_source_remove(mBusWatchID); @@ -832,7 +832,7 @@ MediaPluginGStreamer010::startup() "libgstvideo-0.10.so.0") ) #endif { - writeToLog("Couldn't find suitable GStreamer 0.10 support on this system - video playback disabled."); + writeToLog((char*)"Couldn't find suitable GStreamer 0.10 support on this system - video playback disabled."); return false; } */ @@ -842,7 +842,7 @@ MediaPluginGStreamer010::startup() // } // else // { -// writeToLog("gst_segtrap_set_enabled() is not available; plugin crashes won't be caught."); +// writeToLog((char*)"gst_segtrap_set_enabled() is not available; plugin crashes won't be caught."); // } /* #if LL_LINUX @@ -885,12 +885,12 @@ MediaPluginGStreamer010::startup() { if (err) { - writeToLog("GST init failed: %s", err->message); + writeToLog((char*)"GST init failed: %s", err->message); g_error_free(err); } else { - writeToLog("GST init failed for unspecified reason."); + writeToLog((char*)"GST init failed for unspecified reason."); } return false; } @@ -903,7 +903,7 @@ MediaPluginGStreamer010::startup() gst_slvideo_init_class(); // List the plugins GStreamer can find - writeToLog("Found GStreamer plugins:"); + writeToLog((char*)"Found GStreamer plugins:"); GList *list; GstRegistry *registry = gst_registry_get_default(); std::string loaded = "No"; @@ -913,7 +913,7 @@ MediaPluginGStreamer010::startup() { GstPlugin *list_plugin = (GstPlugin *)list->data; if (gst_plugin_is_loaded(list_plugin)) loaded = "Yes"; - writeToLog("%s, loaded? %s", gst_plugin_get_name(list_plugin), loaded.c_str()); + writeToLog((char*)"%s, loaded? %s", gst_plugin_get_name(list_plugin), loaded.c_str()); } gst_plugin_list_free(list); @@ -960,11 +960,11 @@ void MediaPluginGStreamer010::set_gst_plugin_path() if( imp_dir == "" ) { - writeToLog("Could not get application directory, not setting GST_PLUGIN_PATH."); + writeToLog((char*)"Could not get application directory, not setting GST_PLUGIN_PATH."); return; } - writeToLog("Imprudence is installed at %s", imp_dir.c_str()); + writeToLog((char*)"Imprudence is installed at %s", imp_dir.c_str()); // ":" on Mac and 'Nix, ";" on Windows std::string separator = G_SEARCHPATH_SEPARATOR_S; @@ -974,7 +974,7 @@ void MediaPluginGStreamer010::set_gst_plugin_path() char *old_path = getenv("GST_PLUGIN_PATH"); if(old_path == NULL) { - writeToLog("Did not find user-set GST_PLUGIN_PATH."); + writeToLog((char*)"Did not find user-set GST_PLUGIN_PATH."); } else { @@ -1005,11 +1005,11 @@ void MediaPluginGStreamer010::set_gst_plugin_path() if( put_result == -1 ) { - writeToLog("Setting GST_PLUGIN_PATH failed!"); + writeToLog((char*)"Setting GST_PLUGIN_PATH failed!"); } else { - writeToLog("GST_PLUGIN_PATH set to %s", getenv("GST_PLUGIN_PATH")); + writeToLog((char*)"GST_PLUGIN_PATH set to %s", getenv("GST_PLUGIN_PATH")); } // Don't load system plugins. We only want to use ours, to avoid conflicts. @@ -1021,7 +1021,7 @@ void MediaPluginGStreamer010::set_gst_plugin_path() if( put_result == -1 ) { - writeToLog("Setting GST_PLUGIN_SYSTEM_PATH=\"\" failed!"); + writeToLog((char*)"Setting GST_PLUGIN_SYSTEM_PATH=\"\" failed!"); } #endif // LL_WINDOWS || LL_DARWIN @@ -1039,7 +1039,7 @@ MediaPluginGStreamer010::sizeChanged() { mNaturalWidth = mCurrentWidth; mNaturalHeight = mCurrentHeight; - writeToLog("Media NATURAL size better detected as %dx%d", + writeToLog((char*)"Media NATURAL size better detected as %dx%d", mNaturalWidth, mNaturalHeight); } @@ -1054,7 +1054,7 @@ MediaPluginGStreamer010::sizeChanged() message.setValue("name", mTextureSegmentName); message.setValueS32("width", mNaturalWidth); message.setValueS32("height", mNaturalHeight); - writeToLog("<--- Sending size change request to application with name: '%s' - natural size is %d x %d", mTextureSegmentName.c_str(), mNaturalWidth, mNaturalHeight); + writeToLog((char*)"<--- Sending size change request to application with name: '%s' - natural size is %d x %d", mTextureSegmentName.c_str(), mNaturalWidth, mNaturalHeight); sendMessage(message); } } @@ -1077,11 +1077,11 @@ MediaPluginGStreamer010::closedown() MediaPluginGStreamer010::~MediaPluginGStreamer010() { - //writeToLog("MediaPluginGStreamer010 destructor"); + //writeToLog((char*)"MediaPluginGStreamer010 destructor"); closedown(); - writeToLog("GStreamer010 closing down"); + writeToLog((char*)"GStreamer010 closing down"); } @@ -1125,11 +1125,11 @@ void MediaPluginGStreamer010::receiveMessage(const char *message_string) if ( load() ) { - writeToLog("GStreamer010 media instance set up"); + writeToLog((char*)"GStreamer010 media instance set up"); } else { - writeToLog("GStreamer010 media instance failed to set up"); + writeToLog((char*)"GStreamer010 media instance failed to set up"); } message.setValue("plugin_version", getVersion()); @@ -1156,7 +1156,7 @@ void MediaPluginGStreamer010::receiveMessage(const char *message_string) std::string name = message_in.getValue("name"); std::ostringstream str; - writeToLog("MediaPluginGStreamer010::receiveMessage: shared memory added, name: %s, size: %d, address: %p", name.c_str(), int(info.mSize), info.mAddress); + writeToLog((char*)"MediaPluginGStreamer010::receiveMessage: shared memory added, name: %s, size: %d, address: %p", name.c_str(), int(info.mSize), info.mAddress); mSharedSegments.insert(SharedSegmentMap::value_type(name, info)); } @@ -1164,7 +1164,7 @@ void MediaPluginGStreamer010::receiveMessage(const char *message_string) { std::string name = message_in.getValue("name"); - writeToLog("MediaPluginGStreamer010::receiveMessage: shared memory remove, name = %s", name.c_str()); + writeToLog((char*)"MediaPluginGStreamer010::receiveMessage: shared memory remove, name = %s", name.c_str()); SharedSegmentMap::iterator iter = mSharedSegments.find(name); if(iter != mSharedSegments.end()) @@ -1182,7 +1182,7 @@ void MediaPluginGStreamer010::receiveMessage(const char *message_string) } else { - writeToLog("MediaPluginGStreamer010::receiveMessage: unknown shared memory region!"); + writeToLog((char*)"MediaPluginGStreamer010::receiveMessage: unknown shared memory region!"); } // Send the response so it can be cleaned up. @@ -1193,7 +1193,7 @@ void MediaPluginGStreamer010::receiveMessage(const char *message_string) else { std::ostringstream str; - writeToLog("MediaPluginGStreamer010::receiveMessage: unknown base message: %s", message_name.c_str()); + writeToLog((char*)"MediaPluginGStreamer010::receiveMessage: unknown base message: %s", message_name.c_str()); } } else if(message_class == LLPLUGIN_MESSAGE_CLASS_MEDIA) @@ -1236,7 +1236,7 @@ void MediaPluginGStreamer010::receiveMessage(const char *message_string) S32 texture_height = message_in.getValueS32("texture_height"); std::ostringstream str; - writeToLog("---->Got size change instruction from application with shm name: %s - size is %d x %d", name.c_str(), width, height); + writeToLog((char*)"---->Got size change instruction from application with shm name: %s - size is %d x %d", name.c_str(), width, height); LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_MEDIA, "size_change_response"); message.setValue("name", name); @@ -1252,8 +1252,8 @@ void MediaPluginGStreamer010::receiveMessage(const char *message_string) SharedSegmentMap::iterator iter = mSharedSegments.find(name); if(iter != mSharedSegments.end()) { - writeToLog("*** Got size change with matching shm, new size is %d x %d", width, height); - writeToLog("*** Got size change with matching shm, texture size size is %d x %d", texture_width, texture_height); + writeToLog((char*)"*** Got size change with matching shm, new size is %d x %d", width, height); + writeToLog((char*)"*** Got size change with matching shm, texture size size is %d x %d", texture_width, texture_height); mPixels = (unsigned char*)iter->second.mAddress; mTextureSegmentName = name; @@ -1263,7 +1263,7 @@ void MediaPluginGStreamer010::receiveMessage(const char *message_string) if (texture_width > 1 || texture_height > 1) // not a dummy size from the app, a real explicit forced size { - writeToLog("**** = REAL RESIZE REQUEST FROM APP"); + writeToLog((char*)"**** = REAL RESIZE REQUEST FROM APP"); GST_OBJECT_LOCK(mVideoSink); mVideoSink->resize_forced_always = true; @@ -1345,7 +1345,7 @@ void MediaPluginGStreamer010::receiveMessage(const char *message_string) } else { - writeToLog("MediaPluginGStreamer010::receiveMessage: unknown message class: %s", message_class.c_str()); + writeToLog((char*)"MediaPluginGStreamer010::receiveMessage: unknown message class: %s", message_class.c_str()); } } } -- cgit v1.1 From 340b9eda6fd80907deaa2757db63d3e1040599e6 Mon Sep 17 00:00:00 2001 From: Armin Weatherwax Date: Tue, 1 Mar 2011 14:16:06 +0100 Subject: fix packaging fails on linux --- linden/indra/newview/viewer_manifest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linden') diff --git a/linden/indra/newview/viewer_manifest.py b/linden/indra/newview/viewer_manifest.py index 56c2410..4703f16 100755 --- a/linden/indra/newview/viewer_manifest.py +++ b/linden/indra/newview/viewer_manifest.py @@ -134,7 +134,7 @@ class ViewerManifest(LLManifest): self.path("README.txt") self.path("MANIFESTO.txt") self.path("CONTRIBUTE.txt") - self.path("RELEASE_NOTES.txt") + #self.path("RELEASE_NOTES.txt") self.path("ChangeLog.txt", required=False) self.end_prefix("../../..") -- cgit v1.1 From 58d0360b3a78729d0446d3703160ecb4b97721a3 Mon Sep 17 00:00:00 2001 From: Armin Weatherwax Date: Tue, 1 Mar 2011 14:19:55 +0100 Subject: fix news bar doesn't open internal browser --- linden/indra/llplugin/llpluginclassmedia.cpp | 3 ++- linden/indra/newview/app_settings/logcontrol.xml | 16 +++++++++------- linden/indra/newview/llmediactrl.cpp | 7 ++++++- linden/indra/newview/llpanellogin.cpp | 1 + 4 files changed, 18 insertions(+), 9 deletions(-) (limited to 'linden') diff --git a/linden/indra/llplugin/llpluginclassmedia.cpp b/linden/indra/llplugin/llpluginclassmedia.cpp index 5a81c46..02da271 100755 --- a/linden/indra/llplugin/llpluginclassmedia.cpp +++ b/linden/indra/llplugin/llpluginclassmedia.cpp @@ -777,7 +777,7 @@ void LLPluginClassMedia::receivePluginMessage(const LLPluginMessage &message) mDirtyRect.unionWith(newDirtyRect); } - LL_DEBUGS("PluginClassMedia") << "adjusted incoming rect is: (" + LL_DEBUGS("PluginClassMediaRect") << "adjusted incoming rect is: (" << newDirtyRect.mLeft << ", " << newDirtyRect.mTop << ", " << newDirtyRect.mRight << ", " @@ -973,6 +973,7 @@ void LLPluginClassMedia::receivePluginMessage(const LLPluginMessage &message) { mClickURL = message.getValue("uri"); mClickTarget = message.getValue("target"); + LL_DEBUGS("PluginClassMedia") << "Click target \"" << mClickTarget << "\"" << LL_ENDL; mediaEvent(LLPluginClassMediaOwner::MEDIA_EVENT_CLICK_LINK_HREF); } else if(message_name == "click_nofollow") diff --git a/linden/indra/newview/app_settings/logcontrol.xml b/linden/indra/newview/app_settings/logcontrol.xml index cdc837d..b7bc07b 100644 --- a/linden/indra/newview/app_settings/logcontrol.xml +++ b/linden/indra/newview/app_settings/logcontrol.xml @@ -57,7 +57,7 @@ - + @@ -65,15 +65,17 @@ + + NewsBar - Plugin + PluginClassMedia - PluginInstance - PluginPipe - PluginChild + + + - PluginParent - PluginViewerMedia + + diff --git a/linden/indra/newview/llmediactrl.cpp b/linden/indra/newview/llmediactrl.cpp index 8b60326..ff7ba22 100644 --- a/linden/indra/newview/llmediactrl.cpp +++ b/linden/indra/newview/llmediactrl.cpp @@ -37,6 +37,7 @@ // viewer includes #include "llfloaterhtml.h" +#include "llfloatermediabrowser.h" #include "llfloaterworldmap.h" #include "lluictrlfactory.h" #include "llurldispatcher.h" @@ -746,7 +747,7 @@ void LLMediaCtrl::handleMediaEvent(LLPluginClassMedia* self, EMediaEvent event) case MEDIA_EVENT_CURSOR_CHANGED: { - LL_INFOS("Media") << "Media event: MEDIA_EVENT_CURSOR_CHANGED, new cursor is " << self->getCursorName() << LL_ENDL; + LL_DEBUGS("MediaEventCursor") << "Media event: MEDIA_EVENT_CURSOR_CHANGED, new cursor is " << self->getCursorName() << LL_ENDL; std::string cursor = self->getCursorName(); @@ -865,6 +866,7 @@ void LLMediaCtrl::onClickLinkHref( LLPluginClassMedia* self ) const std::string protocol2( "https://" ); if( mOpenLinksInExternalBrowser ) { + LL_DEBUGS("Media") << "OpenLinksInExternalBrowser" << LL_ENDL; if ( !url.empty() ) { if ( LLStringUtil::compareInsensitive( url.substr( 0, protocol1.length() ), protocol1 ) == 0 || @@ -877,6 +879,7 @@ void LLMediaCtrl::onClickLinkHref( LLPluginClassMedia* self ) else if( mOpenLinksInInternalBrowser ) { + LL_DEBUGS("Media") << "OpenLinksInInternalBrowser" << LL_ENDL; if ( !url.empty() ) { if ( LLStringUtil::compareInsensitive( url.substr( 0, protocol1.length() ), protocol1 ) == 0 || @@ -891,6 +894,8 @@ void LLMediaCtrl::onClickLinkHref( LLPluginClassMedia* self ) // "Second Life Browser", // open_links_externally, // mTrusted); + + LLFloaterMediaBrowser::getInstance()->openMedia(url); } } } diff --git a/linden/indra/newview/llpanellogin.cpp b/linden/indra/newview/llpanellogin.cpp index 4fe0624..e67f336 100644 --- a/linden/indra/newview/llpanellogin.cpp +++ b/linden/indra/newview/llpanellogin.cpp @@ -1216,6 +1216,7 @@ bool LLPanelLogin::loadNewsBar() curl_free(curl_version); curl_free(curl_skin); + LL_DEBUGS("NewsBar")<< "news bar setup to navigate to: " << full_url.str() << LL_ENDL; news_bar->navigateTo( full_url.str() ); -- cgit v1.1 From 3659dd79710a4cffd8ff6a76714de48af1c33aa6 Mon Sep 17 00:00:00 2001 From: Armin Weatherwax Date: Tue, 1 Mar 2011 14:29:08 +0100 Subject: remove llfloaterhtml.* (not used anymore). --- linden/indra/newview/llfloaterchat.cpp | 1 - linden/indra/newview/llfloaterhtml.cpp | 253 ------------------------- linden/indra/newview/llfloaterhtml.h | 77 -------- linden/indra/newview/llfloatermediabrowser.cpp | 5 +- linden/indra/newview/llmediactrl.cpp | 1 - 5 files changed, 2 insertions(+), 335 deletions(-) delete mode 100644 linden/indra/newview/llfloaterhtml.cpp delete mode 100644 linden/indra/newview/llfloaterhtml.h (limited to 'linden') diff --git a/linden/indra/newview/llfloaterchat.cpp b/linden/indra/newview/llfloaterchat.cpp index e9ea14b..79dddaa 100644 --- a/linden/indra/newview/llfloaterchat.cpp +++ b/linden/indra/newview/llfloaterchat.cpp @@ -73,7 +73,6 @@ #include "lllogchat.h" #include "lltexteditor.h" #include "lltextparser.h" -#include "llfloaterhtml.h" #include "llweb.h" #include "llstylemap.h" #include "llviewermenu.h" diff --git a/linden/indra/newview/llfloaterhtml.cpp b/linden/indra/newview/llfloaterhtml.cpp deleted file mode 100644 index 5822ed5..0000000 --- a/linden/indra/newview/llfloaterhtml.cpp +++ /dev/null @@ -1,253 +0,0 @@ -/** - * @file llfloaterhtml.cpp - * @brief In-world HTML dialog - * - * $LicenseInfo:firstyear=2005&license=viewergpl$ - * - * Copyright (c) 2005-2009, Linden Research, Inc. - * - * Second Life Viewer Source Code - * The source code in this file ("Source Code") is provided by Linden Lab - * to you under the terms of the GNU General Public License, version 2.0 - * ("GPL"), unless you have obtained a separate licensing agreement - * ("Other License"), formally executed by you and Linden Lab. Terms of - * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 - * - * There are special exceptions to the terms and conditions of the GPL as - * it is applied to this Source Code. View the full text of the exception - * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at - * http://secondlifegrid.net/programs/open_source/licensing/flossexception - * - * By copying, modifying or distributing this software, you acknowledge - * that you have read and understood your obligations described above, - * and agree to abide by those obligations. - * - * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO - * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, - * COMPLETENESS OR PERFORMANCE. - * $/LicenseInfo$ - */ - -#include "llviewerprecompiledheaders.h" - -#include "llfloaterhtml.h" - -// viewer includes -#include "lluictrlfactory.h" -#include "llviewercontrol.h" -#include "lllineeditor.h" -#include "llviewerwindow.h" -#include "llweb.h" - - -LLFloaterHtml* LLFloaterHtml::sInstance = 0; - -//////////////////////////////////////////////////////////////////////////////// -// -LLFloaterHtml* LLFloaterHtml::getInstance() -{ - if ( ! sInstance ) - sInstance = new LLFloaterHtml(); - - return sInstance; -} - -//////////////////////////////////////////////////////////////////////////////// -// -LLFloaterHtml::LLFloaterHtml() -: LLFloater( std::string("HTML Floater") ) - - , - mWebBrowser( 0 ) -{ - LLUICtrlFactory::getInstance()->buildFloater( this, "floater_html.xml" ); - - childSetAction("back_btn", onClickBack, this); - childSetAction("home_btn", onClickHome, this); - childSetAction("forward_btn", onClickForward, this); - childSetAction("close_btn", onClickClose, this); - childSetCommitCallback("url_edit", onCommitUrlEdit, this ); - childSetAction("go_btn", onClickGo, this ); - - // reposition floater from saved settings - LLRect rect = gSavedSettings.getRect( "FloaterHtmlRect" ); - reshape( rect.getWidth(), rect.getHeight(), FALSE ); - setRect( rect ); - - mWebBrowser = getChild("html_floater_browser" ); - if ( mWebBrowser ) - { - // open links in internal browser - mWebBrowser->setOpenInExternalBrowser( false ); - } -} - -//////////////////////////////////////////////////////////////////////////////// -// -LLFloaterHtml::~LLFloaterHtml() -{ - // save position of floater - gSavedSettings.setRect( "FloaterHtmlRect", getRect() ); - - sInstance = 0; -} - -//////////////////////////////////////////////////////////////////////////////// -// virtual -void LLFloaterHtml::draw() -{ - // enable/disable buttons depending on state - if ( mWebBrowser ) - { - bool enable_back = mWebBrowser->canNavigateBack(); - childSetEnabled( "back_btn", enable_back ); - - bool enable_forward = mWebBrowser->canNavigateForward(); - childSetEnabled( "forward_btn", enable_forward ); - }; - - LLFloater::draw(); -} - -//////////////////////////////////////////////////////////////////////////////// -// -void LLFloaterHtml::show( std::string content_id, bool open_link_external, bool open_app_slurls ) -{ - // calculate the XML labels we'll need (if only XML folders worked) - std::string title_str = content_id + "_title"; - std::string url_str = content_id + "_url"; - - std::string title = getString( title_str ); - std::string url = getString( url_str ); - - show( url, title, open_link_external, open_app_slurls ); -} - -//////////////////////////////////////////////////////////////////////////////// -// -void LLFloaterHtml::show( std::string start_url, std::string title, bool open_link_external, bool trusted_browser ) -{ - // set the title - setTitle( title ); - - // navigate to the URL - if ( mWebBrowser ) - { - mWebBrowser->setTrusted( trusted_browser ); - mWebBrowser->setOpenInExternalBrowser( open_link_external ); - mWebBrowser->navigateTo( start_url ); - } - - // make floater appear - setVisibleAndFrontmost(); -} - -//////////////////////////////////////////////////////////////////////////////// -// -std::string LLFloaterHtml::getSupportUrl() -{ - return getString("support_page_url"); -} - -//////////////////////////////////////////////////////////////////////////////// -// -void LLFloaterHtml::onClose( bool app_quitting ) -{ - setVisible( false ); - // HACK for fast XML iteration replace with: - // destroy(); -} - -//////////////////////////////////////////////////////////////////////////////// -// -void LLFloaterHtml::onClickClose( void* data ) -{ - LLFloaterHtml* self = ( LLFloaterHtml* )data; - self->close(); -} - -//////////////////////////////////////////////////////////////////////////////// -// static -void LLFloaterHtml::onClickBack( void* data ) -{ - LLFloaterHtml* self = ( LLFloaterHtml* )data; - if ( self ) - { - if ( self->mWebBrowser ) - { - self->mWebBrowser->navigateBack(); - }; - }; -} - -//////////////////////////////////////////////////////////////////////////////// -// -void LLFloaterHtml::onClickHome( void* data ) -{ - LLFloaterHtml* self = ( LLFloaterHtml* )data; - if ( self ) - { - if ( self->mWebBrowser ) - { - std::string home_url = self->getString("home_page_url"); - if ( home_url.length() > 4 ) - { - self->mWebBrowser->navigateTo( home_url ); - } - else - { - llwarns << "Invalid home page specified for HTML floater - navigating to default" << llendl; - self->mWebBrowser->navigateTo( "http://secondlife.com" ); - } - }; - }; -} - -//////////////////////////////////////////////////////////////////////////////// -// static -void LLFloaterHtml::onClickForward( void* data ) -{ - LLFloaterHtml* self = ( LLFloaterHtml* )data; - if ( self ) - { - if ( self->mWebBrowser ) - { - self->mWebBrowser->navigateForward(); - }; - }; -} - -//////////////////////////////////////////////////////////////////////////////// -// static -void LLFloaterHtml::onCommitUrlEdit(LLUICtrl* ctrl, void* user_data) -{ - LLFloaterHtml* self = (LLFloaterHtml*)user_data; - - LLLineEditor* editor = (LLLineEditor*)ctrl; - std::string url = editor->getText(); - - if ( self->mWebBrowser ) - { - self->mWebBrowser->navigateTo( url ); - }; -} - -//////////////////////////////////////////////////////////////////////////////// -// static -void LLFloaterHtml::onClickGo( void* data ) -{ - LLFloaterHtml* self = ( LLFloaterHtml* )data; - if ( self ) - { - std::string url = self->childGetValue( "url_edit" ).asString(); - if ( url.length() ) - { - if ( self->mWebBrowser ) - { - self->mWebBrowser->navigateTo( url ); - } - } - } -} diff --git a/linden/indra/newview/llfloaterhtml.h b/linden/indra/newview/llfloaterhtml.h deleted file mode 100644 index 4383472..0000000 --- a/linden/indra/newview/llfloaterhtml.h +++ /dev/null @@ -1,77 +0,0 @@ - /** - * @file llfloaterhtml.h - * @author James Cook - * @brief In-world HTML dialog - * - * $LicenseInfo:firstyear=2005&license=viewergpl$ - * - * Copyright (c) 2005-2009, Linden Research, Inc. - * - * Second Life Viewer Source Code - * The source code in this file ("Source Code") is provided by Linden Lab - * to you under the terms of the GNU General Public License, version 2.0 - * ("GPL"), unless you have obtained a separate licensing agreement - * ("Other License"), formally executed by you and Linden Lab. Terms of - * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 - * - * There are special exceptions to the terms and conditions of the GPL as - * it is applied to this Source Code. View the full text of the exception - * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at - * http://secondlifegrid.net/programs/open_source/licensing/flossexception - * - * By copying, modifying or distributing this software, you acknowledge - * that you have read and understood your obligations described above, - * and agree to abide by those obligations. - * - * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO - * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, - * COMPLETENESS OR PERFORMANCE. - * $/LicenseInfo$ - */ - -#ifndef LL_LLFLOATERHTML_H -#define LL_LLFLOATERHTML_H - -#include "llfloater.h" -#include "llhtmlhelp.h" - -class LLWebBrowserCtrl; - -class LLFloaterHtml : - public LLFloater -{ - public: - static LLFloaterHtml* getInstance(); - virtual ~LLFloaterHtml(); - - virtual void draw(); - virtual void onClose( bool app_quitting ); - - // Pass string like "in-world_help" or "additional help" - void show( std::string content_id, bool open_link_external, bool trusted_browser ); - - // Pass raw URL and window title - // Can be set to handle secondlife:///app/ URLs, but this should - // usually be false. - void show( std::string start_url, std::string title, bool open_link_external, bool trusted_browser ); - - std::string getSupportUrl(); - - static void onClickClose( void* data ); - static void onClickBack( void* data ); - static void onClickHome( void* data ); - static void onClickForward( void* data ); - static void onCommitUrlEdit(LLUICtrl* ctrl, void* user_data); - static void onClickGo( void* data ); - - private: - LLFloaterHtml(); - - LLWebBrowserCtrl* mWebBrowser; - static LLFloaterHtml* sInstance; - LLButton* mCloseButton; -}; - -#endif diff --git a/linden/indra/newview/llfloatermediabrowser.cpp b/linden/indra/newview/llfloatermediabrowser.cpp index d658a11..a78c9d1 100644 --- a/linden/indra/newview/llfloatermediabrowser.cpp +++ b/linden/indra/newview/llfloatermediabrowser.cpp @@ -1,6 +1,6 @@ /** - * @file llfloaterhtmlhelp.cpp - * @brief HTML Help floater - uses embedded web browser control + * @file llmediabrowser.cpp + * @brief embedded web browser * * $LicenseInfo:firstyear=2006&license=viewergpl$ * @@ -33,7 +33,6 @@ #include "llviewerprecompiledheaders.h" #include "llfloatermediabrowser.h" -#include "llfloaterhtml.h" #include "llchat.h" #include "llfloaterchat.h" diff --git a/linden/indra/newview/llmediactrl.cpp b/linden/indra/newview/llmediactrl.cpp index ff7ba22..8b10fa3 100644 --- a/linden/indra/newview/llmediactrl.cpp +++ b/linden/indra/newview/llmediactrl.cpp @@ -36,7 +36,6 @@ #include "llmediactrl.h" // viewer includes -#include "llfloaterhtml.h" #include "llfloatermediabrowser.h" #include "llfloaterworldmap.h" #include "lluictrlfactory.h" -- cgit v1.1 From de7bae0930e4830bbb90f12652d9a75088d431de Mon Sep 17 00:00:00 2001 From: Armin Weatherwax Date: Thu, 3 Feb 2011 22:24:21 +0100 Subject: Revolution Smythe: load voice module depending on login response --- linden/indra/newview/app_settings/settings.xml | 12 +++++++++++- linden/indra/newview/hippolimits.cpp | 5 ++++- linden/indra/newview/hippolimits.h | 3 ++- linden/indra/newview/kowopenregionsettings.cpp | 7 +++++++ linden/indra/newview/llvoiceclient.cpp | 23 +++++++++++++++++------ linden/indra/newview/llvoiceclient.h | 3 +++ 6 files changed, 44 insertions(+), 9 deletions(-) (limited to 'linden') diff --git a/linden/indra/newview/app_settings/settings.xml b/linden/indra/newview/app_settings/settings.xml index 17d4c3c..fbb51e8 100644 --- a/linden/indra/newview/app_settings/settings.xml +++ b/linden/indra/newview/app_settings/settings.xml @@ -37,7 +37,17 @@ Value 0 - + VoiceModule + + Comment + Executable file that runs voice. Platform specific parts (like .exe on windows) are added automatically. + Persist + 1 + Type + String + Value + SLVoice + AllowEditingOfTrees diff --git a/linden/indra/newview/hippolimits.cpp b/linden/indra/newview/hippolimits.cpp index d4c8efb..bb2e805 100644 --- a/linden/indra/newview/hippolimits.cpp +++ b/linden/indra/newview/hippolimits.cpp @@ -22,7 +22,8 @@ HippoLimits::HippoLimits() mMinPrimScale(0.001f), mMaxPrimScale(256.0f), mMaxLinkedPrims(-1), - mMaxDragDistance(0.f) + mMaxDragDistance(0.f), + mVoiceConnector("SLVoice") { setLimits(); } @@ -68,6 +69,7 @@ void HippoLimits::setOpenSimLimits() mEnableTeenMode = FALSE; mEnforceMaxBuild = FALSE; mRenderWater = TRUE; + mVoiceConnector = "SLVoice"; if (gHippoGridManager->getConnectedGrid()->isRenderCompat()) { llinfos << "Using rendering compatible OpenSim limits" << llendl; @@ -110,6 +112,7 @@ void HippoLimits::setSecondLifeLimits() mEnableTeenMode = FALSE; mEnforceMaxBuild = FALSE; mRenderWater = TRUE; + mVoiceConnector = "SLVoice"; } F32 HippoLimits::getMaxPrimScale() const diff --git a/linden/indra/newview/hippolimits.h b/linden/indra/newview/hippolimits.h index 7792a2c..9d6b2f6 100644 --- a/linden/indra/newview/hippolimits.h +++ b/linden/indra/newview/hippolimits.h @@ -14,7 +14,7 @@ public: const S32& getMaxLinkedPrims() const { return mMaxLinkedPrims; } const S32& getMaxPhysLinkedPrims() const { return mMaxPhysLinkedPrims; } const F32& getMaxInventoryItemsTransfer() const { return mMaxInventoryItemsTransfer; } - + const std::string& getVoiceConnector() const { return mVoiceConnector; } // Returns the max prim size we can use on a grid F32 getMinPrimScale() const; @@ -59,6 +59,7 @@ public: BOOL mEnableTeenMode; BOOL mEnforceMaxBuild; BOOL mRenderWater; + std::string mVoiceConnector; private: void setOpenSimLimits(); diff --git a/linden/indra/newview/kowopenregionsettings.cpp b/linden/indra/newview/kowopenregionsettings.cpp index 8aac87c..ef14d2a 100644 --- a/linden/indra/newview/kowopenregionsettings.cpp +++ b/linden/indra/newview/kowopenregionsettings.cpp @@ -36,6 +36,7 @@ #include "llviewerobject.h" #include "llfloaterregioninfo.h" #include "llfloaterworldmap.h" +#include "llvoiceclient.h" //DEBUG includes //#include "llsdserialize.h" //LLSDNotationStreamer - for dumping LLSD to string @@ -200,6 +201,12 @@ class OpenRegionInfoUpdate : public LLHTTPNode { gHippoLimits->mAllowParcelWindLight = body["AllowParcelWindLight"].asInteger() == 1; } + if ( body.has("Voice") ) + { + gSavedSettings.setString("VoiceModule", body["Voice"].asString()); + //gVoiceClient->close(); + //gVoiceClient->start(); + } if (limitschanged) gFloaterTools->updateToolsSizeLimits(); diff --git a/linden/indra/newview/llvoiceclient.cpp b/linden/indra/newview/llvoiceclient.cpp index 7b1ed95..5517ca2 100644 --- a/linden/indra/newview/llvoiceclient.cpp +++ b/linden/indra/newview/llvoiceclient.cpp @@ -62,6 +62,7 @@ #include "llfirstuse.h" #include "llviewerwindow.h" #include "llviewercamera.h" +#include "hippolimits.h" #include "llfloaterfriends.h" //VIVOX, inorder to refresh communicate panel #include "llfloaterchat.h" // for LLFloaterChat::addChat() @@ -1524,6 +1525,15 @@ void LLVoiceClient::setState(state inState) mState = inState; } +void LLVoiceClient::close() +{ + setState(stateDisableCleanup); +} + +void LLVoiceClient::start() +{ + setState(stateStart); +} void LLVoiceClient::stateMachine() { @@ -1654,12 +1664,12 @@ void LLVoiceClient::stateMachine() //std::string exe_path = gDirUtilp->getAppRODataDir(); std::string exe_path = gDirUtilp->getExecutableDir(); exe_path += gDirUtilp->getDirDelimiter(); +#if LL_DARWIN + exe_path += "../Resources/"; +#endif + exe_path += gSavedSettings.getString("VoiceModule"); #if LL_WINDOWS - exe_path += "SLVoice.exe"; -#elif LL_DARWIN - exe_path += "../Resources/SLVoice"; -#else - exe_path += "SLVoice"; + exe_path += ".exe"; #endif // See if the vivox executable exists llstat s; @@ -1687,7 +1697,8 @@ void LLVoiceClient::stateMachine() STARTUPINFOA sinfo; memset(&sinfo, 0, sizeof(sinfo)); std::string exe_dir = gDirUtilp->getAppRODataDir(); - cmd = "SLVoice.exe"; + cmd = gSavedSettings.getString("VoiceModule"); + cmd += ".exe"; cmd += args; // So retarded. Windows requires that the second parameter to CreateProcessA be a writable (non-const) string... diff --git a/linden/indra/newview/llvoiceclient.h b/linden/indra/newview/llvoiceclient.h index cfc336b..9ef3be9 100644 --- a/linden/indra/newview/llvoiceclient.h +++ b/linden/indra/newview/llvoiceclient.h @@ -516,6 +516,9 @@ static void updatePosition(void); // Currently this will be false only for PSTN P2P calls. // NOTE: this will return true if the session can't be found. bool isSessionTextIMPossible(const LLUUID &session_id); + + void close(); + void start(); private: -- cgit v1.1 From d2180c8379f33351aecfce95833bcdbd176fa698 Mon Sep 17 00:00:00 2001 From: Armin Weatherwax Date: Wed, 9 Feb 2011 16:16:29 +0100 Subject: fix: imprudence logo not showing in login screen; login screens not loading anymore after navigating to a broken one. This also shows an error page if the login screen page is broken. Todo: replace the trademarked logo. --- linden/indra/newview/llpanellogin.cpp | 14 ++------------ .../newview/skins/default/html/en-us/loading/loading.html | 9 +++++++++ 2 files changed, 11 insertions(+), 12 deletions(-) create mode 100644 linden/indra/newview/skins/default/html/en-us/loading/loading.html (limited to 'linden') diff --git a/linden/indra/newview/llpanellogin.cpp b/linden/indra/newview/llpanellogin.cpp index e67f336..0b91091 100644 --- a/linden/indra/newview/llpanellogin.cpp +++ b/linden/indra/newview/llpanellogin.cpp @@ -297,7 +297,7 @@ LLPanelLogin::LLPanelLogin(const LLRect &rect, // don't make it a tab stop until SL-27594 is fixed web_browser->setTabStop(FALSE); - // web_browser->navigateToLocalPage( "loading", "loading.html" ); + web_browser->navigateToLocalPage( "loading", "loading.html" ); // make links open in external browser web_browser->setOpenInExternalBrowser( true ); @@ -338,16 +338,6 @@ void LLPanelLogin::setSiteIsAlive( bool alive ) else // the site is not available (missing page, server down, other badness) { -#if !USE_VIEWER_AUTH - if ( web_browser ) - { - // hide browser control (revealing default one) - web_browser->setVisible( FALSE ); - - // mark as unavailable - mHtmlAvailable = FALSE; - } -#else if ( web_browser ) { @@ -356,7 +346,7 @@ void LLPanelLogin::setSiteIsAlive( bool alive ) // mark as available mHtmlAvailable = TRUE; } -#endif + } } diff --git a/linden/indra/newview/skins/default/html/en-us/loading/loading.html b/linden/indra/newview/skins/default/html/en-us/loading/loading.html new file mode 100644 index 0000000..97174b0 --- /dev/null +++ b/linden/indra/newview/skins/default/html/en-us/loading/loading.html @@ -0,0 +1,9 @@ + + + + + +
+
   loading... +
+ -- cgit v1.1 From 4d29299ac5f83a7e5c6da2c277b8efff0bf787dd Mon Sep 17 00:00:00 2001 From: Armin Weatherwax Date: Wed, 16 Feb 2011 10:14:20 +0100 Subject: Add short documentation to which project/s (viewer/SLPlugin/libmediaplugin) llplugin* classes belong to Yes, I confess: I grepped for unique strings in the binaries, to be absolutely sure. --- linden/indra/llplugin/llpluginclassmedia.cpp | 2 ++ linden/indra/llplugin/llpluginclassmediaowner.h | 2 +- linden/indra/llplugin/llplugincookiestore.cpp | 2 ++ linden/indra/llplugin/llplugininstance.cpp | 2 ++ linden/indra/llplugin/llpluginmessage.cpp | 2 ++ linden/indra/llplugin/llpluginmessagepipe.cpp | 2 ++ linden/indra/llplugin/llpluginprocesschild.cpp | 2 ++ linden/indra/llplugin/llpluginprocessparent.cpp | 2 ++ linden/indra/llplugin/llpluginsharedmemory.cpp | 3 ++- linden/indra/llplugin/slplugin/slplugin.cpp | 1 + 10 files changed, 18 insertions(+), 2 deletions(-) (limited to 'linden') diff --git a/linden/indra/llplugin/llpluginclassmedia.cpp b/linden/indra/llplugin/llpluginclassmedia.cpp index 02da271..520d9f5 100755 --- a/linden/indra/llplugin/llpluginclassmedia.cpp +++ b/linden/indra/llplugin/llpluginclassmedia.cpp @@ -33,6 +33,8 @@ * @endcond */ +/// IMPRUDENCE: this is part of the viewer + #include "linden_common.h" #include "indra_constants.h" diff --git a/linden/indra/llplugin/llpluginclassmediaowner.h b/linden/indra/llplugin/llpluginclassmediaowner.h index 9d1f352..0e54f7f 100755 --- a/linden/indra/llplugin/llpluginclassmediaowner.h +++ b/linden/indra/llplugin/llpluginclassmediaowner.h @@ -41,7 +41,7 @@ #include class LLPluginClassMedia; -class LLPluginCookieStore; +//class LLPluginCookieStore; // IMPRUDENCE: this is currently not used class LLPluginClassMediaOwner { diff --git a/linden/indra/llplugin/llplugincookiestore.cpp b/linden/indra/llplugin/llplugincookiestore.cpp index 283ba35..6b193de 100644 --- a/linden/indra/llplugin/llplugincookiestore.cpp +++ b/linden/indra/llplugin/llplugincookiestore.cpp @@ -33,6 +33,8 @@ * @endcond */ +/// IMPRUDENCE: this is currently not used + #include "linden_common.h" #include "indra_constants.h" diff --git a/linden/indra/llplugin/llplugininstance.cpp b/linden/indra/llplugin/llplugininstance.cpp index 67457f2..399f157 100755 --- a/linden/indra/llplugin/llplugininstance.cpp +++ b/linden/indra/llplugin/llplugininstance.cpp @@ -33,6 +33,8 @@ * @endcond */ +/// IMPRUDENCE: this is part of the SLPlugin + #include "linden_common.h" #include "llplugininstance.h" diff --git a/linden/indra/llplugin/llpluginmessage.cpp b/linden/indra/llplugin/llpluginmessage.cpp index 6452f4a..0810a04 100755 --- a/linden/indra/llplugin/llpluginmessage.cpp +++ b/linden/indra/llplugin/llpluginmessage.cpp @@ -33,6 +33,8 @@ * @endcond */ +/// IMPRUDENCE: this is part of the viewer and the SLPlugin and the libmedia_plugin_* libraries + #include "linden_common.h" #include "llpluginmessage.h" diff --git a/linden/indra/llplugin/llpluginmessagepipe.cpp b/linden/indra/llplugin/llpluginmessagepipe.cpp index ac3a902..2cad188 100755 --- a/linden/indra/llplugin/llpluginmessagepipe.cpp +++ b/linden/indra/llplugin/llpluginmessagepipe.cpp @@ -33,6 +33,8 @@ * @endcond */ +/// IMPRUDENCE: this is part of the viewer and the SLPlugin + #include "linden_common.h" #include "llpluginmessagepipe.h" diff --git a/linden/indra/llplugin/llpluginprocesschild.cpp b/linden/indra/llplugin/llpluginprocesschild.cpp index a1291c0..0d95cac 100755 --- a/linden/indra/llplugin/llpluginprocesschild.cpp +++ b/linden/indra/llplugin/llpluginprocesschild.cpp @@ -33,6 +33,8 @@ * @endcond */ +/// IMPRUDENCE: this is part of the SLPlugin + #include "linden_common.h" #include "llpluginprocesschild.h" diff --git a/linden/indra/llplugin/llpluginprocessparent.cpp b/linden/indra/llplugin/llpluginprocessparent.cpp index 5a66279..26572a0 100755 --- a/linden/indra/llplugin/llpluginprocessparent.cpp +++ b/linden/indra/llplugin/llpluginprocessparent.cpp @@ -33,6 +33,8 @@ * @endcond */ +/// IMPRUDENCE: this is part of the viewer + #include "linden_common.h" #include "llpluginprocessparent.h" diff --git a/linden/indra/llplugin/llpluginsharedmemory.cpp b/linden/indra/llplugin/llpluginsharedmemory.cpp index 6becb8d..882a2a1 100755 --- a/linden/indra/llplugin/llpluginsharedmemory.cpp +++ b/linden/indra/llplugin/llpluginsharedmemory.cpp @@ -33,6 +33,8 @@ * @endcond */ +/// IMPRUDENCE: this is part of the viewer and the SLPlugin + #include "linden_common.h" #include "llpluginsharedmemory.h" @@ -89,7 +91,6 @@ #include #endif // USE_APR_SHARED_MEMORY - int LLPluginSharedMemory::sSegmentNumber = 0; std::string LLPluginSharedMemory::createName(void) diff --git a/linden/indra/llplugin/slplugin/slplugin.cpp b/linden/indra/llplugin/slplugin/slplugin.cpp index 878577b..09331ca 100755 --- a/linden/indra/llplugin/slplugin/slplugin.cpp +++ b/linden/indra/llplugin/slplugin/slplugin.cpp @@ -35,6 +35,7 @@ * @endcond */ +/// IMPRUDENCE: this is part of the SLPlugin #include "linden_common.h" -- cgit v1.1 From c2756f03fd663619e793fa7fdb96172d9bb4501d Mon Sep 17 00:00:00 2001 From: Armin Weatherwax Date: Wed, 16 Feb 2011 10:36:45 +0100 Subject: remove unused webkit include in llplugin --- linden/indra/llplugin/CMakeLists.txt | 1 - linden/indra/llplugin/llpluginclassmedia.cpp | 2 -- 2 files changed, 3 deletions(-) (limited to 'linden') diff --git a/linden/indra/llplugin/CMakeLists.txt b/linden/indra/llplugin/CMakeLists.txt index 7a7f4e5..5dbe07c 100644 --- a/linden/indra/llplugin/CMakeLists.txt +++ b/linden/indra/llplugin/CMakeLists.txt @@ -20,7 +20,6 @@ include_directories( ${LLRENDER_INCLUDE_DIRS} ${LLXML_INCLUDE_DIRS} ${LLWINDOW_INCLUDE_DIRS} - ${LLQTWEBKIT_INCLUDE_DIR} ) set(llplugin_SOURCE_FILES diff --git a/linden/indra/llplugin/llpluginclassmedia.cpp b/linden/indra/llplugin/llpluginclassmedia.cpp index 520d9f5..f0a44f7 100755 --- a/linden/indra/llplugin/llpluginclassmedia.cpp +++ b/linden/indra/llplugin/llpluginclassmedia.cpp @@ -41,8 +41,6 @@ #include "llpluginclassmedia.h" #include "llpluginmessageclasses.h" -#include "llqtwebkit.h" - static int LOW_PRIORITY_TEXTURE_SIZE_DEFAULT = 256; static int nextPowerOf2( int value ) -- cgit v1.1 From 35f256d0597e55c6e2680ca612871c9b457a572a Mon Sep 17 00:00:00 2001 From: Armin Weatherwax Date: Wed, 16 Feb 2011 13:20:04 +0100 Subject: use logcontrol.xml also for SLPlugin --- linden/indra/llcommon/llerror.cpp | 2 +- linden/indra/llplugin/slplugin/slplugin.cpp | 39 ++++++++++++++++++++++++++--- 2 files changed, 37 insertions(+), 4 deletions(-) (limited to 'linden') diff --git a/linden/indra/llcommon/llerror.cpp b/linden/indra/llcommon/llerror.cpp index a9587c6..532a453 100644 --- a/linden/indra/llcommon/llerror.cpp +++ b/linden/indra/llcommon/llerror.cpp @@ -563,7 +563,7 @@ namespace #if LL_WINDOWS LLError::addRecorder(new RecordToWinDebug); #endif - + llwarns << "Load LogControlFile from Directory:"<< dir << llendl; LogControlFile& e = LogControlFile::fromDirectory(dir); // NOTE: We want to explicitly load the file before we add it to the event timer diff --git a/linden/indra/llplugin/slplugin/slplugin.cpp b/linden/indra/llplugin/slplugin/slplugin.cpp index 09331ca..347f1de 100755 --- a/linden/indra/llplugin/slplugin/slplugin.cpp +++ b/linden/indra/llplugin/slplugin/slplugin.cpp @@ -54,6 +54,20 @@ #include #endif +//imprudence: or we include lldir, or use apache runtime +//though the one is probably bloat and the other we rather want to avoid +#include // FILENAME_MAX +#ifdef WINDOWS + #include + #define getImpruDir _getcwd + #define DIR_DELIMITER "\\" +#else + #include + #define getImpruDir getcwd + #define DIR_DELIMITER "/" +#endif + + /* On Mac OS, since we call WaitNextEvent, this process will show up in the dock unless we set the LSBackgroundOnly or LSUIElement flag in the Info.plist. @@ -188,9 +202,28 @@ int main(int argc, char **argv) { // Set up llerror logging { - LLError::initForApplication("."); - LLError::setDefaultLevel(LLError::LEVEL_INFO); -// LLError::setTagLevel("Plugin", LLError::LEVEL_DEBUG); + std::string path; + char impruPath[FILENAME_MAX]; + + if (!getImpruDir(impruPath, sizeof(impruPath))) + { + path = "."; //FIXME: root directory of the system - bad idea + } + else + { + path = std::string(impruPath); + + path.append(DIR_DELIMITER); + path.append("app_settings"); + } + LLError::initForApplication(path); +// LLError::setDefaultLevel(LLError::LEVEL_INFO); +// LLError::setPrintLocation(true); +// LLError::setTagLevel("Plugin", LLError::LEVEL_DEBUG); +// LLError::setTagLevel("PluginPipe", LLError::LEVEL_DEBUG); +// LLError::setTagLevel("PluginChild", LLError::LEVEL_DEBUG); +// LLError::setTagLevel("PluginInstance", LLError::LEVEL_DEBUG); + // LLError::logToFile("slplugin.log"); } -- cgit v1.1 From 2ed44e4426cdd810cb204cbdafb78ff03964c1a8 Mon Sep 17 00:00:00 2001 From: Armin Weatherwax Date: Tue, 1 Mar 2011 17:33:03 +0100 Subject: Improve the error message for a missing login screen --- .../default/html/en-us/loading-error/index.html | 54 ++++++++++++++-------- 1 file changed, 36 insertions(+), 18 deletions(-) (limited to 'linden') diff --git a/linden/indra/newview/skins/default/html/en-us/loading-error/index.html b/linden/indra/newview/skins/default/html/en-us/loading-error/index.html index 71f9c86..37c8405 100644 --- a/linden/indra/newview/skins/default/html/en-us/loading-error/index.html +++ b/linden/indra/newview/skins/default/html/en-us/loading-error/index.html @@ -1,14 +1,14 @@ - + + DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -Unable to Connect -