@@ -26,9 +26,7 @@ import {
2626 Spinner ,
2727 ToggleControl ,
2828} from '@wordpress/components'
29- import {
30- useEffect , useState , useRef ,
31- } from '@wordpress/element'
29+ import { useEffect , useState } from '@wordpress/element'
3230import { sprintf , __ } from '@wordpress/i18n'
3331import { useBlockColorSchemes } from '~stackable/hooks'
3432import ColorSchemePreview from '../color-scheme-preview'
@@ -37,6 +35,7 @@ import Tooltip from '../tooltip'
3735
3836const PLAN_OPTIONS = [ { key : '' , label : __ ( 'All' , i18n ) } , { key : 'free' , label : __ ( 'Free' , i18n ) } , { key : 'premium' , label : __ ( 'Premium' , i18n ) } ]
3937const popoverProps = {
38+ className : 'ugb-design-library__color-scheme-popover' ,
4039 placement : 'right-start' ,
4140 shift : true ,
4241}
@@ -66,8 +65,6 @@ export const ModalDesignLibrary = props => {
6665 const [ selectedContainerScheme , setSelectedContainerScheme ] = useState ( '' )
6766 const [ selectedBackgroundScheme , setSelectedBackgroundScheme ] = useState ( '' )
6867
69- const openDropdownRef = useRef ( null )
70-
7168 // For version 4, the default tab is now 'patterns' and for category, we use '' instead of 'All'.
7269 // So we need to update the local storage values here.
7370 useEffect ( ( ) => {
@@ -162,17 +159,10 @@ export const ModalDesignLibrary = props => {
162159 onClick = { ( ) => setDoReset ( true ) }
163160 />
164161 < Dropdown
165- focusOnMount = { false }
166- renderToggle = { ( { onToggle, onClose } ) => (
162+ focusOnMount = "container"
163+ renderToggle = { ( { onToggle } ) => (
167164 < Button
168- onClick = { ( ) => {
169- if ( openDropdownRef . current ) {
170- openDropdownRef . current ( )
171- }
172-
173- openDropdownRef . current = onClose
174- onToggle ( )
175- } }
165+ onClick = { onToggle }
176166 style = { { height : 'auto' } }
177167 icon = "arrow-down-alt2"
178168 iconSize = { 12 }
@@ -190,7 +180,6 @@ export const ModalDesignLibrary = props => {
190180 key = { i }
191181 onClick = { ( ) => {
192182 setSelectedPlan ( plan )
193- openDropdownRef . current = null
194183 onClose ( )
195184 } }
196185 >
@@ -246,17 +235,10 @@ export const ModalDesignLibrary = props => {
246235 < Dropdown
247236 className = "ugb-modal-design-library__color-scheme-dropdown"
248237 popoverProps = { popoverProps }
249- focusOnMount = { false }
250- renderToggle = { ( { onToggle, onClose } ) => (
238+ focusOnMount = "container"
239+ renderToggle = { ( { onToggle } ) => (
251240 < Button
252- onClick = { ( ) => {
253- if ( openDropdownRef . current ) {
254- openDropdownRef . current ( )
255- }
256-
257- openDropdownRef . current = onClose
258- onToggle ( )
259- } }
241+ onClick = { onToggle }
260242 className = "ugb-modal-design-library__stk-color-scheme stk-color-scheme__toggle"
261243 >
262244 { selectedBackgroundScheme !== ''
@@ -266,7 +248,16 @@ export const ModalDesignLibrary = props => {
266248 </ Button >
267249 ) }
268250 renderContent = { ( { onClose } ) => (
269- < div className = "ugb-modal-design-library__stk-color-scheme-list-wrapper" >
251+ < div >
252+ < div className = "ugb-modal-design-library__stk-color-scheme-list-header" >
253+ < p > { __ ( 'Background Scheme' , i18n ) } </ p >
254+ < Button
255+ icon = "no"
256+ onClick = { ( ) => {
257+ onClose ( )
258+ } }
259+ />
260+ </ div >
270261 < div className = "ugb-modal-design-library__stk-color-scheme-list" >
271262 < Button
272263 className = { `ugb-modal-design-library__stk-color-scheme${ selectedBackgroundScheme === '' ? ' stk-color-scheme__selected' : '' } ` }
@@ -275,8 +266,6 @@ export const ModalDesignLibrary = props => {
275266 setEnableBackground ( true )
276267 }
277268 setSelectedBackgroundScheme ( '' )
278- openDropdownRef . current = null
279- onClose ( )
280269 } }
281270 >
282271 < span className = "stk-color-scheme-name stk-color-scheme__none" > { __ ( 'Default' , i18n ) } </ span >
@@ -290,9 +279,6 @@ export const ModalDesignLibrary = props => {
290279 setEnableBackground ( true )
291280 }
292281 setSelectedBackgroundScheme ( key )
293-
294- openDropdownRef . current = null
295- onClose ( )
296282 } }
297283 >
298284 < ColorSchemePreview colors = { scheme . desktopColors } isCollapsed = { true } />
@@ -314,17 +300,10 @@ export const ModalDesignLibrary = props => {
314300 >
315301 < Dropdown
316302 popoverProps = { popoverProps }
317- focusOnMount = { false }
318- renderToggle = { ( { onToggle, onClose } ) => (
303+ focusOnMount = "container"
304+ renderToggle = { ( { onToggle } ) => (
319305 < Button
320- onClick = { ( ) => {
321- if ( openDropdownRef . current ) {
322- openDropdownRef . current ( )
323- }
324-
325- openDropdownRef . current = onClose
326- onToggle ( )
327- } }
306+ onClick = { onToggle }
328307 className = "ugb-modal-design-library__stk-color-scheme stk-color-scheme__toggle"
329308 >
330309 { selectedContainerScheme !== ''
@@ -334,14 +313,21 @@ export const ModalDesignLibrary = props => {
334313 </ Button >
335314 ) }
336315 renderContent = { ( { onClose } ) => (
337- < div className = "ugb-modal-design-library__stk-color-scheme-list-wrapper" >
316+ < div >
317+ < div className = "ugb-modal-design-library__stk-color-scheme-list-header" >
318+ < p > { __ ( 'Container Scheme' , i18n ) } </ p >
319+ < Button
320+ icon = "no"
321+ onClick = { ( ) => {
322+ onClose ( )
323+ } }
324+ />
325+ </ div >
338326 < div className = "ugb-modal-design-library__stk-color-scheme-list" >
339327 < Button
340328 className = { `ugb-modal-design-library__stk-color-scheme${ selectedContainerScheme === '' ? ' stk-color-scheme__selected' : '' } ` }
341329 onClick = { ( ) => {
342330 setSelectedContainerScheme ( '' )
343- openDropdownRef . current = null
344- onClose ( )
345331 } }
346332 >
347333 < span className = "stk-color-scheme-name stk-color-scheme__none" > { __ ( 'Default' , i18n ) } </ span >
@@ -352,8 +338,6 @@ export const ModalDesignLibrary = props => {
352338 className = { `ugb-modal-design-library__stk-color-scheme${ selectedContainerScheme === key ? ' stk-color-scheme__selected' : '' } ` }
353339 onClick = { ( ) => {
354340 setSelectedContainerScheme ( key )
355- openDropdownRef . current = null
356- onClose ( )
357341 } }
358342 >
359343 < ColorSchemePreview colors = { scheme . desktopColors } isCollapsed = { true } />
0 commit comments