Skip to content

Commit 389feb8

Browse files
Merge pull request #164 from MihaiCristianCondrea/codex/audit-setdisplayhomeasupenabled-usage
Refactor up navigation handling
2 parents 8676672 + 74713c3 commit 389feb8

File tree

6 files changed

+6
-41
lines changed

6 files changed

+6
-41
lines changed

app/src/main/AndroidManifest.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@
175175
android:name=".ui.screens.settings.screens.permissions.PermissionsActivity"
176176
android:exported="false"
177177
android:label="@string/permissions"
178-
android:parentActivityName=".ui.screens.main.MainActivity" />
178+
android:parentActivityName=".ui.screens.settings.SettingsActivity" />
179179
<activity
180180
android:name=".ui.screens.android.lessons.basics.shortcuts.ShortcutsActivity"
181181
android:exported="false"
Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,9 @@
11
package com.d4rk.androidtutorials.java.ui.components.navigation;
22

3-
import android.os.Bundle;
4-
5-
import androidx.annotation.Nullable;
6-
import androidx.appcompat.app.ActionBar;
7-
import androidx.appcompat.app.AppCompatActivity;
8-
import androidx.core.app.NavUtils;
9-
10-
public abstract class UpNavigationActivity extends AppCompatActivity {
11-
@Override
12-
protected void onPostCreate(@Nullable Bundle savedInstanceState) {
13-
super.onPostCreate(savedInstanceState);
14-
ActionBar actionBar = getSupportActionBar();
15-
if (actionBar != null) {
16-
actionBar.setDisplayHomeAsUpEnabled(true);
17-
}
18-
}
19-
3+
public abstract class UpNavigationActivity extends BaseActivity {
204
@Override
215
public boolean onSupportNavigateUp() {
22-
NavUtils.navigateUpFromSameTask(this);
6+
getOnBackPressedDispatcher().onBackPressed();
237
return true;
248
}
259
}

app/src/main/java/com/d4rk/androidtutorials/java/ui/screens/android/lessons/basics/shortcuts/ShortcutsActivity.java

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,11 @@
44
import android.net.Uri;
55
import android.os.Bundle;
66

7-
import androidx.appcompat.app.ActionBar;
87
import androidx.preference.PreferenceFragmentCompat;
98

109
import com.d4rk.androidtutorials.java.R;
1110
import com.d4rk.androidtutorials.java.databinding.ActivityShortcutsBinding;
1211
import com.d4rk.androidtutorials.java.ui.components.navigation.UpNavigationActivity;
13-
import com.d4rk.androidtutorials.java.utils.EdgeToEdgeDelegate;
1412
import com.d4rk.androidtutorials.java.ads.AdUtils;
1513

1614
public class ShortcutsActivity extends UpNavigationActivity {
@@ -20,12 +18,9 @@ protected void onCreate(Bundle savedInstanceState) {
2018
ActivityShortcutsBinding binding = ActivityShortcutsBinding.inflate(getLayoutInflater());
2119
setContentView(binding.getRoot());
2220

23-
EdgeToEdgeDelegate.apply(this, binding.container); AdUtils.loadBanner(binding.adViewBottom);
21+
AdUtils.loadBanner(binding.adViewBottom);
2422

2523
getSupportFragmentManager().beginTransaction().replace(R.id.frame_layout_shortcuts, new SettingsFragment()).commit();
26-
ActionBar supportActionBar = getSupportActionBar();
27-
if (supportActionBar != null)
28-
supportActionBar.setDisplayHomeAsUpEnabled(true);
2924
binding.buttonMore.setOnClickListener(v -> startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://developer.android.com/studio/intro/keyboard-shortcuts"))));
3025
}
3126

app/src/main/java/com/d4rk/androidtutorials/java/ui/screens/main/MainActivity.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,6 @@ public void handleOnBackPressed() {
160160
private void setupActionBar() {
161161
ActionBar actionBar = getSupportActionBar();
162162
if (actionBar != null) {
163-
actionBar.setDisplayHomeAsUpEnabled(true);
164163
new AppBarConfiguration.Builder(
165164
R.id.navigation_home,
166165
R.id.navigation_android_studio,

app/src/main/java/com/d4rk/androidtutorials/java/ui/screens/settings/SettingsActivity.java

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,17 @@
44
import android.os.Bundle;
55

66
import androidx.annotation.Nullable;
7-
import androidx.appcompat.app.ActionBar;
8-
import androidx.appcompat.app.AppCompatActivity;
97
import androidx.lifecycle.ViewModelProvider;
108
import androidx.preference.ListPreference;
119

1210
import com.d4rk.androidtutorials.java.R;
1311
import com.d4rk.androidtutorials.java.databinding.ActivitySettingsBinding;
14-
import com.d4rk.androidtutorials.java.utils.EdgeToEdgeDelegate;
12+
import com.d4rk.androidtutorials.java.ui.components.navigation.UpNavigationActivity;
1513

1614
import dagger.hilt.android.AndroidEntryPoint;
1715

1816
@AndroidEntryPoint
19-
public class SettingsActivity extends AppCompatActivity
17+
public class SettingsActivity extends UpNavigationActivity
2018
implements SharedPreferences.OnSharedPreferenceChangeListener,
2119
androidx.preference.Preference.SummaryProvider<ListPreference> {
2220

@@ -28,7 +26,6 @@ protected void onCreate(@Nullable Bundle savedInstanceState) {
2826
ActivitySettingsBinding binding = ActivitySettingsBinding.inflate(getLayoutInflater());
2927
setContentView(binding.getRoot());
3028

31-
EdgeToEdgeDelegate.apply(this, binding.container);
3229

3330
settingsViewModel = new ViewModelProvider(this).get(SettingsViewModel.class);
3431
settingsViewModel.applyConsent();
@@ -37,10 +34,6 @@ protected void onCreate(@Nullable Bundle savedInstanceState) {
3734
.replace(R.id.settings, new SettingsFragment())
3835
.commit();
3936

40-
ActionBar supportActionBar = getSupportActionBar();
41-
if (supportActionBar != null) {
42-
supportActionBar.setDisplayHomeAsUpEnabled(true);
43-
}
4437

4538
settingsViewModel.registerPreferenceChangeListener(this);
4639
}

app/src/main/java/com/d4rk/androidtutorials/java/ui/screens/settings/screens/permissions/PermissionsActivity.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import com.d4rk.androidtutorials.java.R;
88
import com.d4rk.androidtutorials.java.databinding.ActivityPermissionsBinding;
99
import com.d4rk.androidtutorials.java.ui.components.navigation.UpNavigationActivity;
10-
import com.d4rk.androidtutorials.java.utils.EdgeToEdgeDelegate;
1110

1211
public class PermissionsActivity extends UpNavigationActivity {
1312
@Override
@@ -16,12 +15,7 @@ protected void onCreate(Bundle savedInstanceState) {
1615
ActivityPermissionsBinding binding = ActivityPermissionsBinding.inflate(getLayoutInflater());
1716
setContentView(binding.getRoot());
1817

19-
EdgeToEdgeDelegate.apply(this, binding.container);
20-
2118
getSupportFragmentManager().beginTransaction().replace(R.id.frame_layout_permissions, new SettingsFragment()).commit();
22-
if (getSupportActionBar() != null) {
23-
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
24-
}
2519
}
2620

2721
public static class SettingsFragment extends PreferenceFragmentCompat {

0 commit comments

Comments
 (0)