WebCore:

2008-11-04  Sam Weinig  <sam@webkit.org>

        Reviewed by Simon Hausmann.

        Fix https://bugs.webkit.org/show_bug.cgi?id=21648
        navigator.mimeTypes and navigator.plugins don't expose item and namedItem to JS

        - Also adds constructors for Plugin, PluginArray, MimeType and MimeTypeArray.

        * bindings/js/JSMimeTypeArrayCustom.cpp:
        (WebCore::JSMimeTypeArray::nameGetter):
        * bindings/js/JSPluginArrayCustom.cpp:
        (WebCore::JSPluginArray::nameGetter):
        * page/DOMWindow.idl:
        * plugins/MimeType.idl:
        * plugins/MimeTypeArray.cpp:
        (WebCore::MimeTypeArray::namedItem):
        * plugins/MimeTypeArray.h:
        * plugins/MimeTypeArray.idl:
        * plugins/Plugin.idl:
        * plugins/PluginArray.cpp:
        (WebCore::PluginArray::namedItem):
        * plugins/PluginArray.h:
        * plugins/PluginArray.idl:

LayoutTests:

2008-11-04  Sam Weinig  <sam@webkit.org>

        Reviewed by Simon Hausmann.

        Update tests for https://bugs.webkit.org/show_bug.cgi?id=21648
        navigator.mimeTypes and navigator.plugins don't expose item and namedItem to JS

        * fast/dom/Window/window-properties-expected.txt:
        * fast/js/global-constructors-expected.txt:
        * plugins/plugin-javascript-access-expected.txt:
        * plugins/plugin-javascript-access.html:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38129 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/plugins/Plugin.idl b/WebCore/plugins/Plugin.idl
index 988f371..22debca 100644
--- a/WebCore/plugins/Plugin.idl
+++ b/WebCore/plugins/Plugin.idl
@@ -1,5 +1,6 @@
 /*
     Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
+    Copyright (C) 2008 Apple Inc. All rights reserved.
 
     This library is free software; you can redistribute it and/or
     modify it under the terms of the GNU Library General Public
@@ -19,7 +20,11 @@
 
 module window {
 
-    interface [HasNameGetter, HasIndexGetter] Plugin {
+    interface [
+        GenerateConstructor,
+        HasNameGetter,
+        HasIndexGetter
+    ] Plugin {
         readonly attribute DOMString name;
         readonly attribute DOMString filename;
         readonly attribute DOMString description;