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 |