diff options
author | Armin Weatherwax | 2010-08-07 19:17:13 +0200 |
---|---|---|
committer | Armin Weatherwax | 2010-09-23 15:42:40 +0200 |
commit | 70800de39a3d942d2120abd926fbdb24577fb0f6 (patch) | |
tree | efeb12456e1a8ee7182656dc7503dc9b89a07a63 /linden/indra/llplugin/llpluginclassmedia.cpp | |
parent | fix some mime type issues (diff) | |
download | meta-impy-70800de39a3d942d2120abd926fbdb24577fb0f6.zip meta-impy-70800de39a3d942d2120abd926fbdb24577fb0f6.tar.gz meta-impy-70800de39a3d942d2120abd926fbdb24577fb0f6.tar.bz2 meta-impy-70800de39a3d942d2120abd926fbdb24577fb0f6.tar.xz |
update to viewer-external SLPlugin + webkit. Fixes (lots of) webpages not loading.
Issue: llqtwebkit needs update for Linux 64bit
Diffstat (limited to '')
-rwxr-xr-x | linden/indra/llplugin/llpluginclassmedia.cpp | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/linden/indra/llplugin/llpluginclassmedia.cpp b/linden/indra/llplugin/llpluginclassmedia.cpp index b958f0c..8664524 100755 --- a/linden/indra/llplugin/llpluginclassmedia.cpp +++ b/linden/indra/llplugin/llpluginclassmedia.cpp | |||
@@ -59,11 +59,15 @@ LLPluginClassMedia::LLPluginClassMedia(LLPluginClassMediaOwner *owner) | |||
59 | mOwner = owner; | 59 | mOwner = owner; |
60 | mPlugin = NULL; | 60 | mPlugin = NULL; |
61 | reset(); | 61 | reset(); |
62 | |||
63 | //debug use | ||
64 | mDeleteOK = true ; | ||
62 | } | 65 | } |
63 | 66 | ||
64 | 67 | ||
65 | LLPluginClassMedia::~LLPluginClassMedia() | 68 | LLPluginClassMedia::~LLPluginClassMedia() |
66 | { | 69 | { |
70 | llassert_always(mDeleteOK) ; | ||
67 | reset(); | 71 | reset(); |
68 | } | 72 | } |
69 | 73 | ||
@@ -162,7 +166,7 @@ void LLPluginClassMedia::idle(void) | |||
162 | mPlugin->idle(); | 166 | mPlugin->idle(); |
163 | } | 167 | } |
164 | 168 | ||
165 | if((mMediaWidth == -1) || (!mTextureParamsReceived) || (mPlugin == NULL)) | 169 | if((mMediaWidth == -1) || (!mTextureParamsReceived) || (mPlugin == NULL) || (mPlugin->isBlocked())) |
166 | { | 170 | { |
167 | // Can't process a size change at this time | 171 | // Can't process a size change at this time |
168 | } | 172 | } |
@@ -439,6 +443,12 @@ void LLPluginClassMedia::mouseEvent(EMouseEventType type, int button, int x, int | |||
439 | { | 443 | { |
440 | if(type == MOUSE_EVENT_MOVE) | 444 | if(type == MOUSE_EVENT_MOVE) |
441 | { | 445 | { |
446 | if(!mPlugin || !mPlugin->isRunning() || mPlugin->isBlocked()) | ||
447 | { | ||
448 | // Don't queue up mouse move events that can't be delivered. | ||
449 | return; | ||
450 | } | ||
451 | |||
442 | if((x == mLastMouseX) && (y == mLastMouseY)) | 452 | if((x == mLastMouseX) && (y == mLastMouseY)) |
443 | { | 453 | { |
444 | // Don't spam unnecessary mouse move events. | 454 | // Don't spam unnecessary mouse move events. |
@@ -995,6 +1005,13 @@ void LLPluginClassMedia::receivePluginMessage(const LLPluginMessage &message) | |||
995 | mClickTargetType = TARGET_NONE; | 1005 | mClickTargetType = TARGET_NONE; |
996 | mediaEvent(LLPluginClassMediaOwner::MEDIA_EVENT_CLICK_LINK_NOFOLLOW); | 1006 | mediaEvent(LLPluginClassMediaOwner::MEDIA_EVENT_CLICK_LINK_NOFOLLOW); |
997 | } | 1007 | } |
1008 | else if(message_name == "cookie_set") | ||
1009 | { | ||
1010 | if(mOwner) | ||
1011 | { | ||
1012 | mOwner->handleCookieSet(this, message.getValue("cookie")); | ||
1013 | } | ||
1014 | } | ||
998 | else | 1015 | else |
999 | { | 1016 | { |
1000 | LL_WARNS("Plugin") << "Unknown " << message_name << " class message: " << message_name << LL_ENDL; | 1017 | LL_WARNS("Plugin") << "Unknown " << message_name << " class message: " << message_name << LL_ENDL; |
@@ -1078,6 +1095,13 @@ void LLPluginClassMedia::clear_cookies() | |||
1078 | sendMessage(message); | 1095 | sendMessage(message); |
1079 | } | 1096 | } |
1080 | 1097 | ||
1098 | void LLPluginClassMedia::set_cookies(const std::string &cookies) | ||
1099 | { | ||
1100 | LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_MEDIA_BROWSER, "set_cookies"); | ||
1101 | message.setValue("cookies", cookies); | ||
1102 | sendMessage(message); | ||
1103 | } | ||
1104 | |||
1081 | void LLPluginClassMedia::enable_cookies(bool enable) | 1105 | void LLPluginClassMedia::enable_cookies(bool enable) |
1082 | { | 1106 | { |
1083 | LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_MEDIA_BROWSER, "enable_cookies"); | 1107 | LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_MEDIA_BROWSER, "enable_cookies"); |