Hi all,

MediaWiki's skin system has been quite a mess for some while. I decided to
try rewriting it and you can see the end result on [1]. It's quite a big
patch, which is why I want to encourage all developers to test it and report
(or maybe even fix? :) any and all issues they stumble across. There is also
an example extension on [1] which I've been wanting to do for a long time
but which hasn't been possible with the old skin system. To be exact, it was
partially possible, as I noted on the MediaWiki.org page, but the
implementation was too buggy to be put live on any site IMHO.

What does this patch change exactly? When writing a new skin, you no longer
need to override SkinTemplate and write a class that utilises QuickTemplate,
you can just extend Skin class directly. Old SkinTemplate-based skins will
however continue functioning. I wrote a couple things about writing a new
skin with this new system on MediaWiki.org[2], feel free to check it out.

There are some changes which may cause problems, though. For example,
SkinTemplateToolboxEnd and MonoBookTemplateToolboxEnd hooks both take two
arguments instead of one and the hooks are in Skin.php instead of
SkinTemplate.php. I was also thinking that this could be a great opportunity
to add some new hooks to Skin.php, besides the SkinAfterSidebar hook. See
[3] for my thoughts about what could be improved.

I haven't ported Vector skin to use this new system because it's currently
under development. Because this change is quite a big one, I thought that
I'll commit it to SVN once MediaWiki 1.16 has been released so that it'll
make into the 1.17 release.

What are your thoughts and suggestions for this new skinning system?

[1] http://www.mediawiki.org/wiki/User:Jack_Phoenix/SkinSystemRewrite
[2]
http://www.mediawiki.org/wiki/User:Jack_Phoenix/SkinSystemRewrite/Documentation
[3]
http://www.mediawiki.org/wiki/User:Jack_Phoenix/SkinSystemRewrite/Notes_and_to-do

Thanks and regards,
--
Jack Phoenix
MediaWiki developer
_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

Reply via email to