You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by sv...@apache.org on 2015/11/18 19:39:30 UTC
wicket git commit: allow markup inside title via
#setEscapeModelStrings()
Repository: wicket
Updated Branches:
refs/heads/master 497a5d629 -> dffba2ce4
allow markup inside title via #setEscapeModelStrings()
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/dffba2ce
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/dffba2ce
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/dffba2ce
Branch: refs/heads/master
Commit: dffba2ce410ec7e917ad350d3528af4df67bc348
Parents: 497a5d6
Author: Sven Meier <sv...@apache.org>
Authored: Wed Nov 18 19:18:47 2015 +0100
Committer: Sven Meier <sv...@apache.org>
Committed: Wed Nov 18 19:26:25 2015 +0100
----------------------------------------------------------------------
.../ajax/markup/html/modal/ModalWindow.java | 30 ++++++--------------
1 file changed, 8 insertions(+), 22 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/dffba2ce/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java
index a551eda..12592ff 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java
@@ -42,7 +42,6 @@ import org.apache.wicket.resource.CoreLibrariesContributor;
import org.apache.wicket.util.io.IClusterable;
import org.apache.wicket.util.lang.EnumeratedType;
import org.apache.wicket.util.string.AppendingStringBuffer;
-import org.apache.wicket.util.string.Strings;
/**
* Modal window component.
@@ -74,8 +73,11 @@ import org.apache.wicket.util.string.Strings;
* <code>{@link #close(IPartialPageRequestHandler)})</code>, you can use
* <code>{@link #setWindowClosedCallback(ModalWindow.WindowClosedCallback)}</code>.
* <p>
- * Title is specified using {@link #setTitle(String)}. If the content is a page (iframe), the title
- * can remain unset, in that case title from the page inside window will be shown.
+ * Title is specified using {@link #setTitle(String)}. Pass <code>true</code> to
+ * <code>{@link #setEscapeModelStrings(boolean)}</code> to use unencoded markup in the title.
+ * <br>
+ * If the content is a page (iframe), the title can remain unset, in that case title from the page
+ * inside window will be shown.
* <p>
* There are several options to specify the visual properties of the window. In all methods where
* size is expected, width refers to width of entire window (including frame), height refers to the
@@ -1016,23 +1018,6 @@ public class ModalWindow extends Panel
}
/**
- * Replaces all occurrences of " in string with \".
- *
- * @param string
- * String to be escaped.
- *
- * @return escaped string
- */
- private String escapeQuotes(String string)
- {
- if (string.indexOf('"') != -1)
- {
- string = Strings.replaceAll(string, "\"", "\\\"").toString();
- }
- return string;
- }
-
- /**
* Returns the javascript used to open the window. Subclass
* {@link #postProcessSettings(AppendingStringBuffer)} to modify the JavaScript if needed.
*
@@ -1108,10 +1093,11 @@ public class ModalWindow extends Panel
appendAssignment(buffer, "settings.cookieId", getCookieName());
}
- Object title = getTitle() != null ? getTitle().getObject() : null;
+ String title = getTitle() != null ? getTitle().getObject() : null;
if (title != null)
{
- appendAssignment(buffer, "settings.title", escapeQuotes(title.toString()));
+ String escaped = getDefaultModelObjectAsString(title);
+ appendAssignment(buffer, "settings.title", escaped);
}
if (getMaskType() == MaskType.TRANSPARENT)