summaryrefslogtreecommitdiff
path: root/indra/newview/llviewermedia.cpp
AgeCommit message (Collapse)Author
2009-11-09Refinement to my previous commit:Monroe Linden
Created LLViewerMediaImpl::unload(), which unloads the media and clears internal state (such as the last-navigated URL) to keep it from getting reloaded. LLViewerMedia::updateMediaImpl() now calls unload() on the impl instead of just using destroyMediaSource().
2009-11-09Fix for DEV-42029 (changing media on multiple faces can make a zombie SLPlugin).Monroe Linden
Made LLViewerMedia::updateMediaImpl() unload the impl's media plugin when the current URL goes empty. Made LLVOVolume::syncMediaData() call removeMediaImpl() if the media data gets deleted.
2009-11-05Fix for DEV-39258.Monroe Linden
When the amount of the texture that's being drawn by the plugin shrinks in either width or height, reallocate the texture (which clears it).
2009-11-02Hook up LLViewerMediaImpl::getName() to call through to ↵Monroe Linden
LLPluginClassMedia::getMediaName() as it should.
2009-10-30On a double-click in the nearby media list, try to focus/zoom in on the prim ↵Monroe Linden
holding the media.
2009-10-30Initial pass at filling in the list in the nearby media floater.Monroe Linden
2009-10-30Add implementation for adding and removing items to and from the nearby ↵Rick Pasetto
media list scroll control
2009-10-30Partial implementation of LLFloaterNearbyMedia::refreshList(), with many ↵Monroe Linden
TODO sections and a bit of ifdef-ed out pseudocode. Initial pass at LLViewerMediaImpl::getProximity(). Currently it just returns the position in the priority list, but that will change.
2009-10-30Fixed a couple problems with getPriorityList().Monroe Linden
2009-10-30Fix a couple other build issues with my previous commit.Monroe Linden
2009-10-30Hooks for the "nearby media" UI.Monroe Linden
Added LLViewerMediaImpl::set/getDisabled(), which will prevent a media instance from loading. Added LLViewerMedia::set/getInWorldMediaDisabled(), which will disable all inworld media fom loading. Added LLViewerMedia::getPriorityList() and made the priority comparitor public.
2009-10-29Added LLViewerMediaImpl::scrollWheel() to route scroll wheel events through ↵Monroe Linden
the media impl. The horizontal scroll arrows in the media controls now send horizontal scrollwheel events instead of arrow keys.
2009-10-29Fix for DEV-41978 (media controls URL is incorrect after whitelist bounces ↵Monroe Linden
webpage back). Added LLViewerMediaImpl::getCurrentMediaURL(), which reflects the most recent url either set with navigateTo or received from the plugin via locationChanged/navigateComplete. LLViewerMediaImpl now uses this when reload() is called. LLPanelPrimMediaControls now uses getCurrentMediaURL() to get the url it displays in the URL input bar and opens with the pop-out control.
2009-10-28Fixes for DEV-41791 and DEV-41920.Monroe Linden
Reworked some of the autoplay logic in LLViewerMediaImpl to try and make it more consistent when media is unloaded and reloaded by the performance manager. LLViewerMediaImpl will now keep track of the media state and current time of media that it unloads for performance reasons, and attempt to restore playing or paused media to the same playhead time and state (playing or paused) when it reloads. Added "done" status that time-based media plugins can use to indicate that they've reached the end of the media and stopped. Added logging of priority transitions, for use in debugging issues with the peformance manager.
2009-10-27Fake a key-up event after each key-down sent to a plugin.Monroe Linden
2009-10-27When media impls crash, don't auto-reload them without some trigger (such as ↵Monroe Linden
clicking on the object again or an incoming NAVIGATE event). This should fix the crash-reload loop issue. Also, be smarter about counting media impls for the hard cap (never count impls that aren't loaded).
2009-10-27Change some logging in LLViewerMediaImpl::navigateTo() to be more explicit ↵Monroe Linden
about what's happening.
2009-10-27Fix for DEV-41435 and DEV-41434 (unload media instances associated with ↵Monroe Linden
muted objects/object owners) Unloading based on object owner isn't completely reliable, because the viewer doesn't have owner data for all objects it knows about.
2009-10-26Volume controls in the media HUD should now work -- this fixes DEV-41746, ↵Monroe Linden
DEV-41748, and DEV-40782. Added LLPluginClassMedia::getVolume(). Added setVolume/getVolumeupdateVolume methods to LLViewerMediaImpl. LLViewerMedia::setVolume() now no longer overrides the volume settings on all media instances -- it now sets a "global volume" value which is multiplied by all instances' volumes to modulate them. Cleaned up volume/mute handling in LLPanelMediaHUD (made it go through the LLViewerMediaImpl interface instead of directly through LLPluginClassMedia, and removed the mMediaVolume member variable, since the media impl now stores that state).
2009-10-23Mergecallum
2009-10-23DEV-41787 Media Auto Play controls were removed from prefs. Also made auto ↵skolb
play override prim settings.
2009-10-23Changes to match new version of llqtwebkit -- passing modifier keys through ↵Monroe Linden
to most user events and using new scroll wheel event.
2009-10-21Fix for DEV-41542 (hitting Tab at google login on MoaP inserts a character ↵Monroe Linden
into the password field). Moved some special-case handling from LLMediaCtrl::handleKeyHere/handleUnicodeCharHere to LLViewerMediaImpl::handleKeyHere/handleUnicodeCharHere so that the key handling for LLViewerMediaFocus gets the benefit of it as well.
2009-10-20Fix for DEV-41567 (MoaP lags from "WARNING: ↵Monroe Linden
LLViewerMediaImpl::calculateInterest: no texture!" log spam). This log statement used to be an anomaly, but now that media can be unloaded it's a relatively common case.
2009-10-20Fix for clicking "home" or "reload" on a web media prim causing a flash of ↵Monroe Linden
the underlying texture.
2009-10-19Fix for a case where the webkit plugin never generates a LOCATION_CHANGED ↵Monroe Linden
event at all.
2009-10-19make callbacks for media hud control data driven, add whitelist indicator , ↵angela@angelas-macbook-pro.local
add secure browsing indicator
2009-10-15Major refactor of LLViewerMediaFocus and LLPanelMediaHUD.Monroe Linden
LLViewerMediaFocus now tracks two separate objects: the currently focused media object, and the media object that's currently being hovered over. It no longer stores smart pointers to either the LLViewerObject or the LLViewerMediaImpl -- it now looks up both by UUID every time they're needed, and fails gracefully if either goes away. This will prevent it from keeping objects from being deleted. The poorly-understood "mouseOverFlag" has been expunged. LLViewerMediaFocus no longer uses LLSelectMgr at all. The object to focus on is explicitly passed between LLViewerMediaFocus and LLPanelMediaHUD instead of going indirectly through the selection manager. LLViewerMediaFocus also no longer interacts with the pick from LLToolPie -- the data it needs from the pick (the object and normal vector) is passed explicitly. LLViewerMediaFocus::setCameraZoom and LLViewerMediaFocus::getBBoxAspectRatio now have no dependencies on the LLViewerMediaFocus object -- all the data they need is passed in when they're called by the LLPanelMediaHUD. I made them static member functions, but they could be moved to LLPanelMediaHUD or even made into file-scoped static functions. The only reason I didn't do either of those is that it seems like they belong with the LLViewerMediaFocus code as opposed to the HUD.
2009-10-13Adding debugging info to LLViewerMediaImpl::navigateToSteve Bennetts
2009-10-12merge of login-apipalange
2009-10-08Fix for some parcel media not loading properly (DEV-39135).Monroe Linden
There were a couple of issues interacting to cause this: Firstly, when LLViewerMediaImpl delayed loading the parcel media (which it normally does), it was losing track of the specified MIME type, but the autodiscovery code also wasn't being triggered. The code should now carry through both the specified MIME type and the autodiscovery flag when loading is delayed. Second, the new media autodiscovery code might not work for some legacy parcel media content (for example, if it's stored on a server that doesn't report the correct MIME types). The code has been changed to first check whether the specified MIME type maps to a known plugin and allow that to override MIME type detection, which should allow this legacy content to keep working.
2009-10-07Merged latest viewer/login-api with latest viewer/viewer-20brad kittenbrink
2009-10-07Don't set the nav state to MEDIANAVSTATE_NONE in response to ↵Monroe Linden
MEDIA_EVENT_NAVIGATE_COMPLETE. Doing so was breaking the bounceback code.
2009-10-07Merged in latest svn-imports-viewer-20 changes.brad kittenbrink
2009-10-05Fixes for a different class of plugin failures (where loading the plugin dll ↵Monroe Linden
fails) causing an error message loop: Made LLPluginProcessParent differentiate between failures launching/loading the plugin and failures after the plugin has been loaded. This allows us to handle launch failures differently, since retrying is unlikely to fix them. Added new media event MEDIA_EVENT_PLUGIN_FAILED_LAUNCH to indicate a launch failure. Added a case for the new event to LLViewerMediaImpl::handleMediaEvent() that sets the "failed init" flag to prevent retries.
2009-10-05* EXT-1301 - Fixed showstopper by eliminating the notification that was ↵Steven Bennetts
blocking testing (by getting triggered every frame on a failed media plugin load)
2009-10-05Fix for EXT-1301 (media_plugin_webkit dialog opens on loading the login page ↵Monroe Linden
and cannot be closed).
2009-10-02merge of latest viewer/viewer-20Mark Palange (Mani)
2009-10-01svn merge -r 134922:134973 ↵Monroe Williams
svn+ssh://svn.lindenlab.com/svn/linden/branches/media-on-a-prim/moap-7 Merging branches/media-on-a-prim/moap-7 down to viewer-2.0.
2009-09-18Merged latest viewer/viewer-20 into login-api.brad kittenbrink
2009-09-09merge -r132032-132812 ↵Richard Nelson
svn+ssh://svn.lindenlab.com/svn/linden/branches/gooey/gooey-1
2009-08-27Merged latest login-api with latest viewer-2.0.0-3 up through plugin-api-05 ↵brad kittenbrink
merge (r131929). Some minor post-merge cleanups still required.
2009-08-27svn merge -r 129841:129910 ↵Monroe Williams
svn+ssh://svn.lindenlab.com/svn/linden/branches/moss/pluginapi_05-merge@129910 svn merge -r 129913:131718 svn+ssh://svn.lindenlab.com/svn/linden/branches/pluginapi/pluginapi_05 Some branch shenannigans in the pluginapi_05 branch caused this to become a two-part merge.
2009-07-30Merged in viewer-2.0.0-3 changes up through r129050. Boost got clobbered so ↵brad kittenbrink
I'll need to rebuild that, plus a couple other minor clenaups.
2009-07-29DEV-35405 Added creation of <exe_dir>/components directory in debug builds ↵Mark Palange (Mani)
to quell the savage llmozlib.
2009-07-21merge https://svn.aws.productengine.com/secondlife/pe/stable-1/indra -r ↵Steven Bennetts
1078-1091 -> viewer-2.0.0-3
2009-07-10merge QAR-1579: texture-cleanup-1.Xiaohong Bao
2009-07-08merge -r 889-936 https://svn.aws.productengine.com/secondlife/pe/stable/ -> ↵Steven Bennetts
viewer-2-0 Also: * Moved media remote shortcut to Communicate menu * Changed mini map menu to toggle instead of show
2009-06-21merge -r 122421-124917 viewer-2.0.0-2 -> viewer-2.0.0-3Steven Bennetts
ignore-dead-branch
2009-06-04Merge of QAR-1383 event-system-7 into trunk.Brad Kittenbrink
svn merge -r 121797:121853 svn+ssh://svn.lindenlab.com/svn/linden/branches/merge-event-system-7