diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/elements/TextElement.java b/src/main/java/org/olat/core/gui/components/form/flexible/elements/TextElement.java index ac8f91dccd9d0c9d5767e63fc39e835542d747ed..1b76906b6a3c12758df0cbbb920ead8955769835 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/elements/TextElement.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/elements/TextElement.java @@ -63,6 +63,18 @@ public interface TextElement extends FormItem{ */ public void setValue(String value); + + /** + * OO-31 + * + * if you set this to true, this will prevent the default behavior of trimming + * the input-value on set. ( setValue() ) + * + * @param preventTrim + */ + public void preventValueTrim(boolean preventTrim); + + /** * Set a new value as the original value that is used when resetting the * form. This can be used when a form is saved and in a later form should be diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AbstractTextElement.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AbstractTextElement.java index b51b3f0bec31b52e641d444f73a018e31a9bdebf..31eae957a4ddd185df84c8ea4da7a2dc17fe69e5 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AbstractTextElement.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/AbstractTextElement.java @@ -63,6 +63,7 @@ public abstract class AbstractTextElement extends FormItemImpl implements TextEl private boolean checkForEquals = false; private boolean checkForMatchRegexp = false; private boolean checkForCustomItemValidator = false; + private boolean preventTrim = false; //OO-31 private String notEmptyErrorKey; private int notLongerLength; protected int displaySize; @@ -129,6 +130,12 @@ public abstract class AbstractTextElement extends FormItemImpl implements TextEl return filter.filter(value); } + /** + * @see org.olat.core.gui.components.form.flexible.elements.TextElement#preventValueTrim() + */ + public void preventValueTrim(boolean preventTrim){ + this.preventTrim = preventTrim; + } /** * Sets the value. if null is given, an empty string is assumed. @@ -138,7 +145,9 @@ public abstract class AbstractTextElement extends FormItemImpl implements TextEl public void setValue(String value) { if (value == null) value = ""; else { - value = value.trim(); + if(!preventTrim) // OO-31 + value = value.trim(); + // Remember original value for dirty evaluation. // null value is not regarded as initial value. only // real values are used inital values diff --git a/src/main/java/org/olat/modules/wiki/WikiEditArticleForm.java b/src/main/java/org/olat/modules/wiki/WikiEditArticleForm.java index 982a47429cc138b40efee2e877081731022f1465..c8438cd877b601e989a3b7eec296666e0a31337d 100644 --- a/src/main/java/org/olat/modules/wiki/WikiEditArticleForm.java +++ b/src/main/java/org/olat/modules/wiki/WikiEditArticleForm.java @@ -98,6 +98,8 @@ public class WikiEditArticleForm extends FormBasicController { protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) { wikiContent = uifactory.addTextAreaElement("wikiContentElement", 20, 110, page.getContent() , formLayout); + wikiContent.preventValueTrim(true);//OO-31 prevent trimming, so first line can be with inset (wiki pre-formatted) + updateComment = uifactory.addTextElement("wikiUpdateComment", null, 40, "", formLayout); updateComment.setExampleKey ("update.comment", null); // Button layout