Skip to content

Commit

Permalink
Merge pull request #101 from makeen-project/ALS-1806
Browse files Browse the repository at this point in the history
ALS 1806 Map style change bug fixes
  • Loading branch information
shah279 authored Sep 11, 2024
2 parents 57017f3 + 696fb7f commit 539397d
Show file tree
Hide file tree
Showing 13 changed files with 92 additions and 8 deletions.
3 changes: 3 additions & 0 deletions .github/workflows/build-android.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,9 @@ jobs:
runs-on: self-hosted
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '20'

- name: Setup Bundler
run: |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1283,4 +1283,11 @@ class MainActivity :
mBinding.bottomNavigationMain.selectedItemId = R.id.menu_tracking
}
}

fun initClient(){
mAWSLocationHelper.locationCredentialsProvider?.clear()
CoroutineScope(Dispatchers.IO).launch {
async { initMobileClient() }.await()
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,10 @@ import androidx.lifecycle.lifecycleScope
import androidx.navigation.fragment.findNavController
import com.aws.amazonlocation.BuildConfig
import com.aws.amazonlocation.R
import com.aws.amazonlocation.data.enum.AuthEnum
import com.aws.amazonlocation.databinding.FragmentDataProviderBinding
import com.aws.amazonlocation.ui.base.BaseFragment
import com.aws.amazonlocation.utils.KEY_CLOUD_FORMATION_STATUS
import com.aws.amazonlocation.utils.KEY_GRAB_DONT_ASK
import com.aws.amazonlocation.utils.KEY_MAP_NAME
import com.aws.amazonlocation.utils.KEY_MAP_STYLE_NAME
Expand Down Expand Up @@ -173,7 +175,7 @@ class DataProviderFragment : BaseFragment() {
),
mPreferenceManager.getValue(KEY_NEAREST_REGION, "")
)
val isRestartNeeded =
var isRestartNeeded =
if (defaultIdentityPoolId == BuildConfig.DEFAULT_IDENTITY_POOL_ID_AP) {
false
} else {
Expand All @@ -183,6 +185,10 @@ class DataProviderFragment : BaseFragment() {
!isGrab
}
}
val mAuthStatus = mPreferenceManager.getValue(KEY_CLOUD_FORMATION_STATUS, "")
if (mAuthStatus == AuthEnum.SIGNED_IN.name || mAuthStatus == AuthEnum.AWS_CONNECTED.name) {
isRestartNeeded = false
}
if (isGrab) {
val shouldShowGrabDialog = !mPreferenceManager.getValue(KEY_GRAB_DONT_ASK, false)
if (shouldShowGrabDialog) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5989,7 +5989,7 @@ class ExploreFragment :
),
mPreferenceManager.getValue(KEY_NEAREST_REGION, ""),
)
val isRestartNeeded =
var isRestartNeeded =
if (defaultIdentityPoolId == BuildConfig.DEFAULT_IDENTITY_POOL_ID_AP) {
false
} else {
Expand All @@ -5999,6 +5999,10 @@ class ExploreFragment :
selectedProvider != getString(R.string.grab)
}
}
val mAuthStatus = mPreferenceManager.getValue(KEY_CLOUD_FORMATION_STATUS, "")
if (mAuthStatus == AuthEnum.SIGNED_IN.name || mAuthStatus == AuthEnum.AWS_CONNECTED.name) {
isRestartNeeded = false
}
if (selectedProvider == getString(R.string.grab) && mapName != getString(R.string.grab)) {
val shouldShowGrabDialog = !mPreferenceManager.getValue(KEY_GRAB_DONT_ASK, false)
if (shouldShowGrabDialog) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -435,7 +435,7 @@ class MapStyleBottomSheetFragment(
cardOpenData.setOnClickListener {
val mapName = mPreferenceManager.getValue(KEY_MAP_NAME, getString(R.string.map_esri))
if (mapName != getString(R.string.open_data)) {
mapInterface.mapStyleClick(3, 0)
mapInterface.mapStyleClick(if (!isGrabMapEnable(mPreferenceManager)) 2 else 3, 0)
}
}
cardGrabMap.setOnClickListener {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,13 @@ import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import com.aws.amazonlocation.BuildConfig
import com.aws.amazonlocation.R
import com.aws.amazonlocation.data.enum.AuthEnum
import com.aws.amazonlocation.databinding.FragmentMapStyleBinding
import com.aws.amazonlocation.ui.base.BaseFragment
import com.aws.amazonlocation.ui.main.MainActivity
import com.aws.amazonlocation.ui.main.explore.SortingAdapter
import com.aws.amazonlocation.utils.DELAY_300
import com.aws.amazonlocation.utils.KEY_CLOUD_FORMATION_STATUS
import com.aws.amazonlocation.utils.KEY_GRAB_DONT_ASK
import com.aws.amazonlocation.utils.KEY_MAP_NAME
import com.aws.amazonlocation.utils.KEY_MAP_STYLE_NAME
Expand Down Expand Up @@ -238,7 +240,7 @@ class MapStyleFragment : BaseFragment() {
),
mPreferenceManager.getValue(KEY_NEAREST_REGION, "")
)
val isRestartNeeded =
var isRestartNeeded =
if (defaultIdentityPoolId == BuildConfig.DEFAULT_IDENTITY_POOL_ID_AP) {
false
} else {
Expand All @@ -248,6 +250,10 @@ class MapStyleFragment : BaseFragment() {
selectedProvider != getString(R.string.grab)
}
}
val mAuthStatus = mPreferenceManager.getValue(KEY_CLOUD_FORMATION_STATUS, "")
if (mAuthStatus == AuthEnum.SIGNED_IN.name || mAuthStatus == AuthEnum.AWS_CONNECTED.name) {
isRestartNeeded = false
}
if (selectedProvider == getString(R.string.grab) && mapName != getString(R.string.grab)) {
val shouldShowGrabDialog = !mPreferenceManager.getValue(KEY_GRAB_DONT_ASK, false)
if (shouldShowGrabDialog) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import android.widget.AdapterView
import androidx.core.widget.doOnTextChanged
import androidx.lifecycle.lifecycleScope
import androidx.navigation.fragment.findNavController
import com.aws.amazonlocation.BuildConfig
import com.aws.amazonlocation.R
import com.aws.amazonlocation.data.enum.AuthEnum
import com.aws.amazonlocation.data.enum.TabEnum
Expand All @@ -25,9 +26,11 @@ import com.aws.amazonlocation.utils.IS_LOCATION_TRACKING_ENABLE
import com.aws.amazonlocation.utils.KEY_CLOUD_FORMATION_STATUS
import com.aws.amazonlocation.utils.KEY_MAP_NAME
import com.aws.amazonlocation.utils.KEY_MAP_STYLE_NAME
import com.aws.amazonlocation.utils.KEY_NEAREST_REGION
import com.aws.amazonlocation.utils.KEY_POOL_ID
import com.aws.amazonlocation.utils.KEY_RE_START_APP
import com.aws.amazonlocation.utils.KEY_RE_START_APP_WITH_AWS_DISCONNECT
import com.aws.amazonlocation.utils.KEY_SELECTED_REGION
import com.aws.amazonlocation.utils.KEY_TAB_ENUM
import com.aws.amazonlocation.utils.KEY_URL
import com.aws.amazonlocation.utils.KEY_USER_DOMAIN
Expand All @@ -45,6 +48,7 @@ import com.aws.amazonlocation.utils.disconnectFromAWSDialog
import com.aws.amazonlocation.utils.hide
import com.aws.amazonlocation.utils.hideViews
import com.aws.amazonlocation.utils.isGrabMapSelected
import com.aws.amazonlocation.utils.regionDisplayName
import com.aws.amazonlocation.utils.regionMapList
import com.aws.amazonlocation.utils.show
import com.aws.amazonlocation.utils.showViews
Expand Down Expand Up @@ -139,6 +143,7 @@ class AWSCloudInformationFragment :
if (isDisconnectFromAWSRequired) {
mPreferenceManager.setDefaultConfig()
}
checkMapRefreshClient()
init()
showError(getString(R.string.sign_out_successfully))
}
Expand Down Expand Up @@ -278,6 +283,7 @@ class AWSCloudInformationFragment :
mPreferenceManager.setValue(KEY_RE_START_APP_WITH_AWS_DISCONNECT, true)
mPreferenceManager.setDefaultConfig()
}
checkMapRefreshClient()
(activity as MainActivity).refreshSettings()
init()
dialog.dismiss()
Expand All @@ -288,6 +294,28 @@ class AWSCloudInformationFragment :
}
}

private fun checkMapRefreshClient() {
val mapName = mPreferenceManager.getValue(KEY_MAP_NAME, getString(R.string.map_esri))
val defaultIdentityPoolId: String =
Units.getDefaultIdentityPoolId(
mPreferenceManager.getValue(
KEY_SELECTED_REGION,
regionDisplayName[0],
),
mPreferenceManager.getValue(KEY_NEAREST_REGION, ""),
)
if (defaultIdentityPoolId != BuildConfig.DEFAULT_IDENTITY_POOL_ID_AP) {
if (mapName == getString(R.string.grab)) {
mPreferenceManager.setValue(
KEY_MAP_STYLE_NAME,
resources.getString(R.string.map_light),
)
mPreferenceManager.setValue(KEY_MAP_NAME, resources.getString(R.string.esri))
}
}
(activity as MainActivity).initClient()
}

private fun validateAWSAccountData() {
CoroutineScope(Dispatchers.IO).launch {
if (!validateIdentityPoolId(mIdentityPoolId, regionData)) {
Expand Down Expand Up @@ -370,6 +398,7 @@ class AWSCloudInformationFragment :
mPreferenceManager.setValue(KEY_MAP_NAME, resources.getString(R.string.esri))
}
}
(activity as MainActivity).initClient()
if ((activity as MainActivity).isTablet){
(activity as MainActivity).refreshSettings()
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import android.view.ViewGroup
import androidx.core.content.ContextCompat
import androidx.lifecycle.lifecycleScope
import androidx.navigation.fragment.findNavController
import com.aws.amazonlocation.BuildConfig
import com.aws.amazonlocation.R
import com.aws.amazonlocation.data.enum.AuthEnum
import com.aws.amazonlocation.databinding.FragmentSettingBinding
Expand All @@ -25,6 +26,7 @@ import com.aws.amazonlocation.utils.DisconnectAWSInterface
import com.aws.amazonlocation.utils.KEY_CLOUD_FORMATION_STATUS
import com.aws.amazonlocation.utils.KEY_MAP_NAME
import com.aws.amazonlocation.utils.KEY_MAP_STYLE_NAME
import com.aws.amazonlocation.utils.KEY_NEAREST_REGION
import com.aws.amazonlocation.utils.KEY_SELECTED_REGION
import com.aws.amazonlocation.utils.KEY_UNIT_SYSTEM
import com.aws.amazonlocation.utils.LANGUAGE_CODE_ARABIC
Expand All @@ -42,6 +44,7 @@ import com.aws.amazonlocation.utils.LANGUAGE_CODE_JAPANESE
import com.aws.amazonlocation.utils.LANGUAGE_CODE_KOREAN
import com.aws.amazonlocation.utils.LANGUAGE_CODE_SPANISH
import com.aws.amazonlocation.utils.SignOutInterface
import com.aws.amazonlocation.utils.Units
import com.aws.amazonlocation.utils.disconnectFromAWSDialog
import com.aws.amazonlocation.utils.getLanguageCode
import com.aws.amazonlocation.utils.hide
Expand Down Expand Up @@ -360,6 +363,25 @@ class SettingFragment : BaseFragment(), SignOutInterface {
}
}
}
val mapName = mPreferenceManager.getValue(KEY_MAP_NAME, getString(R.string.map_esri))
val defaultIdentityPoolId: String =
Units.getDefaultIdentityPoolId(
mPreferenceManager.getValue(
KEY_SELECTED_REGION,
regionDisplayName[0],
),
mPreferenceManager.getValue(KEY_NEAREST_REGION, ""),
)
if (defaultIdentityPoolId != BuildConfig.DEFAULT_IDENTITY_POOL_ID_AP) {
if (mapName == getString(R.string.grab)) {
mPreferenceManager.setValue(
KEY_MAP_STYLE_NAME,
resources.getString(R.string.map_light),
)
mPreferenceManager.setValue(KEY_MAP_NAME, resources.getString(R.string.esri))
}
}
(activity as MainActivity).initClient()
init()
dialog.dismiss()
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -394,6 +394,7 @@ class CloudFormationBottomSheetFragment(
)
}
dismiss()
(activity as MainActivity).initClient()
(activity as MainActivity).showSignInRequiredSheet()
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,14 +92,20 @@ class AWSLocationHelper(
if (mAuthStatus == AuthEnum.SIGNED_IN.name) {
initializeAuthLocationCredentialsProvider(authHelper, baseActivity)
} else {
val defaultIdentityPoolId: String =
var defaultIdentityPoolId: String =
getDefaultIdentityPoolId(
mPreferenceManager.getValue(
KEY_SELECTED_REGION,
regionDisplayName[0],
),
mPreferenceManager.getValue(KEY_NEAREST_REGION, ""),
)
if (mAuthStatus == AuthEnum.AWS_CONNECTED.name) {
defaultIdentityPoolId = mPreferenceManager.getValue(
KEY_POOL_ID,
"",
).toString()
}
val defaultRegion = defaultIdentityPoolId.split(":")[0]
region = defaultRegion
locationCredentialsProvider =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ class MapHelper(
private fun setRegion() {
region = ""
val mAuthStatus = mPreferenceManager?.getValue(KEY_CLOUD_FORMATION_STATUS, "")
if (mAuthStatus == AuthEnum.SIGNED_IN.name) {
if (mAuthStatus == AuthEnum.SIGNED_IN.name || mAuthStatus == AuthEnum.AWS_CONNECTED.name) {
region = mPreferenceManager?.getValue(KEY_USER_REGION, "")
}
if (region.isNullOrEmpty()) {
Expand Down
2 changes: 1 addition & 1 deletion app/src/main/res/layout-sw600dp/bottom_sheet_map_style.xml
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@
android:id="@+id/group_filter_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:constraint_referenced_ids="card_esri,card_here,card_grab_map,card_open_data" />
app:constraint_referenced_ids="card_esri,card_here,card_open_data" />

</androidx.constraintlayout.widget.ConstraintLayout>

Expand Down
2 changes: 1 addition & 1 deletion app/src/main/res/layout-sw720dp/bottom_sheet_map_style.xml
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@
android:id="@+id/group_filter_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:constraint_referenced_ids="card_esri,card_here,card_grab_map,card_open_data" />
app:constraint_referenced_ids="card_esri,card_here,card_open_data" />

</androidx.constraintlayout.widget.ConstraintLayout>

Expand Down

0 comments on commit 539397d

Please sign in to comment.