diff -urpwN ../tmp/i18n/content_negotiation.inc ./content_negotiation.inc
--- ../tmp/i18n/content_negotiation.inc	1970-01-01 01:00:00.000000000 +0100
+++ ./content_negotiation.inc	2008-10-22 17:36:39.000000000 +0200
@@ -0,0 +1,8 @@
+<?php
+
+class content_negotiation_filter_handler extends views_handler_filter {
+    function query() {
+        $where = i18n_db_rewrite_where('node', 'node');
+        $this->query->add_where(0, $where);
+    }
+}
diff -urpwN ../tmp/i18n/i18n.module ./i18n.module
--- ../tmp/i18n/i18n.module	2008-09-25 21:16:11.000000000 +0200
+++ ./i18n.module	2008-10-22 16:43:47.000000000 +0200
@@ -802,3 +802,10 @@ function _i18n_content_language_options(
     LANGUAGE_SUPPORT_EXTENDED => t('Extended - All defined languages will be allowed.')
   );
 }
+
+function i18n_views_api() {
+  return array(
+    'api' => '2.0',
+    'path' => drupal_get_path('module', 'i18n'),
+  );
+}
\ No newline at end of file
diff -urpwN ../tmp/i18n/i18n.patch ./i18n.patch
--- ../tmp/i18n/i18n.patch	1970-01-01 01:00:00.000000000 +0100
+++ ./i18n.patch	2008-10-22 17:40:59.000000000 +0200
@@ -0,0 +1,27 @@
+diff -urpwN ../tmp/i18n/content_negotiation.inc ./content_negotiation.inc
+--- ../tmp/i18n/content_negotiation.inc	1970-01-01 01:00:00.000000000 +0100
++++ ./content_negotiation.inc	2008-10-22 17:36:39.000000000 +0200
+@@ -0,0 +1,8 @@
++<?php
++
++class content_negotiation_filter_handler extends views_handler_filter {
++    function query() {
++        $where = i18n_db_rewrite_where('node', 'node');
++        $this->query->add_where(0, $where);
++    }
++}
+diff -urpwN ../tmp/i18n/i18n.module ./i18n.module
+--- ../tmp/i18n/i18n.module	2008-09-25 21:16:11.000000000 +0200
++++ ./i18n.module	2008-10-22 16:43:47.000000000 +0200
+@@ -802,3 +802,10 @@ function _i18n_content_language_options(
+     LANGUAGE_SUPPORT_EXTENDED => t('Extended - All defined languages will be allowed.')
+   );
+ }
++
++function i18n_views_api() {
++  return array(
++    'api' => '2.0',
++    'path' => drupal_get_path('module', 'i18n'),
++  );
++}
+\ No newline at end of file
diff -urpwN ../tmp/i18n/i18n.views.inc ./i18n.views.inc
--- ../tmp/i18n/i18n.views.inc	1970-01-01 01:00:00.000000000 +0100
+++ ./i18n.views.inc	2008-10-22 17:36:47.000000000 +0200
@@ -0,0 +1,31 @@
+<?php
+
+function i18n_views_data() {
+  $data['node']['content_negotiation'] = array(
+    'group' => t('i18n'),
+    'title' => t('Content negotiation'),
+    'help' => t('Removes the nodes that are not valid according to the content selection mode'),
+    'filter' => array(
+      'handler' => 'content_negotiation_filter_handler',
+    ),
+  );
+  
+  return $data;
+}
+
+/**
+ * Implementation of hook_views_handlers
+ */
+function i18n_views_handlers() {
+  return array(
+    'info' => array(
+      'path' => drupal_get_path('module', 'i18n'),
+    ),
+    'handlers' => array(
+      'content_negotiation_filter_handler' => array(
+        'parent' => 'views_handler_filter',
+        'file' => 'content_negotiation.inc',
+      ),
+    ),
+  );
+}
