Loading src/com/android/settings/panel/PanelContent.java +11 −1 Original line number Diff line number Diff line Loading @@ -55,7 +55,6 @@ public interface PanelContent extends Instrumentable { */ List<Uri> getSlices(); /** * @return an {@link Intent} to the full content in Settings that is summarized by the Panel. * Loading @@ -64,4 +63,15 @@ public interface PanelContent extends Instrumentable { * </p> */ Intent getSeeMoreIntent(); /** * @return an {@link Intent} to the go to the target activity. * * <p> * A common usage is to go back to previous panel. * </p> */ default Intent getHeaderIconIntent() { return null; } } src/com/android/settings/panel/PanelFragment.java +11 −0 Original line number Diff line number Diff line Loading @@ -201,6 +201,9 @@ public class PanelFragment extends Fragment { mTitleIcon.setImageIcon(icon.toIcon(getContext())); mHeaderTitle.setText(mPanel.getTitle()); mHeaderSubtitle.setText(mPanel.getSubTitle()); if (mPanel.getHeaderIconIntent() != null) { mTitleIcon.setOnClickListener(getHeaderIconListener()); } } mSeeMoreButton.setOnClickListener(getSeeMoreListener()); mDoneButton.setOnClickListener(getCloseListener()); Loading Loading @@ -381,4 +384,12 @@ public class PanelFragment extends Fragment { getActivity().finish(); }; } @VisibleForTesting View.OnClickListener getHeaderIconListener() { return (v) -> { final FragmentActivity activity = getActivity(); activity.startActivity(mPanel.getHeaderIconIntent()); }; } } Loading
src/com/android/settings/panel/PanelContent.java +11 −1 Original line number Diff line number Diff line Loading @@ -55,7 +55,6 @@ public interface PanelContent extends Instrumentable { */ List<Uri> getSlices(); /** * @return an {@link Intent} to the full content in Settings that is summarized by the Panel. * Loading @@ -64,4 +63,15 @@ public interface PanelContent extends Instrumentable { * </p> */ Intent getSeeMoreIntent(); /** * @return an {@link Intent} to the go to the target activity. * * <p> * A common usage is to go back to previous panel. * </p> */ default Intent getHeaderIconIntent() { return null; } }
src/com/android/settings/panel/PanelFragment.java +11 −0 Original line number Diff line number Diff line Loading @@ -201,6 +201,9 @@ public class PanelFragment extends Fragment { mTitleIcon.setImageIcon(icon.toIcon(getContext())); mHeaderTitle.setText(mPanel.getTitle()); mHeaderSubtitle.setText(mPanel.getSubTitle()); if (mPanel.getHeaderIconIntent() != null) { mTitleIcon.setOnClickListener(getHeaderIconListener()); } } mSeeMoreButton.setOnClickListener(getSeeMoreListener()); mDoneButton.setOnClickListener(getCloseListener()); Loading Loading @@ -381,4 +384,12 @@ public class PanelFragment extends Fragment { getActivity().finish(); }; } @VisibleForTesting View.OnClickListener getHeaderIconListener() { return (v) -> { final FragmentActivity activity = getActivity(); activity.startActivity(mPanel.getHeaderIconIntent()); }; } }