diff --git a/css/gridstack.css b/css/gridstack.css index 2cc26b77b7a42f2785734b1909809a0a81a8827b..6fe4026798d1bc9f002871c0052fa081b66a0627 100644 --- a/css/gridstack.css +++ b/css/gridstack.css @@ -69,6 +69,7 @@ .gridstack--js .box, /* Prevents overlapping bg when edge to edge (EtE) is not enabled. */ .gridstack .box__content { + position: relative; overflow: hidden; } @@ -118,6 +119,7 @@ .gridstack .b-gs, .gridstack .box__animated, .gridstack--js .b-noratio, +.gridstack--js .box__content, .gridstack--js .box__content > a, .gridstack--js .box > .litebox { display: block; diff --git a/css/gridstack.library.css b/css/gridstack.library.css index ac0d75baf284b0b4eebe5047920deeb1119aa3f6..3c0a2884b71a840f641d5214fd08f1c9eca49899 100644 --- a/css/gridstack.library.css +++ b/css/gridstack.library.css @@ -220,6 +220,12 @@ float: left; } +/* stylelint-disable declaration-no-important */ +.gridstack--js.is-gs-disabled .gridstack__box { + position: relative; + top: auto !important; +} + .is-gs-destroyed > .box > .box__content, .gridstack--gs.is-gs-disabled .box__content { position: relative; diff --git a/src/Engine/GridStackEnginePluginBase.php b/src/Engine/GridStackEnginePluginBase.php index 4dc9a4d877c7bb974d9b56ba7a1d89f38cff9a85..995703a5165e8161c3cdd9b5a1d876feeff75083 100644 --- a/src/Engine/GridStackEnginePluginBase.php +++ b/src/Engine/GridStackEnginePluginBase.php @@ -315,7 +315,8 @@ abstract class GridStackEnginePluginBase extends GridStackPluginBase implements $rid = Defaults::regionId($delta); $region = $regions[$rid] ?? []; - $subsets = $this->manager->toHashtag($item) + $settings; + $subsets = $this->manager->toHashtag($item); + $subsets = $this->manager->mergeSettings(['blazies', 'gridstacks'], $settings, $subsets); $config = $this->manager->reset($subsets, TRUE); $config->set('region', $region) @@ -347,12 +348,12 @@ abstract class GridStackEnginePluginBase extends GridStackPluginBase implements $gridstack = $settings['gridstacks']; foreach (array_keys($grids) as $gid) { - $rid = Defaults::regionId($delta . '_' . $gid); - $region = $regions[$rid] ?? []; - $nested = $item[$gid] ?? []; - $subsets = $this->manager->toHashtag($nested); - $subsets += $settings; - $config = $this->manager->reset($subsets, TRUE); + $rid = Defaults::regionId($delta . '_' . $gid); + $region = $regions[$rid] ?? []; + $nested = $item[$gid] ?? []; + $subsets = $this->manager->toHashtag($nested); + $subsets = $this->manager->mergeSettings(['blazies', 'gridstacks'], $settings, $subsets); + $config = $this->manager->reset($subsets, TRUE); $config->set('region', $region) ->set('rid', $rid) diff --git a/src/GridStackManager.php b/src/GridStackManager.php index 87bcf1f149087a9367e3f735333c2ceb0dfa3e49..01114661367d9b625e793e4b90227db78b20e9a2 100644 --- a/src/GridStackManager.php +++ b/src/GridStackManager.php @@ -261,6 +261,7 @@ class GridStackManager extends BlazyManagerBase implements GridStackManagerInter // @fixme v5.1.1 ->set('use.gridstatic', $gridstacks->ui('gridstatic')) ->set('use.gridstatic', FALSE) ->set('use.js', $use_js) + ->set('use.inner', $use_js) ->set('use.nested', $use_framework) ->set('was.settings', TRUE); diff --git a/templates/gridstack.theme.inc b/templates/gridstack.theme.inc index 6cd7b71b21d604c5e7f7c6bcd024b816bdc9355a..f279ef766f8fc51ca5bfca867bbbf5309d3fb3d0 100644 --- a/templates/gridstack.theme.inc +++ b/templates/gridstack.theme.inc @@ -80,7 +80,7 @@ function template_preprocess_gridstack_box(&$variables) { // Provides inner DIV if so required (.row.gridstack--nested > DIV). // When using CSS frameworks to have row + inner divities display correctly. // Not needed by JS engines, just CSS engines. - $check = $use_inner && $use_fw && $has_content; + $check = $use_fw ? $use_inner && $has_content : $use_inner; $config->set('use.inner', $check); // Provides optional classes if so configured.