See meta-issue: #2511554: [meta] Move some parts of Page Manager into CTools
Currently, in PanelsDisplayVariant, we've copied a bunch of code from Page Manager's BlockDisplayVariant in a futile attempt to avoid depending on Page Manager. (Unfortunately, we still ended up depending on it - here is another issue to fix that: #2511576: Remove dependency on Page Manager)
However, ideally, we just extend BlockDisplayVariant rather than having to copy code from it every time there is a new Page Manager release. :-)
And we can do that after it's moved into CTools per #2511566: Add an abstract version of Drupal\page_manager\Plugin\DisplayVariant\BlockDisplayVariant from Page Manager
Comment | File | Size | Author |
---|---|---|---|
#17 | interdiff.txt | 960 bytes | tim.plunkett |
#17 | panels-no-pm-2511582-17.patch | 10.56 KB | tim.plunkett |
| |||
#15 | interdiff.txt | 2.53 KB | tim.plunkett |
#15 | panels-no-pm-2511582-15.patch | 10.68 KB | tim.plunkett |
| |||
#11 | panels-no-pm-2511582-11.patch | 8.96 KB | tim.plunkett |
|
Comments
Comment #1
dsnopekPostponed on #2511566: Add an abstract version of Drupal\page_manager\Plugin\DisplayVariant\BlockDisplayVariant from Page Manager
Comment #2
dsnopekComment #3
rlmumfordAdding #2561963: Display Config Entity as a related issue. I'm guessing that when that gets in we won't want to extend BlockDisplayVariant any more.
Comment #4
rlmumfordComment #5
tim.plunkett#2571957: PageAwareVariantInterface is gone is not worth fixing in isolation. Panels is broken until it is, and we need to fix it here.
Comment #6
tim.plunkettThis can be done now, AFAIK.
Comment #7
saltednutUpdated issues summary to mention PanelsDisplayVariant so this is easier to find.
Comment #8
dsnopekHere's a patch that implements this! And since we've already gone this far, it also pulls out the page_manager dependency per #2511576: Remove dependency on Page Manager which we can just close if this patch is committed :-)
Note: there is still some c/p code from page_manager, but it's mostly stuff that will need to end up in the Builder plugin (ie like old "renderer"), so I think it's fine for now.
Comment #10
dsnopekHeh, I think the test error is because there are no tests. :-) Setting back to NR.
Comment #11
tim.plunkettI think this is probably RTBC. buildRegions() is still copy/paste from old page_manager code, but that didn't go into CTools. It's still in p_m, but with newer cacheability changes. That can be a follow-up though.
Comment #13
dsnopekThanks! The changes in #11 look good to me, so taking the leap to RTBC :-)
Yeah, I think we should address that either as part of #2340999: Implement "display renderer" plugin type (now called "display builder") or immediately after it, since the building should really occur in a Builder plugin anyway.
Comment #15
tim.plunkettNow with a basic test to prevent DrupalCI from crashing, which also revealed a mistake.
Comment #16
dsnopekWe should remove ConditionVariantInterface too, it's also on BlockDisplayVariant.
Comment #17
tim.plunkettAnd ContainerFactoryPluginInterface too.
Comment #18
dsnopekJust manually tested #15 and #17 - they work for me!
Comment #19
g089h515r806 CreditAttribution: g089h515r806 commented#17 - work for me!
Fix issue: Fatal error: Interface 'Drupal\page_manager\Plugin\ContextAwareVariantInterface' not found in(https://www.drupal.org/node/2584699)
Comment #21
japerryThanks! Fixed,
Now time to get the ctools and page manager releases out and we should have it stable again on RC1.