I have an activity with an app bar and a navigation drawer. The app bar is implemented using the new Toolbar class from appcompat-v7 library version 21.+, and the navigation drawer is displayed in front of it.
The activity contains a list view with items which can be selected, so I am showing a contextual action bar (CAB). It is started by calling:
ActionBarActivity.startSupportActionMode(android.support.v7.view.ActionMode.Callback callback)
By default, the CAB is inserted above the Toolbar instead of overlaying it; it seems that the CAB will only overlay the true ActionBar by default. As show in this answer, the CAB correctly overlays the Toolbar when this theme property is set:
<item name="windowActionModeOverlay">true</item>
But this also makes the CAB overlay the navigation drawer, which is incorrect according to the Material design specs. The main Android design docs still recommend hiding the CAB when the navigation drawer is opened and showing it again when closed, and this could be done to "fix" the problem, but it should not be necessary. As-written, the Material design specs don't specify that the CAB should be hidden when the nav drawer opens, and because the nav drawer should open over the CAB, hiding the CAB would in fact be a visual distraction.
Is there any way to display the navigation drawer in front of the CAB while still having it overlay the Toolbar?