You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ma...@apache.org on 2009/01/30 15:42:17 UTC
svn commit: r739297 - in
/myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main:
java/org/apache/myfaces/trinidadinternal/agent/
java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/
java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/...
Author: matzew
Date: Fri Jan 30 14:42:16 2009
New Revision: 739297
URL: http://svn.apache.org/viewvc?rev=739297&view=rev
Log:
TRINIDAD-1365 - PPR and Tree component are not working for Safari browser installed in Nokia devices
TRINIDAD-1341 - <tr:ProcessChoiceBar> not working for Non-JavaScript mobile browsers
Thanks to Mamallan Uthaman for these patches
Modified:
myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/agent/AgentFactoryImpl.java
myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/TreeRenderer.java
myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/XhtmlUtils.java
myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/table/TreeUtils.java
myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/ProcessChoiceBarRenderer.java
myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/ProcessUtils.java
myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/SubmitButtonRenderer.java
myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Core.js
Modified: myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/agent/AgentFactoryImpl.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/agent/AgentFactoryImpl.java?rev=739297&r1=739296&r2=739297&view=diff
==============================================================================
--- myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/agent/AgentFactoryImpl.java (original)
+++ myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/agent/AgentFactoryImpl.java Fri Jan 30 14:42:16 2009
@@ -749,9 +749,10 @@
String version = _getVersion(agent, start);
agentObj.setType(Agent.TYPE_DESKTOP);
- if (agent.indexOf("Symbian") > -1)
+ if ((agent.indexOf("Symbian") > -1) || (agent.indexOf("Nokia") > -1))
{
agentObj.setAgent(Agent.AGENT_NOKIA_S60);
+ agentObj.setPlatform(Agent.AGENT_NOKIA_S60);
}
else
{
Modified: myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/TreeRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/TreeRenderer.java?rev=739297&r1=739296&r2=739297&view=diff
==============================================================================
--- myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/TreeRenderer.java (original)
+++ myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/TreeRenderer.java Fri Jan 30 14:42:16 2009
@@ -328,6 +328,7 @@
protected void renderExpandCell(
FacesContext context,
RenderingContext rc,
+ UIXHierarchy tree,
int expanded,
boolean isLastSibling,
String onclick
@@ -348,8 +349,9 @@
Object altText = null;
String text = null;
-
- boolean isMacOS = rc.getAgent().getPlatformName().equals(Agent.PLATFORM_MACOS);
+
+ boolean isMacOS =
+ Agent.PLATFORM_MACOS.equals(rc.getAgent().getPlatformName());
// add in the expandability
switch (expanded)
{
@@ -428,7 +430,7 @@
altText, _ICON_WIDTH, iconHeight, onclick);
} else
{
- _renderTextCell(context, rc, text, altText, _ICON_WIDTH, onclick,
+ _renderTextCell(context, rc, tree, expanded, text, altText, _ICON_WIDTH, onclick,
SkinSelectors.TREE_DISCLOSED_SYMBOL_STYLE_CLASS);
}
@@ -437,6 +439,8 @@
private void _renderTextCell(FacesContext context,
RenderingContext rc,
+ UIXHierarchy tree,
+ int expanded,
String text,
Object altText, String width,
String onclick, String styleClass)
@@ -448,20 +452,49 @@
writer.writeAttribute(XhtmlConstants.WIDTH_ATTRIBUTE, width, null);
writer.writeAttribute("title", altText, null);
renderStyleClass(context, rc, styleClass);
+ boolean jsSupport = supportsScripting(rc);
if (onclick != null)
{
- writer.startElement(XhtmlConstants.LINK_ELEMENT, null);
- writer.writeAttribute(XhtmlConstants.HREF_ATTRIBUTE, "#", null);
- writer.writeAttribute(XhtmlConstants.ONCLICK_ATTRIBUTE, onclick, null);
+ if (jsSupport)
+ {
+ writer.startElement(XhtmlConstants.LINK_ELEMENT, null);
+ writer.writeAttribute(XhtmlConstants.HREF_ATTRIBUTE, "#", null);
+ writer.writeAttribute(XhtmlConstants.ONCLICK_ATTRIBUTE, onclick, null);
+ }
+ else
+ {
+ // For Non-JavaScript browsers, render an input element(type= submit) to
+ // submit the page. Encode the name attribute with the parameter name
+ // and value thus it would enable the browsers to include the name of
+ // this element in its payLoad if it submits the page.
+ String nameAttr = TreeUtils.renderEncodedNameAttri(
+ context,
+ rc,
+ tree,
+ getClientId(context, tree),
+ expanded == EXPAND_CLOSED);
+
+ writer.startElement("input", null);
+ writer.writeAttribute("type", "submit",null);
+ writer.writeAttribute("name", nameAttr, null);
+ writer.writeAttribute("value", text, null);
+ }
}
- if (text != null)
+ if (text != null && jsSupport)
writer.writeText(text, null);
if (onclick != null)
{
- writer.endElement(XhtmlConstants.LINK_ELEMENT);
+ if (jsSupport)
+ {
+ writer.endElement(XhtmlConstants.LINK_ELEMENT);
+ }
+ else
+ {
+ writer.endElement("input");
+ }
}
writer.endElement(XhtmlConstants.TABLE_DATA_ELEMENT);
@@ -710,7 +743,7 @@
(expand == EXPAND_CLOSED));
}
- renderExpandCell(context, rc, expand, isLastSibling, onclickExpand);
+ renderExpandCell(context, rc, tree, expand, isLastSibling, onclickExpand);
// DataObject curData = BeanAdapterUtils.getAdapter(context, tree.getRowData());
@@ -886,7 +919,11 @@
// out.writeAttribute(ID_ATTRIBUTE,
// treename + IntegerUtils.getString(renderedIndex));
renderStyleClass(context, rc, treeStyle);
- writer.writeAttribute(XhtmlConstants.ONCLICK_ATTRIBUTE, onClick, null);
+
+ if (supportsScripting(rc))
+ {
+ writer.writeAttribute(XhtmlConstants.ONCLICK_ATTRIBUTE, onClick, null);
+ }
// if screen reader mode render the stamp with level of node from root
_renderStampBasedOnAccessibilty(context, rc, stamp, nodeDepth);
Modified: myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/XhtmlUtils.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/XhtmlUtils.java?rev=739297&r1=739296&r2=739297&view=diff
==============================================================================
--- myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/XhtmlUtils.java (original)
+++ myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/XhtmlUtils.java Fri Jan 30 14:42:16 2009
@@ -535,6 +535,45 @@
{
return param + XhtmlConstants.NO_JS_PARAMETER_KEY;
}
+
+ /*
+ * This method returns the name attribute of HTML elements for Non-JavaScript
+ * browsers. It is encoded with parameter name and value pair.
+ */
+ public static String getEncodedNameAttribute(String param[])
+ {
+ // The incoming array(param[]) must contain parameter name and value pair
+ // in the order of <<name1>>, <<value1>>, <<name2>>, <<value2>>,...
+ // The encoded parameter name and value for the above would be
+ // <<name1>><<encodingKey>><<value1>><<encodingKey>>
+ // <<name2>><<encodingKey>><<value2>>
+
+ int noOfParam = param.length;
+ int bufferLen = 0;
+
+ // Calculate what would be the length of the encoded param name and
+ // value pair. We need it to initialize the buffer size of StringBuilder.
+ for(int i = 0; i < noOfParam; i++)
+ {
+ bufferLen += param[i].length();
+ }
+ // If there are N parameter names and values, there would be N-1
+ // encoding key so add its length also
+ bufferLen += (noOfParam -1) * XhtmlConstants.NO_JS_PARAMETER_KEY.length();
+
+ StringBuilder nameAttri = new StringBuilder(bufferLen);
+
+ //Encode all the parameter names and values except the last parameter value
+ for(int i = 0; i < noOfParam-1; i++)
+ {
+ nameAttri.append(getEncodedParameter(param[i]));
+ }
+
+ nameAttri.append(param[noOfParam-1]);
+
+ return(nameAttri.toString());
+ }
+
/** HashMap mapping names to their scriptlets */
private static Map<Object, Scriptlet> _sScriptletTable =
Modified: myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/table/TreeUtils.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/table/TreeUtils.java?rev=739297&r1=739296&r2=739297&view=diff
==============================================================================
--- myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/table/TreeUtils.java (original)
+++ myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/table/TreeUtils.java Fri Jan 30 14:42:16 2009
@@ -359,6 +359,31 @@
preserve.run((UIXHierarchy) tree);
}
+
+ /**
+ * Returns <code>String</code> object containing encoded
+ * parameter name and value pair for Non-JavaScript browsers.
+ */
+ public static String renderEncodedNameAttri(
+ FacesContext context,
+ RenderingContext rc,
+ UIXHierarchy tree,
+ String treeName,
+ boolean isExpand)
+ throws IOException
+ {
+
+ return XhtmlUtils.getEncodedNameAttribute (
+ // Array should be in the order of name
+ // and value pair
+ new String[]{ XhtmlConstants.SOURCE_PARAM,
+ treeName,
+ XhtmlConstants.EVENT_PARAM,
+ isExpand ? _SHOW : _HIDE,
+ _PATH_PARAM,
+ _getPathParam(tree)});
+
+ }
private static RowKeySet _getExpandedRowKeys(UIXHierarchy tree)
{
Modified: myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/ProcessChoiceBarRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/ProcessChoiceBarRenderer.java?rev=739297&r1=739296&r2=739297&view=diff
==============================================================================
--- myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/ProcessChoiceBarRenderer.java (original)
+++ myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/ProcessChoiceBarRenderer.java Fri Jan 30 14:42:16 2009
@@ -292,12 +292,12 @@
null,
formName,
false,
- eventKey,
- sourceKey,
+ EVENT_PARAM,
+ SOURCE_PARAM,
nameString,
- valueKey,
+ VALUE_PARAM,
selectedIndex - 1,
- sizeKey,
+ SIZE_PARAM,
0);
}
}
@@ -370,12 +370,12 @@
buttonID,
formName,
false,
- eventKey,
- sourceKey,
+ EVENT_PARAM,
+ SOURCE_PARAM,
nameString,
- valueKey,
+ VALUE_PARAM,
selectedIndex + 1,
- sizeKey,
+ SIZE_PARAM,
1);
}
Modified: myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/ProcessUtils.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/ProcessUtils.java?rev=739297&r1=739296&r2=739297&view=diff
==============================================================================
--- myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/ProcessUtils.java (original)
+++ myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/ProcessUtils.java Fri Jan 30 14:42:16 2009
@@ -25,14 +25,15 @@
import javax.faces.context.ResponseWriter;
import org.apache.myfaces.trinidad.component.UIXCollection;
+import org.apache.myfaces.trinidad.context.RenderingContext;
+import org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.jsLibs.Scriptlet;
+import org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.XhtmlUtils;
import org.apache.myfaces.trinidadinternal.share.url.FormEncoder;
import org.apache.myfaces.trinidadinternal.ui.UIXRenderingContext;
import org.apache.myfaces.trinidadinternal.ui.UIConstants;
import org.apache.myfaces.trinidadinternal.ui.UINode;
import org.apache.myfaces.trinidadinternal.ui.beans.MarlinBean;
-import org.apache.myfaces.trinidad.context.RenderingContext;
-import org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.jsLibs.Scriptlet;
import org.apache.myfaces.trinidad.util.IntegerUtils;
/**
@@ -72,17 +73,20 @@
submitButton.setAttributeValue(UIConstants.TEXT_ATTR, buttonText);
submitButton.setAttributeValue(UIConstants.ACCESS_KEY_ATTR,
buttonAccessKey);
-
- submitButton.setAttributeValue(UIConstants.NAME_VALUES_ATTR,
- _createKeyValueArray(eventKey,
- sourceKey,
- source,
- valueKey,
- value,
- sizeKey,
- size,
- null,
- null));
+
+ String nameAttri = XhtmlUtils.getEncodedNameAttribute (
+ //Array should be in the order of parameter name and value pair
+ new String[]{sourceKey,
+ source,
+ eventKey,
+ UIConstants.GOTO_EVENT,
+ valueKey,
+ Long.toString(value),
+ sizeKey,
+ Integer.toString(size)});
+
+ submitButton.setAttributeValue(UIConstants.NAME_ATTR, nameAttri);
+
return submitButton;
}
Modified: myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/SubmitButtonRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/SubmitButtonRenderer.java?rev=739297&r1=739296&r2=739297&view=diff
==============================================================================
--- myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/SubmitButtonRenderer.java (original)
+++ myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/ui/laf/base/xhtml/SubmitButtonRenderer.java Fri Jan 30 14:42:16 2009
@@ -46,21 +46,15 @@
{
super.renderAttributes(context, node);
- // if we don't support scripting, we have to generate a special
- // compound name for the submit button
+ // For Non-JavaScript browsers, render the name atttribute which is
+ // encoded with parameter name and value pair.
if (!supportsScripting(context))
{
- String compoundName = XhtmlLafUtils.createCompoundName(
- context,
- getParentFormName(context),
- getNameValues(context, node),
- null);
-
- context.getResponseWriter().writeAttribute("name", compoundName, null);
- }
+ context.getResponseWriter().writeAttribute("name",
+ node.getAttributeValue(context, NAME_ATTR), null);
+ }
}
-
/**
* Override to change the type of the button
*/
Modified: myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Core.js
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Core.js?rev=739297&r1=739296&r2=739297&view=diff
==============================================================================
--- myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Core.js (original)
+++ myfaces/trinidad/trunk_1.2.x/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Core.js Fri Jan 30 14:42:16 2009
@@ -220,6 +220,7 @@
var isSolaris = false;
var isWindows = false;
var isWindowsMobile6 = false;
+ var isNokiaPhone = false;
var kind = "unknown";
// Group IE and IE based browsers such as IE Mobile on WM5 and WM6
@@ -349,6 +350,12 @@
{
isSolaris = true;
}
+ else if ((agentString.indexOf('symbian') != -1) ||
+ (agentString.indexOf('nokia') != -1))
+ {
+ isNokiaPhone = true;
+ pprUnsupported = true;
+ }
_agent.isBlackBerry = isBlackBerry;
_agent.isGecko = isGecko;
@@ -356,6 +363,7 @@
_agent.isIEGroup = isIEGroup;
_agent.isMac = isMac;
_agent.isNav = isNav;
+ _agent.isNokiaPhone = isNokiaPhone;
_agent.isOpera = isOpera;
_agent.isPIE = isPIE;
_agent.isSafari = isSafari;
@@ -1223,9 +1231,29 @@
var funcName = '_' + _getJavascriptId(_getFormName(form)) + 'Validator';
var formWind = window[funcName];
- if (formWind)
- return formWind(form, source);
-
+ if (formWind)
+ {
+ try
+ {
+ ret = formWind(form, source);
+ }
+ catch (e)
+ {
+ // Validator did not execute normally.
+ // In case for mobile devices, BlackBerry, Nokia, Windows Mobile and PPC
+ // return true in order to submit the form.
+ if (_agent.isPIE || _agent.isNokiaPhone || _agent.isBlackBerry)
+ {
+ ret = true;
+ }
+ else
+ {
+ ret = false;
+ }
+ }
+ return ret;
+ }
+
return false;
}
@@ -1320,12 +1348,22 @@
// Get the current message
var facesMessage = messages[j];
-
- var errorString = _getGlobalErrorString(currInput,
- globalMessage,
- facesMessage.getDetail(),
- label);
-
+
+ if (_agent.isNokiaPhone)
+ {
+ errorString = _getGlobalErrorString(currInput,
+ globalMessage,
+ facesMessage,
+ label);
+ }
+ else
+ {
+ errorString = _getGlobalErrorString(currInput,
+ globalMessage,
+ facesMessage.getDetail(),
+ label);
+ }
+
failureString += errorString + '\n';
}
}
@@ -1411,12 +1449,30 @@
var facesMessage = messages[j];
if (msgElem)
- msgElem.innerHTML += facesMessage.getDetail();
+ {
+ if (_agent.isNokiaPhone)
+ {
+ msgElem.innerHTML = facesMessage;
+ }
+ else
+ {
+ msgElem.innerHTML = facesMessage.getDetail();
+ }
+ }
// if there's nowhere to display the message in either
// summary or detail, then pop an alert to warn the page developer
if (!msgElem && !TrMessageBox.isPresent())
- alert("Field Error [" + currId + "] - " + facesMessage.getDetail());
+ {
+ if (_agent.isNokiaPhone)
+ {
+ alert("Field Error [" + currId + "] - " + facesMessage);
+ }
+ else
+ {
+ alert("Field Error [" + currId + "] - " + facesMessage.getDetail());
+ }
+ }
// Add the message to the MessageBox
TrMessageBox.addMessage(currId, label, facesMessage);
@@ -2489,8 +2545,15 @@
catch (e)
{
converterError = true;
- // Populate the failureMap with the current error
- inputFailures[inputFailures.length] = e.getFacesMessage();
+ // Populate the failureMap with the current error
+ if (_agent.isPIE || _agent.isNokiaPhone || _agent.isBlackBerry)
+ {
+ inputFailures[inputFailures.length] = e.message;
+ }
+ else
+ {
+ inputFailures[inputFailures.length] = e.getFacesMessage();
+ }
}
}
}
@@ -2521,7 +2584,14 @@
catch (e)
{
// Populate the failureMap with the current error
- inputFailures[inputFailures.length] = e.getFacesMessage();
+ if (_agent.isPIE || _agent.isNokiaPhone || _agent.isBlackBerry)
+ {
+ inputFailures[inputFailures.length] = e.message;
+ }
+ else
+ {
+ inputFailures[inputFailures.length] = e.getFacesMessage();
+ }
}
}
}
@@ -3391,6 +3461,10 @@
//
function _pprStartBlocking(win)
{
+ // No blocking is performed on WM, Nokia, PPC and BlackBerry devices
+ if (_agent.isPIE || _agent.isNokiaPhone || _agent.isBlackBerry)
+ return;
+
if (_agent.isIE)
{
// see TRINIDAD-952 - IE does not update the activeElement in time before
@@ -3452,6 +3526,11 @@
//
function _pprStopBlocking(win)
{
+
+ // No blocking is performed on Nokia, PPC and BlackBerry devices
+ if (_agent.isPIE || _agent.isNokiaPhone || _agent.isBlackBerry)
+ return;
+
var doc = win.document;
if (win._pprBlocking)
@@ -4158,8 +4237,11 @@
_setFocus(myElement);
}
- // Initialize ourselves if we're in a PopupDialog
- TrPopupDialog._initDialogPage();
+ // Initialize ourselves if we're in a PopupDialog except for Nokia
+ if (!_agent.isNokiaPhone)
+ {
+ TrPopupDialog._initDialogPage();
+ }
}