3bef07eeab
* Update dependencies and lint files * Revert lint
111 lines
2.5 KiB
Java
111 lines
2.5 KiB
Java
package android.text;
|
|
|
|
|
|
import android.graphics.drawable.Drawable;
|
|
import org.jetbrains.annotations.NotNull;
|
|
import org.jsoup.Jsoup;
|
|
import org.jsoup.safety.Safelist;
|
|
import org.xml.sax.XMLReader;
|
|
|
|
/**
|
|
* Project: TachiServer
|
|
* Author: nulldev
|
|
* Creation Date: 16/08/16
|
|
*
|
|
* Android compat class for processing HTML
|
|
*/
|
|
|
|
public class Html {
|
|
|
|
public static Spanned fromHtml(String source) {
|
|
return new FakeSpanned(Jsoup.clean(source, Safelist.none()));
|
|
}
|
|
|
|
public static Spanned fromHtml(String source, Html.ImageGetter imageGetter, Html.TagHandler tagHandler) {
|
|
throw new RuntimeException("Stub!");
|
|
}
|
|
|
|
public static String toHtml(Spanned text) {
|
|
return text.toString();
|
|
}
|
|
|
|
/** From: http://stackoverflow.com/a/25228492/5054192 **/
|
|
public static String escapeHtml(CharSequence s) {
|
|
StringBuilder out = new StringBuilder(Math.max(16, s.length()));
|
|
for (int i = 0; i < s.length(); i++) {
|
|
char c = s.charAt(i);
|
|
if (c > 127 || c == '"' || c == '<' || c == '>' || c == '&') {
|
|
out.append("&#");
|
|
out.append((int) c);
|
|
out.append(';');
|
|
} else {
|
|
out.append(c);
|
|
}
|
|
}
|
|
return out.toString();
|
|
}
|
|
|
|
public interface TagHandler {
|
|
void handleTag(boolean var1, String var2, Editable var3, XMLReader var4);
|
|
}
|
|
|
|
public interface ImageGetter {
|
|
Drawable getDrawable(String var1);
|
|
}
|
|
|
|
private static class FakeSpanned implements Spanned {
|
|
|
|
String string;
|
|
|
|
public FakeSpanned(String string) {
|
|
this.string = string;
|
|
}
|
|
|
|
@Override
|
|
public <T> T[] getSpans(int i, int i1, Class<T> aClass) {
|
|
return null;
|
|
}
|
|
|
|
@Override
|
|
public int getSpanStart(Object o) {
|
|
return 0;
|
|
}
|
|
|
|
@Override
|
|
public int getSpanEnd(Object o) {
|
|
return 0;
|
|
}
|
|
|
|
@Override
|
|
public int getSpanFlags(Object o) {
|
|
return 0;
|
|
}
|
|
|
|
@Override
|
|
public int nextSpanTransition(int i, int i1, Class aClass) {
|
|
return 0;
|
|
}
|
|
|
|
@Override
|
|
public int length() {
|
|
return 0;
|
|
}
|
|
|
|
@Override
|
|
public char charAt(int index) {
|
|
return 0;
|
|
}
|
|
|
|
@Override
|
|
public CharSequence subSequence(int start, int end) {
|
|
return null;
|
|
}
|
|
|
|
@NotNull
|
|
@Override
|
|
public String toString() {
|
|
return string;
|
|
}
|
|
}
|
|
}
|