Index: panels_page.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/panels/panels_page/Attic/panels_page.module,v
retrieving revision 1.1.2.56
diff -u -p -r1.1.2.56 panels_page.module
--- panels_page.module	6 Jun 2008 16:45:10 -0000	1.1.2.56
+++ panels_page.module	27 Jun 2008 21:05:37 -0000
@@ -506,39 +506,40 @@ function panels_page_get_title($panel_pa
   return $title;
 }
 
-function _panels_page_get_title($panel_page, $context, $default_title) {
-  if ($context == 'menu-parent' && $panel_page->menu_parent_title) {
-    return $panel_page->menu_parent_title;
-  }
-
-  if (in_array($context, array('menu', 'menu-parent')) && $panel_page->menu_title) {
-    return $panel_page->menu_title;
-  }
-
-  if ($panel_page->did == $panel_page->display->did || $panel_page->display->did == 'new') {
-    return !empty($panel_page->display->title) ? $panel_page->display->title : $panel_page->title;
-  }
-  elseif (isset($panel_page->display->title)) {
-    return $panel_page->display->title;
+function _panels_page_get_title($panel_page, $op, $default_title) {
+  if ($op == 'menu' || $op == 'menu-parent') {
+    if ($panel_page->menu_parent_title) {
+      return $panel_page->menu_parent_title;
+    }
+    if ($panel_page->menu_title) {
+      return $panel_page->menu_title;
+    }
   }
 
+  // Context has the highest priority
   if ($panel_page->context) {
     $title = NULL;
-    foreach ($panel_page->context as $id => $context) {
+    foreach ($panel_page->context as $context) {
       if (empty($context->data)) {
-        // empty contexts can't provide titles
+        // Empty contexts can't provide titles
         continue;
       }
       if ($page_title = $context->get_page_title()) {
         $title = $page_title;
       }
     }
-
     if ($title) {
       return $title;
     }
   }
 
+  // If no context returned a title use the display title configured in layout
+  // settings
+  if ($panel_page->display->title) {
+    return $panel_page->display->title;
+  }
+
+  // Fall back on the panel default title
   if ($panel_page->title) {
     return $panel_page->title;
   }
