| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2007, 2008, 2009 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 * | 5 * |
| 6 * Redistribution and use in source and binary forms, with or without | 6 * Redistribution and use in source and binary forms, with or without |
| 7 * modification, are permitted provided that the following conditions | 7 * modification, are permitted provided that the following conditions |
| 8 * are met: | 8 * are met: |
| 9 * | 9 * |
| 10 * 1. Redistributions of source code must retain the above copyright | 10 * 1. Redistributions of source code must retain the above copyright |
| (...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 193 case FrameLoadTypeBack: | 193 case FrameLoadTypeBack: |
| 194 case FrameLoadTypeForward: | 194 case FrameLoadTypeForward: |
| 195 case FrameLoadTypeIndexedBackForward: | 195 case FrameLoadTypeIndexedBackForward: |
| 196 case FrameLoadTypeRedirectWithLockedBackForwardList: | 196 case FrameLoadTypeRedirectWithLockedBackForwardList: |
| 197 case FrameLoadTypeStandard: | 197 case FrameLoadTypeStandard: |
| 198 itemToRestore = m_currentItem.get(); | 198 itemToRestore = m_currentItem.get(); |
| 199 } | 199 } |
| 200 | 200 |
| 201 if (!itemToRestore) | 201 if (!itemToRestore) |
| 202 return; | 202 return; |
| 203 | 203 if (m_frame->loader()->requestedHistoryItem() == m_currentItem.get() && !m_f
rame->loader()->documentLoader()->isClientRedirect()) { |
| 204 LOG(Loading, "WebCoreLoading %s: restoring form state from %p", m_frame->tre
e()->uniqueName().string().utf8().data(), itemToRestore); | 204 LOG(Loading, "WebCoreLoading %s: restoring form state from %p", m_frame-
>tree()->uniqueName().string().utf8().data(), itemToRestore); |
| 205 doc->setStateForNewFormElements(itemToRestore->documentState()); | 205 doc->setStateForNewFormElements(itemToRestore->documentState()); |
| 206 } |
| 206 } | 207 } |
| 207 | 208 |
| 208 void HistoryController::invalidateCurrentItemCachedPage() | 209 void HistoryController::invalidateCurrentItemCachedPage() |
| 209 { | 210 { |
| 210 // When we are pre-commit, the currentItem is where the pageCache data resid
es | 211 // When we are pre-commit, the currentItem is where the pageCache data resid
es |
| 211 CachedPage* cachedPage = pageCache()->get(currentItem()); | 212 CachedPage* cachedPage = pageCache()->get(currentItem()); |
| 212 | 213 |
| 213 // FIXME: This is a grotesque hack to fix <rdar://problem/4059059> Crash in
RenderFlow::detach | 214 // FIXME: This is a grotesque hack to fix <rdar://problem/4059059> Crash in
RenderFlow::detach |
| 214 // Somehow the PageState object is not properly updated, and is holding onto
a stale document. | 215 // Somehow the PageState object is not properly updated, and is holding onto
a stale document. |
| 215 // Both Xcode and FileMaker see this crash, Safari does not. | 216 // Both Xcode and FileMaker see this crash, Safari does not. |
| (...skipping 641 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 857 Settings* settings = m_frame->settings(); | 858 Settings* settings = m_frame->settings(); |
| 858 if (!settings || settings->privateBrowsingEnabled()) | 859 if (!settings || settings->privateBrowsingEnabled()) |
| 859 return; | 860 return; |
| 860 | 861 |
| 861 ASSERT(m_frame->page()); | 862 ASSERT(m_frame->page()); |
| 862 addVisitedLink(m_frame->page(), KURL(ParsedURLString, urlString)); | 863 addVisitedLink(m_frame->page(), KURL(ParsedURLString, urlString)); |
| 863 m_frame->loader()->client()->updateGlobalHistory(); | 864 m_frame->loader()->client()->updateGlobalHistory(); |
| 864 } | 865 } |
| 865 | 866 |
| 866 } // namespace WebCore | 867 } // namespace WebCore |
| OLD | NEW |