MinervaNeue/includes
Piotr Miazga 258e635ae5 Extract SkinOptions to separate class
SkinOptions array was used to determine which options are available
for current session. Once we started extracting things from
SkinMinerva class, we found out that lots of things depend on
SkinOptions.

For example MainMenu/PageActionsMenu depend on skinsOptions var.
We could pass $skin object as dependency to a menu builder, but
this would cause a circural dependency (Skin depends on menu builder,
menu builder depends on skin) which is an anti-pattern.
In order to avoid such situations lets prepare first, and extract
the SkinOptions to a separate class, register it as a service
so different parts of Skin Minerva can freely use a single instance
of SkinOptions object.

Bug: T216152
Bug: T221012
Change-Id: Icd5da546e1bfaf8d9bfe86dab3b659a88eae19e4
2019-04-15 20:34:12 +00:00
..
skins Extract SkinOptions to separate class 2019-04-15 20:34:12 +00:00
MinervaHooks.php Extract SkinOptions to separate class 2019-04-15 20:34:12 +00:00
MinervaUI.php Add GPL file header to PHP classes 2018-04-15 16:23:10 -07:00
ResourceLoaderLessVarFileModule.php Add GPL file header to PHP classes 2018-04-15 16:23:10 -07:00
ServiceWiring.php Extract SkinOptions to separate class 2019-04-15 20:34:12 +00:00
SkinOptions.php Extract SkinOptions to separate class 2019-04-15 20:34:12 +00:00