Index: modules/openid/openid.js
===================================================================
RCS file: /cvs/drupal/drupal/modules/openid/openid.js,v
retrieving revision 1.13
diff -u -9 -p -r1.13 openid.js
--- modules/openid/openid.js	22 Mar 2010 18:55:45 -0000	1.13
+++ modules/openid/openid.js	20 Sep 2010 16:54:17 -0000
@@ -6,22 +6,22 @@ Drupal.behaviors.openid = {
     var loginElements = $('.form-item-name, .form-item-pass, li.openid-link');
     var openidElements = $('.form-item-openid-identifier, li.user-link');
     var cookie = $.cookie('Drupal.visitor.openid_identifier');
 
     // This behavior attaches by ID, so is only valid once on a page.
     if (!$('#edit-openid-identifier.openid-processed').size()) {
       if (cookie) {
         $('#edit-openid-identifier').val(cookie);
       }
-      if ($('#edit-openid-identifier').val()) {
+      if ($('#edit-openid-identifier').val() || location.hash == '#openid-login') {
         $('#edit-openid-identifier').addClass('openid-processed');
         loginElements.hide();
-        // Use .css('display', 'block') instead of .show() to  Konqueror friendly.
+        // Use .css('display', 'block') instead of .show() to be Konqueror friendly.
         openidElements.css('display', 'block');
       }
     }
 
     $('li.openid-link:not(.openid-processed)', context)
       .addClass('openid-processed')
       .click(function () {
          loginElements.hide();
          openidElements.css('display', 'block');
Index: modules/openid/openid.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/openid/openid.module,v
retrieving revision 1.95
diff -u -9 -p -r1.95 openid.module
--- modules/openid/openid.module	22 Aug 2010 22:00:16 -0000	1.95
+++ modules/openid/openid.module	20 Sep 2010 16:54:17 -0000
@@ -142,23 +142,23 @@ function _openid_user_login_form_alter(&
   if (!empty($form_state['input']['openid_identifier'])) {
     $form['name']['#required'] = FALSE;
     $form['pass']['#required'] = FALSE;
     unset($form['#submit']);
     $form['#validate'] = array('openid_login_validate');
   }
 
   $items = array();
   $items[] = array(
-    'data' => l(t('Log in using OpenID'), '#'),
+    'data' => l(t('Log in using OpenID'), '#openid-login', array('external' => TRUE)),
     'class' => array('openid-link'),
   );
   $items[] = array(
-    'data' => l(t('Cancel OpenID login'), '#'),
+    'data' => l(t('Cancel OpenID login'), '#', array('external' => TRUE)),
     'class' => array('user-link'),
   );
 
   $form['openid_links'] = array(
     '#theme' => 'item_list',
     '#items' => $items,
     '#attributes' => array('class' => array('openid-links')),
     '#weight' => 1,
   );
