OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved. |
3 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) | 3 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
4 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) | 4 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) |
5 * Copyright (C) 2008 Alp Toker <alp@atoker.com> | 5 * Copyright (C) 2008 Alp Toker <alp@atoker.com> |
6 * Copyright (C) Research In Motion Limited 2009. All rights reserved. | 6 * Copyright (C) Research In Motion Limited 2009. All rights reserved. |
7 * | 7 * |
8 * Redistribution and use in source and binary forms, with or without | 8 * Redistribution and use in source and binary forms, with or without |
9 * modification, are permitted provided that the following conditions | 9 * modification, are permitted provided that the following conditions |
10 * are met: | 10 * are met: |
(...skipping 3225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3236 | 3236 |
3237 if (!addedExtraFields) | 3237 if (!addedExtraFields) |
3238 addExtraFieldsToRequest(request, m_loadType, true, formData); | 3238 addExtraFieldsToRequest(request, m_loadType, true, formData); |
3239 | 3239 |
3240 loadWithNavigationAction(request, action, false, loadType, 0); | 3240 loadWithNavigationAction(request, action, false, loadType, 0); |
3241 } | 3241 } |
3242 | 3242 |
3243 // Loads content into this frame, as specified by history item | 3243 // Loads content into this frame, as specified by history item |
3244 void FrameLoader::loadItem(HistoryItem* item, FrameLoadType loadType) | 3244 void FrameLoader::loadItem(HistoryItem* item, FrameLoadType loadType) |
3245 { | 3245 { |
3246 // We do same-document navigation in the following cases: | |
3247 // - The HistoryItem corresponds to the same document (or documents in the c
ase of frames). | |
3248 // - The HistoryItem is not the same as the current item. | |
3249 HistoryItem* currentItem = history()->currentItem(); | 3246 HistoryItem* currentItem = history()->currentItem(); |
3250 bool sameDocumentNavigation = currentItem && item != currentItem | 3247 bool sameDocumentNavigation = currentItem && item->shouldDoSameDocumentNavig
ationTo(currentItem); |
3251 && item->hasSameDocuments(currentItem); | |
3252 | 3248 |
3253 #if ENABLE(WML) | 3249 #if ENABLE(WML) |
3254 // All WML decks should go through the real load mechanism, not the scroll-t
o-anchor code | 3250 // All WML decks should go through the real load mechanism, not the scroll-t
o-anchor code |
3255 // FIXME: Why do WML decks have this different behavior? | 3251 // FIXME: Why do WML decks have this different behavior? |
3256 // Are WML decks incompatible with HTML5 pushState/replaceState which requir
e inter-document history navigations? | 3252 // Are WML decks incompatible with HTML5 pushState/replaceState which requir
e inter-document history navigations? |
3257 // Should this new API be disabled for WML pages, or does WML need to update
their mechanism to act like normal loads? | 3253 // Should this new API be disabled for WML pages, or does WML need to update
their mechanism to act like normal loads? |
3258 // If scroll-to-anchor navigations were broken for WML and required them to
have different loading behavior, then | 3254 // If scroll-to-anchor navigations were broken for WML and required them to
have different loading behavior, then |
3259 // state object loads are certainly also broken for them. | 3255 // state object loads are certainly also broken for them. |
3260 if (frameContainsWMLContent(m_frame)) | 3256 if (frameContainsWMLContent(m_frame)) |
3261 sameDocumentNavigation = false; | 3257 sameDocumentNavigation = false; |
(...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3525 windowRect.setHeight(features.height + (windowRect.height() - pageSize.h
eight())); | 3521 windowRect.setHeight(features.height + (windowRect.height() - pageSize.h
eight())); |
3526 page->chrome()->setWindowRect(windowRect); | 3522 page->chrome()->setWindowRect(windowRect); |
3527 | 3523 |
3528 page->chrome()->show(); | 3524 page->chrome()->show(); |
3529 | 3525 |
3530 created = true; | 3526 created = true; |
3531 return frame; | 3527 return frame; |
3532 } | 3528 } |
3533 | 3529 |
3534 } // namespace WebCore | 3530 } // namespace WebCore |
OLD | NEW |