Index: modules/node/node.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/node/node.module,v
retrieving revision 1.1196
diff -u -p -r1.1196 node.module
--- modules/node/node.module	4 Jan 2010 03:57:19 -0000	1.1196
+++ modules/node/node.module	5 Jan 2010 01:06:02 -0000
@@ -1186,9 +1186,11 @@ function node_view($node, $view_mode = '
     '#node' => $node,
     '#view_mode' => $view_mode,
   );
-  // Add contextual links for this node except for 'full' view mode.
-  // @todo Make this configurable per view mode.
-  if ($view_mode != 'full') {
+  // Add contextual links for this node, except when the node is already being
+  // displayed on its own page. Modules may alter this behavior (for example,
+  // to restrict contextual links to certain view modes) by implementing
+  // hook_node_view_alter().
+  if (!node_is_page($node)) {
     $build['#contextual_links']['node'] = array('node', array($node->nid));
   }
 
