From 8fbf0dd48065add33a047f77cddfb7ec81657e42 Mon Sep 17 00:00:00 2001 From: srosse <stephane.rosse@frentix.com> Date: Thu, 8 Aug 2019 21:30:25 +0200 Subject: [PATCH] no-jira: fix rerender issues --- .../date/DateComponentRenderer.java | 41 +------------------ .../delegating/DelegatingRenderer.java | 18 ++------ .../impl/FormWrapperContainerRenderer.java | 14 ------- .../table/FlexiTableClassicRenderer.java | 9 ++-- .../table/FlexiTableCustomRenderer.java | 1 + .../rating/RatingWithAverageRenderer.java | 4 +- .../tabbedpane/TabbedPaneRenderer.java | 13 +----- .../util/UserLoggedInCounterRenderer.java | 19 +-------- .../core/gui/control/JSAndCSSAdderImpl.java | 17 +------- .../util/mail/ui/MailContextCellRenderer.java | 1 + .../util/mail/ui/MailFromCellRenderer.java | 1 + .../ui/main/BGResourcesCellRenderer.java | 13 ++++-- .../AssessmentItemComponentRenderer.java | 1 + .../AssessmentObjectComponentRenderer.java | 7 +++- .../AssessmentTestComponentRenderer.java | 1 + .../org/olat/modules/tu/TunnelRenderer.java | 11 ++--- .../UserInterestsRenderer.java | 1 + .../ui/SmsPhoneComponentRenderer.java | 2 + 18 files changed, 42 insertions(+), 132 deletions(-) diff --git a/src/main/java/org/olat/core/gui/components/date/DateComponentRenderer.java b/src/main/java/org/olat/core/gui/components/date/DateComponentRenderer.java index f5063d45e49..9ca3ce20392 100644 --- a/src/main/java/org/olat/core/gui/components/date/DateComponentRenderer.java +++ b/src/main/java/org/olat/core/gui/components/date/DateComponentRenderer.java @@ -24,10 +24,9 @@ import java.util.Date; import java.util.Locale; import org.olat.core.gui.components.Component; -import org.olat.core.gui.components.ComponentRenderer; +import org.olat.core.gui.components.DefaultComponentRenderer; import org.olat.core.gui.render.RenderResult; import org.olat.core.gui.render.Renderer; -import org.olat.core.gui.render.RenderingState; import org.olat.core.gui.render.StringOutput; import org.olat.core.gui.render.URLBuilder; import org.olat.core.gui.translator.Translator; @@ -42,7 +41,7 @@ import org.olat.core.gui.translator.Translator; * * @author gnaegi */ -public class DateComponentRenderer implements ComponentRenderer { +public class DateComponentRenderer extends DefaultComponentRenderer { /** * Package scope constuctro @@ -51,14 +50,6 @@ public class DateComponentRenderer implements ComponentRenderer { // Nothing to do } - /** - * @see org.olat.core.gui.components.ComponentRenderer#render(org.olat.core.gui.render.Renderer, - * org.olat.core.gui.render.StringOutput, - * org.olat.core.gui.components.Component, - * org.olat.core.gui.render.URLBuilder, - * org.olat.core.gui.translator.Translator, - * org.olat.core.gui.render.RenderResult, java.lang.String[]) - */ @Override public void render(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderResult renderResult, @@ -103,32 +94,4 @@ public class DateComponentRenderer implements ComponentRenderer { // sb.append("</div>"); } - - /** - * @see org.olat.core.gui.components.ComponentRenderer#renderBodyOnLoadJSFunctionCall(org.olat.core.gui.render.Renderer, - * org.olat.core.gui.render.StringOutput, - * org.olat.core.gui.components.Component, - * org.olat.core.gui.render.RenderingState) - */ - @Override - public void renderBodyOnLoadJSFunctionCall(Renderer renderer, - StringOutput sb, Component source, RenderingState rstate) { - // nothing to do - } - - /** - * @see org.olat.core.gui.components.ComponentRenderer#renderHeaderIncludes(org.olat.core.gui.render.Renderer, - * org.olat.core.gui.render.StringOutput, - * org.olat.core.gui.components.Component, - * org.olat.core.gui.render.URLBuilder, - * org.olat.core.gui.translator.Translator, - * org.olat.core.gui.render.RenderingState) - */ - @Override - public void renderHeaderIncludes(Renderer renderer, StringOutput sb, - Component source, URLBuilder ubu, Translator translator, - RenderingState rstate) { - // nothing to do - } - } diff --git a/src/main/java/org/olat/core/gui/components/delegating/DelegatingRenderer.java b/src/main/java/org/olat/core/gui/components/delegating/DelegatingRenderer.java index fa7ddd688ea..4b1523fafdb 100644 --- a/src/main/java/org/olat/core/gui/components/delegating/DelegatingRenderer.java +++ b/src/main/java/org/olat/core/gui/components/delegating/DelegatingRenderer.java @@ -47,32 +47,20 @@ public class DelegatingRenderer implements ComponentRenderer { super(); } - /** - * @see org.olat.core.gui.render.ui.ComponentRenderer#render(org.olat.core.gui.render.Renderer, - * org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component, - * org.olat.core.gui.render.URLBuilder, org.olat.core.gui.translator.Translator, - * org.olat.core.gui.render.RenderResult, java.lang.String[]) - */ + @Override public void render(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderResult renderResult, String[] args) { ComponentRenderer cr = ((DelegatingComponent) source).getDelegateRenderer(); cr.render(renderer, sb, source, ubu, translator, renderResult, args); } - /** - * @see org.olat.core.gui.render.ui.ComponentRenderer#renderBodyOnLoadJSFunctionCall(org.olat.core.gui.render.Renderer, - * org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component) - */ + @Override public void renderBodyOnLoadJSFunctionCall(Renderer renderer, StringOutput sb, Component source, RenderingState rstate) { ComponentRenderer cr = ((DelegatingComponent) source).getDelegateRenderer(); cr.renderBodyOnLoadJSFunctionCall(renderer, sb, source, rstate); } - /** - * @see org.olat.core.gui.render.ui.ComponentRenderer#renderHeaderIncludes(org.olat.core.gui.render.Renderer, - * org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component, - * org.olat.core.gui.render.URLBuilder, org.olat.core.gui.translator.Translator) - */ + @Override public void renderHeaderIncludes(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderingState rstate) { ComponentRenderer cr = ((DelegatingComponent) source).getDelegateRenderer(); diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormWrapperContainerRenderer.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormWrapperContainerRenderer.java index 56e8648474f..f66382b211b 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormWrapperContainerRenderer.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormWrapperContainerRenderer.java @@ -119,12 +119,6 @@ class FormWrapperContainerRenderer implements ComponentRenderer { } } - /** - * @see org.olat.core.gui.components.ComponentRenderer#renderBodyOnLoadJSFunctionCall(org.olat.core.gui.render.Renderer, - * org.olat.core.gui.render.StringOutput, - * org.olat.core.gui.components.Component, - * org.olat.core.gui.render.RenderingState) - */ @Override public void renderBodyOnLoadJSFunctionCall(Renderer renderer, StringOutput sb, Component source, RenderingState rstate) { FormWrapperContainer formC = (FormWrapperContainer) source; @@ -134,14 +128,6 @@ class FormWrapperContainerRenderer implements ComponentRenderer { } } - /** - * @see org.olat.core.gui.components.ComponentRenderer#renderHeaderIncludes(org.olat.core.gui.render.Renderer, - * org.olat.core.gui.render.StringOutput, - * org.olat.core.gui.components.Component, - * org.olat.core.gui.render.URLBuilder, - * org.olat.core.gui.translator.Translator, - * org.olat.core.gui.render.RenderingState) - */ @Override public void renderHeaderIncludes(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderingState rstate) { diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/FlexiTableClassicRenderer.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/FlexiTableClassicRenderer.java index ca65d3492cd..9df62051ce5 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/FlexiTableClassicRenderer.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/FlexiTableClassicRenderer.java @@ -258,15 +258,16 @@ class FlexiTableClassicRenderer extends AbstractFlexiTableRenderer implements Co } ftE.addFormItem(formItem); if(formItem.isVisible()) { - formItem.getComponent().getHTMLRendererSingleton().render(renderer, target, formItem.getComponent(), - ubu, translator, renderResult, null); + Component cmp = formItem.getComponent(); + cmp.getHTMLRendererSingleton().render(renderer, target, cmp, ubu, translator, renderResult, null); + cmp.setDirty(false); } } else if(cellValue instanceof Component) { Component cmp = (Component)cellValue; cmp.setTranslator(translator); if(cmp.isVisible()) { - cmp.getHTMLRendererSingleton().render(renderer, target, cmp, - ubu, translator, renderResult, null); + cmp.getHTMLRendererSingleton().render(renderer, target, cmp, ubu, translator, renderResult, null); + cmp.setDirty(false); } } else { fcm.getCellRenderer().render(renderer, target, cellValue, row, ftC, ubu, translator); diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/FlexiTableCustomRenderer.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/FlexiTableCustomRenderer.java index dd1216f0741..7ce7eb7722a 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/FlexiTableCustomRenderer.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/FlexiTableCustomRenderer.java @@ -167,6 +167,7 @@ class FlexiTableCustomRenderer extends AbstractFlexiTableRenderer implements Com container.contextRemove("isOpen"); container.contextRemove("row"); container.contextRemove("f"); + container.setDirty(false); sb.append("</div>"); } diff --git a/src/main/java/org/olat/core/gui/components/rating/RatingWithAverageRenderer.java b/src/main/java/org/olat/core/gui/components/rating/RatingWithAverageRenderer.java index 57751dbea2a..f9f7b07d46c 100644 --- a/src/main/java/org/olat/core/gui/components/rating/RatingWithAverageRenderer.java +++ b/src/main/java/org/olat/core/gui/components/rating/RatingWithAverageRenderer.java @@ -49,15 +49,16 @@ public class RatingWithAverageRenderer extends DefaultComponentRenderer { Component userCmp = item.getUserComponent(); userCmp.getHTMLRendererSingleton().render(renderer, sb, userCmp, ubu, translator, renderResult, args); + userCmp.setDirty(false); sb.append("</div>") .append("<div id='o_rating_avg_").append(viewIdent).append("'>"); Component averageCmp = item.getAverageComponent(); averageCmp.getHTMLRendererSingleton().render(renderer, sb, averageCmp, ubu, translator, renderResult, args); + averageCmp.setDirty(false); sb.append("</div>") .append("</div>") .append("</div>") .append("<script>\n") - .append("/* <![CDATA[ */ \n") .append("jQuery(function(){\n") .append(" jQuery('#o_rating_wrapper_").append(viewIdent).append("')\n") .append(" .hover(\n") @@ -65,7 +66,6 @@ public class RatingWithAverageRenderer extends DefaultComponentRenderer { .append(" function(){ jQuery('#o_rating_").append(viewIdent).append("').hide(); jQuery('#o_rating_avg_").append(viewIdent).append("').show(); }\n") .append(" );\n") .append("});\n") - .append("/* ]]> */\n") .append("</script>\n"); } } diff --git a/src/main/java/org/olat/core/gui/components/tabbedpane/TabbedPaneRenderer.java b/src/main/java/org/olat/core/gui/components/tabbedpane/TabbedPaneRenderer.java index fd5f199371f..0e92f89d2f3 100644 --- a/src/main/java/org/olat/core/gui/components/tabbedpane/TabbedPaneRenderer.java +++ b/src/main/java/org/olat/core/gui/components/tabbedpane/TabbedPaneRenderer.java @@ -42,10 +42,7 @@ import org.olat.core.util.StringHelper; */ public class TabbedPaneRenderer implements ComponentRenderer { - /** - * - * @see org.olat.core.gui.render.ui.ComponentRenderer#render(org.olat.core.gui.render.Renderer, org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component, org.olat.core.gui.render.URLBuilder, org.olat.core.gui.translator.Translator, org.olat.core.gui.render.RenderResult, java.lang.String[]) - */ + @Override public void render(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderResult renderResult, String[] args) { TabbedPane tb = (TabbedPane)source; @@ -91,10 +88,6 @@ public class TabbedPaneRenderer implements ComponentRenderer { sb.append("</div></div>"); } - /** - * - * @see org.olat.core.gui.render.ui.ComponentRenderer#renderHeaderIncludes(org.olat.core.gui.render.Renderer, org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component, org.olat.core.gui.render.URLBuilder, org.olat.core.gui.translator.Translator) - */ @Override public void renderHeaderIncludes(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderingState rstate) { TabbedPane tp = (TabbedPane)source; @@ -108,10 +101,6 @@ public class TabbedPaneRenderer implements ComponentRenderer { } } - /** - * - * @see org.olat.core.gui.render.ui.ComponentRenderer#renderBodyOnLoadJSFunctionCall(org.olat.core.gui.render.Renderer, org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component) - */ @Override public void renderBodyOnLoadJSFunctionCall(Renderer renderer, StringOutput sb, Component source, RenderingState rstate) { TabbedPane tp = (TabbedPane)source; diff --git a/src/main/java/org/olat/core/gui/components/util/UserLoggedInCounterRenderer.java b/src/main/java/org/olat/core/gui/components/util/UserLoggedInCounterRenderer.java index b3fb6833d3f..2d5882475a8 100644 --- a/src/main/java/org/olat/core/gui/components/util/UserLoggedInCounterRenderer.java +++ b/src/main/java/org/olat/core/gui/components/util/UserLoggedInCounterRenderer.java @@ -22,10 +22,9 @@ package org.olat.core.gui.components.util; import org.olat.core.gui.components.Component; -import org.olat.core.gui.components.ComponentRenderer; +import org.olat.core.gui.components.DefaultComponentRenderer; import org.olat.core.gui.render.RenderResult; import org.olat.core.gui.render.Renderer; -import org.olat.core.gui.render.RenderingState; import org.olat.core.gui.render.StringOutput; import org.olat.core.gui.render.URLBuilder; import org.olat.core.gui.translator.Translator; @@ -40,7 +39,7 @@ import org.olat.core.gui.translator.Translator; * @author Florian Gnaegi, frentix GmbH, http://www.frentix.com */ -public class UserLoggedInCounterRenderer implements ComponentRenderer { +public class UserLoggedInCounterRenderer extends DefaultComponentRenderer { @Override public void render(Renderer renderer, StringOutput sb, Component source, @@ -49,18 +48,4 @@ public class UserLoggedInCounterRenderer implements ComponentRenderer { UserLoggedInCounter counter = (UserLoggedInCounter) source; sb.append(counter.getSessionCount()); } - - @Override - public void renderHeaderIncludes(Renderer renderer, StringOutput sb, - Component source, URLBuilder ubu, Translator translator, - RenderingState rstate) { - // nothing to include - } - - @Override - public void renderBodyOnLoadJSFunctionCall(Renderer renderer, - StringOutput sb, Component source, RenderingState rstate) { - // no body js stuff - } - } \ No newline at end of file diff --git a/src/main/java/org/olat/core/gui/control/JSAndCSSAdderImpl.java b/src/main/java/org/olat/core/gui/control/JSAndCSSAdderImpl.java index 161f157bbfa..35e743d6ed4 100644 --- a/src/main/java/org/olat/core/gui/control/JSAndCSSAdderImpl.java +++ b/src/main/java/org/olat/core/gui/control/JSAndCSSAdderImpl.java @@ -289,10 +289,6 @@ public class JSAndCSSAdderImpl implements JSAndCSSAdder, ComponentRenderer { return dc; } - /** - * - * @see org.olat.core.gui.components.ComponentRenderer#render(org.olat.core.gui.render.Renderer, org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component, org.olat.core.gui.render.URLBuilder, org.olat.core.gui.translator.Translator, org.olat.core.gui.render.RenderResult, java.lang.String[]) - */ @Override public void render(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderResult renderResult, String[] args) { @@ -307,8 +303,6 @@ public class JSAndCSSAdderImpl implements JSAndCSSAdder, ComponentRenderer { allCssKeepSet.clear(); allJsKeepSet.clear(); - //sb.append("<!-- css and js include test \n"); - //sb.append("js-files:\n"); // JS scripts are rendered when in pre-theme rendering phase if (!postThemeRendering) { for (Iterator<String> it_js = jsToRender.iterator(); it_js.hasNext();) { @@ -318,8 +312,6 @@ public class JSAndCSSAdderImpl implements JSAndCSSAdder, ComponentRenderer { } // sort css files - - //sb.append("css-files:\n"); for (Iterator<String> it_css = cssToRender.iterator(); it_css.hasNext();) { String cssExpr = it_css.next(); // render post-theme css when in post-theme rendering phase and pre-theme @@ -353,16 +345,12 @@ public class JSAndCSSAdderImpl implements JSAndCSSAdder, ComponentRenderer { // } - /** - * @see org.olat.core.gui.control.JSAndCSSAdder#addRequiredRawHeader(java.lang.Class) - */ + @Override public void addRequiredRawHeader(Class<?> baseClass, String rawHeader) { curRawSet.add(rawHeader); } - /* (non-Javadoc) - * @see org.olat.core.gui.control.JSAndCSSAdder#setRequiredRefreshInterval(java.lang.Class, int) - */ + @Override public void setRequiredRefreshInterval(Class<?> baseClass, int refreshIntervall) { if(refreshIntervall < MINIMAL_REFRESHINTERVAL){ throw new AssertException("Poll refresh intervall is smaller then defined MINIMAL value " + MINIMAL_REFRESHINTERVAL); @@ -370,7 +358,6 @@ public class JSAndCSSAdderImpl implements JSAndCSSAdder, ComponentRenderer { // idea: baseClass for later de-prioritising by configuration if (this.refreshInterval == -1 || refreshIntervall < this.refreshInterval) { this.refreshInterval = refreshIntervall; - //System.out.println("setting new refresh intervall: "+this.refreshInterval); } // else we already have a request that requires a higher frequency of updates, we will take that one } diff --git a/src/main/java/org/olat/core/util/mail/ui/MailContextCellRenderer.java b/src/main/java/org/olat/core/util/mail/ui/MailContextCellRenderer.java index 5ae4a897ba5..65e305bd87a 100644 --- a/src/main/java/org/olat/core/util/mail/ui/MailContextCellRenderer.java +++ b/src/main/java/org/olat/core/util/mail/ui/MailContextCellRenderer.java @@ -71,6 +71,7 @@ public class MailContextCellRenderer implements CustomCellRenderer { URLBuilder ubu = renderer.getUrlBuilder().createCopyFor(link); RenderResult renderResult = new RenderResult(); link.getHTMLRendererSingleton().render(renderer, sb, link, ubu, translator, renderResult, null); + link.setDirty(false); } } } diff --git a/src/main/java/org/olat/core/util/mail/ui/MailFromCellRenderer.java b/src/main/java/org/olat/core/util/mail/ui/MailFromCellRenderer.java index c3f43440871..5e4ee37d454 100644 --- a/src/main/java/org/olat/core/util/mail/ui/MailFromCellRenderer.java +++ b/src/main/java/org/olat/core/util/mail/ui/MailFromCellRenderer.java @@ -76,6 +76,7 @@ public class MailFromCellRenderer implements CustomCellRenderer { URLBuilder ubu = renderer.getUrlBuilder().createCopyFor(link); RenderResult renderResult = new RenderResult(); link.getHTMLRendererSingleton().render(renderer, sb, link, ubu, translator, renderResult, null); + link.setDirty(false); } } else if (val instanceof String) { sb.append("<span>").appendHtmlEscaped((String)val).append("</span>"); diff --git a/src/main/java/org/olat/group/ui/main/BGResourcesCellRenderer.java b/src/main/java/org/olat/group/ui/main/BGResourcesCellRenderer.java index 64b767b8b79..192c5975187 100644 --- a/src/main/java/org/olat/group/ui/main/BGResourcesCellRenderer.java +++ b/src/main/java/org/olat/group/ui/main/BGResourcesCellRenderer.java @@ -22,6 +22,7 @@ package org.olat.group.ui.main; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; +import org.olat.core.gui.components.Component; import org.olat.core.gui.components.form.flexible.FormUIFactory; import org.olat.core.gui.components.form.flexible.elements.FormLink; import org.olat.core.gui.components.form.flexible.impl.FormLayoutContainer; @@ -80,8 +81,10 @@ public class BGResourcesCellRenderer implements FlexiCellRenderer { null, formLayout, Link.NONTRANSLATED); } allResourcesLink.setUserObject(item); - allResourcesLink.getComponent().getHTMLRendererSingleton() - .render(renderer, sb, allResourcesLink.getComponent(), ubu, translator, null, null); + Component allResourcesCmp = allResourcesLink.getComponent(); + allResourcesCmp.getHTMLRendererSingleton() + .render(renderer, sb, allResourcesCmp, ubu, translator, null, null); + allResourcesCmp.setDirty(false); break; } else { if(count > 0) sb.append(" "); @@ -95,8 +98,10 @@ public class BGResourcesCellRenderer implements FlexiCellRenderer { markLink.setUserObject(relation); formLayout.add(name, markLink); } - markLink.getComponent().getHTMLRendererSingleton() - .render(renderer, sb, markLink.getComponent(), ubu, translator, null, null); + Link markCmp = markLink.getComponent(); + markCmp.getHTMLRendererSingleton() + .render(renderer, sb, markCmp, ubu, translator, null, null); + markCmp.setDirty(false); count++; } } diff --git a/src/main/java/org/olat/ims/qti21/ui/components/AssessmentItemComponentRenderer.java b/src/main/java/org/olat/ims/qti21/ui/components/AssessmentItemComponentRenderer.java index 5e601afc1e4..c9a3314e006 100644 --- a/src/main/java/org/olat/ims/qti21/ui/components/AssessmentItemComponentRenderer.java +++ b/src/main/java/org/olat/ims/qti21/ui/components/AssessmentItemComponentRenderer.java @@ -204,6 +204,7 @@ public class AssessmentItemComponentRenderer extends AssessmentObjectComponentRe if(component.isItemSessionOpen(itemSessionState, renderer.isSolutionMode())) { Component submit = itemEl.getSubmitButton().getComponent(); submit.getHTMLRendererSingleton().render(renderer.getRenderer(), sb, submit, ubu, translator, new RenderResult(), null); + submit.setDirty(false); } boolean enableAdditionalButtons = component.isEnableBack() || component.isEnableSkip() diff --git a/src/main/java/org/olat/ims/qti21/ui/components/AssessmentObjectComponentRenderer.java b/src/main/java/org/olat/ims/qti21/ui/components/AssessmentObjectComponentRenderer.java index c594c7d85a3..00b5267b2b2 100644 --- a/src/main/java/org/olat/ims/qti21/ui/components/AssessmentObjectComponentRenderer.java +++ b/src/main/java/org/olat/ims/qti21/ui/components/AssessmentObjectComponentRenderer.java @@ -65,6 +65,7 @@ import org.apache.logging.log4j.Logger; import org.apache.velocity.VelocityContext; import org.apache.velocity.context.Context; import org.olat.core.CoreSpringFactory; +import org.olat.core.gui.components.Component; import org.olat.core.gui.components.DefaultComponentRenderer; import org.olat.core.gui.components.form.flexible.FormItem; import org.olat.core.gui.components.form.flexible.FormUIFactory; @@ -954,8 +955,10 @@ public abstract class AssessmentObjectComponentRenderer extends DefaultComponent item.addFormItem(endAttemptButton); } endAttemptButton.setEnabled(!ended); - endAttemptButton.getComponent().getHTMLRendererSingleton() - .render(renderer.getRenderer(), sb, endAttemptButton.getComponent(), ubu, translator, new RenderResult(), null); + Component endAttemptCmp = endAttemptButton.getComponent(); + endAttemptCmp.getHTMLRendererSingleton() + .render(renderer.getRenderer(), sb, endAttemptCmp, ubu, translator, new RenderResult(), null); + endAttemptCmp.setDirty(false); } diff --git a/src/main/java/org/olat/ims/qti21/ui/components/AssessmentTestComponentRenderer.java b/src/main/java/org/olat/ims/qti21/ui/components/AssessmentTestComponentRenderer.java index b12708f61d5..e2ed6463d78 100644 --- a/src/main/java/org/olat/ims/qti21/ui/components/AssessmentTestComponentRenderer.java +++ b/src/main/java/org/olat/ims/qti21/ui/components/AssessmentTestComponentRenderer.java @@ -260,6 +260,7 @@ public class AssessmentTestComponentRenderer extends AssessmentObjectComponentRe if(component.isItemSessionOpen(itemSessionState, options.isSolutionMode())) { Component submit = component.getQtiItem().getSubmitButton().getComponent(); submit.getHTMLRendererSingleton().render(renderer.getRenderer(), sb, submit, ubu, translator, new RenderResult(), null); + submit.setDirty(false); } //advanceTestItemAllowed /* && testSessionState.getCurrentItemKey() != null && testSessionController.mayAdvanceItemLinear() */ if(options.isAdvanceTestItemAllowed() ) {//TODO need to find if there is a next question diff --git a/src/main/java/org/olat/modules/tu/TunnelRenderer.java b/src/main/java/org/olat/modules/tu/TunnelRenderer.java index cc84d6c9e9f..f3f04b93e65 100644 --- a/src/main/java/org/olat/modules/tu/TunnelRenderer.java +++ b/src/main/java/org/olat/modules/tu/TunnelRenderer.java @@ -59,6 +59,7 @@ public class TunnelRenderer implements ComponentRenderer { * @param args * */ + @Override public void render(Renderer renderer, StringOutput target, Component source, URLBuilder ubu, Translator translator, RenderResult renderResult, String[] args) { TunnelComponent tuc = (TunnelComponent) source; @@ -68,20 +69,14 @@ public class TunnelRenderer implements ComponentRenderer { if (htmlContent != null) target.append(htmlContent); } - /** - * - * @see org.olat.core.gui.render.ui.ComponentRenderer#renderHeaderIncludes(org.olat.core.gui.render.Renderer, org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component, org.olat.core.gui.render.URLBuilder, org.olat.core.gui.translator.Translator) - */ + @Override public void renderHeaderIncludes(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderingState rstate) { TunnelComponent tuc = (TunnelComponent) source; String htmlHead = tuc.getHtmlHead(); if (htmlHead != null) sb.append(htmlHead); } - /** - * - * @see org.olat.core.gui.render.ui.ComponentRenderer#renderBodyOnLoadJSFunctionCall(org.olat.core.gui.render.Renderer, org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component) - */ + @Override public void renderBodyOnLoadJSFunctionCall(Renderer renderer, StringOutput sb, Component source, RenderingState rstate) { TunnelComponent tuc = (TunnelComponent) source; String jsBodyOnLoad = tuc.getJsOnLoad(); diff --git a/src/main/java/org/olat/user/propertyhandlers/UserInterestsRenderer.java b/src/main/java/org/olat/user/propertyhandlers/UserInterestsRenderer.java index bbbb252abe6..7d6acf32ddb 100644 --- a/src/main/java/org/olat/user/propertyhandlers/UserInterestsRenderer.java +++ b/src/main/java/org/olat/user/propertyhandlers/UserInterestsRenderer.java @@ -57,6 +57,7 @@ class UserInterestsRenderer extends DefaultComponentRenderer { if(editLink != null && editLink.isVisible()) { Component cmp = editLink.getComponent(); cmp.getHTMLRendererSingleton().render(renderer, sb, cmp, ubu, translator, renderResult, args); + cmp.setDirty(false); } } } diff --git a/src/main/java/org/olat/user/propertyhandlers/ui/SmsPhoneComponentRenderer.java b/src/main/java/org/olat/user/propertyhandlers/ui/SmsPhoneComponentRenderer.java index e832e16c70f..428acbfb9cb 100644 --- a/src/main/java/org/olat/user/propertyhandlers/ui/SmsPhoneComponentRenderer.java +++ b/src/main/java/org/olat/user/propertyhandlers/ui/SmsPhoneComponentRenderer.java @@ -68,6 +68,7 @@ public class SmsPhoneComponentRenderer extends DefaultComponentRenderer { if(editLink != null && editLink.isVisible()) { Component cmp = editLink.getComponent(); cmp.getHTMLRendererSingleton().render(renderer, sb, cmp, ubu, translator, renderResult, args); + cmp.setDirty(false); } if(StringHelper.containsNonWhitespace(phoneNumber)) { @@ -76,6 +77,7 @@ public class SmsPhoneComponentRenderer extends DefaultComponentRenderer { if(removeLink != null && removeLink.isVisible()) { Component cmp = removeLink.getComponent(); cmp.getHTMLRendererSingleton().render(renderer, sb, cmp, ubu, translator, renderResult, args); + cmp.setDirty(false); } } sb.append("</div>"); -- GitLab