diff --git a/view/src/main/java/se/su/dsv/scipro/forum/panels/AbstractReadStatePanel.java b/view/src/main/java/se/su/dsv/scipro/forum/panels/AbstractReadStatePanel.java index f6344d1afc..13df58ff05 100644 --- a/view/src/main/java/se/su/dsv/scipro/forum/panels/AbstractReadStatePanel.java +++ b/view/src/main/java/se/su/dsv/scipro/forum/panels/AbstractReadStatePanel.java @@ -19,7 +19,6 @@ public abstract class AbstractReadStatePanel extends Panel { DISABLED } - private final Component icon; private final ShowReadStateTooltip showReadStateTooltip; public AbstractReadStatePanel(final String id) { @@ -30,6 +29,9 @@ public abstract class AbstractReadStatePanel extends Panel { super(id); this.showReadStateTooltip = showReadStateTooltip; + Component icon = new UpdatingImage(ICON); + icon.setOutputMarkupId(true); + AjaxFallbackLink<Void> link = new AjaxFallbackLink<>(TOGGLE) { @Override public void onClick(final Optional<AjaxRequestTarget> target) { @@ -39,20 +41,14 @@ public abstract class AbstractReadStatePanel extends Panel { }); } }; - add(link); - - icon = new UpdatingImage(ICON); - icon.setOutputMarkupId(true); link.add(icon); + + add(link); } protected abstract boolean isRead(); protected abstract void onFlagClick(final AjaxRequestTarget target); - public ShowReadStateTooltip getShowReadStateTooltip() { - return showReadStateTooltip; - } - private class UpdatingImage extends WebComponent { public UpdatingImage(String id) { super(id); @@ -64,7 +60,7 @@ public abstract class AbstractReadStatePanel extends Panel { String state = isRead() ? "read" : "unread"; tag.append("class", state, " "); - if (getShowReadStateTooltip() == ShowReadStateTooltip.ENABLED && !isRead()) { + if (showReadStateTooltip == ShowReadStateTooltip.ENABLED && !isRead()) { tag.put("title", getString("unread.msg")); } }