Further refactoring and code cleanup

This commit is contained in:
Arty Bishop committed 2020-10-06 23:24:16 +01:00
1 parent b87f2a6e72
commit 4b050e21f0
72 files changed
+546 -988

No files matched your search

+7 -13
View File
@@ -4,23 +4,17 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.coordinatorlayout.widget.CoordinatorLayout
android:layout_width="0dp"
<androidx.fragment.app.FragmentContainerView
android:id="@+id/nav_frag"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="match_parent"
android:layout_height="0dp"
app:defaultNavHost="true"
app:layout_constraintBottom_toTopOf="@+id/nav_bottom"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<androidx.fragment.app.FragmentContainerView
android:id="@+id/nav_frag"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:defaultNavHost="true"
app:navGraph="@navigation/nav_graph" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>
app:layout_constraintTop_toTopOf="parent"
app:navGraph="@navigation/nav_graph" />
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/nav_bottom"
+17 -17
View File
@@ -29,34 +29,34 @@
android:layout_height="wrap_content">
<TextView
android:id="@+id/tv_about_title"
android:id="@+id/title"
style="@style/AboutTitle"
android:layout_marginStart="4dp"
android:layout_marginEnd="16dp"
android:text="@string/app_name"
app:layout_constraintBottom_toBottomOf="@+id/img_about"
app:layout_constraintBottom_toBottomOf="@+id/title_img"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toEndOf="@+id/img_about"
app:layout_constraintTop_toTopOf="@+id/img_about" />
app:layout_constraintStart_toEndOf="@+id/title_img"
app:layout_constraintTop_toTopOf="@+id/title_img" />
<ImageView
android:id="@+id/img_about"
android:id="@+id/title_img"
android:layout_width="42dp"
android:layout_height="42dp"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
android:layout_marginEnd="4dp"
android:contentDescription="@string/placeholder"
android:src="@drawable/ic_sputnik"
app:layout_constraintEnd_toStartOf="@+id/tv_about_title"
android:src="@drawable/ic_menu_sat"
app:layout_constraintEnd_toStartOf="@+id/title"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_about_version"
android:id="@+id/version"
style="@style/AboutSubtitle"
android:layout_marginStart="32dp"
android:layout_marginTop="8dp"
@@ -64,10 +64,10 @@
android:text="@string/app_version"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_about_title" />
app:layout_constraintTop_toBottomOf="@+id/title" />
<TextView
android:id="@+id/tv_about_subtitle"
android:id="@+id/subtitle"
style="@style/AboutSubtitle"
android:layout_marginStart="32dp"
android:layout_marginTop="8dp"
@@ -75,19 +75,19 @@
android:text="@string/about_subtitle"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_about_version" />
app:layout_constraintTop_toBottomOf="@+id/version" />
<TextView
android:id="@+id/tv_about_thanks"
android:id="@+id/thanks"
style="@style/AboutSubtitle"
android:layout_marginTop="16dp"
android:text="@string/about_thanks_to"
app:layout_constraintEnd_toEndOf="@+id/tv_about_subtitle"
app:layout_constraintStart_toStartOf="@+id/tv_about_subtitle"
app:layout_constraintTop_toBottomOf="@+id/tv_about_subtitle" />
app:layout_constraintEnd_toEndOf="@+id/subtitle"
app:layout_constraintStart_toStartOf="@+id/subtitle"
app:layout_constraintTop_toBottomOf="@+id/subtitle" />
<TextView
android:id="@+id/tv_about_message"
android:id="@+id/message"
style="@style/AboutRegular"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
@@ -97,7 +97,7 @@
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_about_thanks" />
app:layout_constraintTop_toBottomOf="@+id/thanks" />
</androidx.constraintlayout.widget.ConstraintLayout>
</ScrollView>
@@ -0,0 +1,104 @@
<?xml version="1.0" encoding="utf-8"?><!--
~ Look4Sat. Amateur radio and weather satellite tracker and passes predictor for Android.
~ Copyright (C) 2019, 2020 Arty Bishop (bishop.arty@gmail.com)
~
~ This program is free software; you can redistribute it and/or modify
~ it under the terms of the GNU General Public License as published by
~ the Free Software Foundation; either version 2 of the License, or
~ (at your option) any later version.
~
~ This program is distributed in the hope that it will be useful,
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
~ GNU General Public License for more details.
~
~ You should have received a copy of the GNU General Public License along
~ with this program; if not, write to the Free Software Foundation, Inc.,
~ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-->
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/import_msg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:text="@string/sat_import"
android:textSize="18sp"
app:layout_constraintBottom_toBottomOf="@+id/import_web"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/import_web" />
<ImageButton
android:id="@+id/import_web"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginEnd="4dp"
android:backgroundTint="@color/themeDark"
android:contentDescription="@string/placeholder"
android:src="@drawable/ic_update_web"
app:layout_constraintBottom_toBottomOf="@+id/import_file"
app:layout_constraintEnd_toStartOf="@+id/import_file"
app:layout_constraintTop_toTopOf="@+id/import_file" />
<ImageButton
android:id="@+id/import_file"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginEnd="8dp"
android:backgroundTint="@color/themeDark"
android:contentDescription="@string/placeholder"
android:src="@drawable/ic_update_file"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<SearchView
android:id="@+id/search_bar"
android:layout_width="0dp"
android:layout_height="0dp"
android:iconifiedByDefault="false"
android:queryHint="@string/dialog_entries_hint"
app:layout_constraintBottom_toBottomOf="@+id/select_all"
app:layout_constraintEnd_toStartOf="@+id/select_all"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/select_all" />
<ImageButton
android:id="@+id/select_all"
android:layout_width="48dp"
android:layout_height="48dp"
android:backgroundTint="@color/themeDark"
android:contentDescription="@string/placeholder"
android:src="@drawable/ic_select_all"
app:layout_constraintEnd_toEndOf="@+id/import_file"
app:layout_constraintTop_toBottomOf="@+id/import_file" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/entries_recycler"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/search_bar" />
</androidx.constraintlayout.widget.ConstraintLayout>
<com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/entries_fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center_horizontal"
android:layout_margin="16dp"
android:src="@drawable/ic_proceed" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>
@@ -2,13 +2,12 @@
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/osmLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ui.fragments.MapOsmFragment">
tools:context=".ui.fragments.MapFragment">
<org.osmdroid.views.MapView
android:id="@+id/mapView"
android:id="@+id/map_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
@@ -17,7 +16,6 @@
app:layout_constraintTop_toTopOf="parent" />
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/satInfo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/backgroundMapInfoLayout"
@@ -26,7 +24,7 @@
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/idName"
android:id="@+id/id_name"
style="@style/MapOsmSatInfo.Name"
android:layout_marginTop="4dp"
android:text="@string/pat_osm_idName"
@@ -41,7 +39,7 @@
android:layout_marginStart="4dp"
android:text="@string/pat_altitude"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/idName" />
app:layout_constraintTop_toBottomOf="@+id/id_name" />
<TextView
android:id="@+id/distance"
@@ -61,7 +59,7 @@
app:layout_constraintEnd_toEndOf="parent" />
<TextView
android:id="@+id/latLon"
android:id="@+id/lat_lon"
style="@style/MapOsmSatInfo"
android:text="@string/pat_osm_latLon"
app:layout_constraintBaseline_toBaselineOf="@+id/distance"
@@ -70,7 +68,7 @@
</androidx.constraintlayout.widget.ConstraintLayout>
<TextView
android:id="@+id/mapOsmCopyright"
android:id="@+id/copyright"
style="@style/MapOsmCopyright"
android:text="@string/osmCopyright"
app:layout_constraintBottom_toBottomOf="parent"
@@ -1,205 +0,0 @@
<?xml version="1.0" encoding="utf-8"?><!--
~ Look4Sat. Amateur radio and weather satellite tracker and passes predictor for Android.
~ Copyright (C) 2019, 2020 Arty Bishop (bishop.arty@gmail.com)
~
~ This program is free software; you can redistribute it and/or modify
~ it under the terms of the GNU General Public License as published by
~ the Free Software Foundation; either version 2 of the License, or
~ (at your option) any later version.
~
~ This program is distributed in the hope that it will be useful,
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
~ GNU General Public License for more details.
~
~ You should have received a copy of the GNU General Public License along
~ with this program; if not, write to the Free Software Foundation, Inc.,
~ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-->
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/refLayoutPassList"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.AppBarLayout
android:id="@+id/appBarLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:titleTextColor="@color/themeAccent">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/toolbar_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/toolbar_timer"
style="@style/ToolbarText"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginEnd="16dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/toolbar_filter"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageButton
android:id="@+id/toolbar_filter"
style="@style/ToolbarButton"
android:contentDescription="@string/placeholder"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.appcompat.widget.Toolbar>
</com.google.android.material.appbar.AppBarLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recPassList"
android:layout_width="0dp"
android:layout_height="0dp"
android:paddingBottom="4dp"
android:visibility="invisible"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/appBarLayout">
</androidx.recyclerview.widget.RecyclerView>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/layoutInfo"
android:layout_width="0dp"
android:layout_height="0dp"
android:visibility="visible"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/appBarLayout">
<ImageView
android:id="@+id/imgInfoSwipe"
android:layout_width="36dp"
android:layout_height="36dp"
android:contentDescription="@string/placeholder"
app:layout_constraintEnd_toStartOf="@+id/guideRight"
app:layout_constraintStart_toStartOf="@+id/guideLeft"
app:layout_constraintTop_toTopOf="@+id/guideTop"
app:srcCompat="@drawable/ic_arrow_swipe" />
<TextView
android:id="@+id/tvInfoSwipe"
style="@style/PassInfoText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:gravity="center"
android:text="@string/info_swipe_text"
app:layout_constraintEnd_toStartOf="@+id/guideRight"
app:layout_constraintStart_toStartOf="@+id/guideLeft"
app:layout_constraintTop_toBottomOf="@+id/imgInfoSwipe" />
<ImageView
android:id="@+id/imgInfoSputnik"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
android:layout_marginEnd="16dp"
android:layout_marginBottom="16dp"
android:contentDescription="@string/placeholder"
app:layout_constraintBottom_toTopOf="@+id/tvInfoMain"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintEnd_toStartOf="@+id/guideRight"
app:layout_constraintStart_toStartOf="@+id/guideLeft"
app:layout_constraintTop_toBottomOf="@+id/tvInfoSwipe"
app:layout_constraintVertical_chainStyle="packed"
app:srcCompat="@drawable/ic_sputnik" />
<TextView
android:id="@+id/tvInfoMain"
style="@style/PassInfoText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/info_main_text"
app:layout_constraintBottom_toTopOf="@+id/tvSatSelect"
app:layout_constraintEnd_toStartOf="@+id/guideRight"
app:layout_constraintStart_toStartOf="@+id/guideLeft"
app:layout_constraintTop_toTopOf="@+id/guideCenter"
app:layout_constraintVertical_bias="0.32"
app:layout_constraintVertical_chainStyle="spread" />
<TextView
android:id="@+id/tvSatSelect"
style="@style/PassInfoText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="64dp"
android:text="@string/info_select_text"
app:layout_constraintBottom_toTopOf="@+id/guideBottom"
app:layout_constraintEnd_toStartOf="@+id/guideRight"
app:layout_constraintStart_toStartOf="@+id/guideLeft" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideTop"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintGuide_begin="24dp" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideLeft"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_begin="16dp" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideCenter"
android:layout_width="0dp"
android:layout_height="0dp"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.5" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideRight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_end="16dp" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideBottom"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintGuide_end="16dp" />
</androidx.constraintlayout.widget.ConstraintLayout>
<com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/fabSatSelect"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_marginEnd="16dp"
android:layout_marginBottom="16dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:srcCompat="@drawable/ic_sat_asc_left" />
</androidx.constraintlayout.widget.ConstraintLayout>
@@ -0,0 +1,70 @@
<?xml version="1.0" encoding="utf-8"?><!--
~ Look4Sat. Amateur radio and weather satellite tracker and passes predictor for Android.
~ Copyright (C) 2019, 2020 Arty Bishop (bishop.arty@gmail.com)
~
~ This program is free software; you can redistribute it and/or modify
~ it under the terms of the GNU General Public License as published by
~ the Free Software Foundation; either version 2 of the License, or
~ (at your option) any later version.
~
~ This program is distributed in the hope that it will be useful,
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
~ GNU General Public License for more details.
~
~ You should have received a copy of the GNU General Public License along
~ with this program; if not, write to the Free Software Foundation, Inc.,
~ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-->
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/passes_timer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/themeDark"
android:textColor="@color/themeAccent"
android:textSize="36sp"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageButton
android:id="@+id/passes_filter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="@color/themeDark"
android:contentDescription="@string/placeholder"
android:src="@drawable/ic_prefs"
app:layout_constraintBottom_toBottomOf="@+id/passes_timer"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@+id/passes_timer" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/passes_recycler"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/passes_timer">
</androidx.recyclerview.widget.RecyclerView>
<com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/passes_fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_marginBottom="16dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:srcCompat="@drawable/ic_refresh" />
</androidx.constraintlayout.widget.ConstraintLayout>
@@ -22,10 +22,10 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ui.fragments.PolarViewFragment">
tools:context=".ui.fragments.PolarFragment">
<FrameLayout
android:id="@+id/frame_polar"
android:id="@+id/frame"
android:layout_width="match_parent"
android:layout_height="0dp"
app:layout_constraintDimensionRatio="1:1"
@@ -34,49 +34,49 @@
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_polar_az"
android:id="@+id/azimuth"
style="@style/PolarViewText"
android:layout_marginStart="4dp"
android:text="@string/pat_azimuth"
app:layout_constraintStart_toStartOf="@+id/frame_polar"
app:layout_constraintTop_toTopOf="@+id/frame_polar" />
app:layout_constraintStart_toStartOf="@+id/frame"
app:layout_constraintTop_toTopOf="@+id/frame" />
<TextView
android:id="@+id/tv_polar_el"
android:id="@+id/elevation"
style="@style/PolarViewText"
android:layout_marginEnd="4dp"
android:text="@string/pat_elevation"
app:layout_constraintEnd_toEndOf="@+id/frame_polar"
app:layout_constraintTop_toTopOf="@+id/frame_polar" />
app:layout_constraintEnd_toEndOf="@+id/frame"
app:layout_constraintTop_toTopOf="@+id/frame" />
<TextView
android:id="@+id/tv_polar_alt"
android:id="@+id/altitude"
style="@style/PolarViewText"
android:layout_marginStart="4dp"
android:text="@string/pat_altitude"
app:layout_constraintBottom_toBottomOf="@+id/frame_polar"
app:layout_constraintStart_toStartOf="@+id/frame_polar" />
app:layout_constraintBottom_toBottomOf="@+id/frame"
app:layout_constraintStart_toStartOf="@+id/frame" />
<TextView
android:id="@+id/tv_polar_rng"
android:id="@+id/distance"
style="@style/PolarViewText"
android:layout_marginEnd="4dp"
android:text="@string/pat_distance"
app:layout_constraintBottom_toBottomOf="@+id/frame_polar"
app:layout_constraintEnd_toEndOf="@+id/frame_polar" />
app:layout_constraintBottom_toBottomOf="@+id/frame"
app:layout_constraintEnd_toEndOf="@+id/frame" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rec_polar"
android:id="@+id/recycler"
android:layout_width="0dp"
android:layout_height="0dp"
android:paddingBottom="4dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/frame_polar" />
app:layout_constraintTop_toBottomOf="@+id/frame" />
<TextView
android:id="@+id/tv_polar_noTrans"
android:id="@+id/no_trans_msg"
style="@style/PolarViewText"
android:layout_width="0dp"
android:layout_marginTop="8dp"
@@ -86,5 +86,5 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/frame_polar" />
app:layout_constraintTop_toBottomOf="@+id/frame" />
</androidx.constraintlayout.widget.ConstraintLayout>
@@ -113,7 +113,6 @@
android:layout_marginStart="4dp"
android:layout_marginTop="4dp"
android:contentDescription="@string/placeholder"
android:rotation="90"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/ic_trans" />
@@ -161,7 +160,7 @@
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/trans_downlink_doppler"
app:srcCompat="@drawable/ic_doppler" />
app:srcCompat="@drawable/ic_trans_doppler" />
<ImageView
android:id="@+id/trans_img_uplink_doppler"
@@ -176,7 +175,7 @@
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/trans_downlink_doppler"
app:srcCompat="@drawable/ic_doppler" />
app:srcCompat="@drawable/ic_trans_doppler" />