You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@shindig.apache.org by jo...@gmail.com on 2009/10/20 03:41:57 UTC
Fix handling of rtl values
Reviewers: shindig.remailer_gmail.com,
Description:
@see https://issues.apache.org/jira/browse/SHINDIG-1201
Please review this at http://codereview.appspot.com/136045
Affected files:
java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingGadgetRewriter.java
java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/MessageBundle.java
java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java
Index:
java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingGadgetRewriter.java
===================================================================
---
java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingGadgetRewriter.java
(revision 825269)
+++
java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingGadgetRewriter.java
(working copy)
@@ -38,7 +38,6 @@
import org.apache.shindig.gadgets.rewrite.GadgetRewriter;
import org.apache.shindig.gadgets.rewrite.MutableContent;
import org.apache.shindig.gadgets.spec.Feature;
-import org.apache.shindig.gadgets.spec.LocaleSpec;
import org.apache.shindig.gadgets.spec.MessageBundle;
import org.apache.shindig.gadgets.spec.ModulePrefs;
import org.apache.shindig.gadgets.spec.UserPref;
@@ -159,7 +158,10 @@
// This can be one script block.
Element mainScriptTag = document.createElement("script");
- injectMessageBundles(gadget, mainScriptTag);
+ GadgetContext context = gadget.getContext();
+ MessageBundle bundle = messageBundleFactory.getBundle(
+ gadget.getSpec(), context.getLocale(), context.getIgnoreCache());
+ injectMessageBundles(bundle, mainScriptTag);
injectDefaultPrefs(gadget, mainScriptTag);
injectPreloads(gadget, mainScriptTag);
@@ -168,10 +170,7 @@
Element body =
(Element)DomUtil.getFirstNamedChildNode(document.getDocumentElement(), "body");
- LocaleSpec localeSpec = gadget.getLocale();
- if (localeSpec != null) {
- body.setAttribute("dir", localeSpec.getLanguageDirection());
- }
+ body.setAttribute("dir", bundle.getLanguageDirection());
// re append head content
for (Node node : existingHeadContent) {
@@ -430,11 +429,7 @@
* Injects message bundles into the gadget output.
* @throws GadgetException If we are unable to retrieve the message
bundle.
*/
- private void injectMessageBundles(Gadget gadget, Node scriptTag) throws
GadgetException {
- GadgetContext context = gadget.getContext();
- MessageBundle bundle = messageBundleFactory.getBundle(
- gadget.getSpec(), context.getLocale(), context.getIgnoreCache());
-
+ private void injectMessageBundles(MessageBundle bundle, Node scriptTag)
throws GadgetException {
String msgs = bundle.toJSONString();
Text text =
scriptTag.getOwnerDocument().createTextNode("gadgets.Prefs.setMessages_(");
Index:
java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/MessageBundle.java
===================================================================
---
java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/MessageBundle.java
(revision 825269)
+++
java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/MessageBundle.java
(working copy)
@@ -96,10 +96,10 @@
String dir = null;
for (MessageBundle bundle : bundles) {
merged.putAll(bundle.messages);
- dir = bundle.languageDirection;
+ dir = bundle == EMPTY ? dir : bundle.languageDirection;
}
messages = ImmutableMap.copyOf(merged);
- languageDirection = dir;
+ languageDirection = dir != null ? dir : "ltr";
}
private MessageBundle() {
Index:
java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java
===================================================================
---
java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java
(revision 825269)
+++
java/gadgets/src/main/java/org/apache/shindig/gadgets/spec/ModulePrefs.java
(working copy)
@@ -17,7 +17,6 @@
*/
package org.apache.shindig.gadgets.spec;
import org.apache.shindig.common.uri.Uri;
-import org.apache.shindig.common.xml.XmlUtil;
import org.apache.shindig.gadgets.variables.Substitutions;
import com.google.common.base.Joiner;
@@ -29,8 +28,6 @@
import javax.xml.transform.*;
import javax.xml.transform.stream.StreamResult;
import java.util.*;
-import java.io.File;
-import java.io.PrintWriter;
import java.io.StringWriter;
/**