diff --git a/catalog/java/io/material/catalog/feature/DemoActivity.java b/catalog/java/io/material/catalog/feature/DemoActivity.java index 96e900ab6ec..3850508a80c 100644 --- a/catalog/java/io/material/catalog/feature/DemoActivity.java +++ b/catalog/java/io/material/catalog/feature/DemoActivity.java @@ -22,6 +22,7 @@ import androidx.appcompat.app.ActionBar; import androidx.appcompat.widget.Toolbar; import android.view.LayoutInflater; +import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; @@ -31,6 +32,7 @@ import com.google.android.material.transition.platform.MaterialContainerTransform; import com.google.android.material.transition.platform.MaterialContainerTransformSharedElementCallback; import io.material.catalog.preferences.BaseCatalogActivity; +import io.material.catalog.preferences.CatalogPreferencesDialogFragment; import io.material.catalog.windowpreferences.WindowPreferencesManager; /** Base Activity class that provides a demo screen structure for a single demo. */ @@ -74,6 +76,9 @@ public boolean onOptionsItemSelected(MenuItem item) { if (item.getItemId() == android.R.id.home) { onBackPressed(); return true; + } else if (item.getItemId() == R.id.preferences) { + new CatalogPreferencesDialogFragment().show(getSupportFragmentManager(), "preferences"); + return true; } return super.onOptionsItemSelected(item); } @@ -141,4 +146,10 @@ private String getDefaultDemoTitle() { public abstract View onCreateDemoView( LayoutInflater layoutInflater, @Nullable ViewGroup viewGroup, @Nullable Bundle bundle); + + @Override + public boolean onCreateOptionsMenu(Menu menu) { + getMenuInflater().inflate(R.menu.mtrl_preferences_menu, menu); + return true; + } } diff --git a/catalog/java/io/material/catalog/preferences/CatalogPreferencesDialogFragment.java b/catalog/java/io/material/catalog/preferences/CatalogPreferencesDialogFragment.java index ce1cbbd8748..219ae898a20 100644 --- a/catalog/java/io/material/catalog/preferences/CatalogPreferencesDialogFragment.java +++ b/catalog/java/io/material/catalog/preferences/CatalogPreferencesDialogFragment.java @@ -19,7 +19,6 @@ import io.material.catalog.R; import android.app.Dialog; -import android.content.Context; import android.os.Bundle; import android.util.SparseIntArray; import android.view.LayoutInflater; @@ -32,24 +31,13 @@ import com.google.android.material.bottomsheet.BottomSheetDialogFragment; import com.google.android.material.button.MaterialButton; import com.google.android.material.button.MaterialButtonToggleGroup; -import dagger.android.AndroidInjector; -import dagger.android.DispatchingAndroidInjector; -import dagger.android.HasAndroidInjector; -import dagger.android.support.AndroidSupportInjection; import io.material.catalog.preferences.CatalogPreference.Option; import io.material.catalog.windowpreferences.WindowPreferencesManager; -import javax.inject.Inject; /** * A fragment to display a bottom sheet for preferences settings. */ -public class CatalogPreferencesDialogFragment extends BottomSheetDialogFragment - implements HasAndroidInjector { - @Inject - BaseCatalogPreferences preferences; - - @Inject DispatchingAndroidInjector childFragmentInjector; - +public class CatalogPreferencesDialogFragment extends BottomSheetDialogFragment { private final SparseIntArray buttonIdToOptionId = new SparseIntArray(); @NonNull @@ -60,17 +48,6 @@ public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { return dialog; } - @Override - public void onAttach(Context context) { - AndroidSupportInjection.inject(this); - super.onAttach(context); - } - - @Override - public AndroidInjector androidInjector() { - return childFragmentInjector; - } - @Nullable @Override public View onCreateView( @@ -79,7 +56,7 @@ public View onCreateView( @Nullable Bundle bundle) { View container = layoutInflater.inflate(R.layout.mtrl_preferences_dialog, viewGroup, false); LinearLayout preferencesLayout = container.findViewById(R.id.preferences_layout); - for (CatalogPreference catalogPreference : preferences.getPreferences()) { + for (CatalogPreference catalogPreference : new CatalogPreferences().getPreferences()) { preferencesLayout.addView( createPreferenceView(layoutInflater, preferencesLayout, catalogPreference)); }