package t2;

import android.annotation.SuppressLint;
import android.text.Spannable;
import android.text.style.AbsoluteSizeSpan;
import android.text.style.BackgroundColorSpan;
import android.text.style.ForegroundColorSpan;
import android.text.style.RelativeSizeSpan;
import android.text.style.StrikethroughSpan;
import android.text.style.StyleSpan;
import android.text.style.TypefaceSpan;
import android.text.style.UnderlineSpan;
import androidx.annotation.Nullable;
import androidx.media3.common.text.HorizontalTextInVerticalContextSpan;
import androidx.media3.common.text.RubySpan;
import androidx.media3.common.text.SpanUtil;
import androidx.media3.common.text.TextEmphasisSpan;
import androidx.media3.common.util.Assertions;
import androidx.media3.common.util.Log;
import androidx.media3.common.util.Util;
import java.util.ArrayDeque;
import java.util.Map;

/* JADX INFO: loaded from: classes.dex */
public abstract class h {
    @SuppressLint({"WrongConstant"})
    public static void applyStylesToSpan(Spannable spannable, int i10, int i11, i iVar, @Nullable c cVar, Map<String, i> map, int i12) {
        int i13;
        c cVarFindRubyTextNode;
        i iVarResolveStyle;
        int i14;
        int i15;
        int i16 = iVar.f32842g;
        if (i16 == -1 && iVar.f32843h == -1) {
            i13 = -1;
        } else {
            i13 = (i16 == 1 ? (char) 1 : (char) 0) | (iVar.f32843h == 1 ? (char) 2 : (char) 0);
        }
        if (i13 != -1) {
            int i17 = iVar.f32842g;
            if (i17 == -1 && iVar.f32843h == -1) {
                i15 = -1;
            } else {
                i15 = (i17 == 1 ? 1 : 0) | (iVar.f32843h == 1 ? 2 : 0);
            }
            spannable.setSpan(new StyleSpan(i15), i10, i11, 33);
        }
        if (iVar.f32840e == 1) {
            spannable.setSpan(new StrikethroughSpan(), i10, i11, 33);
        }
        if (iVar.f32841f == 1) {
            spannable.setSpan(new UnderlineSpan(), i10, i11, 33);
        }
        if (iVar.f32837b) {
            if (!iVar.f32837b) {
                throw new IllegalStateException("Font color has not been defined.");
            }
            SpanUtil.addOrReplaceSpan(spannable, new ForegroundColorSpan(iVar.f32836a), i10, i11, 33);
        }
        if (iVar.f32839d) {
            if (!iVar.f32839d) {
                throw new IllegalStateException("Background color has not been defined.");
            }
            SpanUtil.addOrReplaceSpan(spannable, new BackgroundColorSpan(iVar.f32838c), i10, i11, 33);
        }
        if (iVar.getFontFamily() != null) {
            SpanUtil.addOrReplaceSpan(spannable, new TypefaceSpan(iVar.getFontFamily()), i10, i11, 33);
        }
        if (iVar.getTextEmphasis() != null) {
            b bVar = (b) Assertions.checkNotNull(iVar.getTextEmphasis());
            int i18 = bVar.f32802a;
            if (i18 == -1) {
                i18 = (i12 == 2 || i12 == 1) ? 3 : 1;
                i14 = 1;
            } else {
                i14 = bVar.f32803b;
            }
            int i19 = bVar.f32804c;
            if (i19 == -2) {
                i19 = 1;
            }
            SpanUtil.addOrReplaceSpan(spannable, new TextEmphasisSpan(i18, i14, i19), i10, i11, 33);
        }
        int i20 = iVar.f32847k;
        if (i20 == 2) {
            c cVarFindRubyContainerNode = findRubyContainerNode(cVar, map);
            if (cVarFindRubyContainerNode != null && (cVarFindRubyTextNode = findRubyTextNode(cVarFindRubyContainerNode, map)) != null) {
                if (cVarFindRubyTextNode.c() != 1 || cVarFindRubyTextNode.b(0).text == null) {
                    Log.i("TtmlRenderUtil", "Skipping rubyText node without exactly one text child.");
                } else {
                    String str = (String) Util.castNonNull(cVarFindRubyTextNode.b(0).text);
                    i iVarResolveStyle2 = resolveStyle(cVarFindRubyTextNode.style, cVarFindRubyTextNode.getStyleIds(), map);
                    int i21 = iVarResolveStyle2 != null ? iVarResolveStyle2.f32848l : -1;
                    if (i21 == -1 && (iVarResolveStyle = resolveStyle(cVarFindRubyContainerNode.style, cVarFindRubyContainerNode.getStyleIds(), map)) != null) {
                        i21 = iVarResolveStyle.f32848l;
                    }
                    spannable.setSpan(new RubySpan(str, i21), i10, i11, 33);
                }
            }
        } else if (i20 == 3 || i20 == 4) {
            spannable.setSpan(new a(), i10, i11, 33);
        }
        if (iVar.f32849m == 1) {
            SpanUtil.addOrReplaceSpan(spannable, new HorizontalTextInVerticalContextSpan(), i10, i11, 33);
        }
        int i22 = iVar.f32844i;
        if (i22 == 1) {
            SpanUtil.addOrReplaceSpan(spannable, new AbsoluteSizeSpan((int) iVar.f32846j, true), i10, i11, 33);
        } else if (i22 == 2) {
            SpanUtil.addOrReplaceSpan(spannable, new RelativeSizeSpan(iVar.f32846j), i10, i11, 33);
        } else {
            if (i22 != 3) {
                return;
            }
            SpanUtil.addInheritedRelativeSizeSpan(spannable, iVar.f32846j / 100.0f, i10, i11, 33);
        }
    }

    @Nullable
    private static c findRubyContainerNode(@Nullable c cVar, Map<String, i> map) {
        while (cVar != null) {
            i iVarResolveStyle = resolveStyle(cVar.style, cVar.getStyleIds(), map);
            if (iVarResolveStyle != null && iVarResolveStyle.f32847k == 1) {
                return cVar;
            }
            cVar = cVar.parent;
        }
        return null;
    }

    @Nullable
    private static c findRubyTextNode(c cVar, Map<String, i> map) {
        ArrayDeque arrayDeque = new ArrayDeque();
        arrayDeque.push(cVar);
        while (!arrayDeque.isEmpty()) {
            c cVar2 = (c) arrayDeque.pop();
            i iVarResolveStyle = resolveStyle(cVar2.style, cVar2.getStyleIds(), map);
            if (iVarResolveStyle != null && iVarResolveStyle.f32847k == 3) {
                return cVar2;
            }
            for (int iC = cVar2.c() - 1; iC >= 0; iC--) {
                arrayDeque.push(cVar2.b(iC));
            }
        }
        return null;
    }

    @Nullable
    public static i resolveStyle(@Nullable i iVar, @Nullable String[] strArr, Map<String, i> map) {
        int i10 = 0;
        if (iVar == null) {
            if (strArr == null) {
                return null;
            }
            if (strArr.length == 1) {
                return map.get(strArr[0]);
            }
            if (strArr.length > 1) {
                i iVar2 = new i();
                int length = strArr.length;
                while (i10 < length) {
                    iVar2.chain(map.get(strArr[i10]));
                    i10++;
                }
                return iVar2;
            }
        } else {
            if (strArr != null && strArr.length == 1) {
                return iVar.chain(map.get(strArr[0]));
            }
            if (strArr != null && strArr.length > 1) {
                int length2 = strArr.length;
                while (i10 < length2) {
                    iVar.chain(map.get(strArr[i10]));
                    i10++;
                }
            }
        }
        return iVar;
    }
}
