diff --git a/lib/Drupal/views/Plugins/Type/DisplayPluginManager.php b/lib/Drupal/views/Plugins/Type/DisplayPluginManager.php index f6a510f1f1101ab890b97a9d61d98312fcc87057..1318e8d17e8e85df7cd54f489b3cf4d32d90a87e 100644 --- a/lib/Drupal/views/Plugins/Type/DisplayPluginManager.php +++ b/lib/Drupal/views/Plugins/Type/DisplayPluginManager.php @@ -9,7 +9,7 @@ use Drupal\Component\Plugin\PluginManagerBase; use Drupal\Component\Plugin\Factory\DefaultFactory; -use Drupal\views\Plugins\views\Discovery\ViewsDiscovery; +use Drupal\views\Plugins\Discovery\ViewsDiscovery; class DisplayPluginManager extends PluginManagerBase { public function __construct() { diff --git a/lib/Drupal/views/Plugins/Type/ExposedFormPluginManager.php b/lib/Drupal/views/Plugins/Type/ExposedFormPluginManager.php index 66100a9a5a9c5e42f91cd2487399ad6aa161d5ca..5761cb8c425d34bb5d940cdbc624d65781266e3b 100644 --- a/lib/Drupal/views/Plugins/Type/ExposedFormPluginManager.php +++ b/lib/Drupal/views/Plugins/Type/ExposedFormPluginManager.php @@ -9,7 +9,7 @@ use Drupal\Component\Plugin\PluginManagerBase; use Drupal\Component\Plugin\Factory\DefaultFactory; -use Drupal\views\Plugins\views\Discovery\ViewsDiscovery; +use Drupal\views\Plugins\Discovery\ViewsDiscovery; class ExposedFormPluginManager extends PluginManagerBase { public function __construct() { diff --git a/lib/Drupal/views/Plugins/Type/HandlerPluginManager.php b/lib/Drupal/views/Plugins/Type/HandlerPluginManager.php index 4fa54c8aaeef7fe33058f9537a7f575664118669..5335da81cdc377bff5e1aab7e901ce89bf15f21d 100644 --- a/lib/Drupal/views/Plugins/Type/HandlerPluginManager.php +++ b/lib/Drupal/views/Plugins/Type/HandlerPluginManager.php @@ -9,11 +9,22 @@ use Drupal\Component\Plugin\PluginManagerBase; use Drupal\Component\Plugin\Factory\DefaultFactory; -use Drupal\views\Plugins\views\Discovery\ViewsDiscovery; +use Drupal\Core\Plugin\Discovery\AnnotatedClassDiscovery; class HandlerPluginManager extends PluginManagerBase { - public function __construct() { - $this->discovery = new ViewsDiscovery('views_plugins', 'handler'); - $this->factory = new DefaultFactory($this); + /** + * The handler type of this plugin manager, for example filter or field. + * + * @var string + */ + protected $type; + + public function __construct($type) { + $this->type = $type; + + if (in_array($this->type, array('sort', 'filter', 'relationship', 'field', 'area', 'argument'))) { + $this->discovery = new AnnotatedClassDiscovery('views', $this->type); + } + $this->factory = new DefaultFactory($this->discovery); } } diff --git a/lib/Drupal/views/Plugins/Type/LocalizationPluginManager.php b/lib/Drupal/views/Plugins/Type/LocalizationPluginManager.php index 7cd69c63fcfbbe7da76ac2bcff31f95b016ea35b..98f03360e12dd74e14dbc8adac063d21154be056 100644 --- a/lib/Drupal/views/Plugins/Type/LocalizationPluginManager.php +++ b/lib/Drupal/views/Plugins/Type/LocalizationPluginManager.php @@ -9,7 +9,7 @@ use Drupal\Component\Plugin\PluginManagerBase; use Drupal\Component\Plugin\Factory\DefaultFactory; -use Drupal\views\Plugins\views\Discovery\ViewsDiscovery; +use Drupal\views\Plugins\Discovery\ViewsDiscovery; class LocalizationPluginManager extends PluginManagerBase { public function __construct() {