You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lo...@apache.org on 2021/01/21 09:12:35 UTC
[myfaces-tobago] 04/04: chore: optimize/cleanup/simplify
This is an automated email from the ASF dual-hosted git repository.
lofwyr pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/myfaces-tobago.git
commit c476ad3284cce8723f573a9049af32b653096bd5
Author: Udo Schnurpfeil <ud...@irian.eu>
AuthorDate: Thu Jan 21 10:10:09 2021 +0100
chore: optimize/cleanup/simplify
---
.../tobago/internal/renderkit/renderer/ImageRenderer.java | 4 ++--
.../tobago/internal/renderkit/renderer/TreeIconRenderer.java | 2 +-
.../myfaces/tobago/internal/util/HtmlRendererUtils.java | 2 +-
.../java/org/apache/myfaces/tobago/renderkit/css/Icons.java | 11 ++++++++---
4 files changed, 12 insertions(+), 7 deletions(-)
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ImageRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ImageRenderer.java
index 948c291..f65e059 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ImageRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ImageRenderer.java
@@ -42,13 +42,13 @@ public class ImageRenderer<T extends AbstractUIImage> extends RendererBase<T> {
final TobagoResponseWriter writer = getResponseWriter(facesContext);
final String value = component.getUrl();
- final boolean fontAwesome = value != null && value.startsWith("fa-");
+ final boolean isIcon = Icons.matches(value);
final boolean disabled = component.isDisabled()
|| (component.getParent() instanceof AbstractUICommandBase
&& ((AbstractUICommandBase) component.getParent()).isDisabled());
final String title = HtmlRendererUtils.getTitleFromTipAndMessages(facesContext, component);
final Markup markup = component.getMarkup();
- if (fontAwesome) {
+ if (isIcon) {
writer.startElement(HtmlElements.I);
writer.writeIdAttribute(component.getClientId(facesContext));
writer.writeClassAttribute(
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeIconRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeIconRenderer.java
index 5d06f96..c999fa1 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeIconRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeIconRenderer.java
@@ -92,7 +92,7 @@ public class TreeIconRenderer<T extends AbstractUITreeIcon> extends RendererBase
TobagoClass.TREE_NODE__TOGGLE,
component.getCustomClass());
- if (source != null && source.startsWith("fa-")) {
+ if (Icons.matches(source)) {
writer.startElement(HtmlElements.I);
writer.writeClassAttribute(Icons.FA, Icons.custom(source));
if (folder) {
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/HtmlRendererUtils.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/HtmlRendererUtils.java
index efb562c..22c669c 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/HtmlRendererUtils.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/HtmlRendererUtils.java
@@ -81,7 +81,7 @@ public final class HtmlRendererUtils {
public static void encodeIconOrImage(final TobagoResponseWriter writer, final String image) throws IOException {
if (image != null) {
- if (image.startsWith("fa-")) {
+ if (Icons.matches(image)) {
writer.startElement(HtmlElements.I);
writer.writeClassAttribute(Icons.FA, Icons.custom(image));
writer.endElement(HtmlElements.I);
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/Icons.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/Icons.java
index a5ea3db..b5e33f2 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/Icons.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/css/Icons.java
@@ -61,16 +61,21 @@ public enum Icons implements CssItem {
};
private static final Pattern PATTERN = Pattern.compile("^(fa(-[a-z]+)+)$");
+ private static final String PREFIX = "fa-";
- private String fa;
+ private final String clazz;
Icons() {
- this.fa = "fa-" + name().toLowerCase().replaceAll("_", "-");
+ this.clazz = PREFIX + name().toLowerCase().replaceAll("_", "-");
}
@Override
public String getName() {
- return fa;
+ return clazz;
+ }
+
+ public static boolean matches(final String value) {
+ return value != null && PATTERN.matcher(value).matches();
}
public static CssItem custom(final String name) {