From c5dbca3bca303a2ea0d8b5d28e34385b0d0a0cff Mon Sep 17 00:00:00 2001 From: Gaurav Ujjwal Date: Tue, 4 May 2021 15:18:41 +0530 Subject: [PATCH] Fix Lint issues: 1. Remove unused resources 2. Correct data type for framebuffer size 3. Use Compat library for drawable and ImageView tint --- app/src/main/cpp/native-vnc.cpp | 8 +++++--- .../com/gaurav/avnc/ui/home/TabController.kt | 3 ++- .../com/gaurav/avnc/ui/prefs/InfoFragment.kt | 2 +- .../java/com/gaurav/avnc/util/Debugging.kt | 2 +- .../gaurav/avnc/viewmodel/PrefsViewModel.kt | 3 +-- .../main/java/com/gaurav/avnc/vnc/XKeySym.kt | 2 +- app/src/main/res/drawable/ic_dashboard.xml | 9 --------- app/src/main/res/drawable/ic_forward.xml | 12 ------------ app/src/main/res/drawable/ic_history.xml | 9 --------- app/src/main/res/drawable/ic_home.xml | 9 --------- app/src/main/res/drawable/ic_more.xml | 9 --------- app/src/main/res/drawable/ic_notifications.xml | 9 --------- app/src/main/res/drawable/ic_touch.xml | 9 --------- app/src/main/res/layout/activity_vnc.xml | 4 ++-- app/src/main/res/layout/fragment_info.xml | 4 ++-- .../fragment_profile_editor_advanced.xml | 4 ++-- app/src/main/res/layout/server_profile.xml | 8 ++++---- app/src/main/res/values-night/dimens.xml | 1 - app/src/main/res/values/dimens.xml | 1 - app/src/main/res/values/strings.xml | 18 ------------------ 20 files changed, 21 insertions(+), 105 deletions(-) delete mode 100644 app/src/main/res/drawable/ic_dashboard.xml delete mode 100644 app/src/main/res/drawable/ic_forward.xml delete mode 100644 app/src/main/res/drawable/ic_history.xml delete mode 100644 app/src/main/res/drawable/ic_home.xml delete mode 100644 app/src/main/res/drawable/ic_more.xml delete mode 100644 app/src/main/res/drawable/ic_notifications.xml delete mode 100644 app/src/main/res/drawable/ic_touch.xml diff --git a/app/src/main/cpp/native-vnc.cpp b/app/src/main/cpp/native-vnc.cpp index 9ebab00..abff789 100644 --- a/app/src/main/cpp/native-vnc.cpp +++ b/app/src/main/cpp/native-vnc.cpp @@ -262,20 +262,22 @@ static void onFinishedFrameBufferUpdate(rfbClient *client) { */ static rfbBool onMallocFrameBuffer(rfbClient *client) { - auto allocSize = (uint64_t) client->width * client->height * client->format.bitsPerPixel / 8; + auto requestedSize = (uint64_t) client->width * client->height * client->format.bitsPerPixel / 8; - if (allocSize >= SIZE_MAX) { + if (requestedSize >= SIZE_MAX) { rfbClientErr("CRITICAL: cannot allocate frameBuffer, requested size is too large\n"); errno = EPROTO; return FALSE; } + auto allocSize = (size_t) requestedSize; + LOCK(client->fbMutex); { if (client->frameBuffer) free(client->frameBuffer); - client->frameBuffer = static_cast(malloc((size_t) allocSize)); + client->frameBuffer = static_cast(malloc(allocSize)); if (client->frameBuffer) { client->fbRealWidth = client->width; diff --git a/app/src/main/java/com/gaurav/avnc/ui/home/TabController.kt b/app/src/main/java/com/gaurav/avnc/ui/home/TabController.kt index 1841ec2..6ea9a01 100644 --- a/app/src/main/java/com/gaurav/avnc/ui/home/TabController.kt +++ b/app/src/main/java/com/gaurav/avnc/ui/home/TabController.kt @@ -8,6 +8,7 @@ package com.gaurav.avnc.ui.home +import androidx.core.content.ContextCompat import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentPagerAdapter @@ -45,7 +46,7 @@ class TabController(val fragMgr: FragmentManager, private val pager: ViewPager, discoveryTab = tabLayout.getTabAt(1)!! pageList.forEachIndexed { i, p -> - tabLayout.getTabAt(i)?.icon = tabLayout.context.getDrawable(p.tabIconId) + tabLayout.getTabAt(i)?.icon = ContextCompat.getDrawable(tabLayout.context, p.tabIconId) } } diff --git a/app/src/main/java/com/gaurav/avnc/ui/prefs/InfoFragment.kt b/app/src/main/java/com/gaurav/avnc/ui/prefs/InfoFragment.kt index 4816569..73705ce 100644 --- a/app/src/main/java/com/gaurav/avnc/ui/prefs/InfoFragment.kt +++ b/app/src/main/java/com/gaurav/avnc/ui/prefs/InfoFragment.kt @@ -58,7 +58,7 @@ abstract class InfoFragment : Fragment() { override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) { menu.add(getString(android.R.string.copy)) .setOnMenuItemClickListener { copyToClipboard(); true } - .setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS) + .setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM) } private fun copyToClipboard() { diff --git a/app/src/main/java/com/gaurav/avnc/util/Debugging.kt b/app/src/main/java/com/gaurav/avnc/util/Debugging.kt index 155fc53..c196fda 100644 --- a/app/src/main/java/com/gaurav/avnc/util/Debugging.kt +++ b/app/src/main/java/com/gaurav/avnc/util/Debugging.kt @@ -52,7 +52,7 @@ object Debugging { val e = KeyEvent(KeyEvent.ACTION_DOWN, i) val s = String.format("%4d %-40s %5d %5b %c \n", - i, KeyEvent.keyCodeToString(i), e.unicodeChar, e.isPrintingKey, e.displayLabel); + i, KeyEvent.keyCodeToString(i), e.unicodeChar, e.isPrintingKey, e.displayLabel) builder.append(s) } diff --git a/app/src/main/java/com/gaurav/avnc/viewmodel/PrefsViewModel.kt b/app/src/main/java/com/gaurav/avnc/viewmodel/PrefsViewModel.kt index 8ba72ac..4b0c69f 100644 --- a/app/src/main/java/com/gaurav/avnc/viewmodel/PrefsViewModel.kt +++ b/app/src/main/java/com/gaurav/avnc/viewmodel/PrefsViewModel.kt @@ -39,8 +39,7 @@ class PrefsViewModel(app: Application) : BaseViewModel(app) { * Currently we are only exporting server profiles but preferences can be * exported in future. * - * Importing/Exporting is done in background and [isDoingIE], [lastIEResult] - * are used to track the work. + * Importing/Exporting is done on background thread. **************************************************************************/ @Serializable diff --git a/app/src/main/java/com/gaurav/avnc/vnc/XKeySym.kt b/app/src/main/java/com/gaurav/avnc/vnc/XKeySym.kt index 7076f37..8710c49 100644 --- a/app/src/main/java/com/gaurav/avnc/vnc/XKeySym.kt +++ b/app/src/main/java/com/gaurav/avnc/vnc/XKeySym.kt @@ -1,4 +1,4 @@ -@file:Suppress("unused","SpellCheckingInspection") +@file:Suppress("unused", "SpellCheckingInspection") /** * X Key Symbols. diff --git a/app/src/main/res/drawable/ic_dashboard.xml b/app/src/main/res/drawable/ic_dashboard.xml deleted file mode 100644 index 106c382..0000000 --- a/app/src/main/res/drawable/ic_dashboard.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_forward.xml b/app/src/main/res/drawable/ic_forward.xml deleted file mode 100644 index aedf046..0000000 --- a/app/src/main/res/drawable/ic_forward.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable/ic_history.xml b/app/src/main/res/drawable/ic_history.xml deleted file mode 100644 index e6a17a1..0000000 --- a/app/src/main/res/drawable/ic_history.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_home.xml b/app/src/main/res/drawable/ic_home.xml deleted file mode 100644 index 19e206e..0000000 --- a/app/src/main/res/drawable/ic_home.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_more.xml b/app/src/main/res/drawable/ic_more.xml deleted file mode 100644 index 0030829..0000000 --- a/app/src/main/res/drawable/ic_more.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_notifications.xml b/app/src/main/res/drawable/ic_notifications.xml deleted file mode 100644 index afb9ddb..0000000 --- a/app/src/main/res/drawable/ic_notifications.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_touch.xml b/app/src/main/res/drawable/ic_touch.xml deleted file mode 100644 index 4e51fc0..0000000 --- a/app/src/main/res/drawable/ic_touch.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/layout/activity_vnc.xml b/app/src/main/res/layout/activity_vnc.xml index a8ec9b4..08235bf 100644 --- a/app/src/main/res/layout/activity_vnc.xml +++ b/app/src/main/res/layout/activity_vnc.xml @@ -116,11 +116,11 @@ android:layout_height="60dp" android:contentDescription="@string/desc_disconnected_icon" android:src="@drawable/ic_warning" - android:tint="?attr/colorError" app:isVisible="@{viewModel.clientState == State.Disconnected}" app:layout_constraintBottom_toTopOf="@id/client_state" app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" /> + app:layout_constraintStart_toStartOf="parent" + app:tint="?attr/colorError" /> + android:textSize="12sp" + android:typeface="monospace" /> \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_profile_editor_advanced.xml b/app/src/main/res/layout/fragment_profile_editor_advanced.xml index 25e1802..93d50aa 100644 --- a/app/src/main/res/layout/fragment_profile_editor_advanced.xml +++ b/app/src/main/res/layout/fragment_profile_editor_advanced.xml @@ -167,11 +167,11 @@ android:layout_marginStart="@dimen/margin_normal" android:importantForAccessibility="no" android:src="@drawable/ic_shield" - android:tint="?colorControlNormal" android:tintMode="src_in" app:layout_constraintBottom_toBottomOf="@id/security" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="@id/security" /> + app:layout_constraintTop_toTopOf="@id/security" + app:tint="?colorControlNormal" /> + app:layout_constraintTop_toTopOf="@id/profile_address" + app:tint="?android:textColorSecondary" /> + app:layout_constraintTop_toTopOf="@id/profile_address" + app:tint="?android:textColorSecondary" /> diff --git a/app/src/main/res/values-night/dimens.xml b/app/src/main/res/values-night/dimens.xml index 66b55c0..9ecf311 100644 --- a/app/src/main/res/values-night/dimens.xml +++ b/app/src/main/res/values-night/dimens.xml @@ -7,7 +7,6 @@ --> - 14dp 1dp 1dp \ No newline at end of file diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index bd8c2ed..ba03591 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -16,7 +16,6 @@ 48dp 48dp 24dp - 4dp 2dp 0dp 16dp diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 296c008..657abde 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -13,21 +13,16 @@ Duplicate Edit Delete - Copy Copy Host Copy Name Advanced Save - Less Settings Edit Server - SSH Tunnel Undo Cancel Credentials required Remember - Servers - Discovery Export Import Change @@ -35,24 +30,14 @@ Unknown SSH Host Host Key changed! Continue - Export Passwords Delete current Servers before Import - Name - Host - Port Username Password View-only Mode Hide Remote Cursor - Color quality - Image quality - Security Use Repeater - ID Private Key - Key Password - Auth Type Connect to a Server Name (e.g. Work PC) @@ -62,7 +47,6 @@ Server ID Username Password - Private Key Key Password Server added. @@ -78,7 +62,6 @@ Copied! Open Navigation Drawer Disconnected state indicator icon - Connect to this URL Add Server Show Keyboard Show Virtual Keys @@ -92,7 +75,6 @@ Discovery can automatically find supported servers\nrunning on your network. - Settings Appearance Look and feel Remote Display