diff --git a/packages/block-editor/src/components/block-list/block-mobile-floating-toolbar.native.js b/packages/block-editor/src/components/block-list/block-mobile-floating-toolbar.native.js
index cdd54ffdcaca1b..7e09fe8de46f79 100644
--- a/packages/block-editor/src/components/block-list/block-mobile-floating-toolbar.native.js
+++ b/packages/block-editor/src/components/block-list/block-mobile-floating-toolbar.native.js
@@ -10,21 +10,23 @@ import styles from './block-mobile-floating-toolbar.scss';
/**
* WordPress dependencies
*/
+import { compose, withPreferredColorScheme } from '@wordpress/compose';
import { createSlotFill } from '@wordpress/components';
const { Fill, Slot } = createSlotFill( 'FloatingToolbar' );
-function FloatingToolbar( { children } ) {
+const FloatingToolbarFill = ( { children, getStylesFromColorScheme } ) => {
return (
{ ( { innerFloatingToolbar } ) => {
+ const fillStyle = getStylesFromColorScheme( styles.floatingToolbarFillColor, styles.floatingToolbarFillColorDark );
return (
{ children }
@@ -33,8 +35,9 @@ function FloatingToolbar( { children } ) {
);
-}
+};
+const FloatingToolbar = compose( withPreferredColorScheme )( FloatingToolbarFill );
FloatingToolbar.Slot = Slot;
export default FloatingToolbar;
diff --git a/packages/block-editor/src/components/block-list/block-mobile-floating-toolbar.native.scss b/packages/block-editor/src/components/block-list/block-mobile-floating-toolbar.native.scss
index 713633516fca23..a9fbd1243e89ab 100644
--- a/packages/block-editor/src/components/block-list/block-mobile-floating-toolbar.native.scss
+++ b/packages/block-editor/src/components/block-list/block-mobile-floating-toolbar.native.scss
@@ -1,5 +1,4 @@
.floatingToolbarFill {
- background-color: $dark-gray-500;
margin: auto;
min-width: 100;
max-height: $floating-toolbar-height;
@@ -13,3 +12,11 @@
justify-content: center;
align-self: center;
}
+
+.floatingToolbarFillColor {
+ background-color: rgba(#1d2327, 0.85);
+}
+
+.floatingToolbarFillColorDark {
+ background-color: rgba(#3c434a, 0.85);
+}
diff --git a/packages/block-editor/src/components/block-list/block.native.js b/packages/block-editor/src/components/block-list/block.native.js
index 456c5fad6ac2ab..70d8ff2435b907 100644
--- a/packages/block-editor/src/components/block-list/block.native.js
+++ b/packages/block-editor/src/components/block-list/block.native.js
@@ -25,6 +25,7 @@ import BlockEdit from '../block-edit';
import BlockInvalidWarning from './block-invalid-warning';
import BlockMobileToolbar from './block-mobile-toolbar';
import FloatingToolbar from './block-mobile-floating-toolbar';
+import Breadcrumbs from './breadcrumb';
import NavigateUpSVG from './nav-up-icon';
class BlockListBlock extends Component {
@@ -136,6 +137,7 @@ class BlockListBlock extends Component {
/>
+
) }
{
+ return (
+
+ {/* Open BottomSheet with markup */} }>
+ { rootClientId && rootBlockIcon && (
+ [ ,
+ ,
+ ]
+ ) }
+
+
+
+
+ );
+};
+
+export default compose( [
+ withSelect( ( select, { clientId } ) => {
+ const {
+ getBlockRootClientId,
+ getBlockName,
+ } = select( 'core/block-editor' );
+
+ const blockName = getBlockName( clientId );
+ const blockType = getBlockType( blockName );
+ const blockIcon = blockType.icon;
+
+ const rootClientId = getBlockRootClientId( clientId );
+
+ if ( ! rootClientId ) {
+ return {
+ clientId,
+ blockIcon,
+ };
+ }
+ const rootBlockName = getBlockName( rootClientId );
+ const rootBlockType = getBlockType( rootBlockName );
+ const rootBlockIcon = rootBlockType.icon;
+
+ return {
+ clientId,
+ blockIcon,
+ rootClientId,
+ rootBlockIcon,
+ };
+ } ),
+] )( BlockBreadcrumb );
diff --git a/packages/block-editor/src/components/block-list/breadcrumb.native.scss b/packages/block-editor/src/components/block-list/breadcrumb.native.scss
new file mode 100644
index 00000000000000..8e9b103446291c
--- /dev/null
+++ b/packages/block-editor/src/components/block-list/breadcrumb.native.scss
@@ -0,0 +1,28 @@
+.breadcrumbContainer {
+ flex-direction: row;
+ align-items: center;
+ justify-content: flex-start;
+ padding-left: 5;
+ padding-right: 15;
+}
+
+.breadcrumbTitle {
+ color: $white;
+ margin-left: 4;
+}
+
+.icon {
+ color: $white;
+}
+
+.button {
+ flex-direction: row;
+ align-items: center;
+}
+
+.arrow {
+ color: $light-opacity-light-700;
+ margin-top: -4px;
+ margin-left: 4;
+ margin-right: 4;
+}
diff --git a/packages/block-editor/src/components/block-list/subdirectory-icon.js b/packages/block-editor/src/components/block-list/subdirectory-icon.js
new file mode 100644
index 00000000000000..9da2bc4a1c88a9
--- /dev/null
+++ b/packages/block-editor/src/components/block-list/subdirectory-icon.js
@@ -0,0 +1,18 @@
+/**
+ * WordPress dependencies
+ */
+import { SVG, Path } from '@wordpress/components';
+
+const Subdirectory = ( { ...extraProps } ) => (
+ )
+;
+
+export default Subdirectory;