Index: draggableviews.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/draggableviews/draggableviews.module,v
retrieving revision 1.6.2.31
diff -u -p -r1.6.2.31 draggableviews.module
--- draggableviews.module	7 Sep 2009 19:14:47 -0000	1.6.2.31
+++ draggableviews.module	10 Sep 2009 16:03:34 -0000
@@ -120,6 +120,7 @@ function draggableviews_view_draggableta
     }
   }
   $form['#redirect'] = array('path' => $_GET['q'], 'query' => $query);
+  $form['#theme'] = 'draggableviews_view_draggabletable_form';
 
   $info = &$view->draggableviews_info;
 
@@ -175,23 +176,13 @@ function draggableviews_theme() {
   );
 
   // Register theme function for all views.
-  $views = views_get_all_views();
-  foreach ($views AS $view) {
-    $view->init_display();
-    foreach ($view->display AS $display_id => $display) {
-      if (isset($display->handler->get_plugin('style')->definition['handler'])) {
-        if ($display->handler->get_plugin('style')->definition['handler'] == 'draggableviews_plugin_style_draggabletable') {
-          $array['draggableviews_view_draggabletable_form_'. $view->name .'_'. $display_id] = array(
-            'template' => 'draggableviews-view-draggabletable-form',
-            'preprocess functions' => array(
-              'template_preprocess_draggableviews_view_draggabletable_form',
-            ),
-            'arguments' => array('form' => NULL),
-          );
-        }
-      }
-    }
-  }
+  $array['draggableviews_view_draggabletable_form'] = array(
+    'template' => 'draggableviews-view-draggabletable-form',
+    'preprocess functions' => array(
+      'template_preprocess_draggableviews_view_draggabletable_form',
+    ),
+    'arguments' => array('form' => NULL),
+  );
   return $array;
 }
 
@@ -294,9 +285,6 @@ function draggableviews_views_pre_render
     return;
   }
 
-  // Make sure the theme we need is loaded.
-  _draggableviews_ensure_theme('draggableviews_view_draggabletable_form_'. $view->name .'_'. $view->style_plugin->display->id);
-
   // Initialize info array with the results of the executed view object.
   $view->draggableviews_info = _draggableviews_info($view, $view->draggableviews_info);
   $info = &$view->draggableviews_info;
@@ -369,22 +357,6 @@ function draggableviews_views_pre_render
 }
 
 /**
- * Ensure that the theme $theme_name is loaded in the registry.
- * @param $theme_name
- */
-function _draggableviews_ensure_theme($theme_name) {
-  init_theme();
-  $theme_registry = theme_get_registry();
-  if (!isset($theme_registry[$theme_name])) {
-    // The theme we need is not registered.
-    // We clear the theme_registry cache and cause the theme registry to be rebuilt.
-    drupal_rebuild_theme_registry();
-    unset($GLOBALS['theme']);
-    init_theme();
-  }
-}
-
-/**
  * Implementing hook_submit
  */
 function draggableviews_view_draggabletable_form_submit($vars) {
