@@ -0,0 +1,2594 @@
+package android.text;%0A%0A%0Aimport android.graphics.drawable.Drawable;%0Aimport org.jetbrains.annotations.NotNull;%0Aimport org.jsoup.Jsoup;%0Aimport org.jsoup.safety.Whitelist;%0Aimport org.xml.sax.XMLReader;%0A%0A/**%0A * Project: TachiServer%0A * Author: nulldev%0A * Creation Date: 16/08/16%0A *%0A * Android compat class for processing HTML%0A */%0A%0Apublic class Html %7B%0A%0A    public static Spanned fromHtml(String source) %7B%0A        return new FakeSpanned(Jsoup.clean(source, Whitelist.none()));%0A    %7D%0A%0A    public static Spanned fromHtml(String source, Html.ImageGetter imageGetter, Html.TagHandler tagHandler) %7B%0A        throw new RuntimeException(%22Stub!%22);%0A    %7D%0A%0A    public static String toHtml(Spanned text) %7B%0A        return text.toString();%0A    %7D%0A%0A    /** From: http://stackoverflow.com/a/25228492/5054192 **/%0A    public static String escapeHtml(CharSequence s) %7B%0A        StringBuilder out = new StringBuilder(Math.max(16, s.length()));%0A        for (int i = 0; i %3C s.length(); i++) %7B%0A            char c = s.charAt(i);%0A            if (c %3E 127 %7C%7C c == '%22' %7C%7C c == '%3C' %7C%7C c == '%3E' %7C%7C c == '&') %7B%0A                out.append(%22&#%22);%0A                out.append((int) c);%0A                out.append(';');%0A            %7D else %7B%0A                out.append(c);%0A            %7D%0A        %7D%0A        return out.toString();%0A    %7D%0A%0A    public interface TagHandler %7B%0A        void handleTag(boolean var1, String var2, Editable var3, XMLReader var4);%0A    %7D%0A%0A    public interface ImageGetter %7B%0A        Drawable getDrawable(String var1);%0A    %7D%0A%0A    private static class FakeSpanned implements Spanned %7B%0A%0A        String string;%0A%0A        public FakeSpanned(String string) %7B%0A            this.string = string;%0A        %7D%0A%0A        @Override%0A        public %3CT%3E T%5B%5D getSpans(int i, int i1, Class%3CT%3E aClass) %7B%0A            return null;%0A        %7D%0A%0A        @Override%0A        public int getSpanStart(Object o) %7B%0A            return 0;%0A        %7D%0A%0A        @Override%0A        public int getSpanEnd(Object o) %7B%0A            return 0;%0A        %7D%0A%0A        @Override%0A        public int getSpanFlags(Object o) %7B%0A            return 0;%0A        %7D%0A%0A        @Override%0A        public int nextSpanTransition(int i, int i1, Class aClass) %7B%0A            return 0;%0A        %7D%0A%0A        @Override%0A        public int length() %7B%0A            return 0;%0A        %7D%0A%0A        @Override%0A        public char charAt(int index) %7B%0A            return 0;%0A        %7D%0A%0A        @Override%0A        public CharSequence subSequence(int start, int end) %7B%0A            return null;%0A        %7D%0A%0A        @NotNull%0A        @Override%0A        public String toString() %7B%0A            return string;%0A        %7D%0A    %7D%0A%7D%0A

Fix Batoto not working sometimes.