2023-03-13 10:23:42 +01:00
<?xml version="1.0" encoding="UTF-8"?>
2024-01-18 21:44:30 +01:00
<issues format= "6" by= "lint 8.2.1" type= "baseline" client= "gradle" dependencies= "false" name= "AGP (8.2.1)" variant= "all" version= "8.2.1" >
2023-03-13 10:23:42 +01:00
<issue
id="InvalidPackage"
message="Invalid package reference in org.bouncycastle:bcprov-jdk15on; not included in Android: `javax.naming.directory`. Referenced from `org.bouncycastle.jce.provider.CrlCache`.">
<location
file="$GRADLE_USER_HOME/caches/modules-2/files-2.1/org.bouncycastle/bcprov-jdk15on/1.70/4636a0d01f74acaf28082fb62b317f1080118371/bcprov-jdk15on-1.70.jar"/>
</issue>
<issue
id="InvalidPackage"
message="Invalid package reference in org.bouncycastle:bcprov-jdk15on; not included in Android: `javax.naming`. Referenced from `org.bouncycastle.jce.provider.X509LDAPCertStoreSpi`.">
<location
file="$GRADLE_USER_HOME/caches/modules-2/files-2.1/org.bouncycastle/bcprov-jdk15on/1.70/4636a0d01f74acaf28082fb62b317f1080118371/bcprov-jdk15on-1.70.jar"/>
</issue>
2023-03-21 18:56:11 +01:00
<issue
id="InvalidPackage"
message="Invalid package reference in org.pageseeder.diffx:pso-diffx; not included in Android: `javax.xml.stream.events`. Referenced from `org.pageseeder.diffx.load.XMLEventLoader`.">
<location
file="$GRADLE_USER_HOME/caches/modules-2/files-2.1/org.pageseeder.diffx/pso-diffx/1.1.1/b655ebc87588a857a4f3d88cf98bcefa87a6105b/pso-diffx-1.1.1.jar"/>
</issue>
<issue
id="InvalidPackage"
message="Invalid package reference in org.pageseeder.diffx:pso-diffx; not included in Android: `javax.xml.stream`. Referenced from `org.pageseeder.diffx.format.StrictXMLDiffOutput`.">
<location
file="$GRADLE_USER_HOME/caches/modules-2/files-2.1/org.pageseeder.diffx/pso-diffx/1.1.1/b655ebc87588a857a4f3d88cf98bcefa87a6105b/pso-diffx-1.1.1.jar"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="UnusedAttribute"
message="Attribute `appCategory` is only used in API level 26 and higher (current min is 23)"
errorLine1=" android:appCategory=" social" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
2023-09-05 15:35:06 +02:00
line="17"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="UnusedAttribute"
message="Attribute `localeConfig` is only used in API level 33 and higher (current min is 23)"
errorLine1=" android:localeConfig=" @xml/locales_config" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
2023-09-05 15:35:06 +02:00
line="24"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="UseAppTint"
message="Must use `app:tint` instead of `android:tint`"
2023-09-05 13:28:56 +02:00
errorLine1=" android:tint=" ?colorPrimary" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
file="src/main/res/layout/item_emoji_pref.xml"
line="78"
column="9"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " bn" (Bangla) the following quantity should also be defined: `one` (e.g. " সসে 1টি আপেল খেল, সেটা ভাল" )"
errorLine1=" < plurals name=" hint_describe_for_visually_impaired" >"
errorLine2=" ^">
<location
file="src/main/res/values-bn-rBD/strings.xml"
2023-09-01 20:33:23 +02:00
line="55"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " bg" (Bulgarian) the following quantity should also be defined: `one` (e.g. " 1 ден" )"
errorLine1=" < plurals name=" hint_describe_for_visually_impaired" >"
errorLine2=" ^">
<location
file="src/main/res/values-bg/strings.xml"
2023-09-01 20:33:23 +02:00
line="131"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
2023-10-11 12:28:45 +02:00
<issue
id="MissingQuantity"
message="For locale " ca" (Catalan) the following quantity should also be defined: `many`"
errorLine1=" < plurals name=" notification_title_summary" >"
errorLine2=" ^">
<location
file="src/main/res/values-ca/strings.xml"
line="155"
column="5"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="MissingQuantity"
message="For locale " ta" (Tamil) the following quantity should also be defined: `one` (e.g. " 1" )"
errorLine1=" < plurals name=" notification_title_summary" >"
errorLine2=" ^">
<location
file="src/main/res/values-ta/strings.xml"
line="173"
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " ga" (Irish) the following quantities should also be defined: `few` (e.g. " 3 cinn, 3 huaire, 3 chat, 3 éan, 3 bhróg" ), `many` (e.g. " 7 gcinn, 7 n-uaire, 7 gcat, 7 n-éan, 7 mbróg" ), `one` (e.g. " 1 cheann, 1 uair, 1 chat, 1 éan, 1 bhróg" ), `two` (e.g. " 2 cheann, 2 uair, 2 chat, 2 éan, 2 bhróig" )"
errorLine1=" < plurals name=" notification_title_summary" >"
errorLine2=" ^">
<location
file="src/main/res/values-ga/strings.xml"
line="188"
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " bg" (Bulgarian) the following quantity should also be defined: `one` (e.g. " 1 ден" )"
errorLine1=" < plurals name=" notification_title_summary" >"
errorLine2=" ^">
<location
file="src/main/res/values-bg/strings.xml"
2023-09-02 17:47:43 +02:00
line="190"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " sl" (Slovenian) the following quantities should also be defined: `few` (e.g. " 3 dnevi" ), `one` (e.g. " 1 dan" ), `two` (e.g. " 2 dneva" )"
errorLine1=" < plurals name=" notification_title_summary" >"
errorLine2=" ^">
<location
file="src/main/res/values-sl/strings.xml"
line="205"
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " cs" (Czech) the following quantity should also be defined: `many` (e.g. " 10.0 dne" )"
errorLine1=" < plurals name=" notification_title_summary" >"
errorLine2=" ^">
<location
file="src/main/res/values-cs/strings.xml"
line="221"
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " bn" (Bangla) the following quantity should also be defined: `one` (e.g. " সসে 1টি আপেল খেল, সেটা ভাল" )"
errorLine1=" < plurals name=" notification_title_summary" >"
errorLine2=" ^">
<location
file="src/main/res/values-bn-rIN/strings.xml"
line="226"
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " eu" (Basque) the following quantity should also be defined: `one` (e.g. " 1 lagun etorri da" )"
errorLine1=" < plurals name=" hint_describe_for_visually_impaired" >"
errorLine2=" ^">
<location
file="src/main/res/values-eu/strings.xml"
2023-09-02 17:47:43 +02:00
line="236"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " sl" (Slovenian) the following quantities should also be defined: `few` (e.g. " 3 dnevi" ), `one` (e.g. " 1 dan" ), `two` (e.g. " 2 dneva" )"
errorLine1=" < plurals name=" hint_describe_for_visually_impaired" >"
errorLine2=" ^">
<location
file="src/main/res/values-sl/strings.xml"
2023-09-02 17:47:43 +02:00
line="257"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " bn" (Bangla) the following quantity should also be defined: `one` (e.g. " সসে 1টি আপেল খেল, সেটা ভাল" )"
errorLine1=" < plurals name=" hint_describe_for_visually_impaired" >"
errorLine2=" ^">
<location
file="src/main/res/values-bn-rIN/strings.xml"
2023-09-02 17:47:43 +02:00
line="285"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
2023-10-11 12:28:45 +02:00
<issue
id="MissingQuantity"
message="For locale " ca" (Catalan) the following quantity should also be defined: `many`"
errorLine1=" < plurals name=" hint_describe_for_visually_impaired" >"
errorLine2=" ^">
<location
file="src/main/res/values-ca/strings.xml"
line="286"
column="5"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="MissingQuantity"
message="For locale " cs" (Czech) the following quantity should also be defined: `many` (e.g. " 10.0 dne" )"
errorLine1=" < plurals name=" hint_describe_for_visually_impaired" >"
errorLine2=" ^">
<location
file="src/main/res/values-cs/strings.xml"
2023-09-02 17:47:43 +02:00
line="286"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
2023-09-01 19:37:01 +02:00
message="For locale " hi" (Hindi) the following quantity should also be defined: `one` (e.g. " 1 घंटा" )"
errorLine1=" < plurals name=" hint_describe_for_visually_impaired" >"
2023-03-13 10:23:42 +01:00
errorLine2=" ^">
<location
2023-09-01 19:37:01 +02:00
file="src/main/res/values-hi/strings.xml"
2023-09-02 17:47:43 +02:00
line="302"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " ru" (Russian) the following quantities should also be defined: `few` (e.g. " из 2 книг за 2 дня" ), `many` (e.g. " из 5 книг за 5 дней" ), `one` (e.g. " из 1 книги за 1 день" )"
errorLine1=" < plurals name=" hint_describe_for_visually_impaired" >"
errorLine2=" ^">
<location
file="src/main/res/values-ru/strings.xml"
2023-09-02 17:47:43 +02:00
line="306"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " ga" (Irish) the following quantities should also be defined: `few` (e.g. " 3 cinn, 3 huaire, 3 chat, 3 éan, 3 bhróg" ), `many` (e.g. " 7 gcinn, 7 n-uaire, 7 gcat, 7 n-éan, 7 mbróg" ), `one` (e.g. " 1 cheann, 1 uair, 1 chat, 1 éan, 1 bhróg" ), `two` (e.g. " 2 cheann, 2 uair, 2 chat, 2 éan, 2 bhróig" )"
errorLine1=" < plurals name=" hint_describe_for_visually_impaired" >"
errorLine2=" ^">
<location
file="src/main/res/values-ga/strings.xml"
2023-09-02 17:47:43 +02:00
line="314"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
2023-10-11 12:28:45 +02:00
<issue
id="MissingQuantity"
message="For locale " ca" (Catalan) the following quantity should also be defined: `many`"
errorLine1=" < plurals name=" favs" >"
errorLine2=" ^">
<location
file="src/main/res/values-ca/strings.xml"
line="329"
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " ca" (Catalan) the following quantity should also be defined: `many`"
errorLine1=" < plurals name=" reblogs" >"
errorLine2=" ^">
<location
file="src/main/res/values-ca/strings.xml"
line="333"
column="5"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="MissingQuantity"
message="For locale " cs" (Czech) the following quantity should also be defined: `many` (e.g. " 10.0 dne" )"
errorLine1=" < plurals name=" favs" >"
errorLine2=" ^">
<location
file="src/main/res/values-cs/strings.xml"
2023-09-02 17:47:43 +02:00
line="333"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " cs" (Czech) the following quantity should also be defined: `many` (e.g. " 10.0 dne" )"
errorLine1=" < plurals name=" reblogs" >"
errorLine2=" ^">
<location
file="src/main/res/values-cs/strings.xml"
2023-09-02 17:47:43 +02:00
line="338"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
2023-10-11 12:28:45 +02:00
<issue
id="MissingQuantity"
message="For locale " ca" (Catalan) the following quantity should also be defined: `many`"
errorLine1=" < plurals name=" poll_info_votes" >"
errorLine2=" ^">
<location
file="src/main/res/values-ca/strings.xml"
line="359"
column="5"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="MissingQuantity"
message="For locale " cs" (Czech) the following quantity should also be defined: `many` (e.g. " 10.0 dne" )"
errorLine1=" < plurals name=" poll_info_votes" >"
errorLine2=" ^">
<location
file="src/main/res/values-cs/strings.xml"
2023-09-02 17:47:43 +02:00
line="369"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " cs" (Czech) the following quantity should also be defined: `many` (e.g. " 10.0 dne" )"
errorLine1=" < plurals name=" poll_timespan_days" >"
errorLine2=" ^">
<location
file="src/main/res/values-cs/strings.xml"
2023-09-02 17:47:43 +02:00
line="383"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " cs" (Czech) the following quantity should also be defined: `many` (e.g. " 10.0 dne" )"
errorLine1=" < plurals name=" poll_timespan_minutes" >"
errorLine2=" ^">
<location
file="src/main/res/values-cs/strings.xml"
2023-09-02 17:47:43 +02:00
line="388"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " cs" (Czech) the following quantity should also be defined: `many` (e.g. " 10.0 dne" )"
errorLine1=" < plurals name=" poll_timespan_seconds" >"
errorLine2=" ^">
<location
file="src/main/res/values-cs/strings.xml"
2023-09-02 17:47:43 +02:00
line="393"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " bg" (Bulgarian) the following quantity should also be defined: `one` (e.g. " 1 ден" )"
errorLine1=" < plurals name=" error_upload_max_media_reached" >"
errorLine2=" ^">
<location
file="src/main/res/values-bg/strings.xml"
2023-09-02 17:47:43 +02:00
line="430"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
2023-10-11 12:28:45 +02:00
<issue
id="MissingQuantity"
message="For locale " ca" (Catalan) the following quantity should also be defined: `many`"
errorLine1=" < plurals name=" poll_info_people" >"
errorLine2=" ^">
<location
file="src/main/res/values-ca/strings.xml"
line="430"
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " ca" (Catalan) the following quantity should also be defined: `many`"
errorLine1=" < plurals name=" poll_timespan_seconds" >"
errorLine2=" ^">
<location
file="src/main/res/values-ca/strings.xml"
line="458"
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " ca" (Catalan) the following quantity should also be defined: `many`"
errorLine1=" < plurals name=" poll_timespan_minutes" >"
errorLine2=" ^">
<location
file="src/main/res/values-ca/strings.xml"
line="462"
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " ca" (Catalan) the following quantity should also be defined: `many`"
errorLine1=" < plurals name=" poll_timespan_hours" >"
errorLine2=" ^">
<location
file="src/main/res/values-ca/strings.xml"
line="466"
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " ca" (Catalan) the following quantity should also be defined: `many`"
errorLine1=" < plurals name=" poll_timespan_days" >"
errorLine2=" ^">
<location
file="src/main/res/values-ca/strings.xml"
line="470"
column="5"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="MissingQuantity"
message="For locale " cs" (Czech) the following quantity should also be defined: `many` (e.g. " 10.0 dne" )"
errorLine1=" < plurals name=" poll_info_people" >"
errorLine2=" ^">
<location
file="src/main/res/values-cs/strings.xml"
2023-09-02 17:47:43 +02:00
line="480"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="MissingQuantity"
message="For locale " cs" (Czech) the following quantity should also be defined: `many` (e.g. " 10.0 dne" )"
errorLine1=" < plurals name=" poll_timespan_hours" >"
errorLine2=" ^">
<location
file="src/main/res/values-cs/strings.xml"
2023-09-02 17:47:43 +02:00
line="485"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
2023-10-11 12:28:45 +02:00
<issue
id="MissingQuantity"
message="For locale " ca" (Catalan) the following quantity should also be defined: `many`"
errorLine1=" < plurals name=" error_upload_max_media_reached" >"
errorLine2=" ^">
<location
file="src/main/res/values-ca/strings.xml"
line="487"
column="5"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="MissingQuantity"
message="For locale " cs" (Czech) the following quantity should also be defined: `many` (e.g. " 10.0 dne" )"
errorLine1=" < plurals name=" error_upload_max_media_reached" >"
errorLine2=" ^">
<location
file="src/main/res/values-cs/strings.xml"
2023-09-02 17:47:43 +02:00
line="490"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="Typos"
message="" media" is a common misspelling; did you mean " medier" ?"
errorLine1=" < string name=" error_media_upload_permission" >Trenger tillatelse til å lese media.< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="15"
column="80"/>
</issue>
<issue
id="Typos"
message="" media" is a common misspelling; did you mean " medier" ?"
errorLine1=" < string name=" error_media_download_permission" >Trenger tillatelse for å lagre media.< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="16"
column="83"/>
</issue>
<issue
id="Typos"
message="" Media" is a common misspelling; did you mean " Medier" ?"
errorLine1=" < string name=" post_media_hidden_title" >Media skjult< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="42"
column="44"/>
</issue>
<issue
id="Typos"
message="" birşey" is a common misspelling; did you mean " bir şey" ?"
errorLine1=" < string name=" footer_empty" >Burada henüz hiç birşey yok. Yenilemek için aşağı ya çekin!< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-tr/strings.xml"
line="49"
column="50"/>
</issue>
<issue
id="Typos"
message="" hiç birşey" is a common misspelling; did you mean " hiçbir şey" ?"
errorLine1=" < string name=" footer_empty" >Burada henüz hiç birşey yok. Yenilemek için aşağı ya çekin!< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-tr/strings.xml"
line="49"
column="46"/>
</issue>
<issue
id="Typos"
message="" Media" is a common misspelling; did you mean " Medier" ?"
errorLine1=" < string name=" action_view_media" >Media< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="85"
column="38"/>
</issue>
<issue
id="Typos"
message="" media" is a common misspelling; did you mean " medier" ?"
errorLine1=" < string name=" action_add_media" >Legg til media< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="87"
column="46"/>
</issue>
<issue
id="Typos"
message="" media" is a common misspelling; did you mean " medier" ?"
errorLine1=" < string name=" action_hide_media" >Skjul media< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="93"
column="44"/>
</issue>
<issue
id="Typos"
message="" media" is a common misspelling; did you mean " medier" ?"
errorLine1=" < string name=" action_open_media_n" >Åpne media #%d< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="116"
column="45"/>
</issue>
<issue
id="Typos"
message="" media" is a common misspelling; did you mean " medier" ?"
errorLine1=" < string name=" download_media" >Last ned media< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="121"
column="44"/>
</issue>
<issue
id="Typos"
message="" media" is a common misspelling; did you mean " medier" ?"
errorLine1=" < string name=" downloading_media" >Laster ned media< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="122"
column="49"/>
</issue>
<issue
id="Typos"
message="" media" is a common misspelling; did you mean " medier" ?"
errorLine1=" < string name=" send_media_to" >Del media til…< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="125"
column="38"/>
</issue>
<issue
id="Typos"
message="" media" is a common misspelling; did you mean " medier" ?"
errorLine1=" < string name=" dialog_title_finishing_media_upload" >Opplasting av media er ferdig< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="150"
column="70"/>
</issue>
<issue
id="Typos"
message="" media" is a common misspelling; did you mean " medier" ?"
errorLine1=" < string name=" pref_title_show_media_preview" >Last ned forhåndsvisning av media< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="183"
column="78"/>
</issue>
<issue
id="Typos"
message="" media" is a common misspelling; did you mean " medier" ?"
errorLine1=" < string name=" pref_default_media_sensitivity" >Marker alltid media som sensitivt< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="189"
column="65"/>
</issue>
<issue
id="Typos"
message="" Media" is a common misspelling; did you mean " Medier" ?"
errorLine1=" < string name=" title_media" >Media< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
line="229"
column="32"/>
</issue>
<issue
id="Typos"
message="" Media" is a common misspelling; did you mean " Medier" ?"
errorLine1=" < string name=" description_post_media" >Media: %s< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
2023-09-02 17:47:43 +02:00
line="317"
2023-03-13 10:23:42 +01:00
column="43"/>
</issue>
<issue
id="Typos"
message="" media" is a common misspelling; did you mean " medier" ?"
errorLine1=" < string name=" pref_title_gradient_for_media" >Vis fargerike gradienter for skjult media< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
2023-09-02 17:47:43 +02:00
line="450"
2023-03-13 10:23:42 +01:00
column="86"/>
</issue>
<issue
id="Typos"
message="Repeated word " tek" in message: possible typo"
2023-09-05 13:28:56 +02:00
errorLine1=" < string name=" dialog_push_notification_migration_other_accounts" >Pachli\' ye bildirim aboneliği izni vermek için mevcut hesabı nı za yeniden giriş yaptı nı z. Ancak, yine de bu şekilde geçirilmemiş başka hesapları nı z var. UnifiedPush bildirimleri desteğini etkinleştirmek için bunlara geçin ve tek tek yeniden giriş yapı n.< /string>"
errorLine2=" ^">
2023-03-13 10:23:42 +01:00
<location
file="src/main/res/values-tr/strings.xml"
2023-09-02 17:47:43 +02:00
line="568"
2023-09-05 13:28:56 +02:00
column="294"/>
2023-03-13 10:23:42 +01:00
</issue>
2023-07-30 21:45:43 +02:00
<issue
id="Typos"
message="" Media" is a common misspelling; did you mean " Medier" ?"
errorLine1=" < string name=" hint_media_description_missing" >Media bør ha en beskrivelse.< /string>"
errorLine2=" ^">
<location
file="src/main/res/values-nb-rNO/strings.xml"
2023-09-02 17:47:43 +02:00
line="591"
2023-07-30 21:45:43 +02:00
column="51"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="ImpliedQuantity"
message="The quantity `' one' ` matches more than one specific number in this locale (0, 1), but the message did not \
 include a formatting argument (such as `%d`). This is usually an internationalization error. See full issue \
 explanation for more."
2023-06-29 18:37:27 +02:00
errorLine1=" < item quantity=" one" >برهمکنشی جدید< /item>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
file="src/main/res/values-fa/strings.xml"
2023-06-29 18:37:27 +02:00
line="193"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="ImpliedQuantity"
message="The quantity `' one' ` matches more than one specific number in this locale (0, 1), but the message did not \
 include a formatting argument (such as `%d`). This is usually an internationalization error. See full issue \
 explanation for more."
2023-06-29 18:37:27 +02:00
errorLine1=" < item quantity=" one" >توصیف محتوا برای کمبینایان (کران ۱ نویسه)< /item>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
file="src/main/res/values-fa/strings.xml"
2023-09-02 17:47:43 +02:00
line="230"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="PluralsCandidate"
message="Formatting %d followed by words (" posts" ): This should probably be a plural rather than a string"
errorLine1=" < string name=" notification_summary_report_format" >%s · %d posts attached< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="107"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="PluralsCandidate"
message="Formatting %d followed by words (" and" ): This should probably be a plural rather than a string"
errorLine1=" < string name=" pref_title_http_proxy_port_message" >Port should be between %d and %d< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="313"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="PluralsCandidate"
message="Formatting %d followed by words (" others" ): This should probably be a plural rather than a string"
errorLine1=" < string name=" notification_summary_large" >%1$s, %2$s, %3$s and %4$d others< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="362"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
2023-07-30 21:45:43 +02:00
id="PluralsCandidate"
message="Formatting %d followed by words (" more" ): This should probably be a plural rather than a string"
errorLine1=" < string name=" conversation_more_recipients" >%1$s, %2$s and %3$d more< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-07-30 21:45:43 +02:00
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="512"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
2023-07-30 21:45:43 +02:00
id="PluralsCandidate"
message="Formatting %d followed by words (" people" ): This should probably be a plural rather than a string"
errorLine1=" < string name=" accessibility_talking_about_tag" >%1$d people are talking about hashtag %2$s< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-07-30 21:45:43 +02:00
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="698"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="UnusedTranslation"
message="The language `ber (Berber languages)` is present in this project, but not declared in the `localeConfig` resource"
errorLine1=" android:localeConfig=" @xml/locales_config" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
2023-09-05 15:35:06 +02:00
line="24"
2023-03-13 10:23:42 +01:00
column="31"/>
</issue>
<issue
id="UnusedTranslation"
message="The language `el (Greek)` is present in this project, but not declared in the `localeConfig` resource"
errorLine1=" android:localeConfig=" @xml/locales_config" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
2023-09-05 15:35:06 +02:00
line="24"
2023-03-13 10:23:42 +01:00
column="31"/>
</issue>
<issue
id="UnusedTranslation"
message="The language `fi (Finnish)` is present in this project, but not declared in the `localeConfig` resource"
errorLine1=" android:localeConfig=" @xml/locales_config" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
2023-09-05 15:35:06 +02:00
line="24"
2023-03-13 10:23:42 +01:00
column="31"/>
</issue>
<issue
id="UnusedTranslation"
message="The language `fy (Western Frisian)` is present in this project, but not declared in the `localeConfig` resource"
errorLine1=" android:localeConfig=" @xml/locales_config" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
2023-09-05 15:35:06 +02:00
line="24"
2023-03-13 10:23:42 +01:00
column="31"/>
</issue>
<issue
id="UnusedTranslation"
message="The language `in (Indonesian)` is present in this project, but not declared in the `localeConfig` resource"
errorLine1=" android:localeConfig=" @xml/locales_config" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
2023-09-05 15:35:06 +02:00
line="24"
2023-03-13 10:23:42 +01:00
column="31"/>
</issue>
<issue
id="UnusedTranslation"
message="The language `lv (Latvian)` is present in this project, but not declared in the `localeConfig` resource"
errorLine1=" android:localeConfig=" @xml/locales_config" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
2023-09-05 15:35:06 +02:00
line="24"
2023-03-13 10:23:42 +01:00
column="31"/>
</issue>
<issue
id="UnusedTranslation"
message="The language `ml (Malayalam)` is present in this project, but not declared in the `localeConfig` resource"
errorLine1=" android:localeConfig=" @xml/locales_config" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
2023-09-05 15:35:06 +02:00
line="24"
2023-03-13 10:23:42 +01:00
column="31"/>
</issue>
<issue
id="UnusedTranslation"
message="The language `si (Sinhala)` is present in this project, but not declared in the `localeConfig` resource"
errorLine1=" android:localeConfig=" @xml/locales_config" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
2023-09-05 15:35:06 +02:00
line="24"
2023-03-13 10:23:42 +01:00
column="31"/>
</issue>
<issue
id="UnusedTranslation"
message="The language `sk (Slovak)` is present in this project, but not declared in the `localeConfig` resource"
errorLine1=" android:localeConfig=" @xml/locales_config" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/AndroidManifest.xml"
2023-09-05 15:35:06 +02:00
line="24"
2023-03-13 10:23:42 +01:00
column="31"/>
</issue>
<issue
id="DataExtractionRules"
message="The attribute `android:allowBackup` is deprecated from Android 12 and higher and may be removed in future versions. Consider adding the attribute `android:dataExtractionRules` specifying an `@xml` resource which configures cloud backups and device transfers on Android 12 and higher."
errorLine1=" android:allowBackup=" false" "
errorLine2=" ~~~~~">
<location
file="src/main/AndroidManifest.xml"
2023-09-05 15:35:06 +02:00
line="18"
2023-03-13 10:23:42 +01:00
column="30"/>
</issue>
<issue
id="NotifyDataSetChanged"
message="It will always be more efficient to use more specific change events if you can. Rely on `notifyDataSetChanged` as a last resort."
errorLine1=" accountFieldAdapter.notifyDataSetChanged()"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/account/AccountActivity.kt"
2023-12-12 16:53:09 +01:00
line="492"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="NotifyDataSetChanged"
message="It will always be more efficient to use more specific change events if you can. Rely on `notifyDataSetChanged` as a last resort."
errorLine1=" notifyDataSetChanged()"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/accountlist/adapter/AccountAdapter.kt"
2023-10-28 19:54:46 +02:00
line="81"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="NotifyDataSetChanged"
message="It will always be more efficient to use more specific change events if you can. Rely on `notifyDataSetChanged` as a last resort."
errorLine1=" notifyDataSetChanged()"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/adapter/AccountFieldEditAdapter.kt"
2023-10-28 19:54:46 +02:00
line="44"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="NotifyDataSetChanged"
message="It will always be more efficient to use more specific change events if you can. Rely on `notifyDataSetChanged` as a last resort."
errorLine1=" notifyDataSetChanged()"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/adapter/AccountFieldEditAdapter.kt"
2023-10-28 19:54:46 +02:00
line="50"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="NotifyDataSetChanged"
message="It will always be more efficient to use more specific change events if you can. Rely on `notifyDataSetChanged` as a last resort."
errorLine1=" notifyDataSetChanged()"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/announcements/AnnouncementAdapter.kt"
2024-01-18 21:44:30 +01:00
line="169"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="NotifyDataSetChanged"
message="It will always be more efficient to use more specific change events if you can. Rely on `notifyDataSetChanged` as a last resort."
errorLine1=" notifyDataSetChanged()"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/accountlist/adapter/MutesAdapter.kt"
2023-10-28 19:54:46 +02:00
line="108"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="NotifyDataSetChanged"
message="It will always be more efficient to use more specific change events if you can. Rely on `notifyDataSetChanged` as a last resort."
errorLine1=" notifyDataSetChanged()"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/adapter/PreviewPollOptionsAdapter.kt"
2023-10-28 19:54:46 +02:00
line="36"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="NotifyDataSetChanged"
message="It will always be more efficient to use more specific change events if you can. Rely on `notifyDataSetChanged` as a last resort."
errorLine1=" notifyDataSetChanged()"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/adapter/TabAdapter.kt"
refactor: Start creating core modules (#286)
The existing code base is a single monolithic module. This is relatively
simple to configure, but many of the tasks to compile the module and
produce the final app have to run in series.
This is unnecessarily slow.
This change starts to split the code in to multiple modules, which are:
- :core:account - AccountManager, to break a dependency cycle
- :core:common - low level types or utilities used in many other modules
- :core:database - database types, DAOs, and DI infrastructure
- :core:network - network types, API definitions, and DI infrastructure
- :core:preferences - shared preferences definitions and DI
infrastructure
- :core:testing - fakes and rules used across different modules
Benchmarking with gradle-profiler shows a ~ 17% reduction in incremental
build times after an ABI change. That will improve further as more code
is moved to modules.
The rough mechanics of the changes are:
- Create the modules, and move existing files in to them. This causes a
lot of churn in import arguments.
- Convert build.gradle files to build.gradle.kts
- Separate out the data required to display a tab (`TabViewData`) from
the data required to configure a tab (`TabData`) to avoid circular
dependencies.
- Abstract the repeated build logic shared between the modules in to
a set of plugins under `build-logic/`, to simplify configuration of
the application and library builds.
- Be explicit that some nullable types are non-null at time of use.
Nullable properties in types imported from modules generally can't be
smart cast to non-null. There's a detailed discussion of why this
restriction exists at
https://discuss.kotlinlang.org/t/what-is-the-reason-behind-smart-cast-being-impossible-to-perform-when-referenced-class-is-in-another-module/2201.
The changes highlight design problems with the current code, including:
- The main application code is too tightly coupled to the network types
- Too many values are declared unnecessarily nullable
- Dependency cycles between code that make modularisation difficult
Future changes will add more modules.
See #291.
2023-12-04 16:58:36 +01:00
line="54"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="NotifyDataSetChanged"
message="It will always be more efficient to use more specific change events if you can. Rely on `notifyDataSetChanged` as a last resort."
errorLine1=" notifyDataSetChanged()"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/adapter/TabAdapter.kt"
refactor: Start creating core modules (#286)
The existing code base is a single monolithic module. This is relatively
simple to configure, but many of the tasks to compile the module and
produce the final app have to run in series.
This is unnecessarily slow.
This change starts to split the code in to multiple modules, which are:
- :core:account - AccountManager, to break a dependency cycle
- :core:common - low level types or utilities used in many other modules
- :core:database - database types, DAOs, and DI infrastructure
- :core:network - network types, API definitions, and DI infrastructure
- :core:preferences - shared preferences definitions and DI
infrastructure
- :core:testing - fakes and rules used across different modules
Benchmarking with gradle-profiler shows a ~ 17% reduction in incremental
build times after an ABI change. That will improve further as more code
is moved to modules.
The rough mechanics of the changes are:
- Create the modules, and move existing files in to them. This causes a
lot of churn in import arguments.
- Convert build.gradle files to build.gradle.kts
- Separate out the data required to display a tab (`TabViewData`) from
the data required to configure a tab (`TabData`) to avoid circular
dependencies.
- Abstract the repeated build logic shared between the modules in to
a set of plugins under `build-logic/`, to simplify configuration of
the application and library builds.
- Be explicit that some nullable types are non-null at time of use.
Nullable properties in types imported from modules generally can't be
smart cast to non-null. There's a detailed discussion of why this
restriction exists at
https://discuss.kotlinlang.org/t/what-is-the-reason-behind-smart-cast-being-impossible-to-perform-when-referenced-class-is-in-another-module/2201.
The changes highlight design problems with the current code, including:
- The main application code is too tightly coupled to the network types
- Too many values are declared unnecessarily nullable
- Dependency cycles between code that make modularisation difficult
Future changes will add more modules.
See #291.
2023-12-04 16:58:36 +01:00
line="157"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (802 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" m12,3.1674a1.6059,1.6059 0,0 1,1.6059 1.6059c0,0.5942 -0.3212,1.1161 -0.803,1.3891v1.0198h0.803a5.6207,5.6207 0,0 1,5.6207 5.6207h0.803a0.803,0.803 0,0 1,0.803 0.803v2.4089a0.803,0.803 0,0 1,-0.803 0.803h-0.803v0.803a1.6059,1.6059 0,0 1,-1.6059 1.6059H6.3793A1.6059,1.6059 0,0 1,4.7733 17.6207V16.8178H3.9704A0.803,0.803 0,0 1,3.1674 16.0148V13.6059A0.803,0.803 0,0 1,3.9704 12.803H4.7733a5.6207,5.6207 0,0 1,5.6207 -5.6207h0.803V6.1625C10.7153,5.8894 10.3941,5.3675 10.3941,4.7733A1.6059,1.6059 0,0 1,12 3.1674M8.3867,12A2.0074,2.0074 0,0 0,6.3793 14.0074,2.0074 2.0074,0 0,0 8.3867,16.0148 2.0074,2.0074 0,0 0,10.3941 14.0074,2.0074 2.0074,0 0,0 8.3867,12m7.2267,0a2.0074,2.0074 0,0 0,-2.0074 2.0074,2.0074 2.0074,0 0,0 2.0074,2.0074 2.0074,2.0074 0,0 0,2.0074 -2.0074A2.0074,2.0074 0,0 0,15.6133 12Z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/bot_badge.xml"
line="12"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (2783 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M464.58,257.93c9,-0.87 16.14,-4.1 22.16,-9.94 0.35,-0.35 0.6,-0.8 0.9,-1.17 2.6,-3.1 4.94,-7.18 9.7,-6 8.63,2.17 9.46,19.48 8.04,27.45 -2.27,12.7 -15.7,28.74 -32.62,35.6 -12.25,4.96 -24.58,7.38 -37.55,7.56 -3.2,0.05 -5.85,1.06 -7.62,3.62 -11.13,16.1 -27.1,24.06 -45.85,27.12 -4.9,0.8 -6.02,2.84 -6.35,7.64 -1.16,16.88 4.23,31.18 14.22,44.6 7.1,9.5 12.35,20.34 19.04,30.18 10.18,14.96 17.16,31.45 23.9,48.05 2.45,6 3.75,12.48 5.46,18.75 2.57,9.45 -3.48,19.32 -14.44,25.83 -12.1,7.18 -25.26,10.55 -39.16,10.48 -5.64,-0.02 -9.43,3.12 -13.65,5.57 -3.18,1.85 -6,4.53 -8.57,7.23 -12.92,13.6 -28.9,20.17 -47.43,21.3 -8.83,0.53 -59.78,16.9 -123.24,8.78 -21.94,-2.82 -46.9,-7.1 -65.27,-15.48 -13.75,-6.3 -34.63,-21.73 -39.26,-36 -1.2,-3.7 -1.98,-3.43 -4.3,-2.18 -7.3,3.93 -15.16,4.83 -23.26,4.33 -14.96,-0.9 -26.27,-7.77 -33.72,-20.9 -5.6,-9.83 -9.05,-20.23 -8.48,-31.68 0.1,-2.2 -1.33,-2.7 -2.8,-3.43 -4.3,-2.08 -7.4,-5.33 -9.3,-9.68 -2.25,-5.15 -1.1,-8.83 3.95,-11.24 2.32,-1.1 2.5,-2.5 2.26,-4.65 -0.88,-8.4 2.67,-14.56 9.92,-18.62 6.56,-3.68 12.47,-1.43 14.5,5.84 1.18,4.23 2.5,6.9 7.75,6.54 4.86,-0.33 8.34,2.58 9.86,7.3 1.4,4.3 -1.13,10.6 -5.2,13.4 -1.88,1.28 -3.72,2.73 -5.8,3.6 -4.46,1.84 -4.5,5.17 -3.25,8.88 1.77,5.3 4.23,10.28 7.58,14.76 4.47,6 12.88,6.42 17.92,0.98 4.64,-5 5.95,-10.86 5.1,-17.6 -1.64,-13.3 -1.74,-26.68 0.23,-40 1.1,-7.43 3.4,-14.64 5.9,-21.7 7.34,-20.78 14.77,-41.55 30.63,-57.9 4.12,-4.24 8.4,-8.16 13.42,-11.32 1.3,-0.84 3.36,-1.62 0.95,-3.5 -6.4,-5.02 -7.04,-12.57 -8.6,-19.7 -0.43,-1.9 -0.85,-3.86 -0.8,-5.8 0.05,-3.8 -1,-6.2 -5.08,-7.56 -3.14,-1.04 -3.9,-4.64 -4,-7.85 -0.75,-23.95 4.8,-46.1 17.6,-66.64 10.64,-17.05 21.42,-33.95 33.88,-49.72 2.43,-3.07 5.1,-6.94 8.3,-9.25 2.47,-2.42 4.02,-5.3 3.25,-9.43 -2.45,-13.18 -4.05,-25.76 -2.9,-38.73 1.16,-12.8 12.96,-25.3 28.64,-18.68 2.1,0.88 3.03,-0.28 3.8,-1.85 5.56,-11.32 25.42,-26.14 35.6,-27.08 5.4,-0.5 11.06,3.56 12.63,10.08 1.06,4.38 2.12,6.15 7.37,4.7 5.6,-1.57 11.84,-1.57 15.74,4.57 1.37,2.14 2.5,4.48 1.77,6.92 -2.34,6.77 0.22,6.7 4.22,6.64 19.47,-0.34 36.57,11.34 52.55,22.58 4.43,3.12 7.88,7.36 11.35,11.43 9.5,11.2 18.47,22.87 29.36,32.8 8.34,7.58 17.73,13.18 29.46,13.54 1.8,0.06 3.6,0.16 5.38,0 9.7,-0.88 13.12,-7.9 8.15,-16.43 -3.77,-6.46 -9.08,-12 -11.58,-19.24 -3.07,-8.9 -4.93,-17.73 1.06,-26.2 1.36,-1.94 0.78,-3.72 0.17,-5.6 -1.98,-6.1 -0.9,-12.03 1.47,-17.67 1.57,-3.76 4.62,-6.53 9,-6.6 4.3,-0.04 8.12,1.35 10.13,5.58 1.33,2.8 2.57,5.65 3.64,8.55 1.63,4.44 5.64,6.35 9.57,3.78 2.73,-1.77 3.28,-4.88 5.76,-7 3.8,-3.24 7.8,-4.04 12.02,-1 4.23,3.04 6.86,7 6,12.5 -0.33,2.25 -0.96,4.45 -2.46,6.32 -3.24,4.02 -2.96,7.96 0.14,12.03 2.95,3.9 5.88,7.86 9,11.57C473.3,155 480.12,170 483.53,186.44c2.06,9.93 1.8,20.08 -0.46,30.13 -3.2,14.18 -8.4,27.4 -17.4,38.95 -0.37,0.48 -0.52,1.12 -1.1,2.4z" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/elephant_friend.xml"
line="7"
column="25"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1503 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M434.05,70.75c-4.33,1.58 -7.75,1.33 -10.1,-1.72 -2.36,-3.08 -2.15,-7.75 0.5,-10.18 2.44,-2.23 6.73,-3.17 6.73,-3.17s-5.97,-18.84 -7.52,-24.82c-0.6,-2.52 -0.92,-5.7 4.3,-8.72 7.68,-4.42 15.2,-7.8 24.1,-10.7 3.28,-1.06 7.05,-0.3 8.7,2.68 4.12,11.28 7,21.06 10.66,32.28 3.1,9.54 -1.33,10.92 -4.82,13 -2.74,1.63 -6.45,2.92 -9.94,0.64 -3,-1.96 -3.2,-6.7 -2.07,-9.67 1.95,-3.74 8.18,-5.2 8.18,-5.2s-2.03,-6.4 -3.1,-9.5c-4.27,-12.07 -4.44,-9.3 -16.1,-4.23 -10.4,4.52 -9.9,5.07 -6.54,15.98 0.76,2.48 2.74,7.93 3.74,11.88 2.02,7.9 -1.32,9.48 -6.73,11.45zM357.86,54.52c-0.06,-6.67 9.1,-15.55 15.24,-15.43 2.4,0.03 4.03,1.26 5.13,3.2 5.96,10.4 11.24,21.16 17.7,31.3 2.23,3.47 1.18,6.97 -1.84,10.06 -3.42,3.48 -6.68,4.82 -11,1.6 -7.96,-5.9 -25.96,-26.6 -25.24,-30.74zM506.52,73.77c0.53,2.86 -2.1,4.22 -6.44,6.7 -5.93,3.4 -14.07,6.7 -20.86,10.55 -3.48,1.98 -7.18,4.66 -10.96,0.57 -3.46,-3.75 -3.74,-11.26 -0.4,-14.8 8.26,-8.74 16.8,-17.2 26.12,-24.83 3.9,-3.2 6.88,-2.52 8.86,2.1 2.4,5.6 3.3,11.57 3.68,19.7zM485.48,119.2c-10.47,0.63 -11.15,0.1 -12.55,-10.14 -0.86,-6.2 0.57,-8.46 6.56,-9.66 9.93,-2 19.34,-5.8 29.12,-8.33 6.37,-1.65 8.36,-0.26 8.5,6.3 0.17,6.6 -2.64,12.2 -6.38,17.08 -3.2,4.18 -24.45,4.7 -25.26,4.75zM405.4,26.1c0.38,7.18 1.68,23.77 1.65,24.9 -0.1,3.47 -0.96,6.85 -4.7,7.7 -3.56,0.83 -5.83,-2.2 -7.2,-4.75 -3.84,-7.16 -6.7,-14.8 -8.8,-22.66 -0.68,-2.53 -1.16,-5.1 -1.98,-7.55 -2.1,-6.2 -1.5,-9.24 3.5,-13.36 2.86,-2.38 5.83,-4.8 9.43,-6 4.92,-1.64 7.73,0.03 8.03,5.1 0.33,5.52 0.08,11.07 0.08,16.6z" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/elephant_friend.xml"
line="11"
column="25"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (5207 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M237.55,461.68c-3.74,-4.52 -5.68,-10.24 -9.82,-14.5 -8.22,-8.45 -18.98,-11.4 -29.97,-12.43 -13.3,-1.25 -25.84,2.5 -37.3,9.43 -1.23,0.75 -4.1,1 -2.96,3.46 1.12,2.44 3.37,1.07 5.2,0.6 0.63,-0.17 1.3,-0.3 1.84,-0.64 12.76,-7.84 26.86,-6.72 39.83,-2.92 12.03,3.52 22.96,10.7 28.42,23.56 7.16,16.86 10.88,34.32 10.7,52.63 0,2.65 -0.3,4.42 -3.3,5.6 -7.93,3.1 -10.82,10.33 -7.84,18.34 0.33,0.87 0.67,1.73 1,2.6 -1.97,0.64 -2.25,-0.7 -2.8,-1.58 -3.06,-4.83 -7.6,-6.5 -13.04,-5.87 -5.22,0.6 -7.82,4.27 -9.36,8.86 -1.05,3.13 -1.84,6.34 -1.14,9.63 0.37,1.73 0.28,2.84 -1.7,3.23 -1.8,0.35 -2.7,-0.2 -3.1,-2.07 -0.83,-3.67 -3.48,-6 -6.05,-8.6 -7.77,-7.88 -17.46,-2.88 -19.98,6.12 -0.96,3.38 -2.3,3.72 -5.05,2.9 -2.5,-0.72 -5.07,-1.22 -7.54,-2.04 -11.78,-3.97 -14.72,-13.16 -14.2,-24.34 0.17,-3.45 -0.14,-6.85 -1.16,-10.15 -0.4,-1.32 -1.14,-2.53 -2.7,-2.4 -1.6,0.16 -2.1,1.5 -2,2.9 0.28,3.7 -1.95,9.37 -7.6,10.37C121,537 97.3,525.3 92.73,505.8c-1.64,-1.5 -3.04,-1.64 -4.8,-0.98 -1.07,0.4 -2.16,0.86 -3.04,1.55 -9.6,7.47 -20.4,8.52 -32.02,6.66 -6.1,-0.98 -11.44,-3.3 -15.46,-7.65 -9.14,-9.86 -13.94,-21.8 -14.97,-35.23 -0.2,-2.55 0.46,-4.92 2.46,-6.64 2.48,-2.13 4.33,-2.62 6.5,1.02 3.45,5.8 3.97,12.56 7.33,18.4 7.13,12.36 22.7,17.5 35,2.98 4.64,-5.47 4.54,-10.5 3.78,-16.98 -2.33,-20.22 -1.35,-40.16 4.53,-60.02 5.46,-18.4 13.88,-35.12 23.95,-51.2 5.25,-8.37 12.45,-15.13 20.4,-20.88 4.24,-3.1 10.25,-2.7 14.76,-5.88 1.4,-1 2.28,0.94 2.98,1.85 4.92,6.36 11.94,8.28 19.36,9.05 9.7,1 15.67,-4.7 19.8,-12.45 2.16,-4.04 3.35,-4.27 6.72,-1.1 3.13,2.94 6.97,5.32 11.15,6.9 1.4,0.54 2.73,1.28 4.2,0.65 1.43,-0.6 3.6,-0.34 4,-2.33 0.44,-2.22 -1.8,-2.45 -3.1,-3.13 -5.34,-2.84 -10.44,-6.04 -15.34,-9.6 -1.9,-1.4 -2.3,-2.74 -1.52,-4.94 3.85,-10.7 2.88,-21.9 2.96,-32.94 0,-2.66 -1.03,-5.73 -4.37,-5.4 -3.42,0.34 -2.4,3.4 -2.48,5.83 -0.34,10.57 0.2,48.52 -20.4,51.8 -5.6,0.88 -11.72,-3.87 -14.97,-7.55 -1.05,-1.2 -1.6,-2.82 -2.3,-4.3 -1.9,-3.97 -4.7,-4.7 -8.32,-2.28 -1.6,1.1 -3.16,2.3 -4.77,3.42 -6.07,4.18 -11.02,2.55 -13,-4.62 -2.12,-7.58 -2.73,-15.4 -2.9,-23.25 -0.18,-7.1 -0.37,-7.44 -7.23,-7.38 -3.63,0.02 -3.4,-2.65 -3.34,-4.76 0.3,-7.84 1.16,-15.63 3.16,-23.24 5.44,-20.78 15.25,-39.46 27.34,-57.06 9.98,-14.53 20.6,-28.52 32.6,-41.46 1.35,-1.46 2.53,-3.08 1.88,-5.25 -3.8,-12.62 -4.97,-25.52 -4.34,-38.64 0.18,-3.68 1.14,-7.06 3.14,-10.16 4.82,-7.47 11.9,-8.46 18.45,-2.54 4.23,3.82 5.38,3.75 7.42,-1.7 4.34,-11.62 13.95,-18.16 23.3,-25 1.14,-0.85 2.63,-1.3 4.03,-1.74 8.2,-2.65 11.25,-0.47 11.25,8.02 0,1.15 -0.07,2.3 -0.03,3.43 0.13,4.47 1.23,5.28 5.4,3.6 3.7,-1.5 7.53,-2.1 11.46,-2.12 2.42,0 5.3,-0.08 6.36,2.63 1,2.62 -0.22,5.13 -1.9,7.25 -1.02,1.28 -2.27,2.37 -3.23,3.67 -1.26,1.72 -1.58,3.66 -0.2,5.45 1.3,1.7 3.07,1.46 4.9,0.9 2.35,-0.7 4.7,-1.3 7.08,-1.85 5.5,-1.3 10.67,-0.84 16.25,0.93 22.57,7.14 39.55,21.56 53.67,39.85 10.63,13.77 21.63,27.04 37.92,34.54 8.35,3.85 16.9,6.37 26.37,6.2 15.5,-0.27 22.1,-14.73 14.75,-28.12 -2.35,-4.27 -5.4,-8.16 -8.04,-12.27 -3.88,-6 -10.2,-16.04 -5.6,-23.58 3.3,-5.45 5.37,-11.58 2.52,-18.9 -0.08,-1.6 -0.05,-3.35 0.46,-4.83 1.42,-4.12 5.42,-4.9 8.47,-1.8 1.54,1.56 2.3,3.5 2.8,5.62 0.98,4.25 2.27,8.28 7.44,9.2 5.6,0.97 10.84,0.58 14.68,-4.23 1.48,-1.85 3.28,-3.16 5.2,-4.4 1.44,-0.92 2.98,-1.45 4.56,-0.33 1.6,1.12 1.42,2.82 1.23,4.46 -0.2,1.65 -0.9,3.1 -1.9,4.44 -5.77,7.8 -5.23,16.43 2.02,22.87 23.06,20.5 30.33,46.86 26.25,76.12 -2.65,18.97 -11.78,35.84 -25.73,49.58 -2.2,2.18 -4.45,4.3 -6.68,6.46 -2.33,2.23 -3.93,2.15 -4.3,-1.4 -0.36,-3.5 -1.98,-6.5 -3.52,-9.58 -2.34,-4.65 -6.03,-6.72 -11.1,-6.17 -3.3,0.34 -8.26,5.75 -9.05,9.47 -3.08,14.45 -13.34,23.87 -27.43,26.86 -15.9,3.36 -30.32,1.14 -43.77,-8.18 -3.5,-2.43 -7,-4.17 -9.73,-8 -5.08,-7.13 -16.4,-6.98 -23.1,-0.75 -0.6,0.56 -1.48,1 -1.12,1.93 0.48,1.22 1.7,0.8 2.55,0.65 0.94,-0.16 1.8,-0.77 2.72,-1.1 5.43,-1.83 7.9,-1.44 13.27,2.3 -3.13,1.38 -6.1,2.42 -8.8,3.9 -15.9,8.8 -23.13,20.6 -18.48,36.6 1.56,5.37 3.22,10.8 8.85,13.87 3.24,1.77 2.84,3.92 -0.62,5.42 -3.44,1.5 -6.83,3.12 -10.25,4.65 -0.87,0.4 -2.22,0.47 -2.1,1.67 0.17,1.43 1.6,1.47 2.7,1.43 5.
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<location
file="src/main/res/drawable/elephant_friend.xml"
line="15"
column="25"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1229 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M320.74,552.86c0,-3.62 1.58,-6.17 3.95,-8.34 1.97,-1.8 4.1,-1.73 6.32,-0.54 2.6,1.4 3.5,4.16 3.66,6.55 0.17,2.4 -2.78,2.16 -4.55,2.68 -2.18,0.65 -4.42,1.1 -6.62,1.7 -2.04,0.53 -3.18,0.08 -2.76,-2.04zM211.12,555.75c0.62,-7.63 5.97,-12.05 11,-9.22 1.87,1.04 3.73,2.48 3.63,4.83 -0.1,2.32 -9,5.34 -11.57,6.4 -2,0.8 -3.7,0.78 -3.06,-2zM190.44,562.93c-1.76,-0.23 -10.18,0.22 -10.6,-2.52 -0.35,-2.33 1.4,-4.48 3.5,-6 2.27,-1.65 4.47,-1.77 6.75,-0.26 1.06,0.7 2.23,1.4 3.02,2.37 1.1,1.33 3.2,2.64 2.36,4.47 -0.8,1.78 -2.98,2.23 -5.04,1.96zM391.17,519.44c2.04,-6.24 7,-9.52 11.73,-8.35 2.15,0.53 3.55,2.03 3.88,3.9 0.42,2.34 -2.14,1.87 -3.42,2.47 -3.73,1.76 -7.83,1.28 -12.2,1.97zM302.64,557.6c-3.28,-0.47 -11.57,-0.97 -11.9,-2.4 -0.42,-1.8 1.33,-3.16 2.75,-4.2 4.6,-3.4 8.78,-2.1 10.7,3.23 1,2.82 0.55,3.43 -1.56,3.36zM420.1,510.42c-1.2,-5.6 0.16,-9.25 4.92,-11.44 1.9,-0.88 3.66,-0.63 4.82,0.74 1.2,1.43 -0.37,2.67 -1.28,3.7 -2.34,2.63 -4.96,4.94 -8.47,7zM356.97,530.9c-0.27,4.6 -2,7.9 -5.37,10.37 -0.64,0.46 -1.24,1.42 -2,0.94 -0.53,-0.33 -0.82,-1.35 -0.9,-2.1 -0.38,-4.45 3.08,-8.4 8.27,-9.2zM242.28,535.5c-0.73,3.33 -1.4,6.46 -4.55,7.58 -0.62,0.22 -0.98,-2.36 -0.68,-3.82 0.53,-2.58 1.12,-5.3 4.13,-5.85 1.8,-0.32 0.86,1.56 1.1,2.1z" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/elephant_friend.xml"
line="35"
column="25"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1455 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M369.34,395.2c-0.36,10.82 -7.26,15.35 -17.1,11.05 -1.5,-0.65 -2.08,-0.66 -3.2,0.53 -7.24,7.7 -14.98,6.93 -20.1,-2.23 -1.5,-2.67 -2.45,-3.12 -5.43,-1.97 -7.26,2.82 -11.64,-0.6 -11.53,-8.5 0.06,-4.7 1.6,-8.96 4.12,-12.87 0.8,-1.26 2,-2.45 3.64,-1.64 1.92,0.95 0.28,2.3 -0.08,3.3 -1.25,3.6 -2.2,7.2 -2.02,11 0.18,3.53 2.2,3.96 4.5,2.1 2.1,-1.7 3.7,-4.08 5.5,-6.2 0.75,-0.88 1.4,-1.87 2.8,-1.45 1.32,0.4 1.52,1.5 1.67,2.7 0.63,4.87 2.5,9.06 6.5,12.16 2.58,2 4.4,1.93 5.47,-1.45 0.74,-2.32 1.6,-4.6 2.26,-6.96 0.8,-2.9 2.17,-3.03 4,-0.92 2.32,2.68 5.2,5.96 8.57,3.67 3.46,-2.35 1.47,-6.54 0.3,-9.9 -0.9,-2.64 -2.05,-5.16 -4,-7.24 -0.8,-0.84 -1.68,-1.75 -0.73,-2.96 0.7,-0.9 1.7,-0.6 2.7,-0.43 4.32,0.73 7.47,2.7 9.14,7.06 1.4,3.65 3.27,7.1 3.04,11.17zM257.8,234.95c0,3.1 0.06,5.4 -0.03,7.67 -0.05,1.25 -0.75,2.13 -2.06,2.38 -1.4,0.27 -2.43,-0.06 -3.33,-1.34 -8.95,-12.77 -2.18,-30.7 12.84,-33.9 7.24,-1.53 18.57,3.32 22.34,9.53 1.63,2.66 0.77,5.45 -0.96,7.1 -2.03,1.94 -3.08,-1.2 -4.62,-2.1 -3.3,-1.95 -6.58,-4.33 -10.2,-5.3 -6.54,-1.75 -12.92,3.24 -13.6,9.93 -0.24,2.27 -0.28,4.56 -0.36,6.02zM335.63,182.77c-0.4,3.9 0.7,6.67 1.5,9.5 0.5,1.72 0.1,3.34 -1.5,4.28 -1.32,0.8 -2.77,0.04 -3.48,-0.96 -3.8,-5.36 -6.13,-11.28 -4.57,-17.9 1.37,-5.78 5.48,-9.1 11.26,-10.22 7.58,-1.47 16.86,5.04 17.3,12.13 0.1,1.34 0.82,3.13 -1.05,3.9 -1.44,0.58 -2.48,-0.47 -3.45,-1.34 -1.58,-1.4 -3,-3.04 -4.72,-4.25 -2.7,-1.88 -5.8,-2.27 -8.88,-1.06 -3.2,1.27 -2.16,4.37 -2.42,5.93z" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/elephant_friend.xml"
line="39"
column="25"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1421 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M334.32,456.65c0.4,3.22 -0.48,5.42 -2.9,6.2 -2.62,0.85 -4.6,-1 -5.16,-3.3 -1.23,-5.03 -2.02,-10.18 -2.83,-15.3 -0.3,-1.87 0.14,-3.75 2.42,-4.15 2.12,-0.36 3.48,1 4.1,2.76 1.63,4.77 3.06,9.6 4.38,13.8zM346.88,497.52c-0.37,3.22 -1.74,5.15 -4.26,5.35 -2.76,0.2 -4.25,-2.07 -4.25,-4.42 -0.02,-5.18 0.42,-10.37 0.83,-15.55 0.15,-1.88 1,-3.6 3.32,-3.45 2.14,0.14 3.16,1.77 3.33,3.64 0.48,5 0.73,10.04 1.03,14.42zM111.33,405.23c-1.5,2.88 -3.47,4.2 -5.9,3.47 -2.64,-0.8 -3.22,-3.44 -2.4,-5.64 1.85,-4.85 4.12,-9.54 6.35,-14.23 0.82,-1.7 2.23,-3 4.34,-2.03 1.95,0.9 2.3,2.78 1.8,4.6 -1.34,4.84 -2.9,9.64 -4.2,13.83zM125.06,433.6c-1.18,3.04 -3,4.56 -5.47,4.1 -2.74,-0.5 -3.6,-3.06 -3,-5.34 1.28,-5.02 3.02,-9.93 4.73,-14.83 0.62,-1.78 1.9,-3.23 4.1,-2.5 2.03,0.68 2.6,2.52 2.3,4.37 -0.82,4.97 -1.85,9.9 -2.67,14.22zM318.95,487.36c-0.07,3.25 -1.26,5.3 -3.74,5.72 -2.73,0.47 -4.42,-1.66 -4.64,-4 -0.5,-5.16 -0.55,-10.37 -0.6,-15.56 -0.04,-1.88 0.65,-3.68 2.97,-3.74 2.15,-0.07 3.3,1.47 3.66,3.3 0.92,4.96 1.65,9.95 2.35,14.28zM220.34,466.9c2.03,2.55 2.43,4.9 0.8,6.8 -1.8,2.1 -4.47,1.56 -6.14,-0.1 -3.7,-3.63 -7.06,-7.6 -10.44,-11.54 -1.23,-1.44 -1.85,-3.26 -0.1,-4.8 1.6,-1.42 3.47,-0.98 4.92,0.2 3.9,3.2 7.65,6.58 10.96,9.45zM218.05,505.25c0.7,3.18 0.02,5.45 -2.3,6.45 -2.54,1.1 -4.7,-0.58 -5.46,-2.8 -1.7,-4.9 -2.98,-9.95 -4.26,-14.98 -0.47,-1.83 -0.22,-3.74 2.02,-4.34 2.07,-0.57 3.56,0.65 4.33,2.36 2.07,4.6 3.94,9.27 5.65,13.3z" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/elephant_friend.xml"
line="43"
column="25"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (2831 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M415.6,303.76c-1.72,1.5 -3.38,3.05 -5.08,4.58 -3.58,3.24 -14.12,2.94 -17.7,-0.44 -2.15,-2.03 -1.74,-3.02 1.04,-3.88 3.88,-1.2 7.66,-2.73 11.47,-4.17 15.35,-5.8 24.8,-17.05 28.94,-32.6 2.37,-8.9 -1.8,-13.55 -11,-13.94 -7.06,-0.3 -14,0.78 -20.95,1.45 -9.33,0.9 -18.55,0.57 -27.53,-2.26 -7.48,-2.37 -10.93,-7.27 -11.57,-14.84 -1.13,-13.3 -4.25,-33.32 -2.67,-39.85 1.52,-6.28 7,-20.6 5.78,-30.26 -1.18,-9.38 -4.67,-14.27 -7.74,-19.85 -3.2,-5.83 -5,-12.75 -6.97,-18.9 -5.04,-15.65 -11.93,-30.6 -23.7,-42.74 -7.07,-7.28 -15.15,-13.3 -22.8,-19.87 -5.32,-4.6 -11.2,-7.82 -18,-9.3 -3.1,-0.65 -4.23,-1.47 -3.4,-5.17 2.3,-10.25 -3,-16.46 -13.4,-16.5 -1.46,-0.02 -2.94,-0.08 -4.4,0.1 -3.8,0.48 -5.26,-0.44 -4.23,-4.78 2.02,-8.56 -4.18,-16.05 -12.95,-16.12 -6.58,-0.04 -13.02,0.92 -19.02,3.7 -2.42,1.12 -3.52,1.1 -4.72,-1.66 -2.43,-5.58 -6.8,-8.86 -13.04,-9.75 -12.25,-1.75 -22.9,1.67 -32.07,9.7 -9.78,8.53 -16.37,19.45 -21.2,31.25 -4.1,10.04 -9.46,18.37 -19.75,22.88 -2.8,1.23 -5.35,3.12 -7.84,4.95 -20.45,15 -36.96,33.6 -50.95,54.7 -9.9,14.93 -18.4,30.2 -22.3,47.94 -2.72,12.42 -5.2,24.87 -7.12,37.4 -2,12.93 -1.06,25.64 3.62,37.97 2.12,5.62 5.57,8.77 11.06,8.6 4.34,-0.16 5.3,1.77 6.14,5.52 2.27,9.9 5.9,19.05 17.13,22.2 1.76,0.5 2.48,1.3 0.87,3.05 -5.94,6.5 -11.04,13.64 -16.03,20.9 -10.44,15.25 -17.88,31.82 -21.53,49.87 -1.94,9.55 -2.54,19.4 1.98,28.76 1.06,2.18 1.1,4.64 1,7.16 -0.87,19.15 7.85,33.9 21.43,46.83 -7.8,4.47 -26.34,3.1 -32.96,-2.53 -1.27,-1.08 -2.46,-2.18 -1.26,-4.12 4.77,-7.68 1.6,-14 -3.58,-19.87 -5.1,-5.77 -9.94,-5.4 -14.1,1.15 -1.15,1.8 -2.08,2.9 -4.55,2.6 -5.7,-0.7 -9.83,2.58 -12.45,7.02 -2.95,4.97 -3.6,10.74 0.2,15.65 2.4,3.1 3.04,5.15 0.5,8.66 -3.02,4.2 -2.42,10.07 0.2,12.76 3.56,3.66 9.77,4.7 14.45,2.76 7.66,-3.16 5.8,-8.13 7.66,-8.3 1.86,-0.16 3.38,3.87 11.95,7.48 17.15,7.23 35.34,7.46 52.57,-1.77 2.18,-1.17 3.87,-1 4.3,1.77 0.73,4.83 1.38,9.6 0.26,14.54 -2.64,11.65 -2.5,23.3 1.52,34.64 1.13,3.2 0.5,4.16 -2.76,4.9 -9.27,2.17 -28.52,13.96 -20.37,24.95 12.32,16.6 64.27,23.74 88.46,25.13 17.28,1 80.47,1.1 98.78,-0.78 54.86,-5.65 104.97,-17.47 110.52,-31.5 5.54,-14.06 -18.83,-24.9 -24.63,-25.7 -3.63,-0.5 -3.84,-2.1 -3.06,-4.9 0.93,-3.28 1.96,-6.56 2.6,-9.9 2.88,-14.93 3.25,-30.08 3.88,-45.2 0.08,-1.93 -0.33,-3.98 1.2,-5.56 7.33,-7.6 11.5,-16.9 14.65,-26.76 0.9,-2.82 2.78,-4.44 5.44,-5.06 8.8,-2.05 16.87,-5.88 24.88,-9.88 5.4,-2.7 10.54,-5.68 14.96,-9.98 11.36,-11.03 10.58,-23.68 5.24,-36.94 -1.17,-2.9 -1.2,-5.5 -0.62,-8.5 1.65,-8.72 4.06,-16.95 9.53,-24.26 4.17,-5.6 6.2,-11.95 4.07,-19.32 -2.68,-9.35 -10.94,-12.2 -18.26,-5.84zM245.8,512.6c-3.24,-0.14 -27.22,-0.8 -39.35,0.44 -2.15,0.22 -3.5,-0.3 -3.46,-2.75 0.1,-5.04 -0.16,-10.08 1.02,-15.05 0.55,-2.33 1.74,-3.4 4.08,-3.14 12.18,1.3 24.3,1.13 36.34,-1.43 2.5,-0.53 3.15,0.9 3.32,2.95 0.4,5.18 0.75,10.37 1.3,15.54 0.26,2.6 -0.7,3.54 -3.25,3.43z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/elephant_friend_empty.xml"
line="15"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (4815 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M279.22,471.42c-10.37,3.92 -21.02,7 -31.83,9.33 -14.18,3.05 -28.5,4.7 -42.93,1.27 -5.1,-1.22 -6.84,0.05 -7.17,5.5 -0.5,8.62 -0.68,17.25 -0.92,25.87 -0.07,2.6 -0.5,5.14 -1.2,7.66 -0.4,1.4 -0.9,2.16 -2.47,2.5 -9.43,2.06 -13.78,7.97 -13.03,17.65 0.12,1.5 0.77,2.9 -1.3,3.54 -2.36,0.73 -4.25,1.83 -5.14,-2.2 -1.5,-6.9 -6.23,-10.83 -11.5,-10.77 -5.86,0.08 -9.53,3.6 -10.55,10.03 -0.24,1.52 0.85,4.24 -2.22,3.76 -2.34,-0.36 -5.53,-0.18 -5.45,-4.13 0.06,-2.64 -0.68,-5.14 -1.8,-7.54 -1.95,-4.13 -4.66,-7.13 -9.7,-6.64 -4.93,0.47 -9.5,1.56 -10.54,7.5 -0.5,2.9 -1.83,2.98 -3.95,1.46 -5.93,-4.24 -8.36,-10.68 -10.12,-17.25 -3.76,-14.07 -2.06,-28.3 1.36,-42.02 2.3,-9.23 -2.2,-14.2 -7.85,-19.44 -1.4,-1.28 -2.67,-1.77 -4.13,-0.13 -5.28,5.96 -12.45,8.2 -19.9,8.84 -8.02,0.72 -16.07,1.53 -24.25,-0.27 -6.38,-1.4 -11.9,-4.15 -17.35,-7.4 -3.48,-2.1 -4.26,-5.15 -2.8,-8.83 1.38,-3.48 4.4,-4.22 7.3,-1.8 11.86,9.9 28.6,11.16 42.12,3.2 3.7,-2.2 3.57,-4.12 0.4,-7.03 -10.24,-9.45 -17.1,-20.83 -19.24,-35.38 3.4,1.25 5.04,4.06 7.54,5.66 14.7,9.48 30.9,15.2 48.3,14.54 13.2,-0.52 29.47,-8.72 42.15,-28.47 7.02,-10.93 11.06,-22.32 15.47,-33.98 1.04,-2.74 1.8,-5.58 2.8,-8.33 1.6,-4.3 1.66,-8.3 -2.84,-12.08 -1.7,8.8 -5.64,16.5 -8.8,24.53 -5.66,14.4 -11.54,28.77 -22.86,39.94 -1.1,1.1 -3.88,-1.6 -3.95,-3.93 3.65,-4.67 4.83,-9.88 2.3,-15.56 -1.97,-4.45 -5.16,-8.2 -10.13,-7.87 -7.44,-0.32 -11.44,10.3 -12.8,11.2 -1.86,-0.5 -2.58,-0.82 -2.46,-1.82 0.4,-3.55 2.6,-8 2.08,-11.6 -0.92,-6.28 -4.25,-10.2 -9.75,-11.28 -5.4,-1.07 -11.47,1.53 -14.34,6.26 -0.84,1.38 -1.52,2.9 -2.1,4.4 -0.53,1.48 -0.37,3.35 -3,2.56 -2.2,-0.66 -2.6,-1.76 -2.32,-3.95 0.67,-5.1 0.43,-10.17 -3.16,-14.32 -3.74,-4.32 -8.46,-5.23 -13.74,-3.3 -5.14,1.87 -9.4,8.73 -9.46,13.83 -0.03,3.12 -1.9,3.1 -3.72,3.2 -2.9,0.15 -1.8,-2 -1.6,-3.46 1.55,-12.6 6.18,-23.93 12.3,-35.16 7.56,-13.88 15.37,-27.5 24.33,-40.52 3.64,-5.3 7.7,-10 13.6,-12.97 2.14,-1.1 3.23,-1.07 4.94,0.74 9.82,10.4 29.58,8.63 38.24,-2.8 7.92,-10.48 14.4,-21.63 18.4,-34.13 3,-9.4 3,-19.24 3.22,-29 0.1,-4.7 0.27,-9.42 -0.46,-14.13 -0.26,-1.68 -0.9,-3.1 -1.6,-4.55 -0.45,-0.93 -1.17,-1.63 -2.3,-1.46 -1.43,0.23 -1.72,1.4 -1.7,2.58 0.16,8.32 -1.25,16.54 -1.64,24.8 -0.65,13.9 -6.48,26.08 -11.67,38.5 -1.6,3.86 -4.14,7.36 -6.28,11 -3.85,6.6 -13.65,11.12 -21.3,10.03 -3.9,-0.56 -6.38,-2.9 -8.54,-5.92 -5.6,-7.9 -5.98,-8 -14.55,-3.3 -3.66,2 -7.37,3.35 -11.6,3.13 -3.42,-0.2 -5.72,-1.64 -7.1,-4.96 -2.3,-5.65 -3.1,-11.6 -4.16,-17.53 -1.06,-5.9 -2.2,-6.55 -7.9,-5.17 -8.1,1.96 -11.05,0.07 -11.63,-8.2 -2.78,-39.67 3.82,-77.05 25.98,-111.02 12.12,-18.56 25.57,-35.9 43.66,-48.8 6.42,-4.56 12.15,-10.13 19.2,-13.87 4.24,-2.26 7.54,-5.7 9.85,-9.94 4.18,-7.73 8.3,-15.5 12.37,-23.28 4.6,-8.78 10.3,-16.5 19.04,-21.67 4.9,-2.9 10.07,-4.14 15.75,-4.52 9.55,-0.65 15.02,7.32 11.64,16.74 -0.55,1.54 -1.87,3.07 -0.17,4.32 1.53,1.1 2.7,-0.47 3.7,-1.48 5.87,-5.86 13.33,-8.38 21.15,-10.25 4.28,-1 8.1,-0.6 11.18,2.83 2.75,3.05 3.85,6.22 0.05,9.2 -2.7,2.1 -3.02,5.35 -4.1,8.1 -1.2,3.07 1.36,3.2 3.36,2.43 4.5,-1.76 9.2,-2.1 13.92,-2.26 3.64,-0.13 6.83,1.14 8.6,4.53 1.12,2.13 -2.03,7.8 -2.55,8.6 -2.68,4.28 -2.55,4.38 2.4,4.88 11.46,1.17 21.7,4.95 30.23,13.15 6.1,5.85 12.9,10.9 18.8,17.05 9.33,9.76 15.03,21.52 19.55,34.02 1.2,3.36 2.54,6.7 3.72,10.07 0.47,1.34 1.2,3.18 -1.25,3.23 -7.78,0.17 -10.77,6.4 -12.8,11.83 -6.8,18.36 -2.75,43.02 18.2,53.4 1.64,0.8 1.97,1.82 2.15,3.37 1.82,15.66 3.45,31.35 5.6,46.97 3.02,21.67 11.1,41.1 27.12,56.53 5.08,4.9 11.43,6.24 18.6,6.8 6.46,0.5 9.8,-2.7 13.6,-6.3 2.44,-2.3 4.12,-1.64 5.9,0.86 2.92,4.14 3.55,8.9 0.06,13.13 -6.72,8.2 -9.5,17.6 -10.53,27.86 -0.34,3.43 -1.5,6.7 -3.45,9.57 -5.98,8.87 -15.2,8.46 -19.86,-1.12 -2.25,-4.6 -5.2,-5.67 -10.27,-5.96 -19.05,-1.08 -38.06,-3.04 -54.03,-15.28 -1.02,-0.8 -2,-1.65 -3.35,-2.8 2.26,-1.4 4.25,-2.72 6.3,-3.93 6.63,-3.9 10.87,-9.54 12.57,-17.1 1.08,-4.8 -1.28,-8.54 -6.13,-9.8 -5.72,-1.48 -11.4,-0.1 -16.93,0.72 -18.5,2.75 -32.6,-4.43 -44.13,-18.2 -6.16,-7.37 -10.08,-15.85 -12.8,-25 -0.55,-1.9 -0.16,-3.45 0.5,-5.14 3.7,-9.7 -2.85,-16.26 -9.9,-20.88 -1.56,-1.02 -3.4
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<location
file="src/main/res/drawable/elephant_friend_empty.xml"
line="20"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1524 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M113.84,383.72c0.02,6.36 -0.75,6.95 -6.06,5.1 -2.14,-0.74 -4.16,-2.02 -6.35,-2.4 -4.78,-0.8 -3.77,-2.96 -1.96,-5.94 2.34,-3.86 5.7,-5.3 9.85,-4.28 4.17,1.03 4.24,4.8 4.52,7.52zM67.34,378.3c-2.27,-0.08 -0.84,-9.75 3.55,-11.8 4.3,-2 9.2,-0.32 11.33,3.1 1.98,3.2 1.1,11.72 -1.73,10.7 -2.27,-0.85 -7.85,-1.78 -13.16,-2zM393.28,396.27c0.18,-3.52 0.04,-7 3.72,-8.44 1.34,-0.52 8.55,7.1 8.54,8.64 -0.02,1.2 -8.14,7.03 -9.65,6.48 -3.38,-1.2 -1.88,-4.57 -2.62,-6.68zM137.77,397.7c-0.37,2.2 -1.43,4.63 -3.94,6.13 -0.57,0.34 -8.98,-6.25 -9,-6.88 -0.1,-2.22 5.47,-7.36 7.8,-7.23 2.6,0.14 5.22,3.88 5.14,7.98zM161.73,546.88c-2.15,-0.78 -6.73,1.67 -6.56,-3.93 0.13,-4.1 3.75,-7.33 7.26,-6.8 3.2,0.5 7.03,6.24 6.22,9.37 -0.4,1.56 -0.4,1.56 -6.92,1.36zM131.66,531.32c4.36,-0.1 8.77,6.83 6.85,10.74 -0.74,1.53 -1.95,0.9 -2.9,0.6 -2.02,-0.6 -3.97,-1.46 -5.94,-2.2 -2.3,-0.86 -5.52,-0.77 -4.6,-4.76 0.8,-3.6 3.42,-4.4 6.6,-4.38zM293.12,519.15c3.6,1.2 5.8,5.53 5.1,7.66 -0.8,2.48 -6.9,1.98 -8.64,1.9 -2.1,-0.13 -5.96,-1.66 -6.4,-3.37 -0.43,-1.6 0.95,-3.04 2.1,-4.16 1.38,-1.32 4.17,-3.24 7.84,-2.02zM320.45,517.26c2.46,0.8 5.4,1.4 5.67,4.47 0.25,3 -2.85,2.34 -4.63,3.04 -0.45,0.18 -0.92,0.35 -1.4,0.42 -1.84,0.28 -3.83,1.83 -5.5,0.35 -1.15,-1 -0.5,-2.84 0.3,-4.04 1.3,-2 2.78,-3.97 5.55,-4.24zM190.93,529.32c1.58,-0.08 2.62,0.53 2.2,2.25 -0.36,1.4 -0.93,2.77 -1.58,4.07 -1.38,2.76 -2.86,5.63 -6.32,6.02 -1.1,0.13 -0.9,-1.46 -0.83,-2.38 0.4,-4.83 3.67,-9.8 6.53,-9.96zM339.9,507.95c0.86,3.34 -0.14,4.58 -1.5,5.93 -1.1,-2.24 0.18,-3.46 1.5,-5.93z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/elephant_friend_empty.xml"
line="59"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1212 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M195.24,152.74c7.74,-11.83 18.38,-18.1 33.3,-15.86 16.5,2.5 27.95,10.5 30.4,25.3 3.8,22.83 -9.52,47.04 -37.8,49.3 -15,1.18 -27.8,-6.6 -33.2,-22.3 -5.08,-14.78 1.8,-28.04 7.3,-36.44zM233.13,336.23c-3.38,3.85 -4.73,8.13 -5.24,12.7 -0.2,1.73 -0.88,3.85 0.95,4.96 1.95,1.18 4.04,0.58 5.93,-0.66 2.84,-1.88 5.68,-3.77 8.6,-5.5 2.82,-1.66 4.3,-1.22 3.7,2.52 -1.02,6.47 0.4,12.64 2.83,18.6 2,4.88 6.94,5.66 10.4,1.6 2.55,-3 4.53,-6.36 6.14,-9.95 1.73,-3.87 4.12,-5.4 8.46,-3.1 4.98,2.6 6.83,1.5 8.35,-4.05 0.38,-1.4 0.65,-2.85 1,-4.27 0.34,-1.35 0,-3.3 1.95,-3.48 1.74,-0.15 3.12,1.1 3.77,2.64 2.08,4.84 1.66,9.83 -1.26,13.96 -2.9,4.1 -7.3,7 -12.64,5.4 -3.4,-1.03 -4.6,0.33 -6.08,2.78 -2.34,3.86 -4.54,8.03 -9.38,9.4 -9.73,2.77 -16.5,-1.07 -19.34,-10.9 -0.3,-1.1 -0.63,-2.2 -0.8,-3.33 -0.98,-6.03 -0.97,-6.04 -7.13,-4.43 -6.8,1.78 -11.85,-2.22 -11.2,-9.22 0.3,-3.02 1.43,-5.98 2.4,-8.9 0.54,-1.7 1.44,-3.3 2.33,-4.84 1.27,-2.2 3.04,-3.38 6.27,-1.93zM396.93,346.85c1.1,-8.24 4.9,-16.17 11.23,-22.87 1.35,-1.42 3.2,-2.32 5.2,-2.45 2.95,-0.2 4.2,1.35 3.64,4.25 -0.12,0.6 -0.54,1.17 -0.88,1.72 -3.8,6.24 -7.34,12.55 -6.02,20.32 0.07,0.45 -0.16,0.95 -0.25,1.43 -0.96,4.73 -3.7,7.37 -7.28,7 -3.46,-0.34 -5.76,-3.8 -5.64,-9.4z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/elephant_friend_empty.xml"
line="69"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1600 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M93.92,356.84c0.62,-4.05 2.12,-7.92 4.52,-11.26 2.05,-2.86 13.07,-8.75 11,-0.02 -0.9,3.88 -13.95,23.17 -15.52,11.28 0.87,-5.7 0.2,1.54 0,0zM293.28,451.9c-2.74,-0.2 -4.53,-0.6 -5.22,-2.56 -0.7,-1.95 0.73,-2.94 2.15,-3.84 4.1,-2.6 7.46,-6.24 11.86,-8.45 2.12,-1.06 3.98,-1.3 5.73,0.54 1.98,2.07 0.75,3.87 -0.58,5.6 -3.77,4.85 -9.4,6.57 -13.94,8.7zM157.6,506.77c-0.1,0.93 -0.1,2.24 -0.4,3.5 -0.5,2.28 -1.95,3.8 -4.36,3.85 -2.33,0.07 -3.6,-1.68 -4,-3.62 -1.13,-5.65 0,-11.33 1.05,-16.8 0.6,-3.12 3.28,-2.43 4.95,0.03 2.62,3.85 2.18,8.37 2.76,13.04zM121.98,171.47c0,4.06 -1.3,8 -1.03,12.08 0.15,2.4 -1.83,3.8 -4.16,3.9 -2.48,0.1 -3.32,-1.92 -3.55,-3.9 -0.8,-6.62 1.78,-12.7 3.4,-18.92 0.26,-0.94 1.18,-1.55 2.28,-1.5 1.32,0.1 2.18,0.96 2.38,2.1 0.4,2.05 0.47,4.16 0.68,6.24zM127.7,234.96c-0.1,1.63 -0.28,4.04 -0.38,6.46 -0.1,2.66 -1.78,3.8 -4.1,3.78 -2.47,-0.03 -4.1,-1.8 -3.97,-4.06 0.28,-4.8 0.3,-9.73 3.2,-13.94 0.83,-1.2 1.7,-2.65 3.37,-2.32 2.14,0.43 1.78,2.4 1.85,3.96 0.1,1.77 0.02,3.55 0.02,6.12zM177.7,488.12c-0.52,3.22 0.87,8.16 -4.78,7.6 -5.6,-0.57 -4,-5.25 -3.75,-8.8 0.15,-2.08 0.56,-4.17 1.07,-6.2 0.4,-1.62 1.35,-3 3.28,-3.08 1.93,-0.07 2.9,1.24 3.5,2.83 0.92,2.47 1.26,5 0.7,7.65zM272.2,445.54c-0.3,0.63 -0.48,1.5 -1,2.03 -4.33,4.35 -10.06,5.68 -15.74,6.93 -1.43,0.32 -2.77,-0.9 -3.1,-2.53 -0.34,-1.53 0.66,-2.5 1.86,-3.07 4.22,-2.06 8.47,-3.98 12.57,-6.3 2.18,-1.24 4.85,-0.65 5.4,2.94zM102.32,145.58c1.64,-5.07 4.9,-9.88 8.67,-14.37 0.64,-0.77 1.66,-1 2.65,-0.48 1,0.53 1.38,1.55 1.1,2.5 -1.63,5.42 -3.5,10.8 -6.2,15.78 -0.85,1.57 -2.84,1.46 -4.45,0.88 -1.67,-0.62 -1.83,-2.1 -1.78,-4.3z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/elephant_friend_empty.xml"
line="84"
column="27"/>
</issue>
2023-08-05 15:39:07 +02:00
<issue
id="VectorPath"
message="Very long vector path (2885 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M321.28,457.4c-12.3,0 -37.47,-6.95 -60.17,-29.47 -12.6,-12.53 -26.3,-21.46 -43.42,-27.73 -2.63,-0.96 -9.86,-2.85 -17.5,-4.86 -11.66,-3.05 -24.87,-6.5 -31.38,-9.04 -13.04,-5.1 -28.76,-14 -43.14,-24.46 -1.02,-0.75 -1.57,-1.06 -2.3,-1.1 -1.82,-0.04 -3.68,-0.07 -5.53,-0.07 -8.96,0 -18.5,0.65 -29.18,2 -6.8,0.84 -34.75,3.5 -41.1,2.12 -11,-2.4 -22.87,-3.7 -32.52,-15.17 -7.64,-9.08 -11.12,-19.6 -10.63,-32.18 0.36,-9.35 1.7,-26.2 6.68,-34.05l0.67,-1.06c4.8,-7.63 13.73,-21.84 28.02,-21.84 0.34,0 0.68,0 1.03,0.02 1.02,0.05 2.26,0.08 3.7,0.08 7.73,0 20.05,-0.74 30.14,-2.38 16.3,-2.65 17.26,-5.95 17.26,-5.98l0.1,-1.63c0.58,-8.3 1.43,-20.6 6.28,-28.1 -0.83,-0.32 -1.8,-0.77 -2.73,-1.5 -12.48,-9.97 -15.76,-20.93 -16.84,-34.32 -0.48,-6.1 0.05,-11.78 1.64,-17.4l0.03,-0.13c0.43,-1.54 0.53,-1.67 -0.14,-2.06 -9.97,-5.8 -15.37,-16.72 -5.3,-23.35 0.6,-0.4 0.3,-1.64 0.34,-2.7 0.02,-0.6 0.05,-1.2 0.1,-1.8 0.76,-7.43 3.88,-12.48 9.54,-15.44 2.66,-1.37 5.35,-2.07 8,-2.07 6.03,0 10.87,3.63 12.96,9.7 1.16,3.37 2.34,3.94 4.54,3.94 0.4,0 0.84,-0.03 1.3,-0.08 1.13,-0.13 2.13,-0.18 3.05,-0.18 4.54,0 7.57,2.4 9.9,5.64 3.43,4.77 5.56,10.2 0.66,17.1 -4,5.7 -10.02,8.3 -17.02,10.24 -1.23,0.34 -1.5,0.47 -1.58,2.15v0.12c-0.37,7.24 0.26,17.12 5.68,22.78 1.35,1.42 1.88,2.15 2.22,2.38 0.28,-0.26 0.84,-0.9 1.7,-2.43 8.93,-15.66 22.3,-37.78 35.42,-49.08 28.43,-25.4 76.36,-37 108.83,-37 24.22,0 52.2,6.3 76.8,17.3 9.6,4.3 17.9,8.76 25.42,13.65 1.9,1.25 4.13,1.98 6.44,2.7 8.9,2.7 13.9,10.18 12.82,19.1 3.34,-0.78 7.3,-1.6 11.3,-1.6 4.18,0 7.88,0.87 11.3,2.62 3.53,1.8 7.63,4.6 8.15,10.23 0.05,0.52 0.13,0.83 0.18,1 0.04,0 0.1,0 0.15,0 0.43,0 1.05,-0.1 1.9,-0.3 12.7,-2.87 25.33,-4.34 37.5,-4.34 11.6,0 23.18,1.32 34.4,3.93 10.1,2.34 18.22,5.1 25.6,8.7 6.36,3.1 6.6,7.85 6.18,10.4 -0.48,2.88 0.4,4.22 4.32,6.5 5.64,3.3 9.18,7.57 10.23,12.33 0.98,4.45 -0.2,9.25 -3.45,13.9 -1.18,1.68 -2.66,3.52 -4.7,4.4 -0.87,0.36 -1.27,0.66 -1.45,0.8 0.1,0.24 0.34,0.76 1.07,1.65 1.67,2.07 2.87,4.47 3.8,6.54 3.88,8.5 1.5,17.12 -6.2,22.5 -0.55,0.4 -1.12,0.78 -1.7,1.15 19.83,4.68 37.5,11.4 53.88,20.43 33.24,18.4 22.08,59.78 14.97,74.18 -4.9,9.94 -14.1,17.58 -24.62,20.45 -0.02,0.2 -0.02,0.58 0.05,1.3 1.67,15.82 -3.7,29.94 -15.95,41.95 -3.16,3.1 -3.52,5.05 -1.54,8.36 2.03,3.4 2.47,7.07 1.24,10.63 -1.87,5.4 -7.05,9.1 -10.92,10.6 -3.6,1.4 -7.32,2.1 -11.08,2.1 -4.3,0 -8.7,-0.92 -13.12,-2.72 -6.73,-2.75 -9.85,-8.4 -12.6,-13.36l-0.4,-0.7c-2.64,-4.76 -5.9,-7.54 -10.58,-9 -7.04,-2.23 -10.63,-6.94 -9.85,-12.94 0.77,-6.1 6.87,-11.87 13.3,-12.58 0.25,-0.03 0.5,-0.04 0.78,-0.04 0.64,0 1.28,0.08 1.83,0.15 0.33,0.05 0.64,0.08 0.9,0.1 0,-0.05 0,-0.1 0,-0.17 0.42,-4.64 -1.65,-6.03 -3.24,-6.67 -1.93,-0.78 -3.86,-1.57 -5.8,-2.36 -7.1,-2.92 -14.45,-5.94 -21.82,-8.17 -4.15,-1.24 -9.04,-4.14 -13.1,-1.85 -27.47,15.4 -63.35,20.64 -83.45,12.53 2.3,12.2 -0.4,25.7 -4,34.87 -5.3,13.6 -20.65,28.48 -37.1,29.84 -2.2,0.2 -4.6,0.3 -7.12,0.3z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/errorphant_error.xml"
line="10"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (5305 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M69.6,356.3c-5.73,-8.7 -19.5,-8.76 -24.82,0.05 -1.18,1.95 -2.48,1.28 -3.7,1 -2.07,-0.45 -4.18,-1.1 -4.1,-3.97 0.18,-5.66 -2.76,-9.95 -6.65,-13.6 -3.22,-3 -7.08,-4.68 -11.7,-3.47 -5.06,1.34 -4.73,-3.3 -6.2,-5.74 -1.56,-2.58 0.45,-3.45 2.56,-4.43 12.08,-5.62 13.63,-18.92 3.07,-27.3 -1.8,-1.43 -0.9,-2.26 -0.8,-4 0.84,-11.47 15,-28.07 21.86,-26.92 12.13,2.03 61.1,0 61.1,-12.66 0,-18.32 4.07,-24.24 9.4,-35.55 0.95,-2.02 1.7,-3.74 -1.2,-4.5 -12.15,-3.25 -18.16,-12.13 -21.06,-23.35 -2.28,-8.87 -3.1,-17.97 0.77,-26.77 0.98,-2.22 2.08,-4.6 4.92,-4.93 3.77,-0.44 5.73,2.27 4.84,6.97 -1.96,10.3 -0.7,20.06 4.67,29.18 3.1,5.27 9.45,8.6 13.92,7.7 1.6,-0.33 2.36,-0.8 3.17,-2.33 10.38,-19.3 19,-37.94 39.08,-53.72 37.87,-29.77 70.44,-32.55 97.17,-32.55 45.35,0 87.96,17.5 95.15,25.83 -11.14,3.8 -20.23,10.02 -28.45,17.45 -5.96,5.4 -10.9,11.7 -14.47,18.9 -1.56,3.16 -3.62,5 -7.27,5.66 -11.28,2 -22.37,4.95 -33.08,8.95 -17.87,6.68 -33.15,17.48 -46.26,31.17 -13.46,14.05 -22.82,30.32 -25.44,49.9 -1,7.45 0.6,10.16 7.9,12.46 1.8,0.57 1.86,1.4 1.58,2.82 -0.95,4.82 -0.8,9.7 -0.7,14.57 0.14,9.46 8.3,14.97 17.36,11.86 5.43,-1.86 9.5,-5.5 13,-9.9 7.64,9.83 20.6,9.16 29.07,-1.14 6.94,-8.44 12.32,-17.56 14.23,-28.47 0.42,-2.38 1.03,-4.68 -1.6,-5.95 -3.07,-1.5 -3.4,1.5 -4.43,3.12 -3.75,5.8 -5.07,12.7 -8.37,18.7 -3.42,6.22 -7.25,12.06 -14.84,13.94 -3.7,0.93 -6.4,0.08 -7.66,-3.9 -0.65,-2.1 -1.1,-5.13 -3.9,-4.96 -3.18,0.2 -6.4,1.37 -8.22,4.47 -1.87,3.2 -4.5,5.57 -7.93,6.92 -4.45,1.75 -7.74,0.02 -9,-4.6 -1.46,-5.37 -0.34,-10.67 0.66,-15.94 1.2,-6.37 0.74,-7.37 -5.55,-7.6 -3.83,-0.16 -4.8,-1.94 -5.3,-5.42 -1.4,-10.06 3.9,-17.97 8.25,-26.03 6.46,-12 15.9,-21.5 26.28,-30.5 15.37,-13.35 33.9,-18.88 52.62,-24.67 5.7,-1.77 11.74,-1.94 17.27,-4.9 3.57,-1.9 5.42,-4.7 7.13,-7.58 9.46,-16.04 22.5,-27.63 40.53,-33.23 1.98,-0.6 4.2,-0.7 6.3,-0.62 9.52,0.32 13.1,6.6 8.56,14.92 -0.78,1.43 -1.86,2.73 -2.4,4.22 -0.5,1.4 -2.26,2.88 -0.67,4.44 1.55,1.54 3.14,0.08 4.48,-0.57 5.24,-2.58 10.84,-3.38 16.56,-3.83 4.2,-0.34 7.74,1.32 11,3.55 3.6,2.45 3.12,6.53 -0.94,8.3 -1.66,0.73 -4.04,1.1 -3.3,3.34 0.86,2.65 3.22,1.34 5.02,0.77 5.85,-1.86 11.02,-0.03 15.7,3.2 2.9,2 3.03,4.66 -0.3,6.57 -2.55,1.46 -5.96,2.36 -4.6,6.23 1.3,3.7 4.16,6.8 8.15,6.97 13.5,0.57 23.78,7.23 32.93,16.24 2.63,2.58 5.95,4.48 8.23,8 -2.18,1.1 -4.04,0.43 -5.88,0.13 -12.5,-2 -23.3,1.74 -32.6,9.88 -3.86,3.35 -5.5,8.1 -6.13,12.98 -0.85,6.53 4.4,13.76 11.48,14.03 11.92,0.44 23.68,2.8 35.62,2.6 4.62,-0.06 8.8,-2.13 13.5,-3.94 1.5,12.74 6.87,23.74 12.65,34.73 8.35,15.86 20.1,28.36 36.77,34.92 22.44,8.85 34.3,40.07 25.13,60.53 -3.08,6.86 -8.52,12.25 -12.52,18.57 -2.76,4.38 -4.1,8.6 -1.64,13.25 2.26,4.3 -0.05,6.2 -3.6,7.08 -13,3.2 -20.02,0.87 -27.64,-11.32 -2.52,-4.02 -5.66,-7.08 -10.42,-8.2 -2.42,-0.58 -5.72,-1.6 -5.24,-4.06 0.65,-3.37 4.3,-5.7 7.6,-4.62 5.52,1.84 7.5,-0.47 8.54,-5.14 0.2,-0.26 0.3,-0.55 0.4,-0.87 0.63,-2.7 4.9,-3.34 4.16,-6.7 -1.03,-4.7 -3.6,-8.73 -6.6,-12.4 -5.77,-7 -12.74,-12.52 -21.36,-15.84 -5.74,-2.2 -11.82,-2.4 -17.78,-3.28 -2.42,-0.35 -4.73,-0.5 -4.2,-3.87 3.85,-7.1 6.87,-14.28 5.16,-22.7 -0.87,-4.27 -3.37,-5.35 -7.07,-4.56 -3.67,0.76 -7.3,1.8 -10.87,2.96 -17.76,5.8 -35.05,2.7 -51.7,-3.8 -5.15,-2 -10.2,-6 -11,-13.4 -0.7,-6.38 -5.26,-11.4 -10.52,-15.3 -1.34,-1 -2.92,-1.7 -4.46,-0.27 -1.58,1.43 -0.7,2.9 0.04,4.4 1.42,2.86 3.93,5.13 4.96,8.7 -4.48,0.26 -8.5,-0.5 -12.52,0.23 -13.87,2.54 -26.6,15.42 -20.08,32.27 0.36,0.94 1.87,1.92 0.46,2.94 -1.14,0.82 -2,-0.07 -2.88,-0.98 -6.13,-6.43 -9.6,-11.9 -17.46,-16.82 -1.64,-1.02 -0.26,-1.8 0.6,-2.56 9.15,-8.4 10.2,-15.07 4.03,-25.73 -3.64,-6.28 -2.94,-8.92 2.85,-13.65 6.3,-5.16 13.24,-8.12 21.55,-7.82 6.38,0.23 12.33,-1.2 17.42,-5.36 5.8,-4.77 8,-16.44 3.17,-21.03 -3.6,-3.44 -7.15,-7.06 -11.5,-9.74 -9.28,-5.7 -19.2,-4.6 -29,-2.65 -13.74,2.77 -25.8,8.4 -32.57,21.72 -4.28,8.42 -4.47,16.48 1.75,24.1 0.93,1.16 2.05,2.2 1.02,3.86 -4.24,6.82 -4.57,14.5 -4.62,22.14 -0.02,3.27 -1.04,3.68 -3.64,2.3 -6.06,-3.16 -12.72,-4.06 -19.38,-4.92 -1.76,-0.22 -4.1,-0.43 -4.64,1.66 -0.58,2.35 1.94,2.72 3.5,3.17 11.46,3.24 21.72,8
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<location
file="src/main/res/drawable/errorphant_error.xml"
line="20"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (842 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M253.55,243.95c-2.75,-0.1 -4.37,-2.87 -2.58,-5.24 3.1,-4.12 6.53,-8.05 10.2,-11.68 1.88,-1.87 4.58,-1.78 6.5,0.44 1.78,2.03 0.78,3.93 -0.82,5.56 -2.83,2.9 -5.7,5.77 -8.6,8.6 -1.3,1.24 -2.8,2.23 -4.7,2.33zM257.65,136c2.96,-0.06 5,0.52 5.52,3.06 0.5,2.38 -1.25,3.76 -3.1,4.36 -5.13,1.67 -10.58,1.56 -15.9,2.1 -1.67,0.16 -3.15,-1.03 -3.36,-2.94 -0.2,-1.92 1.18,-2.98 2.68,-3.7 4.68,-2.2 9.87,-1.93 14.17,-2.87zM68.42,307c-2.6,-0.35 -5.36,-0.35 -5.72,-3.16 -0.35,-2.7 2.35,-3.17 4.3,-3.75 3.9,-1.16 7.84,-2.1 11.75,-3.14 2.14,-0.57 4,-0.27 4.74,2.05 0.7,2.15 -0.17,3.84 -2.2,4.82 -4.16,2 -8.74,2.3 -12.88,3.18zM87.55,284.7c-1.2,-0.3 -2.46,-0.55 -3.7,-0.94 -1.12,-0.35 -2.1,-0.98 -2.2,-2.3 -0.07,-1.33 0.8,-2.1 1.93,-2.48 4.6,-1.6 9.15,-3.32 13.8,-4.68 2.14,-0.62 4.45,-0.1 5.14,2.42 0.68,2.5 -0.92,3.97 -3.17,4.65 -3.87,1.17 -7.78,2.2 -11.8,3.34z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/errorphant_error.xml"
line="85"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (999 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M223.93,253.08c-2.75,-0.1 -4.38,-2.87 -2.6,-5.25 3.12,-4.12 6.54,-8.05 10.2,-11.7 1.9,-1.85 4.6,-1.77 6.53,0.45 1.77,2.03 0.77,3.94 -0.83,5.57 -2.84,2.9 -5.7,5.76 -8.6,8.58 -1.3,1.26 -2.8,2.24 -4.7,2.35zM247.83,223.7c-2.6,-0.88 -3.4,-4 -1,-5.77 4.15,-3.08 8.55,-5.9 13.1,-8.36 2.34,-1.27 4.9,-0.43 6.13,2.24 1.12,2.45 -0.38,4 -2.37,5.12 -3.55,2 -7.1,3.94 -10.7,5.83 -1.6,0.84 -3.3,1.37 -5.17,0.94zM283.5,345.85c0.48,2.7 -1.92,4.85 -4.63,3.6 -4.7,-2.18 -9.27,-4.7 -13.6,-7.52 -2.23,-1.45 -2.7,-4.1 -0.9,-6.42 1.63,-2.13 3.7,-1.55 5.64,-0.33 3.45,2.16 6.86,4.35 10.24,6.6 1.5,1 2.78,2.25 3.27,4.08zM255.92,350.23c0.9,2.58 -1.1,5.1 -3.97,4.3 -5,-1.36 -9.94,-3.1 -14.68,-5.15 -2.44,-1.06 -3.35,-3.6 -1.97,-6.2 1.26,-2.36 3.4,-2.14 5.52,-1.25 3.75,1.56 7.48,3.16 11.2,4.82 1.64,0.74 3.1,1.76 3.9,3.48zM245.3,330.43c0.83,2.6 -1.24,5.07 -4.1,4.2 -4.96,-1.5 -9.84,-3.36 -14.53,-5.54 -2.4,-1.14 -3.25,-3.7 -1.8,-6.25 1.32,-2.34 3.46,-2.06 5.55,-1.12 3.7,1.67 7.4,3.36 11.06,5.12 1.62,0.78 3.06,1.84 3.8,3.58z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/errorphant_error.xml"
line="123"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (2081 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M462.95,64.68c-1.55,-2.12 -3.22,-3.86 -3.53,-6.85 -0.82,-7.74 -5.27,-12.75 -12.78,-14.1 -3.22,-0.57 -4.96,-2 -6.78,-4.42 -8.67,-11.47 -26.16,-10.7 -31.68,2.43 -3.56,8.46 -8.7,14.96 -14.5,21.56 -5.75,6.5 -5.12,11.94 1.3,17.82 6.27,5.75 9.45,5 16.98,3.64 2.18,-0.4 4.95,1.52 7.5,1.46 4.08,-0.1 10.03,-2.13 12.2,-0.14 2.2,2.03 -1.04,4.23 -2.26,6.07 -2.8,4.23 -4,4.35 -7,8.46 -1,1.42 -3.17,3.45 -0.58,5.6 1.96,1.65 5.65,-2.36 7.05,-3.7 5,-4.82 4.7,-6.7 9.7,-11.43 5.57,-5.27 10.23,-6.67 14.48,-10.84 5.1,1.27 7.7,0.17 9.33,-3.08 2.06,-4.1 3.67,-8.22 0.57,-12.47zM411.98,45.38c2.76,-5.76 7.75,-8.18 13.83,-8.8 3.22,-0.15 5.6,1.4 7.7,3.48 2.2,2.14 3.54,4.25 -0.55,5.84 -0.6,0.24 -1.4,0.5 -1.68,1 -5.16,9.36 -12.34,2.07 -18.55,2.1 -2.46,0 -1.3,-2.44 -0.74,-3.63zM404.98,79.25c-2.64,1.52 -4.68,-0.4 -6.36,-2.16 -1.93,-2.04 -4.4,-4.06 -2.78,-7.42 0.57,-1.17 1.38,-2.25 2.18,-3.3 5,-6.56 5.16,-6.5 8.96,0.62 1.2,2.3 2.9,4.33 4.36,6.48 -1.32,3 -3.96,4.37 -6.36,5.77zM410,58.6c-0.4,-3.42 1.83,-3.96 4.83,-3.96 2.74,1.27 8,0.64 8,4.7 0,3.83 -3.1,9.65 -6.55,9.5 -4.17,-0.17 -5.73,-5.78 -6.27,-10.24zM415.82,80.76c-0.5,-0.96 1.04,-3.45 2.08,-3.75 1.42,-0.42 5.46,1.4 5.2,2.84 -0.35,1.78 -6.45,2.54 -7.28,0.92zM423.98,75.23c-0.86,-0.47 -1.5,-0.68 -1.98,-1.1 -1.54,-1.37 -0.2,-2.6 0.64,-3.3 2.8,-2.35 2.5,-7.33 6.7,-8.2 1.1,-0.23 3.15,2 2.64,3.27 -1.6,3.9 -4.77,7.8 -8,9.33zM437.94,75.2c-0.8,2.1 0.13,5.75 -4.05,5.22 -1.54,-0.2 -4.3,-0.78 -3.7,-2.82 0.9,-2.87 3.08,-5.65 6.27,-6.1 2.14,-0.3 1.38,2.15 1.47,3.7zM437.21,61.98c-2.63,-0.27 -5.33,-3.6 -5.4,-6.62 -0.07,-2.52 2.3,-5.23 5.12,-5.1 4.3,0.2 2.6,3.62 2.83,5.9 0.25,2.5 1.2,6.2 -2.54,5.82zM442.89,82.15c-1.2,-0.68 -1.45,-4.35 -0.6,-5.4 1.18,-1.47 6.07,-1.6 6.4,0.25 0.22,1.16 -4.37,5.97 -5.8,5.15zM452.61,65.75c-0.6,2.42 -1,5.7 -3.88,6.2 -2.05,0.34 -4.25,-1.58 -4.45,-3.94 -0.3,-3.65 3.03,-3.6 5.06,-4.4 1.97,-0.14 3.82,-0.04 3.27,2.16zM447.71,58.81c-4.12,1.94 -3.15,-2.85 -3.13,-4.85 0.02,-1.78 -1.6,-5.34 2.1,-4.7 3.42,0.56 7.03,3.04 7.1,6.83 0.04,3.96 -3.94,1.73 -6.08,2.73zM454.51,75.25c-0.13,-4.13 1.48,-5.82 4,-7 0.8,3.95 1.25,5.82 -4,7z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/errorphant_error.xml"
line="128"
column="27"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="VectorPath"
message="Very long vector path (2380 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M340.08,43.43c6.84,-1.48 13.62,-3.16 20.66,-2.8 10.37,0.56 16.8,5.47 19.23,14.64 1.8,6.87 -1.47,11.84 -6.2,16 -2.7,2.4 -3.43,3.6 0.04,6.07 17.86,12.64 25.78,30.78 28.55,51.86 0.65,4.88 5.2,7.9 7.9,11.8 8.66,12.62 15.85,25.7 16.86,41.4 0.4,6.03 -1.05,11.48 -4.56,16.29 -1.45,1.97 -1.8,3.8 -1.27,6.06 1.55,6.5 -0.46,12.4 -3.57,17.9 -3.05,5.4 -7.76,7.14 -14.54,5.33 -3.03,-0.82 -3.9,0 -4.27,2.72 -0.84,6.16 -1.62,12.34 -2.67,18.47 -0.52,3 0.2,6.4 2.47,7.7 8.98,5.22 24.9,-2.13 35.84,-13.28 3.33,-3.38 9.7,-0.18 11.84,4.17 5.44,11.05 2.95,26.28 -5.4,35.32 -6.07,6.55 -17.98,16.66 -28.66,19.96 -2.6,0.8 1.35,6.88 2.37,9.8 3.28,9.44 5.6,19.13 8.1,28.77 0.87,3.37 0.04,5.58 -2.55,8.15 -8.35,8.3 -19,12.35 -29.48,16.6 -3.2,1.3 -3.22,2.14 -2,4.85 1.2,2.72 3.42,4.77 4.38,7.67 1.25,3.8 2.8,7.57 -0.43,10.96 -3.34,3.5 -7.64,4.6 -12.4,3.9 -3.47,-0.5 -6.3,-2.4 -9.2,-4.54 -1.5,9.4 -3.1,18.35 -4.34,27.37 -0.5,3.76 -1.5,7.32 -2.77,10.82 -0.75,2.1 -0.95,3.55 1.77,4.13 4.28,0.9 11.28,4.93 15,6.37 18.76,7.22 30.46,21.74 15.83,33.4 -13.17,10.5 -55.44,18.73 -80.1,22.87 -28.28,4.73 -94.9,-1.1 -110.73,-2.64 -23.76,-2.28 -47.1,-6.92 -70.17,-12.83 -7.97,-2.04 -15.74,-4.92 -23.56,-7.53 -7.15,-2.38 -12.6,-7.4 -17.87,-12.42 -4.15,-3.94 -3.2,-9.32 1.2,-12.9 7.2,-5.9 15.58,-8.94 24.5,-10.8 2.94,-0.63 4.5,-1.58 4.66,-5.06 0.38,-7.64 2.28,-15.1 3.9,-22.54 0.54,-2.5 0.16,-3.97 -2.02,-5.47 -12.7,-8.7 -24.6,-19.2 -29.45,-33.8 -1.9,-5.7 -0.42,-7.23 -4.76,-0.17 -4.36,7.08 -12.4,10.56 -21.1,15.42 -2,0.73 -1.63,2.34 -1.14,3.92 2.64,8.63 -0.4,15.6 -6.52,21.5 -3.2,3.1 -7.1,4.73 -11.52,2.93 -4.25,-1.72 -6,-5.4 -6,-9.7 0,-3.2 -0.9,-3.85 -4.08,-3.45 -6.15,0.77 -8.33,-3.2 -8.35,-9.54 -0.02,-3.7 1.58,-8.67 3.28,-10.26 2.34,-2.2 2,-2.9 -1.76,-5.8 -3.44,-2.66 1.53,-13.03 6.32,-14.9 5.26,-2.08 10.73,-2.6 15.73,0.56 2.3,1.44 3.8,1.1 5.8,-0.23 11.36,-7.38 17.37,-17.8 18.6,-31.25 1.08,-12.07 1.5,-24.15 2.67,-36.24 2.57,-26.28 9.53,-50 24.42,-71.86 9.14,-13.44 18.45,-26.58 30.06,-38 3.15,-3.1 6.58,-5.63 10.8,-7.15 2.5,-0.9 3.5,-2.1 0.7,-4.5 -5.93,-5.13 -6.55,-9.1 -2.78,-16.57 5.93,-11.74 13.8,-22.14 22.52,-31.94 22.3,-25.12 49.2,-44.27 78.63,-60.06 2.86,-1.54 3.8,-2.97 2.53,-6.17 -3.36,-8.43 -3.67,-16.9 -0.03,-25.45 4.4,-10.3 12.12,-15.77 23.13,-15.68 9.7,0.07 16.74,5.4 21.1,13.83 1.66,3.17 2.4,3.92 4.82,0.8 7.7,-9.94 18.35,-12.23 30.12,-11 10.46,1.1 16.24,12.3 11.35,21.7 -0.7,1.33 -1.85,2.5 -1.44,4.5z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-08-05 15:39:07 +02:00
file="src/main/res/drawable/errorphant_offline.xml"
2023-03-13 10:23:42 +01:00
line="14"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1443 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M405.28,504.42c-2.15,-0.07 -4.6,-2.17 -6.58,-4.97 -7.06,-9.93 -10.6,-18.1 -16.95,-28.33 -2,-3.2 -0.6,-6.08 2.34,-7.93 4.3,-2.72 3.24,-4.92 -0.2,-7.4 -5.8,-4.15 -10.93,-9.07 -16.15,-13.93 -5.18,-4.84 -6.54,-10.5 -4.56,-16.73 2.86,-9 6.4,-17.82 9.8,-26.67 1.15,-3.04 2.94,-4.28 6.62,-2.8 10.5,4.2 21.18,7.97 31.83,11.8 4.2,1.52 5.05,3.54 2.2,7.32 -2.97,3.95 -7.53,8.24 -7.6,12.46 -0.1,4.9 7.12,5.92 10.9,8.96 4.64,3.74 6.55,7.12 4.83,13.24 -4.62,16.42 -8.58,33.02 -12.82,49.55 -0.58,2.26 -0.84,4.82 -3.68,5.42zM471.96,422.6c17.67,1.02 17.95,-0.12 14.5,17.04 -1.83,9.04 -3.97,18.03 -5.53,27.1 -0.8,4.7 -3.9,8.87 -8.54,7.78 -10.8,-2.54 -12.4,-6.2 -19.87,10.08 -1.28,2.8 -3.26,12.98 -10,12.97 -3.64,0 -4.74,-3.66 -5.3,-6.76 -1.42,-7.67 -3.84,-25 -4.05,-25.9 -2.27,-9.63 -3.25,-11.82 8.96,-14.76 3.24,-0.78 3.46,-2.55 3.32,-5.1 -0.27,-4.73 -0.4,-9.46 -0.73,-14.18 -0.3,-4.47 1.86,-6.08 6.1,-6.86 7.96,-1.47 14.5,-1.8 21.13,-1.4zM384.9,509.3c-0.2,1.8 0.3,3.7 -1.74,4.45 -1.47,0.52 -2.74,-0.13 -3.86,-1.16 -0.87,-0.8 -1.8,-1.53 -2.74,-2.26 -3.17,-2.5 -6.08,-6.43 -9.6,-7.08 -4.37,-0.8 -5.5,4.9 -8.05,7.73 -3.36,3.76 -6,1.15 -8.5,-0.84 -5.84,-4.68 -8.92,-11.6 -13.57,-17.3 -4.62,-5.66 -9.26,-11.4 -12.23,-18.28 -1.5,-3.48 -1.55,-6.08 1.2,-8.93 5.18,-5.4 11.7,-8.85 18.06,-12.46 3.04,-1.74 6.48,-0.93 8.03,3.2 0.82,2.2 2.07,4.25 3.13,6.36 1.7,3.36 2.58,8.2 5.3,9.66 2.7,1.46 5.6,-3.3 8.74,-4.76 4.2,-1.97 6.78,-0.52 8.22,3.65 4.24,12.4 5.43,25.4 7.6,38z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-08-05 15:39:07 +02:00
file="src/main/res/drawable/errorphant_offline.xml"
2023-03-13 10:23:42 +01:00
line="24"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (4131 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M309.5,413.94c-3.87,0.1 -6.45,2.94 -9.34,4.83 -17.03,11.15 -35.34,18.28 -55.9,18.72 -5.75,0.12 -11.5,-0.2 -17.05,-2.1 -2.56,-0.88 -3.83,-2.15 -3.78,-5 0.13,-6.13 -1.2,-12.08 -2.72,-17.97 -0.45,-1.77 -1.34,-3.48 -2.3,-5.06 -0.6,-1.02 -1.66,-2.07 -3.1,-1.24 -1.33,0.77 -1.75,1.8 -1.3,3.52 2.83,10.93 1.48,21.9 0.12,32.87 -0.2,1.65 -1.24,2.38 -2.65,2.9 -7.22,2.65 -13.3,6.32 -13.45,15.24 -0.02,0.84 -0.34,1.5 -1.3,1.66 -1.1,0.16 -1.74,-0.42 -2.22,-1.3 -1.18,-2.2 -2.24,-4.44 -3.94,-6.33 -3.93,-4.36 -6.72,-4.9 -11.86,-2.13 -2.92,1.6 -5.4,3.62 -6.9,6.73 -0.58,1.24 -0.52,3.34 -2.9,2.95 -2.17,-0.36 -4.15,-0.6 -5.06,-3.27 -0.84,-2.44 -1.6,-4.95 -3.57,-7 -6.6,-6.84 -12.28,-7.2 -19.33,-0.9 -3.77,3.35 -4.7,3.26 -7.7,-0.93 -1.47,-2.07 -2.2,-4.4 -2.3,-6.98 -0.5,-13.3 0.3,-26.45 5.03,-39.1 0.8,-2.14 -3.3,-6.3 -8.4,-10.03 -9.7,-7.05 -19.72,-18.28 -25.2,-30.94 -1.97,-4.54 -3.15,-13.82 -5.52,-13.86 -1.5,-0.03 -3,6.1 -4.4,8.74 -5.24,9.93 -15.64,13.7 -24.34,19.95 -2.4,1.73 -4.68,0.87 -6.15,-1.87 -2.7,-5.04 -1.26,-9 3.44,-12.1 13.66,-8.98 21.7,-21.55 22.36,-38.14 0.8,-20.28 2.94,-40.34 8.24,-60 6.3,-23.35 16.82,-44.46 32.98,-62.64 4.75,-5.34 8.53,-11.54 14.2,-16.1 1.77,-1.43 3.6,-2.8 6.25,-4.88 -0.8,5.58 -1.58,10.1 -2.08,14.62 -0.84,7.7 3.3,13.64 10.76,14.8 3.47,0.55 3.67,1.72 3.45,4.85 -0.62,8.83 0.8,17.48 8.52,22.98 7.26,5.17 15.44,6.67 23.63,1.6 2.48,-1.52 2.93,0.27 3.74,1.73 6.48,11.82 15.54,21.3 26.44,29.1 0.63,0.45 1.17,1.1 1.86,1.4 2.4,1.05 4.56,-0.35 5.75,-1.8 1.13,-1.4 -0.93,-2.7 -2.18,-3.52 -11,-7.3 -18.04,-17.88 -24.32,-29.1 -2.2,-3.97 -3.03,-7.74 -0.56,-12.28 6.58,-12.12 9.08,-25.38 9.57,-39.06 0.04,-0.93 0.1,-1.88 -0.04,-2.8 -0.18,-1.3 -0.8,-2.5 -2.22,-2.63 -1.25,-0.13 -1.94,0.87 -2.28,1.97 -0.5,1.63 -1.17,3.26 -1.33,4.94 -1.3,14.1 -6.95,26.77 -13.2,39.16 -4.6,9.12 -13.63,11.57 -20.37,6.05 -3.15,-2.58 -4,-6.26 -4.68,-9.9 -0.7,-3.82 -1.34,-7.73 -1.24,-11.58 0.13,-4.95 -2.83,-6.93 -6.73,-7.34 -5.1,-0.53 -6.52,-3.4 -6.6,-7.84 -0.13,-7.76 2.36,-15.05 4.18,-22.43 1.62,-6.58 1.52,-7.28 -4.45,-10.3 -3.03,-1.53 -1.86,-4.2 -1.12,-6.13 1.78,-4.64 3.63,-9.36 6.26,-13.55 7.02,-11.2 14.6,-21.97 24.63,-30.9 16.75,-14.9 33.9,-29.3 53.54,-40.22 6.14,-3.4 12.3,-6.86 18.56,-10.1 2.4,-1.23 1.5,-3.07 1.22,-4.85 -1.08,-7.2 -3.98,-14.1 -2.87,-21.62 2.04,-13.8 10.8,-18.3 22.52,-16 7.66,1.53 11.43,9.06 14.18,16.2 0.8,2.1 0.36,5.04 3.28,5.63 3.02,0.6 4.84,-1.44 6.45,-3.72 3.27,-4.64 7.42,-8.46 12.2,-11.44 6.52,-4.06 13.5,-3.1 20.26,-0.7 3.2,1.13 4,6.4 1.52,9.78 -2.07,2.82 -3.33,5.92 -4.7,9.04 -1.56,3.62 -0.66,5.12 3.37,4.33 7.17,-1.4 14.35,-2.44 21.63,-3.2 5.6,-0.6 10.22,1.23 14.48,4.06 4.25,2.85 2.3,13.23 -2.84,16.8 -5.27,3.67 -5.47,5.68 -0.85,9.95 9.53,8.8 18.57,17.83 23.7,30.2 2.97,7.22 3.93,14.72 5.15,22.2 1.8,11.08 2.67,22.32 1.86,33.52 -0.4,5.8 -0.65,11.78 -2.6,17.4 -1.67,4.87 -0.9,9.9 -0.96,14.84 -0.22,17.26 -1.04,34.42 -3.84,51.54 -2.85,17.4 -6.84,34.4 -11.87,51.3 -5.1,17 -6.27,34.65 -4.46,52.25 0.83,8.02 2.4,16.42 9.23,22.3 0.8,0.7 1.22,1.8 1.76,2.74 1.26,2.2 3.94,4.33 1.67,7.03 -2.07,2.46 -5.18,1.78 -7.9,1.07 -1.45,-0.37 -2.75,-1.38 -4.06,-2.2 -4.9,-3.05 -10.4,-2.58 -14.56,1.34 -1.25,1.17 -2.4,2.46 -3.66,3.6 -1.43,1.3 -2.72,3.8 -4.93,2.56 -1.94,-1.1 -0.64,-3.44 -0.32,-5.2 0.43,-2.27 -0.6,-3.9 -1.94,-5.5 -2.5,-2.96 -4.73,-6.28 -7.65,-8.78 -7,-5.97 -11.13,-13.77 -14.66,-21.9 -3.86,-8.86 -10.1,-16.45 -13.13,-26.13 5.28,-0.78 10.92,-1.33 16.44,-2.48 13.84,-2.9 24.47,-9.7 28.55,-24.22 1.2,-4.32 1.2,-8.65 0.53,-12.96 -0.8,-5.2 -6.34,-8.24 -11.46,-7.1 -13.87,3.05 -27.7,5.82 -41.58,-0.6 -8.8,-4.05 -12.52,-12.2 -17.24,-19.57 -1.2,-1.86 1.15,-3.64 2.17,-5.33 5.57,-9.25 -0.1,-21.56 -10.14,-21.93 -1.08,-0.04 -2.16,0.18 -3.23,0.35 -2.1,0.32 -3.64,1.54 -3.57,3.65 0.08,2.65 2.33,1.85 3.93,1.88 6.58,0.1 8.67,2.55 7.87,9.66 -7.32,-7.13 -14.85,-4.88 -22.26,-0.57 -10.73,6.25 -18.93,14.95 -17.3,28.02 1.53,12.18 7.25,23.1 16.8,31.52 8.72,7.7 18.46,13.6 29.6,17.1 3.44,1.1 7.03,1.16 10.58,1.55 2.46,0.27 3.95,1.04 4.84,3.9 1.32,4.27 3.43,8.4 5.82,12.2 4.5,7.13 8.5,14.5 11.38,22.4 2.88,7.9 8.38,13.7 14.3,19.27 1.56,2.64
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<location
2023-08-05 15:39:07 +02:00
file="src/main/res/drawable/errorphant_offline.xml"
2023-03-13 10:23:42 +01:00
line="34"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1006 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M312.62,450.27c-2.06,-0.46 -5.12,0.7 -5.7,-1.1 -0.82,-2.5 2.33,-3.64 4.03,-5 3.94,-3.15 6.66,-2.98 8.7,0.15 2.13,3.22 1.33,5.05 -2.53,5.63 -1.53,0.23 -3.1,0.22 -4.5,0.32zM157.95,460.62c-5.3,-0.4 -9.72,-1.5 -14.06,-2.98 -2.02,-0.67 -1.86,-1.5 -0.45,-2.87 4.25,-4.1 8.5,-3.86 11.94,0.94 0.94,1.33 1.52,2.9 2.55,4.92zM174.74,463.44c1.64,-3.02 2.93,-4.8 5.17,-5.88 4.1,-1.94 7.56,-0.25 8.52,4.18 0.42,1.9 -0.87,1.67 -1.87,1.68 -3.67,0.06 -7.34,0.02 -11.8,0.02zM336.16,448.93c1.17,-5.2 4.6,-7.28 9.25,-7.9 0.8,-0.1 1.53,0.08 2.07,0.75 0.48,0.62 0.23,1.2 -0.2,1.63 -3.03,2.96 -5.6,6.8 -11.1,5.53zM391.76,359.1c-3.24,1.28 -6.07,1.93 -8.98,0.53 -0.94,-0.45 -2.2,-0.8 -1.97,-2.2 0.18,-1.06 1.22,-1.28 2.12,-1.5 3.43,-0.87 6.42,-0.48 8.84,3.18zM406.75,352.33c0,-5.14 1.85,-7.8 5.74,-8.94 0.8,-0.24 1.93,-0.62 2.46,0.5 0.4,0.8 -0.26,1.53 -0.8,2.02 -2.18,1.95 -4.42,3.83 -7.4,6.4zM209.56,454.67c-0.23,2.68 -3.84,6.76 -5.77,6.53 -1,-0.12 -1.2,-0.7 -1.16,-1.6 0.1,-1.9 4.42,-6.72 5.9,-6.55 1.04,0.12 1.15,0.78 1.02,1.62z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-08-05 15:39:07 +02:00
file="src/main/res/drawable/errorphant_offline.xml"
2023-03-13 10:23:42 +01:00
line="64"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1039 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M392.36,474.27c-1.67,-3.3 -3.37,-5.32 2.46,-9.24 4.87,-3.28 3.88,-4.96 0.05,-8.64 -6.18,-5.92 -13.7,-11.35 -19.86,-16.35 -4.12,-3.36 -5.04,-8.04 -3.25,-12.74 1.84,-4.86 3.3,-9.92 4.43,-15 0.88,-3.92 1.57,-9.7 13.2,-4.5 16.55,7.4 13.85,9.62 8.22,20.8 -3.05,6.05 -2.17,9.5 4.6,11.84 9.85,4.25 12.58,6.6 11.1,14.06 -2.53,12.68 -7.05,41.66 -9.94,41.67 -2.45,0 -7.93,-15.82 -11,-21.9zM443.2,491.03c-2.34,-0.08 -2.85,-19.2 -3.6,-25.64 -0.4,-3.54 3.07,-6.3 5.6,-6.9 10.02,-2.28 10.67,-0.48 8.92,-10.75 -0.12,-0.7 -0.34,-1.38 -0.45,-2.08 -1.47,-9.52 -1,-11.12 8.5,-12.67 16.6,-2.7 17.4,-0.98 14.57,15.65 -0.7,4.2 -1.68,8.4 -2.1,12.63 -0.45,4.57 -2.8,6.07 -7.07,5.62 -12.44,-1.3 -14.94,2.13 -18.24,11.3 -0.83,2.32 -4.22,12.9 -6.12,12.83zM380.22,506.38c-2.67,1.2 -10.35,-9.17 -13.22,-10.96 -1.65,-1.02 -5.03,-2.06 -10.26,7.06 -1.2,2.94 -2.98,1.02 -4.18,-0.6 -6.08,-8.14 -12.07,-16.36 -18.26,-24.42 -2.83,-3.67 -5.9,-6.33 2.7,-11.64 9.4,-5.8 9.5,-5.05 16.23,9.2 3.83,8.1 6.77,9.04 12.77,3.96 2.78,-2.24 4.18,-1.42 5.24,1.4 2.14,5.7 11.4,24.9 8.98,26z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-08-05 15:39:07 +02:00
file="src/main/res/drawable/errorphant_offline.xml"
2023-03-13 10:23:42 +01:00
line="74"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1618 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M210.54,346.53c-1.04,-10.87 -1.55,-21.76 -1,-32.67 0.3,-6.02 0.06,-12.27 3.43,-17.66 0.7,-1.14 0.3,-4.48 3.4,-2.9 2.4,1.2 3.74,3.16 2.36,5.73 -3.3,6.14 -2.77,12.68 -2.3,19.18 0.75,10.23 1.36,20.45 1.57,30.7 0.13,6.7 -1.3,13.33 -2.94,19.6 -1.1,4.25 -6.76,6.1 -11.14,7.7 -14.25,5.15 -28.7,4.03 -43.18,1.05 -4.4,-0.9 -8.8,-1.9 -13.13,-3.14 -12.8,-3.64 -21.36,-14.9 -22.23,-29.2 -1.33,-21.93 3.8,-42.26 15.37,-60.96 2.07,-3.34 4.55,-6.32 7.7,-8.7 1.12,-0.88 2.48,-1.9 3.7,-0.52 1.15,1.3 0.18,2.68 -0.76,3.74 -11.3,12.77 -15.1,28.64 -18.66,44.64 -2.04,9.1 -0.17,17.94 1.43,26.8 0.28,1.57 1,2.22 2.96,1.74 10.44,-2.54 18.43,3.77 19.02,14.98 0.1,2.15 -0.02,3.95 2.7,4.6 2.68,0.6 3.1,-1.24 3.93,-2.92 4.6,-9.3 13.3,-10.46 20.12,-2.64 1.32,1.5 2.54,3.24 3.26,5.08 1.04,2.65 2.88,2.18 4.92,2 2.46,-0.2 1.8,-1.85 1.96,-3.36 0.86,-7.92 7.08,-13.4 14.82,-12.84 2.32,0.17 2.73,-0.7 2.72,-2.53 0,-2.5 0,-4.98 0,-7.47zM308.06,332.2c-0.12,6.25 -2.05,10.53 -6.22,13.6 -1.52,1.1 -3.7,2.1 -5.26,1.3 -4.14,-2.1 -6.18,-0.1 -8.64,2.88 -3.26,3.96 -7.98,4.98 -12.76,3.6 -4.4,-1.26 -5.85,-5.44 -6.63,-9.4 -0.6,-3 -1.15,-3.68 -4.4,-2.7 -9.76,2.93 -14.16,-1.63 -12,-11.66 1,-4.58 2.56,-8.65 6.57,-11.36 1.13,-0.77 2.5,-1.76 3.74,-0.3 1,1.17 0.15,2.4 -0.62,3.36 -2.62,3.28 -3.73,7.05 -4.08,11.2 -0.23,2.62 0.6,3.44 3.14,2.85 2,-0.47 3.8,-1.23 5.64,-2.13 5.07,-2.5 7.27,-1.12 7.55,4.4 0.08,1.86 0.33,3.73 0.8,5.5 1.24,4.95 4.83,5.96 8.48,2.23 1.82,-1.86 3.06,-4.3 4.58,-6.44 1.9,-2.7 4,-3.1 6.62,-0.78 3.23,2.9 4.34,2.52 6.06,-1.47 0.78,-1.8 0.67,-3.66 0.7,-5.5 0,-2.2 0.3,-4.33 2.96,-4.42 2.47,-0.08 3.38,1.84 3.66,4.04 0.1,0.77 0.13,1.54 0.1,1.2z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-08-05 15:39:07 +02:00
file="src/main/res/drawable/errorphant_offline.xml"
2023-03-13 10:23:42 +01:00
line="79"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (2458 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M189.06,292.78c1.26,-4.3 3.43,-8.9 6.02,-13.28 0.6,-1 1.7,-1.37 2.85,-0.8 1.37,0.66 2.28,1.83 1.88,3.35 -1.2,4.63 -2.33,9.3 -4.73,13.5 -0.8,1.4 -2.04,2.48 -3.84,1.68 -1.57,-0.7 -2.17,-2.1 -2.17,-4.45zM198.63,185.98c-0.63,4.92 -2.85,9.2 -4.9,13.5 -0.66,1.33 -2.2,1.65 -3.68,1 -1.26,-0.58 -1.86,-1.58 -1.68,-3 0.62,-4.82 2.53,-9.23 4.37,-13.64 0.58,-1.4 1.85,-2.1 3.42,-1.76 2.12,0.5 2.25,2.3 2.47,3.9zM182.57,137.72c-2.2,-0.14 -3.55,-1.7 -2.52,-4 2.05,-4.5 4.26,-9 8.27,-12.18 1.23,-0.97 2.72,-1.88 4.22,-0.62 1.46,1.23 1.03,2.8 0.14,4.2 -2.14,3.43 -4.27,6.86 -6.46,10.25 -0.75,1.17 -1.6,2.33 -3.65,2.35zM129.1,250.15c1.57,-3.46 2.86,-7.78 5.6,-11.37 0.87,-1.13 2.3,-1.77 3.74,-1 1.53,0.85 2.22,2.4 1.6,3.97 -1.57,4.02 -3.28,8 -5.15,11.87 -0.62,1.28 -2.08,2 -3.6,1.42 -1.85,-0.7 -2.23,-2.38 -2.2,-4.9zM104.77,259.68c1.02,-4.7 3.63,-8.9 6.3,-13.1 0.7,-1.1 2.08,-1.3 3.35,-0.68 1.3,0.64 1.7,1.9 1.44,3.15 -1,5.1 -3.78,9.45 -6.2,13.92 -0.62,1.14 -2.1,1.3 -3.34,0.63 -1.46,-0.77 -1.5,-2.22 -1.55,-3.92zM196.4,405.28c0.33,-2.06 -0.65,-5.15 2.86,-5.25 3,-0.1 3.44,2.43 3.8,4.9 0.45,3.2 1.3,6.35 1.77,9.56 0.22,1.56 -0.16,3.2 -2.06,3.7 -1.83,0.46 -2.9,-0.64 -3.7,-2.1 -1.82,-3.35 -2.6,-6.95 -2.66,-10.82zM179.67,166.87c0.44,-5.7 2.9,-9.64 5.6,-13.45 0.94,-1.34 2.5,-1.94 4.1,-1.02 1.45,0.83 1.62,2.32 1.07,3.68 -1.54,3.88 -3.14,7.75 -4.92,11.52 -0.7,1.5 -2.18,2.23 -3.92,1.72 -1.65,-0.48 -1.94,-1.82 -1.93,-2.45zM189.68,317.63c-0.5,3.56 -0.88,7.1 -1.57,10.57 -0.33,1.66 -1.24,3.36 -3.44,3.03 -1.94,-0.3 -2.9,-1.72 -3.07,-3.58 -0.45,-4.6 1.1,-8.85 2.43,-13.12 0.48,-1.52 1.94,-1.97 3.45,-1.5 2.4,0.72 1.8,2.93 2.2,4.6zM130.33,224.68c-2.6,-0.24 -3.46,-1.8 -2.67,-3.9 1.44,-3.83 3.92,-7.07 6.97,-9.77 1.3,-1.13 3.18,-1.62 4.7,-0.2 1.46,1.4 1.22,3.15 0.2,4.7 -1.55,2.33 -3.16,4.63 -4.87,6.84 -1.1,1.4 -2.68,2.08 -4.33,2.34zM169.37,397.9c0,-1.08 -0.06,-2.17 0.02,-3.25 0.07,-1.35 0.73,-2.4 2.1,-2.73 1.48,-0.36 2.36,0.6 2.94,1.74 1.9,3.8 2.58,7.94 2.93,12.12 0.12,1.52 -0.92,2.72 -2.54,2.78 -1.8,0.08 -3.44,-0.6 -4.08,-2.46 -0.92,-2.64 -1.56,-5.36 -1.38,-8.2zM117.86,285.05c-0.43,3.52 -2.02,6.88 -3.73,10.17 -0.63,1.2 -1.73,2.28 -3.42,1.68 -1.5,-0.54 -2.22,-1.76 -2.12,-3.26 0.3,-4.27 2.1,-8.04 4.38,-11.56 0.74,-1.13 2.13,-1.3 3.38,-0.83 1.64,0.63 1.5,2.15 1.52,3.8zM175.57,295.8c-1.7,4.22 -3.23,8.28 -5,12.25 -0.47,1.1 -1.8,1.05 -2.93,0.7 -1.17,-0.34 -2.04,-1.23 -1.84,-2.38 0.78,-4.43 1.38,-8.97 4.38,-12.62 0.95,-1.15 2.26,-1.74 3.74,-0.86 1.15,0.68 1.8,1.7 1.65,2.9z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-08-05 15:39:07 +02:00
file="src/main/res/drawable/errorphant_offline.xml"
2023-03-13 10:23:42 +01:00
line="109"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1064 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M288.17,570.5c-12.3,0 -24.53,-1.8 -35.3,-6.22 -2.82,-1.16 -8.25,-3.4 -13.7,-7.3 -9.7,-1.62 -19.28,-4.92 -27.95,-9.94 -17.26,-10 -34.4,-25.67 -48.2,-38.26 -3.87,-3.54 -7.52,-7.78 -10.6,-10.45 -11.05,-9.57 -41.26,-24.33 -63.54,-24.33 -0.05,0 -0.1,0 -0.13,0 -21.1,0 -49.48,10.67 -61.18,26.37 -1.56,2.08 -5.9,5.54 -11.53,3.2 -6.9,-2.9 -7.12,-8.33 -5.3,-12.35C18.97,472.94 62.47,456 88.7,456c0.06,0 0.1,0 0.16,0 25.63,0 60.5,15.28 75.8,28.55 3.27,2.82 7.02,6.52 11,10.15 13.1,11.98 29.42,27.04 44.93,36 0.98,0.6 2,1.2 3,1.7 -2.25,-19.02 8.88,-44.9 38.96,-54.04 12.8,-3.88 25.97,2.37 34.4,16.27 9.1,14.93 14,33.56 0.5,47.4 -3.85,3.93 -8.5,7.16 -13.73,9.66 16.06,0.66 33,-2.57 45.4,-6.66 5.04,-1.65 14.67,-5.88 18.98,-7.65 5.9,-2.44 9.57,-3.24 14.94,-4.05 5.32,-0.8 7.05,12.32 5.2,15.9 -0.56,1.08 -8.24,3.48 -11.37,4.67 -1.68,0.64 -16.2,7.03 -21.88,8.9 -13.27,4.37 -30.1,7.67 -46.83,7.67zM246.81,539.1c14.85,1.46 29.3,-1.97 37.26,-10.14 6.54,-6.7 2.2,-16.86 -3.07,-25.54 -1.46,-2.37 -6.66,-9.04 -13,-7.12 -21.37,6.48 -27.76,24.98 -25.65,34.94 0.6,2.9 2.06,5.48 4.46,7.85z" />"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-08-05 15:39:07 +02:00
file="src/main/res/drawable/errorphant_offline.xml"
2023-03-13 10:23:42 +01:00
line="133"
column="27"/>
</issue>
<issue
id="VectorPath"
message="Very long vector path (1757 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
errorLine1=" android:pathData=" M8.9987,3.9987C6.7925,3.9987 5,5.7913 5,7.9975C5,10.21 6.7925,12.0025 8.9987,12.0025C11.2113,12.0025 12.9975,10.21 12.9975,7.9975C12.9975,5.7913 11.2113,3.9987 8.9987,3.9987ZM8.9987,13.9987C6.3288,13.9987 1.0013,15.3325 1.0013,17.9975L1.0013,20L12.08,20C12.0262,19.6675 12.0025,19.3362 12.0025,18.9988C12.0025,17.485 12.495,16.0113 13.4087,14.8C11.88,14.2775 10.1813,13.9987 8.9987,13.9987ZM17.9887,13.9987C17.8712,13.9987 17.7588,14.0912 17.7388,14.2087L17.5487,15.5275C17.2512,15.6588 16.9575,15.82 16.6988,16.02L15.4587,15.5175C15.3512,15.4787 15.22,15.5225 15.1512,15.63L14.15,17.3587C14.0913,17.4713 14.1112,17.5975 14.2087,17.6812L15.2688,18.5113C15.2487,18.6712 15.2388,18.8275 15.2388,18.9988C15.2388,19.17 15.2487,19.3312 15.2688,19.4925L14.2087,20.3225C14.1212,20.4 14.0913,20.5325 14.15,20.64L15.1512,22.3687C15.21,22.48 15.3413,22.52 15.4587,22.48L16.6988,21.9825C16.9575,22.1825 17.2412,22.3488 17.5487,22.4713L17.7388,23.7888C17.7588,23.9113 17.8612,23.9988 17.9887,23.9988L19.99,23.9988C20.1123,23.9988 20.22,23.9113 20.2393,23.7888L20.4297,22.4713C20.7275,22.3387 21.0205,22.1825 21.27,21.9825L22.52,22.48C22.6312,22.52 22.7588,22.48 22.8325,22.3687L23.8288,20.64C23.8913,20.5325 23.8575,20.4 23.77,20.3225L22.7002,19.4925C22.72,19.3312 22.7393,19.17 22.7393,18.9988C22.7393,18.8275 22.7295,18.6712 22.7002,18.5113L23.76,17.6812C23.8475,17.5975 23.8812,17.4713 23.8188,17.3587L22.8225,15.63C22.7588,15.5225 22.6312,15.4787 22.51,15.5175L21.27,16.02C21.0107,15.82 20.7275,15.65 20.42,15.5275L20.2295,14.2087C20.22,14.0912 20.1123,13.9987 19.99,13.9987M18.9888,17.5C19.8188,17.5 20.4888,18.1687 20.4888,18.9988C20.4888,19.8288 19.8188,20.4975 18.9888,20.4975C18.1588,20.4975 17.49,19.8288 17.49,18.9988C17.49,18.1687 18.1588,17.5 18.9888,17.5Z" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/drawable/ic_account_settings.xml"
line="10"
column="27"/>
</issue>
<issue
id="Overdraw"
2023-11-15 15:59:01 +01:00
message="Possible overdraw: Root element paints background `@color/black` with a theme that also paints a background (inferred theme is `@style/AppTheme`)"
2023-03-13 10:23:42 +01:00
errorLine1=" android:background=" @color/black" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/activity_view_media.xml"
line="6"
column="5"/>
</issue>
<issue
id="Overdraw"
2023-11-15 15:59:01 +01:00
message="Possible overdraw: Root element paints background `?android:attr/colorBackground` with a theme that also paints a background (inferred theme is `@style/AppTheme`)"
2023-03-13 10:23:42 +01:00
errorLine1=" android:background=" ?android:attr/colorBackground" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/fragment_timeline_notifications.xml"
2023-09-01 19:37:01 +02:00
line="23"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
id="Overdraw"
2023-11-15 15:59:01 +01:00
message="Possible overdraw: Root element paints background `?attr/selectableItemBackground` with a theme that also paints a background (inferred theme is `@style/AppTheme`)"
2023-03-13 10:23:42 +01:00
errorLine1=" android:background=" ?attr/selectableItemBackground" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_account.xml"
line="8"
column="5"/>
</issue>
<issue
id="Overdraw"
2023-11-15 15:59:01 +01:00
message="Possible overdraw: Root element paints background `?attr/selectableItemBackground` with a theme that also paints a background (inferred theme is `@style/AppTheme`)"
2023-03-13 10:23:42 +01:00
errorLine1=" android:background=" ?attr/selectableItemBackground" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_draft.xml"
line="8"
column="5"/>
</issue>
<issue
id="Overdraw"
2023-11-15 15:59:01 +01:00
message="Possible overdraw: Root element paints background `?attr/selectableItemBackgroundBorderless` with a theme that also paints a background (inferred theme is `@style/AppTheme`)"
2023-03-13 10:23:42 +01:00
errorLine1=" android:background=" ?attr/selectableItemBackgroundBorderless" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_emoji_button.xml"
line="4"
column="5"/>
</issue>
<issue
id="Overdraw"
2023-11-15 15:59:01 +01:00
message="Possible overdraw: Root element paints background `?attr/selectableItemBackground` with a theme that also paints a background (inferred theme is `@style/AppTheme`)"
2023-03-13 10:23:42 +01:00
errorLine1=" android:background=" ?attr/selectableItemBackground" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_emoji_pref.xml"
line="7"
column="5"/>
</issue>
<issue
id="Overdraw"
2023-11-15 15:59:01 +01:00
message="Possible overdraw: Root element paints background `?attr/selectableItemBackground` with a theme that also paints a background (inferred theme is `@style/AppTheme`)"
2023-03-13 10:23:42 +01:00
errorLine1=" android:background=" ?attr/selectableItemBackground" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_hashtag.xml"
2023-07-06 19:37:51 +02:00
line="16"
2023-03-13 10:23:42 +01:00
column="5"/>
</issue>
<issue
2023-03-21 18:56:11 +01:00
id="UnusedResources"
message="The resource `R.menu.activity_scheduled_status` appears to be unused"
errorLine1="< menu xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2="^">
2023-03-13 10:23:42 +01:00
<location
2023-03-21 18:56:11 +01:00
file="src/main/res/menu/activity_scheduled_status.xml"
2023-09-02 23:16:29 +02:00
line="19"
2023-03-21 18:56:11 +01:00
column="1"/>
2023-03-13 10:23:42 +01:00
</issue>
2023-09-05 13:28:56 +02:00
<issue
id="UnusedResources"
message="The resource `R.color.md_theme_light_shadow` appears to be unused"
errorLine1=" < color name=" md_theme_light_shadow" >#000000< /color>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/colors.xml"
line="31"
column="12"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.color.md_theme_light_surfaceTint` appears to be unused"
errorLine1=" < color name=" md_theme_light_surfaceTint" >#006686< /color>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/colors.xml"
line="32"
column="12"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.color.md_theme_light_outlineVariant` appears to be unused"
errorLine1=" < color name=" md_theme_light_outlineVariant" >#C0C7CD< /color>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/colors.xml"
line="33"
column="12"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.color.md_theme_light_scrim` appears to be unused"
errorLine1=" < color name=" md_theme_light_scrim" >#000000< /color>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/colors.xml"
line="34"
column="12"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.color.md_theme_dark_shadow` appears to be unused"
errorLine1=" < color name=" md_theme_dark_shadow" >#000000< /color>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/colors.xml"
line="61"
column="12"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.color.md_theme_dark_surfaceTint` appears to be unused"
errorLine1=" < color name=" md_theme_dark_surfaceTint" >#6FD2FF< /color>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/colors.xml"
line="62"
column="12"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.color.md_theme_dark_outlineVariant` appears to be unused"
errorLine1=" < color name=" md_theme_dark_outlineVariant" >#40484C< /color>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/colors.xml"
line="63"
column="12"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.color.md_theme_dark_scrim` appears to be unused"
errorLine1=" < color name=" md_theme_dark_scrim" >#000000< /color>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/colors.xml"
line="64"
column="12"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.color.icon_background` appears to be unused"
errorLine1=" < color name=" icon_background" >#09497b< /color>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/colors.xml"
2024-01-25 00:50:50 +01:00
line="105"
2023-09-05 13:28:56 +02:00
column="12"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.color.icon_highlight` appears to be unused"
errorLine1=" < color name=" icon_highlight" >#39acff< /color>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/colors.xml"
2024-01-25 00:50:50 +01:00
line="106"
2023-09-05 13:28:56 +02:00
column="12"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="UnusedResources"
message="The resource `R.dimen.status_detail_media_preview_height` appears to be unused"
errorLine1=" < dimen name=" status_detail_media_preview_height" >130dp< /dimen>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/dimens.xml"
2023-12-02 14:24:29 +01:00
line="8"
2023-03-13 10:23:42 +01:00
column="12"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.array.app_theme_values` appears to be unused"
errorLine1=" < string-array name=" app_theme_values" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/donottranslate.xml"
2023-12-02 14:24:29 +01:00
line="53"
2023-03-13 10:23:42 +01:00
column="19"/>
</issue>
2023-03-21 18:56:11 +01:00
<issue
id="UnusedResources"
message="The resource `R.array.filter_action_values` appears to be unused"
errorLine1=" < string-array name=" filter_action_values" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/donottranslate.xml"
2023-12-02 14:24:29 +01:00
line="294"
2023-03-21 18:56:11 +01:00
column="19"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.array.filter_context_values` appears to be unused"
errorLine1=" < string-array name=" filter_context_values" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/donottranslate.xml"
2023-12-02 14:24:29 +01:00
line="299"
2023-03-21 18:56:11 +01:00
column="19"/>
</issue>
2023-09-05 13:28:56 +02:00
<issue
id="UnusedResources"
message="The resource `R.drawable.elephant_friend` appears to be unused"
errorLine1="< vector xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2="^">
<location
file="src/main/res/drawable/elephant_friend.xml"
line="1"
column="1"/>
</issue>
2023-03-21 18:56:11 +01:00
<issue
id="UnusedResources"
message="The resource `R.menu.fragment_search` appears to be unused"
errorLine1="< menu xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2="^">
<location
file="src/main/res/menu/fragment_search.xml"
2023-09-02 23:16:29 +02:00
line="19"
2023-03-21 18:56:11 +01:00
column="1"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="UnusedResources"
message="The resource `R.drawable.ic_blobmoji` appears to be unused"
errorLine1="< vector android:height=" 34dp" android:viewportHeight=" 128" "
errorLine2="^">
<location
file="src/main/res/drawable/ic_blobmoji.xml"
line="1"
column="1"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.drawable.ic_emoji_34dp` appears to be unused"
errorLine1="< vector xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2="^">
<location
file="src/main/res/drawable/ic_emoji_34dp.xml"
line="1"
column="1"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.drawable.ic_notifications_off_24dp` appears to be unused"
errorLine1="< vector xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2="^">
<location
file="src/main/res/drawable/ic_notifications_off_24dp.xml"
line="1"
column="1"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.drawable.ic_notoemoji` appears to be unused"
errorLine1="< vector android:height=" 34dp" "
errorLine2="^">
<location
file="src/main/res/drawable/ic_notoemoji.xml"
line="1"
column="1"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.drawable.ic_twemoji` appears to be unused"
errorLine1="< vector android:height=" 34dp" android:viewportHeight=" 36" "
errorLine2="^">
<location
file="src/main/res/drawable/ic_twemoji.xml"
line="1"
column="1"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.layout.item_emoji_pref` appears to be unused"
errorLine1="< androidx.constraintlayout.widget.ConstraintLayout xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2="^">
<location
file="src/main/res/layout/item_emoji_pref.xml"
line="2"
column="1"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.color.launcher_shadow_gradient` appears to be unused"
errorLine1="< gradient xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2="^">
<location
file="src/main/res/color-v24/launcher_shadow_gradient.xml"
line="2"
column="1"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.layout.material_drawer_header` appears to be unused"
errorLine1="< merge xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2="^">
<location
file="src/main/res/layout/material_drawer_header.xml"
line="2"
column="1"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.drawable.materialdrawer_shape_large` appears to be unused"
errorLine1="< shape xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2="^">
<location
file="src/main/res/drawable/materialdrawer_shape_large.xml"
line="1"
column="1"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.drawable.materialdrawer_shape_small` appears to be unused"
errorLine1="< shape xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2="^">
<location
file="src/main/res/drawable/materialdrawer_shape_small.xml"
line="1"
column="1"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.error_no_web_browser_found` appears to be unused"
errorLine1=" < string name=" error_no_web_browser_found" >Couldn\' t find a web browser to use.< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="25"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.error_media_upload_type` appears to be unused"
errorLine1=" < string name=" error_media_upload_type" >That type of file cannot be uploaded.< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="35"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.error_following_hashtags_unsupported` appears to be unused"
errorLine1=" < string name=" error_following_hashtags_unsupported" >This instance does not support following hashtags.< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="45"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.post_sensitive_media_directions` appears to be unused"
errorLine1=" < string name=" post_sensitive_media_directions" >Click to view< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="90"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.footer_empty` appears to be unused"
errorLine1=" < string name=" footer_empty" >Nothing here. Pull down to refresh!< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="97"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.report_comment_hint` appears to be unused"
errorLine1=" < string name=" report_comment_hint" >Additional comments?< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="109"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.action_unbookmark` appears to be unused"
errorLine1=" < string name=" action_unbookmark" >Remove bookmark< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="117"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.action_view_domain_mutes` appears to be unused"
errorLine1=" < string name=" action_view_domain_mutes" >Hidden domains< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="157"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.confirmation_reported` appears to be unused"
errorLine1=" < string name=" confirmation_reported" >Sent!< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="217"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.dialog_title_finishing_media_upload` appears to be unused"
errorLine1=" < string name=" dialog_title_finishing_media_upload" >Finishing Media Upload< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="250"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.dialog_message_uploading_media` appears to be unused"
errorLine1=" < string name=" dialog_message_uploading_media" >Uploading…< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="251"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.pref_title_notification_filter_mentions` appears to be unused"
errorLine1=" < string name=" pref_title_notification_filter_mentions" >mentioned< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2023-12-02 14:24:29 +01:00
line="274"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.pref_title_post_filter` appears to be unused"
errorLine1=" < string name=" pref_title_post_filter" >Timeline filtering< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="303"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
2023-09-05 13:28:56 +02:00
message="The resource `R.string.about_pachli_version` appears to be unused"
errorLine1=" < string name=" about_pachli_version" >Pachli %s< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="373"
2023-03-21 18:56:11 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.filter_dialog_remove_button` appears to be unused"
errorLine1=" < string name=" filter_dialog_remove_button" >Remove< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="425"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.download_fonts` appears to be unused"
errorLine1=" < string name=" download_fonts" >You\' ll need to download these emoji sets first< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="472"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.restart_required` appears to be unused"
errorLine1=" < string name=" restart_required" >App restart required< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="476"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.restart_emoji` appears to be unused"
2023-09-05 13:28:56 +02:00
errorLine1=" < string name=" restart_emoji" >You\' ll need to restart Pachli in order to apply these changes< /string>"
2023-03-13 10:23:42 +01:00
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="477"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.later` appears to be unused"
errorLine1=" < string name=" later" >Later< /string>"
errorLine2=" ~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="478"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.restart` appears to be unused"
errorLine1=" < string name=" restart" >Restart< /string>"
errorLine2=" ~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="479"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.caption_systememoji` appears to be unused"
errorLine1=" < string name=" caption_systememoji" >Your device\' s default emoji set< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="480"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.caption_blobmoji` appears to be unused"
errorLine1=" < string name=" caption_blobmoji" >The Blob emojis known from Android 4.4– 7.1< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="481"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.caption_twemoji` appears to be unused"
errorLine1=" < string name=" caption_twemoji" >Mastodon\' s standard emoji set< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="482"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.caption_notoemoji` appears to be unused"
errorLine1=" < string name=" caption_notoemoji" >Google\' s current emoji set< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="483"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.download_failed` appears to be unused"
errorLine1=" < string name=" download_failed" >Download failed< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="484"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.description_login` appears to be unused"
errorLine1=" < string name=" description_login" >Works in most cases. No data is leaked to other apps.< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="550"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.description_browser_login` appears to be unused"
errorLine1=" < string name=" description_browser_login" >May support additional authentication methods, but requires a supported browser.< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="551"
2023-03-21 18:56:11 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.filter_apply` appears to be unused"
errorLine1=" < string name=" filter_apply" >Apply< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="564"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.compose_shortcut_long_label` appears to be unused"
errorLine1=" < string name=" compose_shortcut_long_label" >Compose post< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="565"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.compose_shortcut_short_label` appears to be unused"
errorLine1=" < string name=" compose_shortcut_short_label" >Compose< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="566"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.compose_preview_image_description` appears to be unused"
errorLine1=" < string name=" compose_preview_image_description" >Actions for image %s< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="568"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.failed_report` appears to be unused"
errorLine1=" < string name=" failed_report" >Failed to report< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="608"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.wellbeing_mode_notice` appears to be unused"
errorLine1=" < string name=" wellbeing_mode_notice" >Some information that might affect your mental wellbeing will be hidden. This includes:\n\n"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="651"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.review_notifications` appears to be unused"
errorLine1=" < string name=" review_notifications" >Review Notifications< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="657"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
message="The resource `R.string.action_unfollow_hashtag_format` appears to be unused"
errorLine1=" < string name=" action_unfollow_hashtag_format" >Unfollow #%s?< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="689"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="UnusedResources"
2023-03-21 18:56:11 +01:00
message="The resource `R.string.hint_filter_title` appears to be unused"
errorLine1=" < string name=" hint_filter_title" >My filter< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/strings.xml"
2024-01-18 21:44:30 +01:00
line="717"
2023-03-21 18:56:11 +01:00
column="13"/>
</issue>
2023-09-02 17:47:43 +02:00
<issue
id="UnusedResources"
2023-09-05 13:28:56 +02:00
message="The resource `R.style.AppButton_TextButton_Icon` appears to be unused"
errorLine1=" < style name=" AppButton.TextButton.Icon" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
2023-09-02 17:47:43 +02:00
<location
file="src/main/res/values/styles.xml"
2024-01-25 00:50:50 +01:00
line="129"
2023-09-02 17:47:43 +02:00
column="12"/>
</issue>
2023-03-21 18:56:11 +01:00
<issue
id="UnusedResources"
message="The resource `R.style.BezelImageView` appears to be unused"
2023-03-13 10:23:42 +01:00
errorLine1=" < style name=" BezelImageView" >"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/values/styles.xml"
2024-01-25 00:50:50 +01:00
line="173"
2023-09-02 17:47:43 +02:00
column="12"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="SyntheticAccessor"
message="Access to `private` method `setClickableTextWithoutUnderlines` of class `AboutActivityKt` requires synthetic accessor"
2023-09-05 13:28:56 +02:00
errorLine1=" binding.aboutLicenseInfoTextView.setClickableTextWithoutUnderlines(R.string.about_pachli_license)"
2023-03-13 10:23:42 +01:00
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AboutActivity.kt"
2023-12-07 18:36:00 +01:00
line="75"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setClickableTextWithoutUnderlines` of class `AboutActivityKt` requires synthetic accessor"
errorLine1=" binding.aboutWebsiteInfoTextView.setClickableTextWithoutUnderlines(R.string.about_project_site)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AboutActivity.kt"
2023-12-07 18:36:00 +01:00
line="76"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setClickableTextWithoutUnderlines` of class `AboutActivityKt` requires synthetic accessor"
errorLine1=" binding.aboutBugsFeaturesInfoTextView.setClickableTextWithoutUnderlines(R.string.about_bug_feature_request_site)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AboutActivity.kt"
2023-12-07 18:36:00 +01:00
line="77"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `AccountActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" binding.accountFloatingActionButton.show()"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/account/AccountActivity.kt"
2023-12-12 16:53:09 +01:00
line="380"
2023-09-02 23:16:29 +02:00
column="29"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `AccountActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" binding.accountFloatingActionButton.hide()"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/account/AccountActivity.kt"
2023-12-12 16:53:09 +01:00
line="383"
2023-09-02 23:16:29 +02:00
column="29"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `AccountActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" binding.accountAvatarImageView.scaleX = scaledAvatarSize"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/account/AccountActivity.kt"
2023-12-12 16:53:09 +01:00
line="389"
2023-09-02 23:16:29 +02:00
column="21"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `AccountActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" binding.accountAvatarImageView.scaleY = scaledAvatarSize"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/account/AccountActivity.kt"
2023-12-12 16:53:09 +01:00
line="390"
2023-09-02 23:16:29 +02:00
column="21"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `AccountActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" binding.accountAvatarImageView.visible(scaledAvatarSize > 0)"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/account/AccountActivity.kt"
2023-12-12 16:53:09 +01:00
line="392"
2023-09-02 23:16:29 +02:00
column="21"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `AccountActivity` requires synthetic accessor"
2023-09-05 13:28:56 +02:00
errorLine1=" binding.swipeRefreshLayout.isEnabled = verticalOffset == 0"
2023-09-02 23:16:29 +02:00
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/account/AccountActivity.kt"
2023-12-12 16:53:09 +01:00
line="402"
2023-09-02 23:16:29 +02:00
column="21"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `fetchAccounts` of class `AccountListFragment` requires synthetic accessor"
errorLine1=" fetchAccounts(bottomId)"
errorLine2=" ~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/accountlist/AccountListFragment.kt"
2023-12-07 18:36:00 +01:00
line="145"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `showErrorSnackbar` of class `AccountPreferencesFragment` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" showErrorSnackbar(visibility, sensitive)"
errorLine2=" ~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/preference/AccountPreferencesFragment.kt"
2024-01-18 21:44:30 +01:00
line="326"
2023-09-02 23:16:29 +02:00
column="29"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `showErrorSnackbar` of class `AccountPreferencesFragment` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" showErrorSnackbar(visibility, sensitive)"
errorLine2=" ~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/preference/AccountPreferencesFragment.kt"
2024-01-18 21:44:30 +01:00
line="332"
2023-09-02 23:16:29 +02:00
column="25"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getViewModel` of class `AccountsInListFragment` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" viewModel.search(query.orEmpty())"
errorLine2=" ~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="118"
2023-09-02 23:16:29 +02:00
column="21"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getViewModel` of class `AccountsInListFragment` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" viewModel.search(" " )"
errorLine2=" ~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="125"
2023-09-02 23:16:29 +02:00
column="25"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `onRemoveFromList` of class `AccountsInListFragment` requires synthetic accessor"
errorLine1=" onRemoveFromList(getItem(holder.bindingAdapterPosition).id)"
errorLine2=" ~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="186"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getAnimateEmojis` of class `AccountsInListFragment` requires synthetic accessor"
errorLine1=" holder.binding.displayNameTextView.text = account.name.emojify(account.emojis, holder.binding.displayNameTextView, animateEmojis)"
errorLine2=" ~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="196"
2023-03-13 10:23:42 +01:00
column="128"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getAnimateEmojis` of class `AccountsInListFragment` requires synthetic accessor"
errorLine1=" holder.binding.displayNameTextView.text = account.name.emojify(account.emojis, holder.binding.displayNameTextView, animateEmojis)"
errorLine2=" ~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="196"
2023-03-13 10:23:42 +01:00
column="128"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getAnimateAvatar` of class `AccountsInListFragment` requires synthetic accessor"
errorLine1=" loadAvatar(account.avatar, holder.binding.avatar, radius, animateAvatar)"
errorLine2=" ~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="198"
2023-03-13 10:23:42 +01:00
column="71"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getRadius` of class `AccountsInListFragment` requires synthetic accessor"
errorLine1=" loadAvatar(account.avatar, holder.binding.avatar, radius, animateAvatar)"
errorLine2=" ~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="198"
2023-03-13 10:23:42 +01:00
column="63"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `onRemoveFromList` of class `AccountsInListFragment` requires synthetic accessor"
errorLine1=" onRemoveFromList(account.id)"
errorLine2=" ~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="225"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `onAddToList` of class `AccountsInListFragment` requires synthetic accessor"
errorLine1=" onAddToList(account)"
errorLine2=" ~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="227"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getAnimateEmojis` of class `AccountsInListFragment` requires synthetic accessor"
errorLine1=" holder.binding.displayNameTextView.text = account.name.emojify(account.emojis, holder.binding.displayNameTextView, animateEmojis)"
errorLine2=" ~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="237"
2023-03-13 10:23:42 +01:00
column="128"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getAnimateEmojis` of class `AccountsInListFragment` requires synthetic accessor"
errorLine1=" holder.binding.displayNameTextView.text = account.name.emojify(account.emojis, holder.binding.displayNameTextView, animateEmojis)"
errorLine2=" ~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="237"
2023-03-13 10:23:42 +01:00
column="128"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getAnimateAvatar` of class `AccountsInListFragment` requires synthetic accessor"
errorLine1=" loadAvatar(account.avatar, holder.binding.avatar, radius, animateAvatar)"
errorLine2=" ~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="239"
2023-03-13 10:23:42 +01:00
column="71"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getRadius` of class `AccountsInListFragment` requires synthetic accessor"
errorLine1=" loadAvatar(account.avatar, holder.binding.avatar, radius, animateAvatar)"
errorLine2=" ~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/AccountsInListFragment.kt"
2023-10-15 22:52:47 +02:00
line="239"
2023-03-13 10:23:42 +01:00
column="63"/>
</issue>
2023-11-06 20:16:34 +01:00
<issue
id="SyntheticAccessor"
message="Access to `private` method `textStyle` of class `Companion` requires synthetic accessor"
errorLine1=" textStyle(sharedPreferencesRepository.getString(PrefKeys.STATUS_TEXT_SIZE, " medium" )!!)"
errorLine2=" ~~~~~~~~~">
<location
file="src/main/java/app/pachli/BaseActivity.kt"
2023-12-12 16:53:09 +01:00
line="103"
2023-11-06 20:16:34 +01:00
column="13"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="SyntheticAccessor"
message="Access to `private` method `handleCloseButton` of class `ComposeActivity` requires synthetic accessor"
errorLine1=" handleCloseButton()"
errorLine2=" ~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/compose/ComposeActivity.kt"
2024-01-18 21:44:30 +01:00
line="559"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getViewModel` of class `ComposeActivity` requires synthetic accessor"
errorLine1=" viewModel.postLanguage = (parent.adapter.getItem(position) as Locale).modernLanguageCode"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/compose/ComposeActivity.kt"
2024-01-18 21:44:30 +01:00
line="568"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getViewModel` of class `ComposeActivity` requires synthetic accessor"
errorLine1=" viewModel.postLanguage = (parent.adapter.getItem(position) as Locale).modernLanguageCode"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/compose/ComposeActivity.kt"
2024-01-18 21:44:30 +01:00
line="568"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `formatUsername` of class `Companion` requires synthetic accessor"
errorLine1=" is AutocompleteResult.AccountResult -> formatUsername(resultValue)"
errorLine2=" ~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/compose/ComposeAutoCompleteAdapter.kt"
2023-10-28 19:54:46 +02:00
line="61"
2023-03-13 10:23:42 +01:00
column="60"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `formatHashtag` of class `Companion` requires synthetic accessor"
errorLine1=" is AutocompleteResult.HashtagResult -> formatHashtag(resultValue)"
errorLine2=" ~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/compose/ComposeAutoCompleteAdapter.kt"
2023-10-28 19:54:46 +02:00
line="62"
2023-03-13 10:23:42 +01:00
column="60"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `formatEmoji` of class `Companion` requires synthetic accessor"
errorLine1=" is AutocompleteResult.EmojiResult -> formatEmoji(resultValue)"
errorLine2=" ~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/compose/ComposeAutoCompleteAdapter.kt"
2023-10-28 19:54:46 +02:00
line="63"
2023-03-13 10:23:42 +01:00
column="58"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `formatHashtag` of class `Companion` requires synthetic accessor"
errorLine1=" binding.root.text = formatHashtag(result)"
errorLine2=" ~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/compose/ComposeAutoCompleteAdapter.kt"
2023-10-28 19:54:46 +02:00
line="123"
2023-03-13 10:23:42 +01:00
column="37"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `formatHashtag` of class `Companion` requires synthetic accessor"
errorLine1=" binding.root.text = formatHashtag(result)"
errorLine2=" ~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/compose/ComposeAutoCompleteAdapter.kt"
2023-10-28 19:54:46 +02:00
line="123"
2023-03-13 10:23:42 +01:00
column="37"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `ConversationsFragment` requires synthetic accessor"
2023-10-15 22:52:47 +02:00
errorLine1=" binding.recyclerView.post {"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/conversation/ConversationsFragment.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="154"
2023-10-15 22:52:47 +02:00
column="29"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `ConversationsFragment` requires synthetic accessor"
2023-10-15 22:52:47 +02:00
errorLine1=" binding.recyclerView.scrollBy("
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/conversation/ConversationsFragment.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="156"
2023-10-15 22:52:47 +02:00
column="37"/>
2023-03-13 10:23:42 +01:00
</issue>
2023-03-21 18:56:11 +01:00
<issue
id="SyntheticAccessor"
message="Access to `private` method `getViewModel` of class `EditFilterActivity` requires synthetic accessor"
errorLine1=" viewModel.setDuration("
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/filters/EditFilterActivity.kt"
2023-12-07 18:36:00 +01:00
line="119"
2023-03-21 18:56:11 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getViewModel` of class `EditFilterActivity` requires synthetic accessor"
errorLine1=" viewModel.setDuration("
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/filters/EditFilterActivity.kt"
2023-12-07 18:36:00 +01:00
line="119"
2023-03-21 18:56:11 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getViewModel` of class `EditFilterActivity` requires synthetic accessor"
errorLine1=" viewModel.setDuration(0)"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/filters/EditFilterActivity.kt"
2023-12-07 18:36:00 +01:00
line="129"
2023-03-21 18:56:11 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getViewModel` of class `EditFilterActivity` requires synthetic accessor"
errorLine1=" viewModel.setDuration(0)"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/filters/EditFilterActivity.kt"
2023-12-07 18:36:00 +01:00
line="129"
2023-03-21 18:56:11 +01:00
column="17"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `FollowedTagsActivity` requires synthetic accessor"
2023-09-11 21:19:45 +02:00
errorLine1=" binding.fab.visible(dy == 0)"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/followedtags/FollowedTagsActivity.kt"
2023-10-15 22:52:47 +02:00
line="90"
2023-09-11 21:19:45 +02:00
column="25"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `follow` of class `FollowedTagsActivity` requires synthetic accessor"
errorLine1=" (requireActivity() as FollowedTagsActivity).follow("
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/followedtags/FollowedTagsActivity.kt"
2023-11-05 14:50:23 +01:00
line="194"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `fetchInstances` of class `InstanceListFragment` requires synthetic accessor"
errorLine1=" fetchInstances(bottomId)"
errorLine2=" ~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/instancemute/fragment/InstanceListFragment.kt"
2023-10-07 19:30:11 +02:00
line="58"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getContext` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" context.getString(R.string.action_open_media_n, i + 1),"
2023-03-13 10:23:42 +01:00
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="76"
2023-03-13 10:23:42 +01:00
column="29"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getLinks` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" if (getLinks(status).any()) info.addAction(linksAction)"
errorLine2=" ~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="82"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getHashtags` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" if (getHashtags(status).any()) info.addAction(hashtagsAction)"
errorLine2=" ~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="87"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `interrupt` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" interrupt()"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="107"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `interrupt` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" interrupt()"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="117"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `interrupt` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" interrupt()"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-13 10:23:42 +01:00
line="121"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `interrupt` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" interrupt()"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-13 10:23:42 +01:00
line="125"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `interrupt` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" interrupt()"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-13 10:23:42 +01:00
line="129"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `interrupt` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" interrupt()"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-13 10:23:42 +01:00
line="133"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `forceFocus` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" forceFocus(host)"
errorLine2=" ~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-13 10:23:42 +01:00
line="144"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `interrupt` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" interrupt()"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-13 10:23:42 +01:00
line="148"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `interrupt` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" interrupt()"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-13 10:23:42 +01:00
line="154"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `interrupt` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" interrupt()"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-13 10:23:42 +01:00
line="158"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `interrupt` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" interrupt()"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-13 10:23:42 +01:00
line="162"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getLinks` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" val links = getLinks(status).toList()"
errorLine2=" ~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-13 10:23:42 +01:00
line="175"
column="25"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `forceFocus` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" .let { forceFocus(it.listView) }"
errorLine2=" ~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-13 10:23:42 +01:00
line="187"
column="24"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `forceFocus` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" .let { forceFocus(it.listView) }"
errorLine2=" ~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-21 18:56:11 +01:00
line="206"
2023-03-13 10:23:42 +01:00
column="24"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getHashtags` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" val tags = getHashtags(status).map { it.subSequence(1, it.length) }.toList()"
errorLine2=" ~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-21 18:56:11 +01:00
line="211"
2023-03-13 10:23:42 +01:00
column="24"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `forceFocus` of class `ListStatusAccessibilityDelegate` requires synthetic accessor"
errorLine1=" .let { forceFocus(it.listView) }"
errorLine2=" ~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ListStatusAccessibilityDelegate.kt"
2023-03-21 18:56:11 +01:00
line="224"
2023-03-13 10:23:42 +01:00
column="24"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `onListSelected` of class `ListsActivity` requires synthetic accessor"
errorLine1=" onListSelected(list.id, list.title)"
errorLine2=" ~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/ListsActivity.kt"
2024-01-18 21:44:30 +01:00
line="267"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `onMore` of class `ListsActivity` requires synthetic accessor"
errorLine1=" onMore(getItem(bindingAdapterPosition), v)"
errorLine2=" ~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/ListsActivity.kt"
2024-01-18 21:44:30 +01:00
line="269"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getViewModel` of class `ListsForAccountFragment` requires synthetic accessor"
errorLine1=" viewModel.addAccountToList(item.list.id)"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/account/list/ListsForAccountFragment.kt"
2023-10-07 19:30:11 +02:00
line="174"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getViewModel` of class `ListsForAccountFragment` requires synthetic accessor"
errorLine1=" viewModel.removeAccountFromList(item.list.id)"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/account/list/ListsForAccountFragment.kt"
2023-10-07 19:30:11 +02:00
line="180"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `canonicalizeDomain` of class `Companion` requires synthetic accessor"
errorLine1=" val domain = canonicalizeDomain(binding.domainEditText.text.toString())"
errorLine2=" ~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/login/LoginActivity.kt"
2023-12-07 18:36:00 +01:00
line="161"
2023-03-13 10:23:42 +01:00
column="22"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `LoginWebViewActivity` requires synthetic accessor"
errorLine1=" binding.loginProgress.hide()"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/login/LoginWebViewActivity.kt"
2023-12-07 18:36:00 +01:00
line="144"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `LoginWebViewActivity` requires synthetic accessor"
errorLine1=" binding.loginProgress.hide()"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/login/LoginWebViewActivity.kt"
2023-12-07 18:36:00 +01:00
line="144"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `sendResult` of class `LoginWebViewActivity` requires synthetic accessor"
errorLine1=" sendResult(LoginResult.Err(getString(R.string.error_could_not_load_login_page)))"
errorLine2=" ~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/login/LoginWebViewActivity.kt"
2023-12-07 18:36:00 +01:00
line="153"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `sendResult` of class `LoginWebViewActivity` requires synthetic accessor"
errorLine1=" sendResult(LoginResult.Err(getString(R.string.error_could_not_load_login_page)))"
errorLine2=" ~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/login/LoginWebViewActivity.kt"
2023-12-07 18:36:00 +01:00
line="153"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `sendResult` of class `LoginWebViewActivity` requires synthetic accessor"
errorLine1=" sendResult(LoginResult.Err(error))"
errorLine2=" ~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/login/LoginWebViewActivity.kt"
2023-12-07 18:36:00 +01:00
line="174"
2023-03-13 10:23:42 +01:00
column="25"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `sendResult` of class `LoginWebViewActivity` requires synthetic accessor"
errorLine1=" sendResult(LoginResult.Err(error))"
errorLine2=" ~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/login/LoginWebViewActivity.kt"
2023-12-07 18:36:00 +01:00
line="174"
2023-03-13 10:23:42 +01:00
column="25"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `sendResult` of class `LoginWebViewActivity` requires synthetic accessor"
errorLine1=" sendResult(LoginResult.Ok(code))"
errorLine2=" ~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/login/LoginWebViewActivity.kt"
2023-12-07 18:36:00 +01:00
line="177"
2023-03-13 10:23:42 +01:00
column="25"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `sendResult` of class `LoginWebViewActivity` requires synthetic accessor"
errorLine1=" sendResult(LoginResult.Ok(code))"
errorLine2=" ~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/login/LoginWebViewActivity.kt"
2023-12-07 18:36:00 +01:00
line="177"
2023-03-13 10:23:42 +01:00
column="25"/>
</issue>
<issue
id="SyntheticAccessor"
2023-08-19 12:31:47 +02:00
message="Access to `private` method `forwardToComposeActivity` of class `MainActivity` requires synthetic accessor"
errorLine1=" forwardToComposeActivity(intent)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="252"
2023-03-13 10:23:42 +01:00
column="37"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `changeAccount` of class `MainActivity` requires synthetic accessor"
errorLine1=" changeAccount(requestedId, intent)"
errorLine2=" ~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="256"
2023-03-13 10:23:42 +01:00
column="37"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `MainActivity` requires synthetic accessor"
errorLine1=" binding.mainDrawerLayout.isOpen -> {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="360"
2023-03-13 10:23:42 +01:00
column="25"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `MainActivity` requires synthetic accessor"
errorLine1=" binding.mainDrawerLayout.close()"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="361"
2023-03-13 10:23:42 +01:00
column="29"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `MainActivity` requires synthetic accessor"
errorLine1=" binding.viewPager.currentItem != 0 -> {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="363"
2023-03-13 10:23:42 +01:00
column="25"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `MainActivity` requires synthetic accessor"
errorLine1=" binding.viewPager.currentItem = 0"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="364"
2023-03-13 10:23:42 +01:00
column="29"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `primaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" primaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="646"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="649"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `primaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" primaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="654"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="658"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `primaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" primaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="663"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="666"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `primaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" primaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="671"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="674"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `primaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" primaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="679"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="682"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `primaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" primaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="686"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="689"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `primaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" primaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="694"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="697"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `primaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" primaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="701"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="705"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `secondaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" secondaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="714"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-07 18:36:00 +01:00
line="717"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `secondaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" secondaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="722"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="725"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `secondaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" secondaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="730"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="733"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `secondaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" secondaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="738"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = ::logout"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="741"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `primaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" primaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="748"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="751"
2023-03-13 10:23:42 +01:00
column="25"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `primaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
2023-09-01 19:37:01 +02:00
errorLine1=" primaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="760"
2023-09-01 19:37:01 +02:00
column="17"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
2023-09-01 19:37:01 +02:00
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="763"
2023-09-01 19:37:01 +02:00
column="21"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `secondaryDrawerItem` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" secondaryDrawerItem {"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="776"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `setOnClick` of class `MainActivityKt` requires synthetic accessor"
errorLine1=" onClick = {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="780"
2023-03-13 10:23:42 +01:00
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `MainActivity` requires synthetic accessor"
2023-06-10 19:47:07 +02:00
errorLine1=" binding.mainToolbar.title = tab.contentDescription"
2023-03-13 10:23:42 +01:00
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="905"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `refreshComposeButtonState` of class `MainActivity` requires synthetic accessor"
errorLine1=" refreshComposeButtonState(tabAdapter, tab.position)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="907"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `refreshComposeButtonState` of class `MainActivity` requires synthetic accessor"
errorLine1=" refreshComposeButtonState(tabAdapter, tab.position)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/MainActivity.kt"
2023-12-12 16:53:09 +01:00
line="918"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `onMediaClick` of class `MediaPreviewAdapter` requires synthetic accessor"
errorLine1=" onMediaClick(bindingAdapterPosition, progressImageView)"
errorLine2=" ~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/compose/MediaPreviewAdapter.kt"
2023-10-28 19:54:46 +02:00
line="139"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureToAspect` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" totalHeight += getChildAt(0).measureToAspect(width, aspect)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="52"
column="32"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureToAspect` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" totalHeight += getChildAt(0).measureToAspect(width, aspect1.coerceAtLeast(1.8))"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="61"
column="36"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureToAspect` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" totalHeight += getChildAt(1).measureToAspect(width, aspect2.coerceAtLeast(1.8))"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="63"
column="36"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `rowHeight` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" val height = rowHeight(halfWidth, aspect1, aspect2)"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="67"
column="34"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureExactly` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" getChildAt(0).measureExactly(halfWidth, height)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="69"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureExactly` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" getChildAt(1).measureExactly(halfWidth, height)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="70"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureToAspect` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" totalHeight += getChildAt(0).measureToAspect(width, aspect1.coerceAtLeast(1.8))"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="82"
column="36"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `rowHeight` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" val bottomHeight = rowHeight(halfWidth, aspect2, aspect3)"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="84"
column="40"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureExactly` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" getChildAt(1).measureExactly(halfWidth, bottomHeight)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="86"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureExactly` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" getChildAt(2).measureExactly(halfWidth, bottomHeight)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="87"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureToAspect` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" val colHeight = getChildAt(0).measureToAspect(halfWidth, aspect1)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="93"
column="37"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureExactly` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" getChildAt(1).measureExactly(halfWidth, halfHeight)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="96"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureExactly` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" getChildAt(2).measureExactly(halfWidth, halfHeight)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="97"
column="21"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `rowHeight` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" val topHeight = rowHeight(halfWidth, aspect1, aspect2)"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="105"
column="33"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureExactly` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" getChildAt(0).measureExactly(halfWidth, topHeight)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="107"
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureExactly` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" getChildAt(1).measureExactly(halfWidth, topHeight)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="108"
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `rowHeight` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" val bottomHeight = rowHeight(halfWidth, aspect3, aspect4)"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="110"
column="36"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureExactly` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" getChildAt(2).measureExactly(halfWidth, bottomHeight)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="112"
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `measureExactly` of class `MediaPreviewLayoutKt` requires synthetic accessor"
errorLine1=" getChildAt(3).measureExactly(halfWidth, bottomHeight)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/view/MediaPreviewLayout.kt"
2023-03-13 10:23:42 +01:00
line="113"
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
2023-03-21 18:56:11 +01:00
message="Access to `private` method `getViewModel` of class `NotificationsFragment` requires synthetic accessor"
2023-09-11 21:19:45 +02:00
errorLine1=" actionButton?.visible(viewModel.uiState.value.showFabWhileScrolling || dy == 0)"
errorLine2=" ~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/notifications/NotificationsFragment.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="161"
2023-09-11 21:19:45 +02:00
column="43"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `accountIsInMentions` of class `Companion` requires synthetic accessor"
errorLine1=" val mutable = statusIsByCurrentUser || accountIsInMentions(activeAccount, status.mentions)"
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/fragment/SFragment.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="235"
2023-03-13 10:23:42 +01:00
column="48"/>
</issue>
2023-10-26 16:22:18 +02:00
<issue
id="SyntheticAccessor"
message="Access to `private` method `getContentWarningDescription` of class `Companion` requires synthetic accessor"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
errorLine1=" getContentWarningDescription(context, viewData),"
2023-10-26 16:22:18 +02:00
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/java/app/pachli/adapter/StatusBaseViewHolder.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="808"
2023-10-26 16:22:18 +02:00
column="13"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getReblogDescription` of class `Companion` requires synthetic accessor"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
errorLine1=" getReblogDescription(context, viewData),"
2023-10-26 16:22:18 +02:00
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/java/app/pachli/adapter/StatusBaseViewHolder.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="812"
2023-10-26 16:22:18 +02:00
column="13"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getMediaDescription` of class `Companion` requires synthetic accessor"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
errorLine1=" getMediaDescription(context, viewData),"
2023-10-26 16:22:18 +02:00
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/java/app/pachli/adapter/StatusBaseViewHolder.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="817"
2023-10-26 16:22:18 +02:00
column="13"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="SyntheticAccessor"
message="Access to `private` method `viewdata` of class `StatusViewHolder` requires synthetic accessor"
errorLine1=" viewdata()?.let { viewdata ->"
errorLine2=" ~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/report/adapter/StatusViewHolder.kt"
2023-10-28 19:54:46 +02:00
line="60"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `viewdata` of class `StatusViewHolder` requires synthetic accessor"
errorLine1=" viewdata()?.id?.let { id ->"
errorLine2=" ~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/report/adapter/StatusViewHolder.kt"
2023-10-28 19:54:46 +02:00
line="66"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `toggleFab` of class `TabPreferenceActivity` requires synthetic accessor"
errorLine1=" toggleFab(false)"
errorLine2=" ~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/TabPreferenceActivity.kt"
refactor: Start creating core modules (#286)
The existing code base is a single monolithic module. This is relatively
simple to configure, but many of the tasks to compile the module and
produce the final app have to run in series.
This is unnecessarily slow.
This change starts to split the code in to multiple modules, which are:
- :core:account - AccountManager, to break a dependency cycle
- :core:common - low level types or utilities used in many other modules
- :core:database - database types, DAOs, and DI infrastructure
- :core:network - network types, API definitions, and DI infrastructure
- :core:preferences - shared preferences definitions and DI
infrastructure
- :core:testing - fakes and rules used across different modules
Benchmarking with gradle-profiler shows a ~ 17% reduction in incremental
build times after an ABI change. That will improve further as more code
is moved to modules.
The rough mechanics of the changes are:
- Create the modules, and move existing files in to them. This causes a
lot of churn in import arguments.
- Convert build.gradle files to build.gradle.kts
- Separate out the data required to display a tab (`TabViewData`) from
the data required to configure a tab (`TabData`) to avoid circular
dependencies.
- Abstract the repeated build logic shared between the modules in to
a set of plugins under `build-logic/`, to simplify configuration of
the application and library builds.
- Be explicit that some nullable types are non-null at time of use.
Nullable properties in types imported from modules generally can't be
smart cast to non-null. There's a detailed discussion of why this
restriction exists at
https://discuss.kotlinlang.org/t/what-is-the-reason-behind-smart-cast-being-impossible-to-perform-when-referenced-class-is-in-another-module/2201.
The changes highlight design problems with the current code, including:
- The main application code is too tightly coupled to the network types
- Too many values are declared unnecessarily nullable
- Dependency cycles between code that make modularisation difficult
Future changes will add more modules.
See #291.
2023-12-04 16:58:36 +01:00
line="96"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `saveTabs` of class `TabPreferenceActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" saveTabs()"
errorLine2=" ~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/TabPreferenceActivity.kt"
refactor: Start creating core modules (#286)
The existing code base is a single monolithic module. This is relatively
simple to configure, but many of the tasks to compile the module and
produce the final app have to run in series.
This is unnecessarily slow.
This change starts to split the code in to multiple modules, which are:
- :core:account - AccountManager, to break a dependency cycle
- :core:common - low level types or utilities used in many other modules
- :core:database - database types, DAOs, and DI infrastructure
- :core:network - network types, API definitions, and DI infrastructure
- :core:preferences - shared preferences definitions and DI
infrastructure
- :core:testing - fakes and rules used across different modules
Benchmarking with gradle-profiler shows a ~ 17% reduction in incremental
build times after an ABI change. That will improve further as more code
is moved to modules.
The rough mechanics of the changes are:
- Create the modules, and move existing files in to them. This causes a
lot of churn in import arguments.
- Convert build.gradle files to build.gradle.kts
- Separate out the data required to display a tab (`TabViewData`) from
the data required to configure a tab (`TabData`) to avoid circular
dependencies.
- Abstract the repeated build logic shared between the modules in to
a set of plugins under `build-logic/`, to simplify configuration of
the application and library builds.
- Be explicit that some nullable types are non-null at time of use.
Nullable properties in types imported from modules generally can't be
smart cast to non-null. There's a detailed discussion of why this
restriction exists at
https://discuss.kotlinlang.org/t/what-is-the-reason-behind-smart-cast-being-impossible-to-perform-when-referenced-class-is-in-another-module/2201.
The changes highlight design problems with the current code, including:
- The main application code is too tightly coupled to the network types
- Too many values are declared unnecessarily nullable
- Dependency cycles between code that make modularisation difficult
Future changes will add more modules.
See #291.
2023-12-04 16:58:36 +01:00
line="145"
2023-09-02 23:16:29 +02:00
column="21"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getSelectedItemElevation` of class `TabPreferenceActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" viewHolder?.itemView?.elevation = selectedItemElevation"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/TabPreferenceActivity.kt"
refactor: Start creating core modules (#286)
The existing code base is a single monolithic module. This is relatively
simple to configure, but many of the tasks to compile the module and
produce the final app have to run in series.
This is unnecessarily slow.
This change starts to split the code in to multiple modules, which are:
- :core:account - AccountManager, to break a dependency cycle
- :core:common - low level types or utilities used in many other modules
- :core:database - database types, DAOs, and DI infrastructure
- :core:network - network types, API definitions, and DI infrastructure
- :core:preferences - shared preferences definitions and DI
infrastructure
- :core:testing - fakes and rules used across different modules
Benchmarking with gradle-profiler shows a ~ 17% reduction in incremental
build times after an ABI change. That will improve further as more code
is moved to modules.
The rough mechanics of the changes are:
- Create the modules, and move existing files in to them. This causes a
lot of churn in import arguments.
- Convert build.gradle files to build.gradle.kts
- Separate out the data required to display a tab (`TabViewData`) from
the data required to configure a tab (`TabData`) to avoid circular
dependencies.
- Abstract the repeated build logic shared between the modules in to
a set of plugins under `build-logic/`, to simplify configuration of
the application and library builds.
- Be explicit that some nullable types are non-null at time of use.
Nullable properties in types imported from modules generally can't be
smart cast to non-null. There's a detailed discussion of why this
restriction exists at
https://discuss.kotlinlang.org/t/what-is-the-reason-behind-smart-cast-being-impossible-to-perform-when-referenced-class-is-in-another-module/2201.
The changes highlight design problems with the current code, including:
- The main application code is too tightly coupled to the network types
- Too many values are declared unnecessarily nullable
- Dependency cycles between code that make modularisation difficult
Future changes will add more modules.
See #291.
2023-12-04 16:58:36 +01:00
line="155"
2023-09-02 23:16:29 +02:00
column="59"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getSelectedItemElevation` of class `TabPreferenceActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" viewHolder?.itemView?.elevation = selectedItemElevation"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/TabPreferenceActivity.kt"
refactor: Start creating core modules (#286)
The existing code base is a single monolithic module. This is relatively
simple to configure, but many of the tasks to compile the module and
produce the final app have to run in series.
This is unnecessarily slow.
This change starts to split the code in to multiple modules, which are:
- :core:account - AccountManager, to break a dependency cycle
- :core:common - low level types or utilities used in many other modules
- :core:database - database types, DAOs, and DI infrastructure
- :core:network - network types, API definitions, and DI infrastructure
- :core:preferences - shared preferences definitions and DI
infrastructure
- :core:testing - fakes and rules used across different modules
Benchmarking with gradle-profiler shows a ~ 17% reduction in incremental
build times after an ABI change. That will improve further as more code
is moved to modules.
The rough mechanics of the changes are:
- Create the modules, and move existing files in to them. This causes a
lot of churn in import arguments.
- Convert build.gradle files to build.gradle.kts
- Separate out the data required to display a tab (`TabViewData`) from
the data required to configure a tab (`TabData`) to avoid circular
dependencies.
- Abstract the repeated build logic shared between the modules in to
a set of plugins under `build-logic/`, to simplify configuration of
the application and library builds.
- Be explicit that some nullable types are non-null at time of use.
Nullable properties in types imported from modules generally can't be
smart cast to non-null. There's a detailed discussion of why this
restriction exists at
https://discuss.kotlinlang.org/t/what-is-the-reason-behind-smart-cast-being-impossible-to-perform-when-referenced-class-is-in-another-module/2201.
The changes highlight design problems with the current code, including:
- The main application code is too tightly coupled to the network types
- Too many values are declared unnecessarily nullable
- Dependency cycles between code that make modularisation difficult
Future changes will add more modules.
See #291.
2023-12-04 16:58:36 +01:00
line="155"
2023-09-02 23:16:29 +02:00
column="59"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
2023-09-02 17:47:43 +02:00
message="Access to `private` method `getViewModel` of class `TimelineFragment` requires synthetic accessor"
2023-09-11 21:19:45 +02:00
errorLine1=" actionButton?.visible(viewModel.uiState.value.showFabWhileScrolling || dy == 0)"
errorLine2=" ~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/components/timeline/TimelineFragment.kt"
fix: Ensure actions happen against the correct status (#373)
Previously when the user interacted with a status the operation (reblog,
favourite, etc) travels through multiple layers of code, carrying with
it the position of the item in the list that the user operated on.
At some point the status is retrieved from the list using its position
so that the correct status ID can be used in the network operation.
If this happens while the list is also refreshing there's a possible
race condition, and the original status' position may have changed in
the list. Looking up the status by position to determine which status to
perform the action on may cause the action to happen on the wrong
status.
Fix this by passing the status' viewdata to any actions instead of its
position. This includes all the information necessary to make the API
call, so there is no chance of a race.
This is quite an involved change because there are three types of
viewdata:
- `StatusViewData`, used for regular timelines
- `NotificationViewData`, used for notifications, may wrap a status that
can be operated on
- `ConversationViewData`, used for conversations, does wrap a status
The previous code treated them all differently, which is probably why it
operated by position instead of type.
The high level fix is to:
1. Create an interface, `IStatusViewData`, that contains the data
exposed by any viewdata that contains a status.
2. Implement the interface in `StatusViewData`, `NotificationViewData`,
and `ConversationViewData`.
3. Change the code that operates on viewdata (`SFragment`,
`StatusActionListener`, etc) to be generic over anything that implements
`IStatusViewData`.
4. Change the code that handles actions to pass the viewdata instead of
the position.
Fixes #370
2024-01-26 12:15:27 +01:00
line="196"
2023-09-11 21:19:45 +02:00
column="47"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `ViewImageFragment` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" binding.captionSheet.visible(isDescriptionVisible)"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/fragment/ViewImageFragment.kt"
2023-10-28 19:54:46 +02:00
line="218"
2023-09-02 23:16:29 +02:00
column="25"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `ViewImageFragment` requires synthetic accessor"
2023-08-05 15:39:07 +02:00
errorLine1=" if (!isCacheRequest) binding.progressBar.hide()"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/fragment/ViewImageFragment.kt"
2023-10-28 19:54:46 +02:00
line="306"
2023-08-05 15:39:07 +02:00
column="34"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `ViewImageFragment` requires synthetic accessor"
2023-08-05 15:39:07 +02:00
errorLine1=" binding.progressBar.hide() // Always hide the progress bar on success"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/fragment/ViewImageFragment.kt"
2023-10-28 19:54:46 +02:00
line="319"
2023-08-05 15:39:07 +02:00
column="13"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `ViewImageFragment` requires synthetic accessor"
errorLine1=" binding.photoView.post {"
errorLine2=" ~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/fragment/ViewImageFragment.kt"
2023-10-28 19:54:46 +02:00
line="326"
2023-03-13 10:23:42 +01:00
column="17"/>
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `ViewMediaActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" binding.toolbar.title = getPageTitle(position)"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/ViewMediaActivity.kt"
2023-12-07 18:36:00 +01:00
line="127"
2023-09-02 23:16:29 +02:00
column="21"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getPageTitle` of class `ViewMediaActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" binding.toolbar.title = getPageTitle(position)"
errorLine2=" ~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/ViewMediaActivity.kt"
2023-12-07 18:36:00 +01:00
line="127"
2023-09-02 23:16:29 +02:00
column="45"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getPageTitle` of class `ViewMediaActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" binding.toolbar.title = getPageTitle(position)"
errorLine2=" ~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/ViewMediaActivity.kt"
2023-12-07 18:36:00 +01:00
line="127"
2023-09-02 23:16:29 +02:00
column="45"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `ViewMediaActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" adapter.onTransitionEnd(binding.viewPager.currentItem)"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/ViewMediaActivity.kt"
2023-12-07 18:36:00 +01:00
line="157"
2023-09-02 23:16:29 +02:00
column="45"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
message="Access to `private` method `getBinding` of class `ViewMediaActivity` requires synthetic accessor"
2023-09-02 23:16:29 +02:00
errorLine1=" binding.toolbar.visibility = visibility"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/ViewMediaActivity.kt"
2023-12-07 18:36:00 +01:00
line="202"
2023-09-02 23:16:29 +02:00
column="25"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
2023-08-19 12:31:47 +02:00
message="Access to `private` method `getBinding` of class `ViewVideoFragment` requires synthetic accessor"
errorLine1=" val contentFrame = binding.videoView.findViewById< AspectRatioFrameLayout>(androidx.media3.ui.R.id.exo_content_frame)"
errorLine2=" ~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/fragment/ViewVideoFragment.kt"
2023-10-28 19:54:46 +02:00
line="153"
2023-08-19 12:31:47 +02:00
column="32"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SyntheticAccessor"
2023-08-19 12:31:47 +02:00
message="Access to `private` method `hideToolbarAfterDelay` of class `ViewVideoFragment` requires synthetic accessor"
2023-10-26 16:22:18 +02:00
errorLine1=" hideToolbarAfterDelay()"
2023-08-19 12:31:47 +02:00
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/fragment/ViewVideoFragment.kt"
2023-10-28 19:54:46 +02:00
line="233"
2023-08-19 12:31:47 +02:00
column="21"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
2023-04-24 09:20:03 +02:00
id="TypographyDashes"
message="Replace " --" with an " em dash" character (—, & #8212;) ?"
errorLine1=" < string name=" poll_info_format" >" & lt;!-- 15 votes • 1 hour left --& gt; %1$s • %2$s" < !-- 15 votes • 1 hour left -->"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-04-24 09:20:03 +02:00
file="src/main/res/values-bg/strings.xml"
2023-09-01 19:37:01 +02:00
line="53"
2023-04-24 09:20:03 +02:00
column="37"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
2023-04-24 09:20:03 +02:00
id="TypographyDashes"
message="Replace " -" with an " en dash" character (– , & #8211;) ?"
errorLine1=" < string name=" caption_blobmoji" >Os emojis Blob coñecidos de Android 4.4-7.1< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-04-24 09:20:03 +02:00
file="src/main/res/values-gl/strings.xml"
2023-09-01 20:33:23 +02:00
line="225"
2023-04-24 09:20:03 +02:00
column="37"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
2023-04-24 09:20:03 +02:00
id="TypographyDashes"
message="Replace " -" with an " en dash" character (– , & #8211;) ?"
2023-08-19 12:31:47 +02:00
errorLine1=" < string name=" caption_blobmoji" >Blob emotikoni so znani od Android 4.4-7.1< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-08-19 12:31:47 +02:00
file="src/main/res/values-sl/strings.xml"
2023-09-02 17:47:43 +02:00
line="284"
2023-04-24 09:20:03 +02:00
column="37"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
2023-04-24 09:20:03 +02:00
id="TypographyDashes"
message="Replace " -" with an " en dash" character (– , & #8211;) ?"
2023-08-19 12:31:47 +02:00
errorLine1=" < string name=" caption_blobmoji" >Android 4.4-7.1で知られる、Blob絵文字です< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
2023-08-19 12:31:47 +02:00
file="src/main/res/values-ja/strings.xml"
2023-09-02 17:47:43 +02:00
line="285"
2023-04-24 09:20:03 +02:00
column="37"/>
2023-03-13 10:23:42 +01:00
</issue>
2023-03-21 18:56:11 +01:00
<issue
2023-04-24 09:20:03 +02:00
id="TypographyDashes"
message="Replace " -" with an " en dash" character (– , & #8211;) ?"
errorLine1=" < string name=" caption_blobmoji" >Na emojis Blob atá ar eolas ó Android 4.4-7.1< /string>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
2023-03-21 18:56:11 +01:00
<location
2023-04-24 09:20:03 +02:00
file="src/main/res/values-ga/strings.xml"
2023-09-02 17:47:43 +02:00
line="339"
2023-04-24 09:20:03 +02:00
column="37"/>
2023-03-21 18:56:11 +01:00
</issue>
<issue
2023-04-24 09:20:03 +02:00
id="TypographyEllipsis"
message="Replace " ..." with ellipsis character (…, & #8230;) ?"
errorLine1=" < string name=" hint_search" >검색...< /string>"
errorLine2=" ~~~~~">
2023-03-21 18:56:11 +01:00
<location
2023-04-24 09:20:03 +02:00
file="src/main/res/values-ko/strings.xml"
line="140"
column="32"/>
2023-03-21 18:56:11 +01:00
</issue>
<issue
2023-04-24 09:20:03 +02:00
id="TypographyEllipsis"
message="Replace " ..." with ellipsis character (…, & #8230;) ?"
errorLine1=" < string name=" login_connection" >연결 중...< /string>"
errorLine2=" ~~~~~~~">
2023-03-21 18:56:11 +01:00
<location
2023-04-24 09:20:03 +02:00
file="src/main/res/values-ko/strings.xml"
line="146"
column="37"/>
2023-03-21 18:56:11 +01:00
</issue>
<issue
2023-04-24 09:20:03 +02:00
id="TypographyEllipsis"
message="Replace " ..." with ellipsis character (…, & #8230;) ?"
errorLine1=" < string name=" dialog_message_uploading_media" >업로드 중...< /string>"
errorLine2=" ~~~~~~~~">
2023-03-21 18:56:11 +01:00
<location
2023-04-24 09:20:03 +02:00
file="src/main/res/values-ko/strings.xml"
line="155"
column="51"/>
2023-03-21 18:56:11 +01:00
</issue>
<issue
2023-04-24 09:20:03 +02:00
id="TypographyEllipsis"
message="Replace " ..." with ellipsis character (…, & #8230;) ?"
errorLine1=" < string name=" compose_preview_image_description" >이미지 %s를...< /string>"
errorLine2=" ~~~~~~~~~~">
2023-03-21 18:56:11 +01:00
<location
2023-04-24 09:20:03 +02:00
file="src/main/res/values-ko/strings.xml"
2023-09-02 17:47:43 +02:00
line="365"
2023-04-24 09:20:03 +02:00
column="54"/>
2023-03-21 18:56:11 +01:00
</issue>
2023-06-11 12:58:55 +02:00
<issue
id="ConvertToWebp"
message="One or more images in this project can be converted to the WebP format which typically results in smaller file sizes, even for lossless conversion">
<location
2023-09-05 13:28:56 +02:00
file="src/main/res/drawable-xxhdpi/ic_notify.png"/>
2023-06-11 12:58:55 +02:00
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/activity_account.xml"
2023-09-20 16:24:49 +02:00
line="117"
2023-03-13 10:23:42 +01:00
column="22"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/activity_account.xml"
2023-10-26 16:22:18 +02:00
line="129"
2023-03-13 10:23:42 +01:00
column="22"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/activity_account.xml"
2023-12-12 16:53:09 +01:00
line="243"
2023-03-13 10:23:42 +01:00
column="22"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/activity_account.xml"
2023-12-12 16:53:09 +01:00
line="279"
2023-03-13 10:23:42 +01:00
column="26"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/activity_account.xml"
2023-12-12 16:53:09 +01:00
line="306"
2023-03-13 10:23:42 +01:00
column="26"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/activity_account.xml"
2023-12-12 16:53:09 +01:00
line="321"
2023-03-13 10:23:42 +01:00
column="26"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/activity_account.xml"
2023-12-12 16:53:09 +01:00
line="348"
2023-03-13 10:23:42 +01:00
column="26"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/activity_account.xml"
2023-12-12 16:53:09 +01:00
line="379"
2023-03-13 10:23:42 +01:00
column="26"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/activity_account.xml"
2023-12-12 16:53:09 +01:00
line="409"
2023-03-13 10:23:42 +01:00
column="26"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/activity_compose.xml"
2023-09-20 18:41:59 +02:00
line="364"
2023-03-13 10:23:42 +01:00
column="10"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/activity_login_webview.xml"
line="37"
column="10"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/card_license.xml"
line="15"
column="10"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/card_license.xml"
line="22"
column="10"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/card_license.xml"
line="28"
column="10"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView android:id=" @+id/warning" "
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/dialog_mute_account.xml"
line="12"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout-land/fragment_report_done.xml"
line="35"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/fragment_report_done.xml"
line="35"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/fragment_view_video.xml"
line="11"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_account.xml"
line="37"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_account.xml"
2023-09-05 13:28:56 +02:00
line="53"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_account_field.xml"
line="10"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_add_or_remove_from_list.xml"
line="12"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_autocomplete_account.xml"
line="33"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_autocomplete_account.xml"
line="50"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_autocomplete_emoji.xml"
line="19"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1="< TextView xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_autocomplete_hashtag.xml"
line="2"
column="2"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_blocked_user.xml"
line="30"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_blocked_user.xml"
line="46"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_conversation.xml"
line="14"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_conversation.xml"
2023-09-05 13:28:56 +02:00
line="81"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_conversation.xml"
2023-09-05 13:28:56 +02:00
line="99"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_conversation.xml"
2023-09-05 13:28:56 +02:00
line="111"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_draft.xml"
line="31"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_draft.xml"
line="45"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_emoji_pref.xml"
line="26"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_emoji_pref.xml"
line="41"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_follow.xml"
line="12"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_follow.xml"
2023-09-05 13:28:56 +02:00
line="41"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_follow.xml"
2023-09-05 13:28:56 +02:00
line="57"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_follow_request.xml"
2023-06-10 19:47:07 +02:00
line="11"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_follow_request.xml"
2023-06-10 19:47:07 +02:00
line="49"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_follow_request.xml"
2023-06-10 19:47:07 +02:00
line="65"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_followed_hashtag.xml"
2023-07-06 19:37:51 +02:00
line="14"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_list.xml"
2023-07-06 19:37:51 +02:00
line="14"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
2023-09-02 17:47:43 +02:00
file="src/main/res/layout/item_load_state_footer_view.xml"
line="30"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
2023-09-02 17:47:43 +02:00
file="src/main/res/layout/item_muted_domain.xml"
line="27"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_muted_user.xml"
2023-09-02 17:47:43 +02:00
line="31"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
2023-09-02 17:47:43 +02:00
file="src/main/res/layout/item_muted_user.xml"
line="48"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
2023-09-02 17:47:43 +02:00
file="src/main/res/layout/item_network_state.xml"
line="8"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
2023-03-21 18:56:11 +01:00
file="src/main/res/layout/item_poll.xml"
line="8"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
2023-03-21 18:56:11 +01:00
file="src/main/res/layout/item_removable.xml"
line="9"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
2023-03-21 18:56:11 +01:00
file="src/main/res/layout/item_removable.xml"
2023-09-05 13:28:56 +02:00
line="23"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
2023-03-21 18:56:11 +01:00
file="src/main/res/layout/item_report_notification.xml"
line="12"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_report_notification.xml"
line="50"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_report_notification.xml"
line="65"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_report_status.xml"
2023-03-13 10:23:42 +01:00
line="52"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_report_status.xml"
2023-08-19 12:31:47 +02:00
line="241"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_report_status.xml"
2023-08-19 12:31:47 +02:00
line="261"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_report_status.xml"
2023-08-19 12:31:47 +02:00
line="281"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_report_status.xml"
2023-08-19 12:31:47 +02:00
line="301"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_report_status.xml"
2023-08-19 12:31:47 +02:00
line="321"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_report_status.xml"
2023-08-19 12:31:47 +02:00
line="340"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_scheduled_status.xml"
line="8"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status.xml"
line="13"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status.xml"
2023-09-05 13:28:56 +02:00
line="58"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status.xml"
2023-09-05 13:28:56 +02:00
line="77"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status.xml"
2023-09-05 13:28:56 +02:00
line="90"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status.xml"
2023-11-12 19:51:46 +01:00
line="247"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
2023-03-21 18:56:11 +01:00
file="src/main/res/layout/item_status.xml"
2023-11-12 19:51:46 +01:00
line="275"
2023-03-21 18:56:11 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status.xml"
2023-11-12 19:51:46 +01:00
line="303"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status_detailed.xml"
2023-03-21 18:56:11 +01:00
line="38"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status_detailed.xml"
2023-03-21 18:56:11 +01:00
line="61"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status_detailed.xml"
2023-11-12 19:51:46 +01:00
line="194"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status_detailed.xml"
2023-11-12 19:51:46 +01:00
line="223"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status_detailed.xml"
2023-11-12 19:51:46 +01:00
line="237"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status_edit.xml"
2023-06-29 18:37:27 +02:00
line="13"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status_edit.xml"
2023-06-29 18:37:27 +02:00
line="55"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_status_notification.xml"
2023-06-10 19:47:07 +02:00
line="12"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
2023-04-24 09:20:03 +02:00
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
file="src/main/res/layout/item_status_notification.xml"
2023-09-20 16:23:21 +02:00
line="50"
2023-04-24 09:20:03 +02:00
column="6"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
2023-04-24 09:20:03 +02:00
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
file="src/main/res/layout/item_status_notification.xml"
2023-09-20 16:23:21 +02:00
line="71"
2023-04-24 09:20:03 +02:00
column="6"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
2023-04-24 09:20:03 +02:00
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
2023-03-13 10:23:42 +01:00
<location
file="src/main/res/layout/item_status_notification.xml"
2023-09-20 16:23:21 +02:00
line="85"
2023-04-24 09:20:03 +02:00
column="6"/>
2023-03-13 10:23:42 +01:00
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_tab_preference.xml"
2023-07-06 19:37:51 +02:00
line="26"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1="< TextView xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_tab_preference_small.xml"
line="2"
column="2"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout-land/item_trending_cell.xml"
2024-01-25 00:50:50 +01:00
line="41"
2023-03-13 10:23:42 +01:00
column="10"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_trending_cell.xml"
2024-01-25 00:50:50 +01:00
line="41"
2023-03-13 10:23:42 +01:00
column="10"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout-land/item_trending_cell.xml"
2024-01-25 00:50:50 +01:00
line="56"
2023-03-13 10:23:42 +01:00
column="10"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_trending_cell.xml"
2024-01-25 00:50:50 +01:00
line="56"
2023-03-13 10:23:42 +01:00
column="10"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout-land/item_trending_cell.xml"
2024-01-25 00:50:50 +01:00
line="87"
2023-03-13 10:23:42 +01:00
column="10"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_trending_cell.xml"
2024-01-25 00:50:50 +01:00
line="88"
2023-03-13 10:23:42 +01:00
column="10"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1="< TextView xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/item_trending_date.xml"
line="2"
column="2"/>
</issue>
2023-03-21 18:56:11 +01:00
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1="< TextView xmlns:android=" http://schemas.android.com/apk/res/android" "
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/simple_list_item_1.xml"
line="19"
column="2"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/view_compose_schedule.xml"
line="16"
column="6"/>
</issue>
<issue
id="SelectableText"
message="Consider making the text value selectable by specifying `android:textIsSelectable=" true" `"
errorLine1=" < TextView"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/view_poll_preview.xml"
line="30"
column="6"/>
</issue>
<issue
id="BackButton"
message="Back buttons are not standard on Android; see design guide' s navigation section"
errorLine1=" < Button"
errorLine2=" ~~~~~~">
<location
file="src/main/res/layout/fragment_report_note.xml"
line="108"
column="6"/>
</issue>
<issue
id="TextFields"
message="This text field does not specify an `inputType`"
errorLine1=" < EditText"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/dialog_filter.xml"
line="9"
column="6"/>
</issue>
<issue
id="NegativeMargin"
message="Margin values should not be negative"
errorLine1=" android:layout_marginTop=" -4dp" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_report_notification.xml"
line="54"
column="9"/>
</issue>
<issue
id="NegativeMargin"
message="Margin values should not be negative"
errorLine1=" android:layout_marginStart=" -14dp" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_status.xml"
2023-11-12 19:51:46 +01:00
line="237"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="Autofill"
message="Missing `autofillHints` attribute"
errorLine1=" < EditText"
errorLine2=" ~~~~~~~~">
<location
file="src/main/res/layout/dialog_filter.xml"
line="9"
column="6"/>
</issue>
2023-07-30 21:45:43 +02:00
<issue
id="ReportShortcutUsage"
message="Calling this method indicates use of dynamic shortcuts, but there are no calls to methods that track shortcut usage, such as `pushDynamicShortcut` or `reportShortcutUsed`. Calling these methods is recommended, as they track shortcut usage and allow launchers to adjust which shortcuts appear based on activation history. Please see https://developer.android.com/develop/ui/views/launch/shortcuts/managing-shortcuts#track-usage"
errorLine1=" ShortcutManagerCompat.addDynamicShortcuts(context, listOf(shortcutInfo))"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/util/ShareShortcutHelper.kt"
2023-11-06 20:16:34 +01:00
line="85"
2023-07-30 21:45:43 +02:00
column="9"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="ClickableViewAccessibility"
message="Custom view ``ImageView`` has `setOnTouchListener` called on it but does not override `performClick`"
errorLine1=" binding.imageView.setOnTouchListener { _, event ->"
errorLine2=" ^">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/adapter/TabAdapter.kt"
refactor: Start creating core modules (#286)
The existing code base is a single monolithic module. This is relatively
simple to configure, but many of the tasks to compile the module and
produce the final app have to run in series.
This is unnecessarily slow.
This change starts to split the code in to multiple modules, which are:
- :core:account - AccountManager, to break a dependency cycle
- :core:common - low level types or utilities used in many other modules
- :core:database - database types, DAOs, and DI infrastructure
- :core:network - network types, API definitions, and DI infrastructure
- :core:preferences - shared preferences definitions and DI
infrastructure
- :core:testing - fakes and rules used across different modules
Benchmarking with gradle-profiler shows a ~ 17% reduction in incremental
build times after an ABI change. That will improve further as more code
is moved to modules.
The rough mechanics of the changes are:
- Create the modules, and move existing files in to them. This causes a
lot of churn in import arguments.
- Convert build.gradle files to build.gradle.kts
- Separate out the data required to display a tab (`TabViewData`) from
the data required to configure a tab (`TabData`) to avoid circular
dependencies.
- Abstract the repeated build logic shared between the modules in to
a set of plugins under `build-logic/`, to simplify configuration of
the application and library builds.
- Be explicit that some nullable types are non-null at time of use.
Nullable properties in types imported from modules generally can't be
smart cast to non-null. There's a detailed discussion of why this
restriction exists at
https://discuss.kotlinlang.org/t/what-is-the-reason-behind-smart-cast-being-impossible-to-perform-when-referenced-class-is-in-another-module/2201.
The changes highlight design problems with the current code, including:
- The main application code is too tightly coupled to the network types
- Too many values are declared unnecessarily nullable
- Dependency cycles between code that make modularisation difficult
Future changes will add more modules.
See #291.
2023-12-04 16:58:36 +01:00
line="91"
2023-03-13 10:23:42 +01:00
column="13"/>
</issue>
<issue
id="ClickableViewAccessibility"
message="`onTouch` lambda should call `View#performClick` when a click is detected"
errorLine1=" binding.imageView.setOnTouchListener { _, event ->"
errorLine2=" ^">
<location
2023-09-05 13:28:56 +02:00
file="src/main/java/app/pachli/adapter/TabAdapter.kt"
refactor: Start creating core modules (#286)
The existing code base is a single monolithic module. This is relatively
simple to configure, but many of the tasks to compile the module and
produce the final app have to run in series.
This is unnecessarily slow.
This change starts to split the code in to multiple modules, which are:
- :core:account - AccountManager, to break a dependency cycle
- :core:common - low level types or utilities used in many other modules
- :core:database - database types, DAOs, and DI infrastructure
- :core:network - network types, API definitions, and DI infrastructure
- :core:preferences - shared preferences definitions and DI
infrastructure
- :core:testing - fakes and rules used across different modules
Benchmarking with gradle-profiler shows a ~ 17% reduction in incremental
build times after an ABI change. That will improve further as more code
is moved to modules.
The rough mechanics of the changes are:
- Create the modules, and move existing files in to them. This causes a
lot of churn in import arguments.
- Convert build.gradle files to build.gradle.kts
- Separate out the data required to display a tab (`TabViewData`) from
the data required to configure a tab (`TabData`) to avoid circular
dependencies.
- Abstract the repeated build logic shared between the modules in to
a set of plugins under `build-logic/`, to simplify configuration of
the application and library builds.
- Be explicit that some nullable types are non-null at time of use.
Nullable properties in types imported from modules generally can't be
smart cast to non-null. There's a detailed discussion of why this
restriction exists at
https://discuss.kotlinlang.org/t/what-is-the-reason-behind-smart-cast-being-impossible-to-perform-when-referenced-class-is-in-another-module/2201.
The changes highlight design problems with the current code, including:
- The main application code is too tightly coupled to the network types
- Too many values are declared unnecessarily nullable
- Dependency cycles between code that make modularisation difficult
Future changes will add more modules.
See #291.
2023-12-04 16:58:36 +01:00
line="91"
2023-03-13 10:23:42 +01:00
column="50"/>
</issue>
<issue
id="ContentDescription"
message="Missing `contentDescription` attribute on image"
errorLine1=" < ImageView"
errorLine2=" ~~~~~~~~~">
<location
file="src/main/res/layout/item_tab_preference.xml"
2023-07-06 19:37:51 +02:00
line="14"
2023-03-13 10:23:42 +01:00
column="6"/>
</issue>
<issue
id="KeyboardInaccessibleWidget"
message="' clickable' attribute found, please also add ' focusable' "
errorLine1=" android:clickable=" true" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/material_drawer_header.xml"
line="8"
column="5"/>
</issue>
2023-03-21 18:56:11 +01:00
<issue
id="HardcodedText"
message="Hardcoded string " Filter: MyFilter" , should use `@string` resource"
errorLine1=" android:text=" Filter: MyFilter" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_status_filtered.xml"
line="18"
column="9"/>
</issue>
2023-03-13 10:23:42 +01:00
<issue
id="RtlSymmetry"
message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
errorLine1=" android:paddingStart=" 8dp" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/activity_edit_profile.xml"
line="118"
column="21"/>
</issue>
<issue
id="RtlSymmetry"
message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
errorLine1=" android:paddingStart=" 40dp" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/activity_edit_profile.xml"
line="129"
column="21"/>
</issue>
<issue
id="RtlSymmetry"
message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
errorLine1=" android:paddingEnd=" @dimen/status_display_name_padding_end" "
errorLine2=" ~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_conversation.xml"
2023-09-05 13:28:56 +02:00
line="89"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="RtlSymmetry"
message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
errorLine1=" android:paddingStart=" 28dp" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_follow.xml"
line="22"
column="9"/>
</issue>
<issue
id="RtlSymmetry"
message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
errorLine1=" android:paddingStart=" 28dp" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_report_notification.xml"
line="23"
column="9"/>
</issue>
<issue
id="RtlSymmetry"
message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry"
errorLine1=" android:paddingEnd=" @dimen/status_display_name_padding_end" "
errorLine2=" ~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_status.xml"
2023-09-05 13:28:56 +02:00
line="67"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="RtlSymmetry"
message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
errorLine1=" android:paddingStart=" 28dp" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/item_status_notification.xml"
2023-06-10 19:47:07 +02:00
line="22"
2023-03-13 10:23:42 +01:00
column="9"/>
</issue>
<issue
id="RtlSymmetry"
message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
errorLine1=" android:paddingStart=" 4dp" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/view_compose_schedule.xml"
line="21"
column="9"/>
</issue>
<issue
id="RtlSymmetry"
message="When you define `paddingStart` you should probably also define `paddingEnd` for right-to-left symmetry"
errorLine1=" android:paddingStart=" 4dp" "
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
<location
file="src/main/res/layout/view_compose_schedule.xml"
line="38"
column="9"/>
</issue>
</issues>