--- editors/ckeditor/plugin.js
+++ editors/ckeditor/plugin.js
@@ -19,7 +19,12 @@
       editor.addCommand( 'video_filter', {
         exec : function () {
           var path = (Drupal.settings.video_filter.url.wysiwyg_ckeditor) ? Drupal.settings.video_filter.url.wysiwyg_ckeditor : Drupal.settings.video_filter.url.ckeditor
-          var media = window.showModalDialog(path, { 'opener' : window, 'editorname' : editor.name }, "dialogWidth:580px; dialogHeight:480px; center:yes; resizable:yes; help:no;");
+          if (window.showModalDialog) {
+            var media = window.showModalDialog(path, { 'opener' : window, 'editorname' : editor.name }, "dialogWidth:750px; dialogHeight:320px; center:yes; resizable:yes; help:no;");
+          }
+          else {
+            var media = window.open(path + (path.indexOf('?') == -1 ? '?' : '&') + 'editorname='+encodeURI(editor.name), null, "width=750,height=320,resizable,alwaysRaised,dependent,toolbar=no,location=no,menubar=no");
+          }
         }
       });

--- editors/ckeditor/video_filter_dialog.js
+++ editors/ckeditor/video_filter_dialog.js
@@ -4,10 +4,16 @@
  */
 var video_filter_dialog = {
   init : function() {
-    //Get CKEDITOR
-    CKEDITOR = dialogArguments.opener.CKEDITOR;
-    //Get the current instance name
-    var name = dialogArguments.editorname;
+    //Get CKEDITOR and current instance name
+    if (typeof(dialogArguments) != 'undefined') {
+      CKEDITOR = dialogArguments.opener.CKEDITOR;
+      var name = dialogArguments.editorname;
+    }
+    else {
+      CKEDITOR = window.opener.CKEDITOR;
+      var name = decodeURI((RegExp('editorname=(.+?)(&|$)').exec(location.search)||[,null])[1]);
+    }
+
     //Get the editor instance
     editor = CKEDITOR.instances[name];
   },
