diff --git a/media_gallery.fields.inc b/media_gallery.fields.inc
index f172915..eff8b98 100644
--- a/media_gallery.fields.inc
+++ b/media_gallery.fields.inc
@@ -88,7 +88,10 @@ function media_gallery_field_formatter_view($entity_type, $entity, $field, $inst
 
   // Prepare the referenced file entities for viewing.
   $files = array();
-  foreach ($items as $delta => $item) {
+  foreach ($items as $delta => &$item) {
+    if (empty($item['file'])) {
+      $item['file'] = file_load($item['fid']);
+    }
     $file = $item['file'];
 
     // Pass along formatter reference field values from the gallery to the file.
@@ -107,6 +110,7 @@ function media_gallery_field_formatter_view($entity_type, $entity, $field, $inst
 
     $files[$file->fid] = $file;
   }
+  unset($item);
   field_attach_prepare_view('file', $files, $file_view_mode);
   entity_prepare_view('file', $files);
 
diff --git a/media_gallery.info b/media_gallery.info
index 4bc1c33..68d040c 100644
--- a/media_gallery.info
+++ b/media_gallery.info
@@ -5,7 +5,7 @@ package = Media
 
 dependencies[] = list
 dependencies[] = number
-dependencies[] = media (<1.99)
+dependencies[] = media (>1.99)
 dependencies[] = taxonomy
 dependencies[] = multiform
 
diff --git a/media_gallery.install b/media_gallery.install
index a633d63..4d1c4e5 100644
--- a/media_gallery.install
+++ b/media_gallery.install
@@ -183,7 +183,7 @@ function _media_gallery_controlled_fields() {
       'field_name' => 'media_gallery_media',
       'cardinality' => FIELD_CARDINALITY_UNLIMITED,
       'locked' => TRUE,
-      'type' => 'media',
+      'type' => 'file',
     ),
     // The gallery description.
     'media_gallery_description' => array(
@@ -988,7 +988,7 @@ function media_gallery_update_7000() {
     field_update_instance( array(
         'field_name' => 'media_description',
         'bundle' => $bundle,
-        'entity_type' => 'media',
+        'entity_type' => 'file',
         'display' => array(
           'default' => array('type' => 'text_default', 'label' => 'above'),
           'media_gallery_thumbnail' => array('type' => 'text_default', 'label' => 'above'),
@@ -1068,14 +1068,14 @@ function media_gallery_update_7001() {
 function media_gallery_update_7002() {
   drupal_load('module', 'field');
   $bundle = 'video';
-  $bundle_settings = field_bundle_settings('media', $bundle);
+  $bundle_settings = field_bundle_settings('file', $bundle);
   $bundle_settings['view_modes']['media_gallery_thumbnail']['custom_settings'] = TRUE;
   $bundle_settings['view_modes']['media_gallery_lightbox']['custom_settings'] = TRUE;
   $bundle_settings['view_modes']['media_gallery_detail']['custom_settings'] = TRUE;
   $bundle_settings['view_modes']['media_gallery_block_thumbnail']['custom_settings'] = TRUE;
   $bundle_settings['view_modes']['media_gallery_collection_thumbnail']['custom_settings'] = TRUE;
-  field_bundle_settings('media', $bundle, $bundle_settings);
-  $instance = field_info_instance('media', 'file', $bundle);
+  field_bundle_settings('file', $bundle, $bundle_settings);
+  $instance = field_info_instance('file', 'file', $bundle);
   $instance['display']['media_gallery_thumbnail'] = array('type' => 'styles_file_media_gallery_thumbnail', 'label' => 'hidden');
   $instance['display']['media_gallery_lightbox'] = array('type' => 'styles_file_media_gallery_large', 'label' => 'hidden');
   $instance['display']['media_gallery_detail'] = array('type' => 'styles_file_media_gallery_large', 'label' => 'hidden');
@@ -1105,7 +1105,7 @@ function media_gallery_update_7004() {
   drupal_load('module', 'media');
   $t = get_t();
   foreach (media_type_get_types() as $bundle => $type) {
-    $instance = field_info_instance('media', 'field_license', $bundle);
+    $instance = field_info_instance('file', 'field_license', $bundle);
     // If the instance doesn't exist, we can't update it.
     if ($instance) {
       $label = in_array($bundle, array('image', 'audio', 'video')) ? $bundle : 'file';
@@ -1133,7 +1133,7 @@ function media_gallery_update_7005() {
   }
 
   // Ensure that media videos have the proper display formatters
-  $instance = field_info_instance('media', 'file', 'video');
+  $instance = field_info_instance('file', 'file', 'video');
   if ($instance) {
     $instance['display']['media_gallery_thumbnail'] = array('type' => 'styles_file_media_gallery_thumbnail', 'label' => 'hidden');
     $instance['display']['media_gallery_lightbox'] = array('type' => 'styles_file_media_gallery_large', 'label' => 'hidden');
@@ -1245,7 +1245,7 @@ function media_gallery_update_7007() {
 function media_gallery_update_7008() {
   // Ensure that the media_description field is filtered text.
   foreach (array('video', 'image') as $bundle) {
-    $instance = field_info_instance('media', 'media_description', $bundle);
+    $instance = field_info_instance('file', 'media_description', $bundle);
     if ($instance) {
       $instance['settings']['text_processing'] = 1;
       field_update_instance($instance);
@@ -1265,7 +1265,7 @@ function media_gallery_update_7008() {
  */
 function media_gallery_update_7009() {
   $instances = array();
-  $fields = field_read_fields(array('type' => 'media'), array('include_inactive' => TRUE));
+  $fields = field_read_fields(array('type' => 'file'), array('include_inactive' => TRUE));
   foreach ($fields as $field) {
     $instances = array_merge($instances, field_read_instances(array('field_id' => $field['id']), array('include_inactive' => TRUE)));
   }
diff --git a/media_gallery.pages.inc b/media_gallery.pages.inc
index de1691c..2587299 100644
--- a/media_gallery.pages.inc
+++ b/media_gallery.pages.inc
@@ -276,8 +276,8 @@ function media_gallery_add_images($node) {
     if (empty($existing_fids[$fid])) {
       $file = Array();
       $file['fid'] = $fid;
-      $file['title'] = null;
-      $file['data'] = '';
+      $file['display'] = 1;
+      $file['description'] = '';
       $items[] = $file;
     }
   }
@@ -385,7 +385,7 @@ function media_gallery_media_page_multiedit($node) {
   module_load_include('inc', 'media', 'includes/media.pages');
 
   // Build and process the form.
-  $form = media_page_multiedit($files);
+  $form = media_file_page_edit_multiple($files);
 
   // Override the page title set by media_page_multiedit() and return the form.
   drupal_set_title(t('<em>Edit media for</em> @title', array('@type' => $node->type, '@title' => $node->title)), PASS_THROUGH);
