Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7163d771 authored by Fan Zhang's avatar Fan Zhang
Browse files

Allow fragments set their own header view below actionbar.

Bug: 27751187
Bug: 28269035
Change-Id: Iac081c009800a71afe413cf63ddd9788b2e90d6a
(cherry picked from commit ff2e0f4b)
parent 64577d61
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -40,6 +40,11 @@
                style="?android:attr/toolbarStyle"
                android:background="?android:attr/colorPrimary" />
        </FrameLayout>
        <FrameLayout
            android:id="@+id/content_header_container"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            style="?android:attr/actionBarStyle" />
        <FrameLayout
            android:id="@+id/content_frame"
            android:layout_width="match_parent"
+11 −0
Original line number Diff line number Diff line
@@ -38,8 +38,10 @@ import android.view.ViewGroup;
import android.view.Window;
import android.view.WindowManager.LayoutParams;
import android.widget.AdapterView;
import android.widget.FrameLayout;
import android.widget.ListView;
import android.widget.Toolbar;

import com.android.settingslib.R;
import com.android.settingslib.applications.InterestingConfigChanges;

@@ -62,6 +64,7 @@ public class SettingsDrawerActivity extends Activity {
    private final List<CategoryListener> mCategoryListeners = new ArrayList<>();

    private SettingsDrawerAdapter mDrawerAdapter;
    private FrameLayout mContentHeaderContainer;
    private DrawerLayout mDrawerLayout;
    private boolean mShowingMenu;

@@ -78,6 +81,7 @@ public class SettingsDrawerActivity extends Activity {
            requestWindowFeature(Window.FEATURE_NO_TITLE);
        }
        super.setContentView(R.layout.settings_with_drawer);
        mContentHeaderContainer = (FrameLayout) findViewById(R.id.content_header_container);
        mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
        if (mDrawerLayout == null) {
            return;
@@ -174,6 +178,13 @@ public class SettingsDrawerActivity extends Activity {
        }
    }

    public void setContentHeaderView(View headerView) {
        mContentHeaderContainer.removeAllViews();
        if (headerView != null) {
            mContentHeaderContainer.addView(headerView);
        }
    }

    @Override
    public void setContentView(@LayoutRes int layoutResID) {
        final ViewGroup parent = (ViewGroup) findViewById(R.id.content_frame);