You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shindig.apache.org by rb...@apache.org on 2013/02/05 18:47:57 UTC
svn commit: r1442677 -
/shindig/trunk/features/src/main/javascript/features/embeddedexperiences/embedded_experiences_container.js
Author: rbaxter85
Date: Tue Feb 5 17:47:56 2013
New Revision: 1442677
URL: http://svn.apache.org/viewvc?rev=1442677&view=rev
Log:
SHINDIG-1900
Embedded experience navigate API does not allow for double buffering
Modified:
shindig/trunk/features/src/main/javascript/features/embeddedexperiences/embedded_experiences_container.js
Modified: shindig/trunk/features/src/main/javascript/features/embeddedexperiences/embedded_experiences_container.js
URL: http://svn.apache.org/viewvc/shindig/trunk/features/src/main/javascript/features/embeddedexperiences/embedded_experiences_container.js?rev=1442677&r1=1442676&r2=1442677&view=diff
==============================================================================
--- shindig/trunk/features/src/main/javascript/features/embeddedexperiences/embedded_experiences_container.js (original)
+++ shindig/trunk/features/src/main/javascript/features/embeddedexperiences/embedded_experiences_container.js Tue Feb 5 17:47:56 2013
@@ -35,12 +35,13 @@
* @param {Element} element the element to put the gadget in.
* @param {Object} dataModel the EE data model.
* @param {Object} renderParams params to augment the rendering.
- * @param {Function} opt_callback called once the gadget has been navigated to.
- * @param {Object} opt_containerContext additional context that a container could pass to gadget.
+ * @param {Function=} opt_callback called once the gadget has been navigated to.
+ * @param {Object=} opt_containerContext additional context that a container could pass to gadget.
* The container context should contain at least "associatedContext" which is used
* to define context where the gadget is displayed.
+ * @param {Element=} opt_bufferEl The optional element to use for double buffering when rendering the gadget.
*/
- function navigateGadget_(element, dataModel, renderParams, opt_callback, opt_containerContext) {
+ function navigateGadget_(element, dataModel, renderParams, opt_callback, opt_containerContext, opt_bufferEl) {
var viewParams = renderParams[osapi.container.ee.RenderParam.GADGET_VIEW_PARAMS] || {};
var localRenderParams =
renderParams[osapi.container.ee.RenderParam.GADGET_RENDER_PARAMS] || {};
@@ -89,7 +90,7 @@
}
localRenderParams[osapi.container.ee.RenderParam.DATA_MODEL] = dataModel;
- var site = context.newGadgetSite(element);
+ var site = context.newGadgetSite(element, opt_bufferEl);
var gadgetUrl = dataModel[ee_data_model.GADGET];
context.preloadGadget(gadgetUrl, function(result) {
@@ -179,11 +180,12 @@
* @param {Element} element the element to render the embedded experience in.
* @param {Object} datModel the EE data model.
* @param {Object} renderParams parameters for the embedded experience.
- * @param {Function} opt_callback callback function which will be called after the
+ * @param {Function=} opt_callback callback function which will be called after the
* gadget has rendered.
- * @param {Object} opt_containerContext additional context that a container could pass to gadget
+ * @param {Object=} opt_containerContext additional context that a container could pass to gadget
+ * @param {Element=} opt_bufferEl Element to use for double buffering when rendering a gadget.
*/
- 'navigate' : function(element, dataModel, renderParams, opt_callback, opt_containerContext) {
+ 'navigate' : function(element, dataModel, renderParams, opt_callback, opt_containerContext, opt_bufferEl) {
var preferredEE = null;
if (!!context.config_ && !!context.config_[ee_containerconfig.GET_EE_NAVIGATION_TYPE] &&
(typeof context.config_[ee_containerconfig.GET_EE_NAVIGATION_TYPE] === 'function')) {
@@ -206,7 +208,7 @@
// Lets navigate
if (preferredEE === osapi.container.ee.TargetType.GADGET) {
- navigateGadget_(element, dataModel, renderParams, opt_callback, opt_containerContext);
+ navigateGadget_(element, dataModel, renderParams, opt_callback, opt_containerContext, opt_bufferEl);
}
else if (preferredEE === osapi.container.ee.TargetType.URL) {
navigateUrl_(element, dataModel, renderParams, opt_callback);