=== modified file 'modules/shortcut/shortcut.admin.inc'
--- modules/shortcut/shortcut.admin.inc	2010-06-30 15:12:59 +0000
+++ modules/shortcut/shortcut.admin.inc	2010-10-02 07:50:57 +0000
@@ -21,6 +21,17 @@ function shortcut_max_slots() {
 /**
  * Form callback: builds the form for switching shortcut sets.
  *
+ * @ingroup forms
+ * @see shortcut_set_switch()
+ */
+function shortcut_user_edit_page($account) {
+  drupal_set_title($account->name);
+  return drupal_get_form('shortcut_set_switch', $account);
+}
+
+/**
+ * Form callback: builds the form for switching shortcut sets.
+ *
  * @param $form
  *   An associative array containing the structure of the form.
  * @param $form_state

=== modified file 'modules/shortcut/shortcut.module'
--- modules/shortcut/shortcut.module	2010-09-24 00:37:41 +0000
+++ modules/shortcut/shortcut.module	2010-10-02 07:04:12 +0000
@@ -151,8 +151,8 @@ function shortcut_menu() {
   );
   $items['user/%user/shortcuts'] = array(
     'title' => 'Shortcuts',
-    'page callback' => 'drupal_get_form',
-    'page arguments' => array('shortcut_set_switch', 1),
+    'page callback' => 'shortcut_user_edit_page',
+    'page arguments' => array(1),
     'access callback' => 'shortcut_set_switch_access',
     'access arguments' => array(1),
     'type' => MENU_LOCAL_TASK,

=== modified file 'modules/simpletest/tests/menu.test'
--- modules/simpletest/tests/menu.test	2010-10-01 15:24:18 +0000
+++ modules/simpletest/tests/menu.test	2010-10-02 14:33:28 +0000
@@ -921,7 +921,7 @@ class MenuBreadcrumbTestCase extends Dru
     $trail += array(
       $link_admin_user['link_path'] => $link_admin_user['link_title'],
     );
-    $this->assertBreadcrumb('user/' . $this->admin_user->uid . '/edit', $trail, $link_admin_user['link_title'], $tree, FALSE);
+    $this->assertBreadcrumb('user/' . $this->admin_user->uid . '/edit', $trail, $this->admin_user->name, $tree, FALSE);
 
     // Move 'user/%' below 'user' and verify again.
     $edit = array(
@@ -947,7 +947,7 @@ class MenuBreadcrumbTestCase extends Dru
     $trail += array(
       $link_admin_user['link_path'] => $link_admin_user['link_title'],
     );
-    $this->assertBreadcrumb('user/' . $this->admin_user->uid . '/edit', $trail, $link_admin_user['link_title'], $tree, FALSE);
+    $this->assertBreadcrumb('user/' . $this->admin_user->uid . '/edit', $trail, $this->admin_user->name, $tree, FALSE);
 
     // Create an only slightly privileged user being able to access site reports
     // but not administration pages.

=== modified file 'modules/user/user.module'
--- modules/user/user.module	2010-09-24 00:37:41 +0000
+++ modules/user/user.module	2010-10-02 06:50:47 +0000
@@ -1705,8 +1705,8 @@ function user_menu() {
 
   $items['user/%user/edit'] = array(
     'title' => 'Edit',
-    'page callback' => 'drupal_get_form',
-    'page arguments' => array('user_profile_form', 1),
+    'page callback' => 'user_edit_page',
+    'page arguments' => array(1),
     'access callback' => 'user_edit_access',
     'access arguments' => array(1),
     'type' => MENU_LOCAL_TASK,
@@ -1726,8 +1726,8 @@ function user_menu() {
         $items['user/%user_category/edit/' . $category['name']] = array(
           'title callback' => 'check_plain',
           'title arguments' => array($category['title']),
-          'page callback' => 'drupal_get_form',
-          'page arguments' => array('user_profile_form', 1, 3),
+          'page callback' => 'user_edit_page',
+          'page arguments' => array(1, 3),
           'access callback' => isset($category['access callback']) ? $category['access callback'] : 'user_edit_access',
           'access arguments' => isset($category['access arguments']) ? $category['access arguments'] : array(1),
           'type' => MENU_LOCAL_TASK,

=== modified file 'modules/user/user.pages.inc'
--- modules/user/user.pages.inc	2010-08-27 11:28:45 +0000
+++ modules/user/user.pages.inc	2010-10-02 06:54:32 +0000
@@ -231,6 +231,18 @@ function template_preprocess_user_profil
 }
 
 /**
+ * Form builder; Present the form to edit a given user or profile category.
+ *
+ * @ingroup forms
+ * @see user_edit_validate()
+ * @see user_edit_submit()
+ */
+function user_edit_page($account, $category = 'account') {
+  drupal_set_title($account->name);
+  return drupal_get_form('user_profile_form', $account, $category);
+}
+
+/**
  * Form builder; edit a user account or one of their profile categories.
  *
  * @ingroup forms

=== modified file 'modules/user/user.test'
--- modules/user/user.test	2010-08-27 11:28:45 +0000
+++ modules/user/user.test	2010-10-02 07:07:40 +0000
@@ -1404,7 +1404,10 @@ class UserEditTestCase extends DrupalWeb
     // Test user edit functionality with user pictures disabled.
     variable_set('user_pictures', 0);
     $user1 = $this->drupalCreateUser(array('change own username'));
-    $user2 = $this->drupalCreateUser(array());
+    // Although this is the user edit test case, the shortcut page has the
+    // same problem as the user edit page and requires the same code to test
+    // so let's squeeze it into this test. See http://drupal.org/node/925778
+    $user2 = $this->drupalCreateUser(array('administer users', 'administer shortcuts'));
     $this->drupalLogin($user1);
 
     // Test that error message appears when attempting to use a non-unique user name.
@@ -1457,6 +1460,14 @@ class UserEditTestCase extends DrupalWeb
     $user1->pass_raw = $new_pass;
     $this->drupalLogin($user1);
     $this->drupalLogout();
+
+    $this->drupalLogin($user2);
+    $this->drupalGet("user/$user1->uid/edit");
+    $head_title = array(strip_tags(check_plain($user1->name)), check_plain(variable_get('site_name', 'Drupal')));
+    $title = implode(' | ', $head_title);
+    $this->assertTitle($title, t('Correct title found on the user edit page'));
+    $this->drupalGet("user/$user1->uid/shortcuts");
+    $this->assertTitle($title, t('Correct title found on the user shortcuts page'));
   }
 }
 

