5143 lines
201 KiB
XML
5143 lines
201 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<issues format="4" by="lint 2.3.3">
|
|
|
|
<issue
|
|
id="ScrollViewSize"
|
|
message="This LinearLayout should use `android:layout_height="wrap_content"`"
|
|
errorLine1=" a:layout_height="fill_parent">"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/lyrics.xml"
|
|
line="18"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ApplySharedPref"
|
|
message="Consider using `apply()` instead; `commit` writes its data to persistent storage immediately, whereas `apply` will handle it in the background"
|
|
errorLine1=" editor.commit();"
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/MainActivity.java"
|
|
line="262"
|
|
column="4"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ApplySharedPref"
|
|
message="Consider using `apply()` instead; `commit` writes its data to persistent storage immediately, whereas `apply` will handle it in the background"
|
|
errorLine1=" editor.commit();"
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="153"
|
|
column="3"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ApplySharedPref"
|
|
message="Consider using `apply()` instead; `commit` writes its data to persistent storage immediately, whereas `apply` will handle it in the background"
|
|
errorLine1=" editor.commit();"
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="200"
|
|
column="3"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ApplySharedPref"
|
|
message="Consider using `apply()` instead; `commit` writes its data to persistent storage immediately, whereas `apply` will handle it in the background"
|
|
errorLine1=" editor.commit();"
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="309"
|
|
column="3"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ApplySharedPref"
|
|
message="Consider using `apply()` instead; `commit` writes its data to persistent storage immediately, whereas `apply` will handle it in the background"
|
|
errorLine1=" editor.commit();"
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="328"
|
|
column="3"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ApplySharedPref"
|
|
message="Consider using `apply()` instead; `commit` writes its data to persistent storage immediately, whereas `apply` will handle it in the background"
|
|
errorLine1=" editor.commit();"
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="427"
|
|
column="4"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ApplySharedPref"
|
|
message="Consider using `apply()` instead; `commit` writes its data to persistent storage immediately, whereas `apply` will handle it in the background"
|
|
errorLine1=" editor.commit();"
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="1634"
|
|
column="3"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ApplySharedPref"
|
|
message="Consider using `apply()` instead; `commit` writes its data to persistent storage immediately, whereas `apply` will handle it in the background"
|
|
errorLine1=" editor.commit();"
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="1642"
|
|
column="3"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ApplySharedPref"
|
|
message="Consider using `apply()` instead; `commit` writes its data to persistent storage immediately, whereas `apply` will handle it in the background"
|
|
errorLine1=" editor.commit();"
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="1650"
|
|
column="3"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="CutPasteId"
|
|
message="The id `R.id.now_playing_control_play` has already been looked up in this method; possible cut & paste error?"
|
|
errorLine1=" ImageView nowPlayingControlPlay = (ImageView) nowPlayingView.findViewById(R.id.now_playing_control_play);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/SubsonicTabActivity.java"
|
|
line="414"
|
|
column="51"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/SubsonicTabActivity.java"
|
|
line="360"
|
|
column="40"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" handleError(new Exception(String.format("MediaPlayer error: %d (%d)", what, more)));"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="202"
|
|
column="33"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" dataSource = String.format("http://127.0.0.1:%d/%s", proxy.getPort(), URLEncoder.encode(dataSource, Constants.UTF_8));"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="1594"
|
|
column="18"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" levelTextView.setText(String.format("%s%d dB", level > 0 ? "+" : "", level / 100));"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/EqualizerActivity.java"
|
|
line="265"
|
|
column="26"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `toLowerCase(Locale)` instead. For strings meant to be internal use `Locale.ROOT`, otherwise `Locale.getDefault()`."
|
|
errorLine1=" return index == -1 ? "" : name.substring(index + 1).toLowerCase();"
|
|
errorLine2=" ~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/FileUtil.java"
|
|
line="533"
|
|
column="55"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" Thread thread = new Thread(this, String.format("ImageLoader_%d", i));"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/ImageLoader.java"
|
|
line="105"
|
|
column="37"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" return String.format("%s:%d", coverArtId, size);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/ImageLoader.java"
|
|
line="208"
|
|
column="10"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `toLowerCase(Locale)` instead. For strings meant to be internal use `Locale.ROOT`, otherwise `Locale.getDefault()`."
|
|
errorLine1=" String lhs = lhsArtist.getName().toLowerCase();"
|
|
errorLine2=" ~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/OfflineMusicService.java"
|
|
line="105"
|
|
column="38"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `toLowerCase(Locale)` instead. For strings meant to be internal use `Locale.ROOT`, otherwise `Locale.getDefault()`."
|
|
errorLine1=" String rhs = rhsArtist.getName().toLowerCase();"
|
|
errorLine2=" ~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/OfflineMusicService.java"
|
|
line="106"
|
|
column="38"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `toLowerCase(Locale)` instead. For strings meant to be internal use `Locale.ROOT`, otherwise `Locale.getDefault()`."
|
|
errorLine1=" int index = lhs.indexOf(String.format("%s ", article.toLowerCase()));"
|
|
errorLine2=" ~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/OfflineMusicService.java"
|
|
line="123"
|
|
column="59"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `toLowerCase(Locale)` instead. For strings meant to be internal use `Locale.ROOT`, otherwise `Locale.getDefault()`."
|
|
errorLine1=" index = rhs.indexOf(String.format("%s ", article.toLowerCase()));"
|
|
errorLine2=" ~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/OfflineMusicService.java"
|
|
line="130"
|
|
column="55"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `toLowerCase(Locale)` instead. For strings meant to be internal use `Locale.ROOT`, otherwise `Locale.getDefault()`."
|
|
errorLine1=" String query = criteria.getQuery().toLowerCase();"
|
|
errorLine2=" ~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/OfflineMusicService.java"
|
|
line="506"
|
|
column="38"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `toLowerCase(Locale)` instead. For strings meant to be internal use `Locale.ROOT`, otherwise `Locale.getDefault()`."
|
|
errorLine1=" String[] nameParts = COMPILE.split(name.toLowerCase());"
|
|
errorLine2=" ~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/OfflineMusicService.java"
|
|
line="508"
|
|
column="43"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" return String.format("indexes-%d.ser", Math.abs(s.hashCode()));"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/RESTMusicService.java"
|
|
line="288"
|
|
column="10"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" return String.format("indexes-%d.ser", Math.abs(s.hashCode()));"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/RESTMusicService.java"
|
|
line="335"
|
|
column="10"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" return String.format("musicFolders-%d.ser", Math.abs(s.hashCode()));"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/RESTMusicService.java"
|
|
line="351"
|
|
column="10"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" headers.add(new BasicHeader("Range", String.format("bytes=%d-", offset)));"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/RESTMusicService.java"
|
|
line="941"
|
|
column="41"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" viewHolder.track.setText(String.format("%02d.", trackNumber));"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/view/SongView.java"
|
|
line="193"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" Util.setDefaultShareExpiration(SubsonicTabActivity.this, !noExpirationCheckBox.isChecked() && timeSpanAmount > 0 ? String.format("%d:%s", timeSpanAmount, timeSpanType) : "");"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/SubsonicTabActivity.java"
|
|
line="507"
|
|
column="122"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" persisted = String.format("%d:%s", tsAmount, tsType);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/TimeSpanPreference.java"
|
|
line="92"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" return String.format("%02d:%02d:%02d", hours, minutes, seconds);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="1477"
|
|
column="11"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" return String.format("%d:%02d:%02d", hours, minutes, seconds);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="1481"
|
|
column="11"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" return String.format("%02d:%02d", minutes, seconds);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="1485"
|
|
column="11"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" else return minutes > 0 ? String.format("%d:%02d", minutes, seconds) : String.format("0:%02d", seconds);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="1488"
|
|
column="29"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="DefaultLocale"
|
|
message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead"
|
|
errorLine1=" else return minutes > 0 ? String.format("%d:%02d", minutes, seconds) : String.format("0:%02d", seconds);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="1488"
|
|
column="74"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="InlinedApi"
|
|
message="Field requires API level 17 (current min is 14): `android.view.View#LAYOUT_DIRECTION_RTL`"
|
|
errorLine1=" if (mSlideDrawable != null) mSlideDrawable.setIsRtl(layoutDirection == LAYOUT_DIRECTION_RTL);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/MenuDrawer.java"
|
|
line="882"
|
|
column="80"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="InlinedApi"
|
|
message="Field requires API level 17 (current min is 14): `android.view.View#LAYOUT_DIRECTION_RTL`"
|
|
errorLine1=" mSlideDrawable.setIsRtl(ViewHelper.getLayoutDirection(this) == LAYOUT_DIRECTION_RTL);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/MenuDrawer.java"
|
|
line="1325"
|
|
column="72"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="LocaleFolder"
|
|
message="The locale folder "`he`" should be called "`iw`" instead; see the `java.util.Locale` documentation">
|
|
<location
|
|
file="src/main/res/values-he"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="NewApi"
|
|
message="Call requires API level 21 (current min is 14): android.widget.AbsListView#setSelectionFromTop"
|
|
errorLine1=" setSelectionFromTop(movePos, top - padTop);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/mobeta/android/dslv/DragSortListView.java"
|
|
line="2936"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="OldTargetApi"
|
|
message="Not targeting the latest versions of Android; compatibility modes apply. Consider testing and updating this version. Consult the `android.os.Build.VERSION_CODES` javadoc for details."
|
|
errorLine1=" <uses-sdk android:targetSdkVersion="7""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/AndroidManifest.xml"
|
|
line="6"
|
|
column="15"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="OldTargetApi"
|
|
message="Not targeting the latest versions of Android; compatibility modes apply. Consider testing and updating this version. Consult the `android.os.Build.VERSION_CODES` javadoc for details."
|
|
errorLine1=" <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="16" />"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/AndroidManifest.xml"
|
|
line="7"
|
|
column="41"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="OldTargetApi"
|
|
message="Not targeting the latest versions of Android; compatibility modes apply. Consider testing and updating this version. Consult the `android.os.Build.VERSION_CODES` javadoc for details."
|
|
errorLine1=" <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="16" />"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/AndroidManifest.xml"
|
|
line="7"
|
|
column="41"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="SimpleDateFormat"
|
|
message="To get local formatting use `getDateInstance()`, `getDateTimeInstance()`, or `getTimeInstance()`, or use `new SimpleDateFormat(String template, Locale locale)` with for example `Locale.US` for ASCII dates."
|
|
errorLine1=" DateFormat parseDateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS");"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/parser/PodcastEpisodeParser.java"
|
|
line="67"
|
|
column="38"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedAttribute"
|
|
message="Attribute `widgetCategory` is only used in API level 17 and higher (current min is 14)"
|
|
errorLine1=" a:widgetCategory="home_screen|keyguard""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/xml/appwidget_info_4x1.xml"
|
|
line="8"
|
|
column="21"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedAttribute"
|
|
message="Attribute `widgetCategory` is only used in API level 17 and higher (current min is 14)"
|
|
errorLine1=" a:widgetCategory="home_screen|keyguard""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/xml/appwidget_info_4x2.xml"
|
|
line="8"
|
|
column="21"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedAttribute"
|
|
message="Attribute `widgetCategory` is only used in API level 17 and higher (current min is 14)"
|
|
errorLine1=" a:widgetCategory="home_screen|keyguard""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/xml/appwidget_info_4x3.xml"
|
|
line="8"
|
|
column="21"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedAttribute"
|
|
message="Attribute `widgetCategory` is only used in API level 17 and higher (current min is 14)"
|
|
errorLine1=" a:widgetCategory="home_screen|keyguard""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/xml/appwidget_info_4x4.xml"
|
|
line="8"
|
|
column="21"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="WifiManagerPotentialLeak"
|
|
message="The WIFI_SERVICE must be looked up on the Application context or memory will leak on devices < Android N. Try changing `context` to `context.getApplicationContext()` "
|
|
errorLine1=" WifiManager wm = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/Util.java"
|
|
line="892"
|
|
column="34"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IncludeLayoutParam"
|
|
message="Layout parameter `layout_gravity` ignored unless both `layout_width` and `layout_height` are also specified on `<include>` tag"
|
|
errorLine1=" a:layout_gravity="center_vertical" />"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_list_item.xml"
|
|
line="17"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="InflateParams"
|
|
message="Avoid passing `null` as the view root (needed to resolve layout parameters on the inflated layout's root element)"
|
|
errorLine1=" View bandBar = LayoutInflater.from(this).inflate(R.layout.equalizer_bar, null);"
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/EqualizerActivity.java"
|
|
line="202"
|
|
column="78"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="InflateParams"
|
|
message="Avoid passing `null` as the view root (needed to resolve layout parameters on the inflated layout's root element)"
|
|
errorLine1=" View view = inflater.inflate(R.layout.jukebox_volume, null);"
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/JukeboxService.java"
|
|
line="466"
|
|
column="58"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="InflateParams"
|
|
message="Avoid passing `null` as the view root (needed to resolve layout parameters on the inflated layout's root element)"
|
|
errorLine1=" final View buttons = LayoutInflater.from(this).inflate(R.layout.main_buttons, null);"
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/MainActivity.java"
|
|
line="98"
|
|
column="81"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="InflateParams"
|
|
message="Avoid passing `null` as the view root (needed to resolve layout parameters on the inflated layout's root element)"
|
|
errorLine1=" View buttons = LayoutInflater.from(this).inflate(R.layout.search_buttons, null);"
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/SearchActivity.java"
|
|
line="101"
|
|
column="77"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="InflateParams"
|
|
message="Avoid passing `null` as the view root (needed to resolve layout parameters on the inflated layout's root element)"
|
|
errorLine1=" View dialogView = getLayoutInflater().inflate(R.layout.update_playlist, null);"
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/SelectPlaylistActivity.java"
|
|
line="303"
|
|
column="75"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="InflateParams"
|
|
message="Avoid passing `null` as the view root (needed to resolve layout parameters on the inflated layout's root element)"
|
|
errorLine1=" View dialogView = getLayoutInflater().inflate(R.layout.share_details, null);"
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/ShareActivity.java"
|
|
line="287"
|
|
column="73"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="LongLogTag"
|
|
message="The logging tag can be at most 23 characters, was 31 (Exception in CacheCleaner.clean)"
|
|
errorLine1=" Log.w("Exception in CacheCleaner.clean", ex);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/CacheCleaner.java"
|
|
line="50"
|
|
column="4"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="LongLogTag"
|
|
message="The logging tag can be at most 23 characters, was 36 (Exception in CacheCleaner.cleanSpace)"
|
|
errorLine1=" Log.w("Exception in CacheCleaner.cleanSpace", ex);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/CacheCleaner.java"
|
|
line="63"
|
|
column="4"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="LongLogTag"
|
|
message="The logging tag can be at most 23 characters, was 40 (Exception in CacheCleaner.cleanPlaylists)"
|
|
errorLine1=" Log.w("Exception in CacheCleaner.cleanPlaylists", ex);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/util/CacheCleaner.java"
|
|
line="76"
|
|
column="4"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="AppCompatCustomView"
|
|
message="This custom view should extend `android.support.v7.widget.AppCompatImageView` instead"
|
|
errorLine1="public class AutoRepeatButton extends ImageView"
|
|
errorLine2=" ~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/view/AutoRepeatButton.java"
|
|
line="9"
|
|
column="39"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="GradleOverrides"
|
|
message="This `targetSdkVersion` value (`7`) is not used; it is always overridden by the value specified in the Gradle build script (`22`)"
|
|
errorLine1=" <uses-sdk android:targetSdkVersion="7""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/AndroidManifest.xml"
|
|
line="6"
|
|
column="15"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="GradleOverrides"
|
|
message="This `minSdkVersion` value (`4`) is not used; it is always overridden by the value specified in the Gradle build script (`14`)"
|
|
errorLine1=" <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="16" />"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/AndroidManifest.xml"
|
|
line="7"
|
|
column="15"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="GradleOverrides"
|
|
message="This `minSdkVersion` value (`7`) is not used; it is always overridden by the value specified in the Gradle build script (`14`)"
|
|
errorLine1=" android:minSdkVersion="7" />"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/AndroidManifest.xml"
|
|
line="7"
|
|
column="7"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="GradleOverrides"
|
|
message="This `minSdkVersion` value (`7`) is not used; it is always overridden by the value specified in the Gradle build script (`14`)"
|
|
errorLine1=" <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="16" />"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/AndroidManifest.xml"
|
|
line="7"
|
|
column="15"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="GradleOverrides"
|
|
message="This `targetSdkVersion` value (`16`) is not used; it is always overridden by the value specified in the Gradle build script (`22`)"
|
|
errorLine1=" <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="16" />"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/AndroidManifest.xml"
|
|
line="7"
|
|
column="41"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="GradleOverrides"
|
|
message="This `targetSdkVersion` value (`16`) is not used; it is always overridden by the value specified in the Gradle build script (`22`)"
|
|
errorLine1=" <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="16" />"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/AndroidManifest.xml"
|
|
line="7"
|
|
column="41"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ParcelClassLoader"
|
|
message="Using the default class loader will not work if you are restoring your own classes. Consider using for example `readBundle(getClass().getClassLoader())` instead."
|
|
errorLine1=" mState = in.readBundle();"
|
|
errorLine2=" ~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/MenuDrawer.java"
|
|
line="1630"
|
|
column="25"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/album_list_item.xml"
|
|
line="30"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/album_list_item.xml"
|
|
line="38"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x1.xml"
|
|
line="44"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x1.xml"
|
|
line="62"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x2.xml"
|
|
line="46"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x2.xml"
|
|
line="63"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x2.xml"
|
|
line="80"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x3.xml"
|
|
line="47"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x3.xml"
|
|
line="65"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x4.xml"
|
|
line="48"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x4.xml"
|
|
line="66"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item.xml"
|
|
line="26"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item.xml"
|
|
line="47"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: False is the default, so just remove the attribute"
|
|
errorLine1=" a:singleLine="false""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item.xml"
|
|
line="60"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="24"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="42"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: False is the default, so just remove the attribute"
|
|
errorLine1=" a:singleLine="false""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="55"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="18"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="74"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="84"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`android:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" android:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/now_playing.xml"
|
|
line="41"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`android:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" android:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/now_playing.xml"
|
|
line="52"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`android:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" android:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/pull_to_refresh_header_vertical.xml"
|
|
line="45"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`android:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" android:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/pull_to_refresh_header_vertical.xml"
|
|
line="53"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true"/>
|
|
"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/save_playlist.xml"
|
|
line="14"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="25"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="36"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="47"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="58"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="69"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="80"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: False is the default, so just remove the attribute"
|
|
errorLine1=" a:singleLine="false""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/share_details.xml"
|
|
line="27"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/share_list_item.xml"
|
|
line="42"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="32"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="58"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="68"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_details.xml"
|
|
line="24"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Deprecated"
|
|
message="`a:singleLine` is deprecated: Use `maxLines="1"` instead"
|
|
errorLine1=" a:singleLine="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_details.xml"
|
|
line="34"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="MissingTranslation"
|
|
message=""`pull_to_refresh_pull_label`" is not translated in "hu" (Hungarian)"
|
|
errorLine1=" <string name="pull_to_refresh_pull_label">Pull to refresh…</string>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="/home/egorr/data/work/ultrasonic/pulltorefresh/src/main/res/values/pull_refresh_strings.xml"
|
|
line="4"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="MissingTranslation"
|
|
message=""`pull_to_refresh_release_label`" is not translated in "hu" (Hungarian)"
|
|
errorLine1=" <string name="pull_to_refresh_release_label">Release to refresh…</string>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="/home/egorr/data/work/ultrasonic/pulltorefresh/src/main/res/values/pull_refresh_strings.xml"
|
|
line="5"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="MissingTranslation"
|
|
message=""`pull_to_refresh_refreshing_label`" is not translated in "hu" (Hungarian)"
|
|
errorLine1=" <string name="pull_to_refresh_refreshing_label">Loading…</string>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="/home/egorr/data/work/ultrasonic/pulltorefresh/src/main/res/values/pull_refresh_strings.xml"
|
|
line="6"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="MissingTranslation"
|
|
message=""`pull_to_refresh_from_bottom_pull_label`" is not translated in "es" (Spanish), "fr" (French), "hu" (Hungarian), "pt" (Portuguese), "pt-BR" (Portuguese: Brazil)"
|
|
errorLine1=" <string name="pull_to_refresh_from_bottom_pull_label">@string/pull_to_refresh_pull_label</string>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="/home/egorr/data/work/ultrasonic/pulltorefresh/src/main/res/values/pull_refresh_strings.xml"
|
|
line="9"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="MissingTranslation"
|
|
message=""`pull_to_refresh_from_bottom_release_label`" is not translated in "es" (Spanish), "fr" (French), "hu" (Hungarian), "pt" (Portuguese), "pt-BR" (Portuguese: Brazil)"
|
|
errorLine1=" <string name="pull_to_refresh_from_bottom_release_label">@string/pull_to_refresh_release_label</string>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="/home/egorr/data/work/ultrasonic/pulltorefresh/src/main/res/values/pull_refresh_strings.xml"
|
|
line="10"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="MissingTranslation"
|
|
message=""`pull_to_refresh_from_bottom_refreshing_label`" is not translated in "es" (Spanish), "fr" (French), "hu" (Hungarian), "pt" (Portuguese), "pt-BR" (Portuguese: Brazil)"
|
|
errorLine1=" <string name="pull_to_refresh_from_bottom_refreshing_label">@string/pull_to_refresh_refreshing_label</string>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="/home/egorr/data/work/ultrasonic/pulltorefresh/src/main/res/values/pull_refresh_strings.xml"
|
|
line="11"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="MissingTranslation"
|
|
message=""`md__drawerOpenIndicatorDesc`" is not translated in "es" (Spanish), "fr" (French), "hu" (Hungarian), "pt" (Portuguese), "pt-BR" (Portuguese: Brazil)"
|
|
errorLine1=" <string name="md__drawerOpenIndicatorDesc">Close drawer</string>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="/home/egorr/data/work/ultrasonic/menudrawer/src/main/res/values/strings.xml"
|
|
line="4"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="MissingTranslation"
|
|
message=""`md__drawerClosedIndicatorDesc`" is not translated in "es" (Spanish), "fr" (French), "hu" (Hungarian), "pt" (Portuguese), "pt-BR" (Portuguese: Brazil)"
|
|
errorLine1=" <string name="md__drawerClosedIndicatorDesc">Open drawer</string>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="/home/egorr/data/work/ultrasonic/menudrawer/src/main/res/values/strings.xml"
|
|
line="6"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Typos"
|
|
message=""Despues" is a common misspelling; did you mean "Después" ?"
|
|
errorLine1=" <string name="main.welcome_text">Te damos la bienvenida a UltraSonic! La aplicación no está configurada actualmente. Despues de que hayas configurado tu servidor personal (disponible desde <b>subsonic.org</b>), por favor haz click en <i>Añadir servidor</i> en <b>Configuración</b> para conectarte con él.</string>"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values-es/strings.xml"
|
|
line="98"
|
|
column="122"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Typos"
|
|
message=""dia" is a common misspelling; did you mean "día" ?"
|
|
errorLine1=" <string name="select_album.not_licensed">Servidor sin licencia. Quedan %d dia(s) de prueba.</string>"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values-es/strings.xml"
|
|
line="139"
|
|
column="79"/>
|
|
</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."
|
|
errorLine1=" <item quantity="one">Un titre</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-fr/strings.xml"
|
|
line="395"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 música</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt-rBR/strings.xml"
|
|
line="398"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 música</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt/strings.xml"
|
|
line="398"
|
|
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."
|
|
errorLine1=" <item quantity="one">Un titre sélectionnée pour être épinglé.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-fr/strings.xml"
|
|
line="399"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 música selecionada para ser fixada.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt-rBR/strings.xml"
|
|
line="402"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 música selecionada para ser fixada.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt/strings.xml"
|
|
line="402"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 song selected to be downloaded.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-fr/strings.xml"
|
|
line="403"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 música selecionada para ser baixada.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt-rBR/strings.xml"
|
|
line="406"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 música selecionada para descarregar.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt/strings.xml"
|
|
line="406"
|
|
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."
|
|
errorLine1=" <item quantity="one">Un titre sélectionné pour être dégoupillé.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-fr/strings.xml"
|
|
line="407"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 música selecionada para ser desafixada.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt-rBR/strings.xml"
|
|
line="410"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 música selecionada para ser desafixada.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt/strings.xml"
|
|
line="410"
|
|
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."
|
|
errorLine1=" <item quantity="one">Un titre ajouté à la fin de la file d\'attente de lecture.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-fr/strings.xml"
|
|
line="411"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 música adicionada ao fim da fila.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt-rBR/strings.xml"
|
|
line="414"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 música adicionada ao fim da fila.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt/strings.xml"
|
|
line="414"
|
|
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."
|
|
errorLine1=" <item quantity="one">Un titre inséré après le titre actuel.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-fr/strings.xml"
|
|
line="415"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 música inserida após a atual.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt-rBR/strings.xml"
|
|
line="418"
|
|
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."
|
|
errorLine1=" <item quantity="one">1 música inserida após a atual.</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt/strings.xml"
|
|
line="418"
|
|
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."
|
|
errorLine1=" <item quantity="one">Un jour restant à la période d\'essai</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-fr/strings.xml"
|
|
line="419"
|
|
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."
|
|
errorLine1=" <item quantity="one">Resta 1 dia para o fim do período de teste</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt-rBR/strings.xml"
|
|
line="422"
|
|
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."
|
|
errorLine1=" <item quantity="one">Resta 1 dia para o fim do período de teste</item>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values-pt/strings.xml"
|
|
line="422"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="PluralsCandidate"
|
|
message="Formatting %d followed by words ("Artists"): This should probably be a plural rather than a string"
|
|
errorLine1=" <string name="parser.artist_count">Got %d Artists.</string>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values/strings.xml"
|
|
line="113"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="PluralsCandidate"
|
|
message="Formatting %d followed by words ("tracks"): This should probably be a plural rather than a string"
|
|
errorLine1=" <string name="select_album.n_selected">%d tracks selected.</string>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values/strings.xml"
|
|
line="138"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="PluralsCandidate"
|
|
message="Formatting %d followed by words ("tracks"): This should probably be a plural rather than a string"
|
|
errorLine1=" <string name="select_album.n_unselected">%d tracks unselected.</string>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values/strings.xml"
|
|
line="139"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="PluralsCandidate"
|
|
message="Formatting %d followed by words ("trial"): This should probably be a plural rather than a string"
|
|
errorLine1=" <string name="select_album.not_licensed">Server not licensed. %d trial days left.</string>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values/strings.xml"
|
|
line="142"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedQuantity"
|
|
message="For language "es" (Spanish) the following quantities are not relevant: `zero`"
|
|
errorLine1=" <plurals name="select_album_n_songs">"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values-es/strings.xml"
|
|
line="393"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedQuantity"
|
|
message="For language "fr" (French) the following quantities are not relevant: `zero`"
|
|
errorLine1=" <plurals name="select_album_n_songs">"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values-fr/strings.xml"
|
|
line="393"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedQuantity"
|
|
message="For language "hu" (Hungarian) the following quantities are not relevant: `zero`"
|
|
errorLine1=" <plurals name="select_album_n_songs">"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values-hu/strings.xml"
|
|
line="393"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedQuantity"
|
|
message="For language "pt" (Portuguese) the following quantities are not relevant: `zero`"
|
|
errorLine1=" <plurals name="select_album_n_songs">"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values-pt-rBR/strings.xml"
|
|
line="396"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedQuantity"
|
|
message="For language "pt" (Portuguese) the following quantities are not relevant: `zero`"
|
|
errorLine1=" <plurals name="select_album_n_songs">"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values-pt/strings.xml"
|
|
line="396"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="AddJavascriptInterface"
|
|
message="`WebView.addJavascriptInterface` should not be called with minSdkVersion < 17 for security reasons: JavaScript can use reflection to manipulate application"
|
|
errorLine1=" webView.addJavascriptInterface(mJsCallback, JS_INTERFACE_PKG);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/extras/PullToRefreshWebView2.java"
|
|
line="90"
|
|
column="11"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="TrulyRandom"
|
|
message="Potentially insecure random numbers on Android 4.3 and older. Read https://android-developers.blogspot.com/2013/08/some-securerandom-thoughts.html for more info."
|
|
errorLine1=" private Random random = new java.security.SecureRandom();"
|
|
errorLine2=" ~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/SelectAlbumActivity.java"
|
|
line="86"
|
|
column="44"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="JavascriptInterface"
|
|
message="None of the methods in the added interface (JsValueCallback) have been annotated with `@android.webkit.JavascriptInterface`; they will not be visible in API 17"
|
|
errorLine1=" webView.addJavascriptInterface(mJsCallback, JS_INTERFACE_PKG);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/extras/PullToRefreshWebView2.java"
|
|
line="90"
|
|
column="11"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="AllowAllHostnameVerifier"
|
|
message="Using the AllowAllHostnameVerifier HostnameVerifier is unsafe because it always returns true, which could cause insecure network traffic due to trusting TLS/SSL server certificates for wrong hostnames"
|
|
errorLine1=" public static final X509HostnameVerifier ALLOW_ALL_HOSTNAME_VERIFIER = new AllowAllHostnameVerifier();"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/ssl/SSLSocketFactory.java"
|
|
line="142"
|
|
column="73"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="SetJavaScriptEnabled"
|
|
message="Using `setJavaScriptEnabled` can introduce XSS vulnerabilities into your application, review carefully."
|
|
errorLine1=" webView.getSettings().setJavaScriptEnabled(true);"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/HelpActivity.java"
|
|
line="109"
|
|
column="3"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ExportedContentProvider"
|
|
message="Exported content providers can provide access to potentially sensitive data"
|
|
errorLine1=" <provider"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/AndroidManifest.xml"
|
|
line="190"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteLayoutParam"
|
|
message="Invalid layout param in a `LinearLayout`: `layout_above`"
|
|
errorLine1=" android:layout_above="@+id/bottom">"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/time_span_dialog.xml"
|
|
line="12"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteLayoutParam"
|
|
message="Invalid layout param in a `LinearLayout`: `layout_below`"
|
|
errorLine1=" android:layout_below="@+id/top">"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/time_span_dialog.xml"
|
|
line="28"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is never < 14"
|
|
errorLine1=" if (mUsesCompat && Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/compat/ActionBarHelper.java"
|
|
line="41"
|
|
column="28"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/compat/ActionBarHelper.java"
|
|
line="43"
|
|
column="20"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is never < 14"
|
|
errorLine1=" if (mUsesCompat && Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/compat/ActionBarHelper.java"
|
|
line="51"
|
|
column="28"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/compat/ActionBarHelper.java"
|
|
line="53"
|
|
column="20"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is never < 14"
|
|
errorLine1=" if (mUsesCompat && Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/compat/ActionBarHelper.java"
|
|
line="59"
|
|
column="28"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/compat/ActionBarHelper.java"
|
|
line="61"
|
|
column="20"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is never < 14"
|
|
errorLine1=" if (mUsesCompat && Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/compat/ActionBarHelper.java"
|
|
line="67"
|
|
column="28"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/compat/ActionBarHelper.java"
|
|
line="69"
|
|
column="20"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is never < 14"
|
|
errorLine1=" if (mUsesCompat && Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/compat/ActionBarHelper.java"
|
|
line="77"
|
|
column="28"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/compat/ActionBarHelper.java"
|
|
line="79"
|
|
column="20"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/DraggableDrawer.java"
|
|
line="572"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/DraggableDrawer.java"
|
|
line="580"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/DraggableDrawer.java"
|
|
line="588"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/DraggableDrawer.java"
|
|
line="596"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" return VERSION.SDK_INT >= VERSION_CODES.GINGERBREAD && mOverScrollEnabled"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/PullToRefreshBase.java"
|
|
line="211"
|
|
column="10"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" if (VERSION.SDK_INT >= VERSION_CODES.GINGERBREAD) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/PullToRefreshExpandableListView.java"
|
|
line="54"
|
|
column="7"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" if (VERSION.SDK_INT >= VERSION_CODES.GINGERBREAD) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/PullToRefreshGridView.java"
|
|
line="54"
|
|
column="7"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" if (VERSION.SDK_INT >= VERSION_CODES.GINGERBREAD) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/PullToRefreshHorizontalScrollView.java"
|
|
line="53"
|
|
column="7"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" if (VERSION.SDK_INT >= VERSION_CODES.GINGERBREAD) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/PullToRefreshListView.java"
|
|
line="207"
|
|
column="7"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" if (VERSION.SDK_INT >= VERSION_CODES.GINGERBREAD) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/PullToRefreshScrollView.java"
|
|
line="52"
|
|
column="7"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" if (VERSION.SDK_INT >= VERSION_CODES.GINGERBREAD) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/PullToRefreshWebView.java"
|
|
line="98"
|
|
column="7"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ObsoleteSdkInt"
|
|
message="Unnecessary; SDK_INT is always >= 14"
|
|
errorLine1=" if (VERSION.SDK_INT >= VERSION_CODES.HONEYCOMB) {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/internal/ViewCompat.java"
|
|
line="44"
|
|
column="7"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="StaticFieldLeak"
|
|
message="Do not place Android context classes in static fields; this is a memory leak (and also breaks Instant Run)"
|
|
errorLine1=" private static SeekBar progressBar;"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/DownloadActivity.java"
|
|
line="102"
|
|
column="2"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="StaticFieldLeak"
|
|
message="Do not place Android context classes in static fields (static reference to `ImageLoader` which has field `context` pointing to `Context`); this is a memory leak (and also breaks Instant Run)"
|
|
errorLine1=" protected static ImageLoader IMAGE_LOADER;"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/SubsonicTabActivity.java"
|
|
line="93"
|
|
column="2"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="StaticFieldLeak"
|
|
message="Do not place Android context classes in static fields (static reference to `SubsonicTabActivity` which has field `nowPlayingView` pointing to `View`); this is a memory leak (and also breaks Instant Run)"
|
|
errorLine1=" private static SubsonicTabActivity instance;"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/SubsonicTabActivity.java"
|
|
line="95"
|
|
column="2"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="StaticFieldLeak"
|
|
message="Do not place Android context classes in static fields; this is a memory leak (and also breaks Instant Run)"
|
|
errorLine1=" private static Context context;"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/view/UpdateView.java"
|
|
line="25"
|
|
column="2"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="FloatMath"
|
|
message="Use `java.lang.Math#floor` instead of `android.util.FloatMath#floor()` since it is faster as of API 8"
|
|
errorLine1=" float exactContentHeight = FloatMath.floor(mRefreshableView.getContentHeight() * mRefreshableView.getScale());"
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/PullToRefreshWebView.java"
|
|
line="115"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="FloatMath"
|
|
message="Use `java.lang.Math#floor` instead of `android.util.FloatMath#floor()` since it is faster as of API 8"
|
|
errorLine1=" return (int) Math.max(0, FloatMath.floor(mRefreshableView.getContentHeight() * mRefreshableView.getScale())"
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/PullToRefreshWebView.java"
|
|
line="161"
|
|
column="29"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="FloatMath"
|
|
message="Use `java.lang.Math#sqrt` instead of `android.util.FloatMath#sqrt()` since it is faster as of API 8"
|
|
errorLine1=" float hyp = FloatMath.sqrt(dx * dx + dy * dy);"
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/Scroller.java"
|
|
line="374"
|
|
column="25"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="FloatMath"
|
|
message="Use `java.lang.Math#sqrt` instead of `android.util.FloatMath#sqrt()` since it is faster as of API 8"
|
|
errorLine1=" float velocity = FloatMath.sqrt(velocityX * velocityX + velocityY * velocityY);"
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/net/simonvt/menudrawer/Scroller.java"
|
|
line="391"
|
|
column="26"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Overdraw"
|
|
message="Possible overdraw: Root element paints background `@drawable/appwidget_dark_bg_trans` with a theme that also paints a background (inferred theme is `@style/Theme.AppCompat`)"
|
|
errorLine1=" a:background="@drawable/appwidget_dark_bg_trans""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x1.xml"
|
|
line="7"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Overdraw"
|
|
message="Possible overdraw: Root element paints background `@drawable/appwidget_dark_bg_trans` with a theme that also paints a background (inferred theme is `@style/Theme.AppCompat`)"
|
|
errorLine1=" a:background="@drawable/appwidget_dark_bg_trans""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x2.xml"
|
|
line="7"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Overdraw"
|
|
message="Possible overdraw: Root element paints background `@drawable/appwidget_dark_bg_trans` with a theme that also paints a background (inferred theme is `@style/Theme.AppCompat`)"
|
|
errorLine1=" a:background="@drawable/appwidget_dark_bg_trans""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x3.xml"
|
|
line="7"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Overdraw"
|
|
message="Possible overdraw: Root element paints background `@drawable/appwidget_dark_bg_trans` with a theme that also paints a background (inferred theme is `@style/Theme.AppCompat`)"
|
|
errorLine1=" a:background="@drawable/appwidget_dark_bg_trans" >"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x4.xml"
|
|
line="8"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Overdraw"
|
|
message="Possible overdraw: Root element paints background `@color/background_color_dark` with a theme that also paints a background (inferred theme is `@style/Theme.AppCompat`)"
|
|
errorLine1=" android:background="@color/background_color_dark""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/notification.xml"
|
|
line="9"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="Overdraw"
|
|
message="Possible overdraw: Root element paints background `@color/background_color_dark` with a theme that also paints a background (inferred theme is `@style/Theme.AppCompat`)"
|
|
errorLine1=" android:background="@color/background_color_dark" >"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/notification_large.xml"
|
|
line="9"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedResources"
|
|
message="The resource `R.color.md__transparent` appears to be unused"
|
|
errorLine1=" <color name="md__transparent">#00000000</color>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/values/colors.xml"
|
|
line="8"
|
|
column="12"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedResources"
|
|
message="The resource `R.drawable.md__list_focused_holo` appears to be unused">
|
|
<location
|
|
file="src/main/res/drawable-xhdpi/md__list_focused_holo.9.png"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedResources"
|
|
message="The resource `R.drawable.md__list_longpressed_holo` appears to be unused">
|
|
<location
|
|
file="src/main/res/drawable-xhdpi/md__list_longpressed_holo.9.png"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedResources"
|
|
message="The resource `R.drawable.md__list_pressed_holo_dark` appears to be unused">
|
|
<location
|
|
file="src/main/res/drawable-xhdpi/md__list_pressed_holo_dark.9.png"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedResources"
|
|
message="The resource `R.drawable.md__list_selector_background_transition_holo_dark` appears to be unused"
|
|
errorLine1="<transition xmlns:android="http://schemas.android.com/apk/res/android">"
|
|
errorLine2="^">
|
|
<location
|
|
file="src/main/res/drawable/md__list_selector_background_transition_holo_dark.xml"
|
|
line="17"
|
|
column="1"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedResources"
|
|
message="The resource `R.drawable.md__list_selector_disabled_holo_dark` appears to be unused">
|
|
<location
|
|
file="src/main/res/drawable-xhdpi/md__list_selector_disabled_holo_dark.9.png"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UnusedResources"
|
|
message="The resource `R.drawable.md__list_selector_holo_dark` appears to be unused"
|
|
errorLine1="<selector xmlns:android="http://schemas.android.com/apk/res/android">"
|
|
errorLine2="^">
|
|
<location
|
|
file="src/main/res/drawable/md__list_selector_holo_dark.xml"
|
|
line="17"
|
|
column="1"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="UselessParent"
|
|
message="This `LinearLayout` layout or its `LinearLayout` parent is useless"
|
|
errorLine1=" <LinearLayout"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/video_details.xml"
|
|
line="9"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="TypographyDashes"
|
|
message="Replace "--" with an "em dash" character (—, &#8212;) ?"
|
|
errorLine1=" <string name="util.no_time">-:--</string>"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values-es/strings.xml"
|
|
line="328"
|
|
column="33"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="TypographyDashes"
|
|
message="Replace "--" with an "em dash" character (—, &#8212;) ?"
|
|
errorLine1=" <string name="util.no_time">-:--</string>"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values-fr/strings.xml"
|
|
line="328"
|
|
column="33"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="TypographyDashes"
|
|
message="Replace "--" with an "em dash" character (—, &#8212;) ?"
|
|
errorLine1=" <string name="util.no_time">-:--</string>"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values-hu/strings.xml"
|
|
line="328"
|
|
column="33"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="TypographyDashes"
|
|
message="Replace "--" with an "em dash" character (—, &#8212;) ?"
|
|
errorLine1=" <string name="util.no_time">-:--</string>"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values-pt-rBR/strings.xml"
|
|
line="331"
|
|
column="33"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="TypographyDashes"
|
|
message="Replace "--" with an "em dash" character (—, &#8212;) ?"
|
|
errorLine1=" <string name="util.no_time">-:--</string>"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values-pt/strings.xml"
|
|
line="331"
|
|
column="33"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="TypographyDashes"
|
|
message="Replace "--" with an "em dash" character (—, &#8212;) ?"
|
|
errorLine1=" <string name="util.no_time">-:--</string>"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/values/strings.xml"
|
|
line="331"
|
|
column="33"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Action Bar icons should use a single gray color (`#333333` for light themes (with 60%/30% opacity for enabled/disabled), and `#FFFFFF` with opacity 80%/30% for dark themes">
|
|
<location
|
|
file="src/main/res/drawable-xhdpi/ic_menu_pin.png"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-hdpi/ic_stat_play_light.png"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-hdpi-v11/ic_stat_ultrasonic.png"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="2076"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-hdpi-v9/ic_stat_ultrasonic.png"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="2076"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-hdpi/ic_stat_ultrasonic.png"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="2076"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-ldpi-v11/ic_stat_ultrasonic.png"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="2076"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-ldpi-v9/ic_stat_ultrasonic.png"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="2076"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-ldpi/ic_stat_ultrasonic.png"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="2076"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-mdpi-v11/ic_stat_ultrasonic.png"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="2076"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-mdpi-v9/ic_stat_ultrasonic.png"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="2076"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-mdpi/ic_stat_ultrasonic.png"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="2076"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-xhdpi-v11/ic_stat_ultrasonic.png"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="2076"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-xhdpi-v9/ic_stat_ultrasonic.png"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="2076"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconColors"
|
|
message="Notification icons must be entirely white">
|
|
<location
|
|
file="src/main/res/drawable-xhdpi/ic_stat_ultrasonic.png"/>
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/service/DownloadServiceImpl.java"
|
|
line="2076"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconDensities"
|
|
message="Missing the following drawables in `drawable-hdpi`: ic_contact_picture.png, ic_menu_pin.png, md__list_focused_holo.9.png, md__list_longpressed_holo.9.png, md__list_pressed_holo_dark.9.png... (3 more)">
|
|
<location
|
|
file="src/main/res/drawable-hdpi"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconDensities"
|
|
message="Missing the following drawables in `drawable-mdpi`: ic_contact_picture.png, ic_menu_pin.png, ic_stat_play_dark.png, ic_stat_play_light.png, list_focused_holo.9.png... (17 more)">
|
|
<location
|
|
file="src/main/res/drawable-mdpi"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconDensities"
|
|
message="Missing the following drawables in `drawable-xhdpi`: ic_contact_picture.png, ic_stat_play_dark.png, ic_stat_play_light.png, list_focused_holo.9.png, list_longpressed_holo.9.png... (9 more)">
|
|
<location
|
|
file="src/main/res/drawable-xhdpi"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconDensities"
|
|
message="Missing the following drawables in `drawable-xxhdpi`: ic_drag_queue.png, ic_menu_pin.png, ic_stat_play_dark.png, ic_stat_play_light.png, ic_stat_ultrasonic.png... (19 more)">
|
|
<location
|
|
file="src/main/res/drawable-xxhdpi"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconDuplicates"
|
|
message="The following unrelated icon files have identical contents: list_longpressed_holo.9.png, md__list_longpressed_holo.9.png">
|
|
<location
|
|
file="src/main/res/drawable-xhdpi/md__list_longpressed_holo.9.png"/>
|
|
<location
|
|
file="src/main/res/drawable-hdpi/list_longpressed_holo.9.png"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconDuplicates"
|
|
message="The following unrelated icon files have identical contents: list_pressed_holo_dark.9.png, list_pressed_holo_light.9.png, md__list_pressed_holo_dark.9.png">
|
|
<location
|
|
file="src/main/res/drawable-xhdpi/md__list_pressed_holo_dark.9.png"/>
|
|
<location
|
|
file="src/main/res/drawable-hdpi/list_pressed_holo_light.9.png"/>
|
|
<location
|
|
file="src/main/res/drawable-hdpi/list_pressed_holo_dark.9.png"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="IconMissingDensityFolder"
|
|
message="Missing density variation folders in `src/main/res`: drawable-xxhdpi">
|
|
<location
|
|
file="src/main/res"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="GoogleAppIndexingWarning"
|
|
message="App is not indexable by Google Search; consider adding at least one Activity with an ACTION-VIEW intent filter. See issue explanation for more details."
|
|
errorLine1=" <application"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/AndroidManifest.xml"
|
|
line="23"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ViewConstructor"
|
|
message="Custom view `AlbumView` is missing constructor used by tools: `(Context)` or `(Context,AttributeSet)` or `(Context,AttributeSet,int)`"
|
|
errorLine1="public class AlbumView extends UpdateView"
|
|
errorLine2=" ~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/view/AlbumView.java"
|
|
line="41"
|
|
column="14"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ViewConstructor"
|
|
message="Custom view `RotateLoadingLayout` is missing constructor used by tools: `(Context)` or `(Context,AttributeSet)` or `(Context,AttributeSet,int)`"
|
|
errorLine1="public class RotateLoadingLayout extends LoadingLayout {"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/internal/RotateLoadingLayout.java"
|
|
line="30"
|
|
column="14"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ClickableViewAccessibility"
|
|
message="`org/moire/ultrasonic/view/AutoRepeatButton$2#onTouch` should call `View#performClick` when a click is detected"
|
|
errorLine1=" public boolean onTouch(View v, MotionEvent event)"
|
|
errorLine2=" ~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/view/AutoRepeatButton.java"
|
|
line="38"
|
|
column="19"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ClickableViewAccessibility"
|
|
message="`org/moire/ultrasonic/activity/DownloadActivity$1#onTouch` should call `View#performClick` when a click is detected"
|
|
errorLine1=" public boolean onTouch(View view, MotionEvent me)"
|
|
errorLine2=" ~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/DownloadActivity.java"
|
|
line="168"
|
|
column="19"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ClickableViewAccessibility"
|
|
message="`org/moire/ultrasonic/activity/DownloadActivity$15#onTouch` should call `View#performClick` when a click is detected"
|
|
errorLine1=" public boolean onTouch(final View view, final MotionEvent motionEvent)"
|
|
errorLine2=" ~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/DownloadActivity.java"
|
|
line="486"
|
|
column="20"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ClickableViewAccessibility"
|
|
message="`com/mobeta/android/dslv/DragSortController#onTouch` should call `View#performClick` when a click is detected"
|
|
errorLine1=" public boolean onTouch(View v, MotionEvent ev) {"
|
|
errorLine2=" ~~~~~~~">
|
|
<location
|
|
file="src/main/java/com/mobeta/android/dslv/DragSortController.java"
|
|
line="238"
|
|
column="20"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ClickableViewAccessibility"
|
|
message="`org/moire/ultrasonic/activity/SubsonicTabActivity$SwipeDetector#onTouch` should call `View#performClick` when a click is detected"
|
|
errorLine1=" public boolean onTouch(View v, MotionEvent event)"
|
|
errorLine2=" ~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/SubsonicTabActivity.java"
|
|
line="1388"
|
|
column="18"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/album_buttons.xml"
|
|
line="9"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/album_buttons.xml"
|
|
line="17"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/album_buttons.xml"
|
|
line="25"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/album_buttons.xml"
|
|
line="33"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/album_buttons.xml"
|
|
line="41"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/album_buttons.xml"
|
|
line="49"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/album_buttons.xml"
|
|
line="57"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/album_buttons.xml"
|
|
line="65"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/album_buttons.xml"
|
|
line="73"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/album_list_item.xml"
|
|
line="9"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/album_list_item.xml"
|
|
line="42"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x1.xml"
|
|
line="10"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x1.xml"
|
|
line="76"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x1.xml"
|
|
line="85"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x1.xml"
|
|
line="94"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x2.xml"
|
|
line="10"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x2.xml"
|
|
line="97"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x2.xml"
|
|
line="106"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x2.xml"
|
|
line="115"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x3.xml"
|
|
line="10"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x3.xml"
|
|
line="82"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x3.xml"
|
|
line="91"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x3.xml"
|
|
line="100"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x4.xml"
|
|
line="10"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x4.xml"
|
|
line="83"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x4.xml"
|
|
line="92"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x4.xml"
|
|
line="101"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/chat.xml"
|
|
line="40"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/chat_item.xml"
|
|
line="7"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="64"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView a:id="@+id/help_back""
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/help.xml"
|
|
line="12"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView a:id="@+id/help_stop""
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/help.xml"
|
|
line="18"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView a:id="@+id/help_forward""
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/help.xml"
|
|
line="24"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView a:layout_width="wrap_content" a:layout_height="wrap_content""
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="10"
|
|
column="3"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1="<ImageView"
|
|
errorLine2="^">
|
|
<location
|
|
file="src/main/res/layout/media_buttons.xml"
|
|
line="12"
|
|
column="1"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/media_buttons.xml"
|
|
line="32"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/media_buttons.xml"
|
|
line="42"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/media_buttons.xml"
|
|
line="52"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/media_buttons.xml"
|
|
line="72"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/notification.xml"
|
|
line="12"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/notification.xml"
|
|
line="75"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/notification.xml"
|
|
line="85"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/notification.xml"
|
|
line="95"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/notification.xml"
|
|
line="105"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/notification_large.xml"
|
|
line="11"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/notification_large.xml"
|
|
line="48"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/notification_large.xml"
|
|
line="99"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/notification_large.xml"
|
|
line="108"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageButton"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/notification_large.xml"
|
|
line="117"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/now_playing.xml"
|
|
line="20"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/now_playing.xml"
|
|
line="56"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/pull_to_refresh_header_horizontal.xml"
|
|
line="13"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/pull_to_refresh_header_vertical.xml"
|
|
line="18"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/select_artist_header.xml"
|
|
line="12"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/song_list_item.xml"
|
|
line="18"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/song_list_item.xml"
|
|
line="28"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="ContentDescription"
|
|
message="[Accessibility] Missing `contentDescription` attribute on image"
|
|
errorLine1=" <ImageView"
|
|
errorLine2=" ^">
|
|
<location
|
|
file="src/main/res/layout/video_list_item.xml"
|
|
line="19"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="SetTextI18n"
|
|
message="Do not concatenate text displayed with `setText`. Use resource string with placeholders."
|
|
errorLine1=" freqTextView.setText((equalizer.getCenterFreq(band) / 1000) + " Hz");"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/EqualizerActivity.java"
|
|
line="211"
|
|
column="27"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="SetTextI18n"
|
|
message="String literal in `setText` can not be translated. Use Android resources instead."
|
|
errorLine1=" freqTextView.setText((equalizer.getCenterFreq(band) / 1000) + " Hz");"
|
|
errorLine2=" ~~~~~">
|
|
<location
|
|
file="src/main/java/org/moire/ultrasonic/activity/EqualizerActivity.java"
|
|
line="211"
|
|
column="68"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="HardcodedText"
|
|
message="[I18N] Hardcoded string "Title", should use `@string` resource"
|
|
errorLine1=" a:text="Title""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x1.xml"
|
|
line="46"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="HardcodedText"
|
|
message="[I18N] Hardcoded string "Artist", should use `@string` resource"
|
|
errorLine1=" a:text="Artist""
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x1.xml"
|
|
line="64"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="HardcodedText"
|
|
message="[I18N] Hardcoded string "Title", should use `@string` resource"
|
|
errorLine1=" a:text="Title""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x2.xml"
|
|
line="48"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="HardcodedText"
|
|
message="[I18N] Hardcoded string "Artist", should use `@string` resource"
|
|
errorLine1=" a:text="Artist""
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x2.xml"
|
|
line="65"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="HardcodedText"
|
|
message="[I18N] Hardcoded string "Album", should use `@string` resource"
|
|
errorLine1=" a:text="Album""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x2.xml"
|
|
line="82"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="HardcodedText"
|
|
message="[I18N] Hardcoded string "Title", should use `@string` resource"
|
|
errorLine1=" a:text="Title""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x3.xml"
|
|
line="50"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="HardcodedText"
|
|
message="[I18N] Hardcoded string "Artist", should use `@string` resource"
|
|
errorLine1=" a:text="Artist""
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x3.xml"
|
|
line="66"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="HardcodedText"
|
|
message="[I18N] Hardcoded string "Title", should use `@string` resource"
|
|
errorLine1=" a:text="Title""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x4.xml"
|
|
line="51"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="HardcodedText"
|
|
message="[I18N] Hardcoded string "Artist", should use `@string` resource"
|
|
errorLine1=" a:text="Artist""
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x4.xml"
|
|
line="67"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="HardcodedText"
|
|
message="[I18N] Hardcoded string "0 / 0", should use `@string` resource"
|
|
errorLine1=" a:text="0 / 0""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="43"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="HardcodedText"
|
|
message="[I18N] Hardcoded string "0 dB", should use `@string` resource"
|
|
errorLine1=" a:text="0 dB"
|
|
"
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/equalizer_bar.xml"
|
|
line="19"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="HardcodedText"
|
|
message="[I18N] Hardcoded string "Share", should use `@string` resource"
|
|
errorLine1=" a:title="Share"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/menu/select_song_context.xml"
|
|
line="24"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlCompat"
|
|
message="To support older versions than API 17 (project specifies 14) you should *also* add `a:layout_toRightOf="@id/chat_avatar"`"
|
|
errorLine1=" a:layout_toEndOf="@id/chat_avatar""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item.xml"
|
|
line="16"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlCompat"
|
|
message="To support older versions than API 17 (project specifies 14) you should *also* add `a:layout_alignParentRight="false"`"
|
|
errorLine1=" a:layout_alignParentEnd="false""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="12"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlCompat"
|
|
message="To support older versions than API 17 (project specifies 14) you should *also* add `a:layout_toLeftOf="@id/chat_avatar"`"
|
|
errorLine1=" a:layout_toStartOf="@id/chat_avatar""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="13"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlCompat"
|
|
message="To support older versions than API 17 (project specifies 14) you should *also* add `a:layout_alignParentRight="true"`"
|
|
errorLine1=" a:layout_alignParentEnd="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="68"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlCompat"
|
|
message="To support older versions than API 17 (project specifies 14) you should *also* add `a:layout_toLeftOf="@id/chat_avatar"`"
|
|
errorLine1=" a:layout_toStartOf="@id/chat_avatar"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="69"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlCompat"
|
|
message="To support older versions than API 17 (project specifies 14) you should *also* add `android:layout_alignParentRight="false"`"
|
|
errorLine1=" android:layout_alignParentEnd="false"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/time_span_dialog.xml"
|
|
line="40"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:paddingLeft="3dip"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/album_list_item.xml"
|
|
line="14"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
|
|
errorLine1=" a:paddingRight="3dip" />"
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/album_list_item.xml"
|
|
line="50"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:paddingLeft="5dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x3.xml"
|
|
line="64"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:paddingLeft="5dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x4.xml"
|
|
line="65"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:paddingLeft="6dp" a:layout_width="fill_parent" a:layout_height="wrap_content""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="7"
|
|
column="3"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:gravity="center_vertical" a:paddingLeft="6dp" a:textAllCaps="true""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="31"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:gravity="center_vertical" a:paddingLeft="6dp" a:textAllCaps="true""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="52"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:gravity="center_vertical" a:paddingLeft="6dp" a:textAllCaps="true""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="68"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:gravity="center_vertical" a:paddingLeft="6dp" a:textAllCaps="true""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="114"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" android:paddingLeft="12dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/notification.xml"
|
|
line="26"
|
|
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="12dp""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/notification.xml"
|
|
line="27"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" android:paddingLeft="11.0dip" >"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/now_playing.xml"
|
|
line="33"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:paddingLeft="4dp"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/search_buttons.xml"
|
|
line="28"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:paddingLeft="4dp"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/search_buttons.xml"
|
|
line="40"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:paddingLeft="4dp"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/search_buttons.xml"
|
|
line="52"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
|
|
errorLine1=" a:paddingRight="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="23"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
|
|
errorLine1=" a:paddingRight="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="35"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
|
|
errorLine1=" a:paddingRight="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="46"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
|
|
errorLine1=" a:paddingRight="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="57"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
|
|
errorLine1=" a:paddingRight="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="68"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
|
|
errorLine1=" a:paddingRight="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="79"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:paddingLeft="6dp""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_artist_header.xml"
|
|
line="9"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:paddingLeft="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/share_list_item.xml"
|
|
line="41"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
|
|
errorLine1=" a:paddingRight="6dip"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="41"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:paddingLeft="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="57"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:paddingLeft="3dip" />"
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_list_item.xml"
|
|
line="14"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
|
|
errorLine1=" a:paddingRight="3dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_list_item.xml"
|
|
line="25"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
|
|
errorLine1=" a:paddingRight="3dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_list_item.xml"
|
|
line="35"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingLeft` you should probably also define `paddingRight` for right-to-left symmetry"
|
|
errorLine1=" a:paddingLeft="1dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_list_item.xml"
|
|
line="13"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlSymmetry"
|
|
message="When you define `paddingRight` you should probably also define `paddingLeft` for right-to-left symmetry"
|
|
errorLine1=" a:paddingRight="3dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_list_item.xml"
|
|
line="26"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`Gravity.START`" instead of "`Gravity.LEFT`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" lp.gravity = scrollDirection == Orientation.VERTICAL ? Gravity.TOP : Gravity.LEFT;"
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/internal/LoadingLayout.java"
|
|
line="92"
|
|
column="82"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`Gravity.END`" instead of "`Gravity.RIGHT`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" lp.gravity = scrollDirection == Orientation.VERTICAL ? Gravity.BOTTOM : Gravity.RIGHT;"
|
|
errorLine2=" ~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/internal/LoadingLayout.java"
|
|
line="102"
|
|
column="85"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`Gravity.END`" instead of "`Gravity.RIGHT`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" params.gravity = Gravity.TOP | Gravity.RIGHT;"
|
|
errorLine2=" ~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/PullToRefreshAdapterViewBase.java"
|
|
line="344"
|
|
column="43"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`Gravity.END`" instead of "`Gravity.RIGHT`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" params.gravity = Gravity.BOTTOM | Gravity.RIGHT;"
|
|
errorLine2=" ~~~~~">
|
|
<location
|
|
file="src/main/java/com/handmark/pulltorefresh/library/PullToRefreshAdapterViewBase.java"
|
|
line="359"
|
|
column="46"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="left|center_vertical""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/album_list_item.xml"
|
|
line="13"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="3dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="3dip"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/album_list_item.xml"
|
|
line="14"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="left|center_vertical""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/album_list_item.xml"
|
|
line="21"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="6dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="6dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/album_list_item.xml"
|
|
line="22"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="3dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="3dip">"
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/album_list_item.xml"
|
|
line="23"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="3dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="3dip" />"
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/album_list_item.xml"
|
|
line="50"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="5dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="5dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x3.xml"
|
|
line="64"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="5dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="5dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/appwidget4x4.xml"
|
|
line="65"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="left""
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item.xml"
|
|
line="30"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:gravity="center_vertical|left"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item.xml"
|
|
line="31"
|
|
column="24"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:gravity="center_vertical|left""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item.xml"
|
|
line="39"
|
|
column="24"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="left">"
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item.xml"
|
|
line="40"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginStart="6dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_marginLeft="6dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item.xml"
|
|
line="46"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:gravity="left"/>"
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item.xml"
|
|
line="50"
|
|
column="28"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:gravity="left"/>"
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item.xml"
|
|
line="63"
|
|
column="28"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="right""
|
|
errorLine2=" ~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="11"
|
|
column="27"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:gravity="center_vertical|right">"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="14"
|
|
column="20"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginEnd="6dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_marginRight="6dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="20"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:gravity="center_vertical|right""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="21"
|
|
column="24"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="right""
|
|
errorLine2=" ~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="22"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="right|end""
|
|
errorLine2=" ~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="34"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:gravity="center_vertical|right">"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="35"
|
|
column="24"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginStart="6dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_marginLeft="6dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="41"
|
|
column="17"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:gravity="center_vertical|right""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="43"
|
|
column="28"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="right"/>"
|
|
errorLine2=" ~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="46"
|
|
column="35"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:gravity="center_vertical|right""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="59"
|
|
column="28"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="right"/>"
|
|
errorLine2=" ~~~~~">
|
|
<location
|
|
file="src/main/res/layout/chat_item_reverse.xml"
|
|
line="60"
|
|
column="35"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:gravity="left""
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/res/layout-land/download.xml"
|
|
line="18"
|
|
column="24"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:gravity="left""
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/res/layout-port/download.xml"
|
|
line="18"
|
|
column="24"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_alignParentStart="true"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_alignParentLeft="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="31"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginEnd="6dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_marginRight="6dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="32"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_alignParentStart="true"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_alignParentLeft="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="40"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginEnd="6dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_marginRight="6dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="42"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_alignParentEnd="true"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_alignParentRight="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="50"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginStart="6dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_marginLeft="6dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="51"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_alignParentEnd="true"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_alignParentRight="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="59"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginStart="6dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_marginLeft="6dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="61"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_toStartOf="@+id/download_duration"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_toLeftOf="@+id/download_duration""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="70"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_toEndOf="@+id/download_position"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_toRightOf="@+id/download_position""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/download_button_bar_flipper.xml"
|
|
line="71"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_alignParentStart="true"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_alignParentLeft="true"
|
|
"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/equalizer_bar.xml"
|
|
line="14"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:gravity="right"
|
|
"
|
|
errorLine2=" ~~~~~">
|
|
<location
|
|
file="src/main/res/layout/equalizer_bar.xml"
|
|
line="22"
|
|
column="24"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_alignParentEnd="true"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_alignParentRight="true"
|
|
"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/equalizer_bar.xml"
|
|
line="26"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_toEndOf="@+id/equalizer.frequency"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_toRightOf="@+id/equalizer.frequency"
|
|
"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/equalizer_bar.xml"
|
|
line="27"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="6dp"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="6dp" a:layout_width="fill_parent" a:layout_height="wrap_content""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="7"
|
|
column="3"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginStart="10dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_marginLeft="10dip" a:layout_marginTop="6dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="18"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginStart="10dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_height="wrap_content" a:layout_marginLeft="10dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="22"
|
|
column="36"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="6dp"` to better support right-to-left layouts"
|
|
errorLine1=" a:gravity="center_vertical" a:paddingLeft="6dp" a:textAllCaps="true""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="31"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="6dp"` to better support right-to-left layouts"
|
|
errorLine1=" a:gravity="center_vertical" a:paddingLeft="6dp" a:textAllCaps="true""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="52"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="6dp"` to better support right-to-left layouts"
|
|
errorLine1=" a:gravity="center_vertical" a:paddingLeft="6dp" a:textAllCaps="true""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="68"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="6dp"` to better support right-to-left layouts"
|
|
errorLine1=" a:gravity="center_vertical" a:paddingLeft="6dp" a:textAllCaps="true""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/main_buttons.xml"
|
|
line="114"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="2dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="2dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/media_buttons.xml"
|
|
line="19"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="8dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="8dip"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/media_buttons.xml"
|
|
line="20"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="8dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="8dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/media_buttons.xml"
|
|
line="79"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="2dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="2dip"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/media_buttons.xml"
|
|
line="80"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:drawableStart="?attr/home"` to better support right-to-left layouts"
|
|
errorLine1=" android:drawableLeft="?attr/home""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/menu_main.xml"
|
|
line="25"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:drawableStart="?attr/browse"` to better support right-to-left layouts"
|
|
errorLine1=" android:drawableLeft="?attr/browse""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/menu_main.xml"
|
|
line="33"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:drawableStart="?attr/search"` to better support right-to-left layouts"
|
|
errorLine1=" android:drawableLeft="?attr/search""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/menu_main.xml"
|
|
line="41"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:drawableStart="?attr/playlists"` to better support right-to-left layouts"
|
|
errorLine1=" android:drawableLeft="?attr/playlists""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/menu_main.xml"
|
|
line="49"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:drawableStart="?attr/share"` to better support right-to-left layouts"
|
|
errorLine1=" android:drawableLeft="?attr/share""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/menu_main.xml"
|
|
line="57"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:drawableStart="?attr/bookmark"` to better support right-to-left layouts"
|
|
errorLine1=" android:drawableLeft="?attr/bookmark""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/menu_main.xml"
|
|
line="65"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:drawableStart="?attr/chat"` to better support right-to-left layouts"
|
|
errorLine1=" android:drawableLeft="?attr/chat""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/menu_main.xml"
|
|
line="73"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:drawableStart="?attr/media_play"` to better support right-to-left layouts"
|
|
errorLine1=" android:drawableLeft="?attr/media_play""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/menu_main.xml"
|
|
line="81"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:drawableStart="?attr/podcasts"` to better support right-to-left layouts"
|
|
errorLine1=" android:drawableLeft="?attr/podcasts""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/menu_main.xml"
|
|
line="89"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:drawableStart="?attr/settings"` to better support right-to-left layouts"
|
|
errorLine1=" android:drawableLeft="?attr/settings""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/menu_main.xml"
|
|
line="104"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:drawableStart="?attr/about"` to better support right-to-left layouts"
|
|
errorLine1=" android:drawableLeft="?attr/about""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/menu_main.xml"
|
|
line="112"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:drawableStart="?attr/exit"` to better support right-to-left layouts"
|
|
errorLine1=" android:drawableLeft="?attr/exit""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/menu_main.xml"
|
|
line="120"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:paddingStart="11.0dip"` to better support right-to-left layouts"
|
|
errorLine1=" android:paddingLeft="11.0dip" >"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/now_playing.xml"
|
|
line="33"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" android:layout_gravity="left""
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/res/layout/now_playing.xml"
|
|
line="39"
|
|
column="37"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" android:layout_gravity="left""
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/res/layout/now_playing.xml"
|
|
line="49"
|
|
column="37"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" android:layout_gravity="center|right""
|
|
errorLine2=" ~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/now_playing.xml"
|
|
line="60"
|
|
column="33"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:layout_marginEnd="5dip"` to better support right-to-left layouts"
|
|
errorLine1=" android:layout_marginRight="5dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/now_playing.xml"
|
|
line="61"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" android:gravity="left|center_vertical"
|
|
"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/playlist_list_item.xml"
|
|
line="13"
|
|
column="20"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" android:layout_gravity="left|center_vertical" >"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/pull_to_refresh_header_vertical.xml"
|
|
line="16"
|
|
column="37"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:drawableStart="?attr/search"` to better support right-to-left layouts"
|
|
errorLine1=" a:drawableLeft="?attr/search""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/search_buttons.xml"
|
|
line="13"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="4dp"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="4dp"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/search_buttons.xml"
|
|
line="28"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="4dp"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="4dp"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/search_buttons.xml"
|
|
line="40"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="4dp"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="4dp"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/search_buttons.xml"
|
|
line="52"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_alignParentStart="true"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_alignParentLeft="true""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="10"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginEnd="10dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_marginRight="10dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="12"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_toEndOf="@+id/select_album_art"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_toRightOf="@+id/select_album_art""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="21"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="4dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="23"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_toEndOf="@+id/select_album_art"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_toRightOf="@+id/select_album_art""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="33"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="4dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="35"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_toEndOf="@+id/select_album_art"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_toRightOf="@+id/select_album_art""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="44"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="4dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="46"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_toEndOf="@+id/select_album_art"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_toRightOf="@+id/select_album_art""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="55"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="4dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="57"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_toEndOf="@+id/select_album_art"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_toRightOf="@+id/select_album_art""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="66"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="4dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="68"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_toEndOf="@+id/select_album_art"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_toRightOf="@+id/select_album_art""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="77"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="4dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_album_header.xml"
|
|
line="79"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="6dp"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="6dp""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_artist_header.xml"
|
|
line="9"
|
|
column="5"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginStart="10dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_marginLeft="10dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_artist_header.xml"
|
|
line="27"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginStart="10dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_marginLeft="10dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/select_artist_header.xml"
|
|
line="36"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="left|center_vertical""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/share_list_item.xml"
|
|
line="22"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="left|center_vertical""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/share_list_item.xml"
|
|
line="38"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="4dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/share_list_item.xml"
|
|
line="41"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="left|center_vertical""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="19"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="left|center_vertical""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="26"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="4dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="30"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="2dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="2dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="31"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="right|center_vertical""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="39"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="6dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="6dip"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="41"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="left|center_vertical""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="54"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="4dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="57"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="right|center_vertical""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="65"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="3dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="3dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="66"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="9dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="9dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_details.xml"
|
|
line="67"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="3dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="3dip" />"
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_list_item.xml"
|
|
line="14"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="3dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="3dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_list_item.xml"
|
|
line="25"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="3dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="3dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/song_list_item.xml"
|
|
line="35"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:layout_marginEnd="6dp"` to better support right-to-left layouts"
|
|
errorLine1=" a:layout_marginRight="6dp" />"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/tab_progress.xml"
|
|
line="15"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" android:gravity="left""
|
|
errorLine2=" ~~~~">
|
|
<location
|
|
file="src/main/res/layout/time_span_dialog.xml"
|
|
line="38"
|
|
column="30"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:layout_toEndOf="@+id/timeSpanEditText"` to better support right-to-left layouts"
|
|
errorLine1=" android:layout_toRightOf="@+id/timeSpanEditText"/>"
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/time_span_dialog.xml"
|
|
line="47"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:layout_marginStart="4dp"` to better support right-to-left layouts"
|
|
errorLine1=" android:layout_marginLeft="4dp""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/update_playlist.xml"
|
|
line="15"
|
|
column="4"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:layout_marginStart="4dp"` to better support right-to-left layouts"
|
|
errorLine1=" android:layout_marginLeft="4dp""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/update_playlist.xml"
|
|
line="24"
|
|
column="4"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:layout_marginStart="4dp"` to better support right-to-left layouts"
|
|
errorLine1=" android:layout_marginLeft="4dp""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/update_playlist.xml"
|
|
line="37"
|
|
column="4"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:layout_marginStart="4dp"` to better support right-to-left layouts"
|
|
errorLine1=" android:layout_marginLeft="4dp""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/update_playlist.xml"
|
|
line="46"
|
|
column="4"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:layout_marginStart="4dp"` to better support right-to-left layouts"
|
|
errorLine1=" android:layout_marginLeft="4dp""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/update_playlist.xml"
|
|
line="59"
|
|
column="4"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `android:layout_marginStart="4dp"` to better support right-to-left layouts"
|
|
errorLine1=" android:layout_marginLeft="4dp""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/update_playlist.xml"
|
|
line="67"
|
|
column="4"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`start`" instead of "`left`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="left|center_vertical""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_details.xml"
|
|
line="19"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="4dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="4dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_details.xml"
|
|
line="22"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="2dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="2dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_details.xml"
|
|
line="23"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Use "`end`" instead of "`right`" to ensure correct behavior in right-to-left locales"
|
|
errorLine1=" a:layout_gravity="right|center_vertical""
|
|
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_details.xml"
|
|
line="31"
|
|
column="31"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="2dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="2dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_details.xml"
|
|
line="32"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="6dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="6dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_details.xml"
|
|
line="33"
|
|
column="13"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingStart="1dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingLeft="1dip""
|
|
errorLine2=" ~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_list_item.xml"
|
|
line="13"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlHardcoded"
|
|
message="Consider adding `a:paddingEnd="3dip"` to better support right-to-left layouts"
|
|
errorLine1=" a:paddingRight="3dip""
|
|
errorLine2=" ~~~~~~~~~~~~~~">
|
|
<location
|
|
file="src/main/res/layout/video_list_item.xml"
|
|
line="26"
|
|
column="9"/>
|
|
</issue>
|
|
|
|
<issue
|
|
id="RtlEnabled"
|
|
message="The project references RTL attributes, but does not explicitly enable or disable RTL support with `android:supportsRtl` in the manifest">
|
|
<location
|
|
file="src/main/AndroidManifest.xml"/>
|
|
</issue>
|
|
|
|
</issues>
|