Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Side by Side Diff: content/browser/frame_host/navigation_controller_impl.h

Issue 304313003: Allow view-source of pages fully-blocked by Blink's XSS filter. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add Unit Test. Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_BROWSER_FRAME_HOST_NAVIGATION_CONTROLLER_IMPL_H_ 5 #ifndef CONTENT_BROWSER_FRAME_HOST_NAVIGATION_CONTROLLER_IMPL_H_
6 #define CONTENT_BROWSER_FRAME_HOST_NAVIGATION_CONTROLLER_IMPL_H_ 6 #define CONTENT_BROWSER_FRAME_HOST_NAVIGATION_CONTROLLER_IMPL_H_
7 7
8 #include "base/callback.h" 8 #include "base/callback.h"
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/gtest_prod_util.h" 10 #include "base/gtest_prod_util.h"
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 virtual int GetLastCommittedEntryIndex() const OVERRIDE; 49 virtual int GetLastCommittedEntryIndex() const OVERRIDE;
50 virtual bool CanViewSource() const OVERRIDE; 50 virtual bool CanViewSource() const OVERRIDE;
51 virtual int GetEntryCount() const OVERRIDE; 51 virtual int GetEntryCount() const OVERRIDE;
52 virtual NavigationEntry* GetEntryAtIndex(int index) const OVERRIDE; 52 virtual NavigationEntry* GetEntryAtIndex(int index) const OVERRIDE;
53 virtual NavigationEntry* GetEntryAtOffset(int offset) const OVERRIDE; 53 virtual NavigationEntry* GetEntryAtOffset(int offset) const OVERRIDE;
54 virtual void DiscardNonCommittedEntries() OVERRIDE; 54 virtual void DiscardNonCommittedEntries() OVERRIDE;
55 virtual NavigationEntry* GetPendingEntry() const OVERRIDE; 55 virtual NavigationEntry* GetPendingEntry() const OVERRIDE;
56 virtual int GetPendingEntryIndex() const OVERRIDE; 56 virtual int GetPendingEntryIndex() const OVERRIDE;
57 virtual NavigationEntry* GetTransientEntry() const OVERRIDE; 57 virtual NavigationEntry* GetTransientEntry() const OVERRIDE;
58 virtual void SetTransientEntry(NavigationEntry* entry) OVERRIDE; 58 virtual void SetTransientEntry(NavigationEntry* entry) OVERRIDE;
59 virtual NavigationEntry* GetBlockedPageEntry() const OVERRIDE;
60 virtual void SetBlockedPageEntry(NavigationEntry* entry) OVERRIDE;
61
59 virtual void LoadURL(const GURL& url, 62 virtual void LoadURL(const GURL& url,
60 const Referrer& referrer, 63 const Referrer& referrer,
61 PageTransition type, 64 PageTransition type,
62 const std::string& extra_headers) OVERRIDE; 65 const std::string& extra_headers) OVERRIDE;
63 virtual void LoadURLWithParams(const LoadURLParams& params) OVERRIDE; 66 virtual void LoadURLWithParams(const LoadURLParams& params) OVERRIDE;
64 virtual void LoadIfNecessary() OVERRIDE; 67 virtual void LoadIfNecessary() OVERRIDE;
65 virtual bool CanGoBack() const OVERRIDE; 68 virtual bool CanGoBack() const OVERRIDE;
66 virtual bool CanGoForward() const OVERRIDE; 69 virtual bool CanGoForward() const OVERRIDE;
67 virtual bool CanGoToOffset(int offset) const OVERRIDE; 70 virtual bool CanGoToOffset(int offset) const OVERRIDE;
68 virtual void GoBack() OVERRIDE; 71 virtual void GoBack() OVERRIDE;
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after
334 337
335 // --------------------------------------------------------------------------- 338 // ---------------------------------------------------------------------------
336 339
337 // The user browser context associated with this controller. 340 // The user browser context associated with this controller.
338 BrowserContext* browser_context_; 341 BrowserContext* browser_context_;
339 342
340 // List of NavigationEntry for this tab 343 // List of NavigationEntry for this tab
341 typedef std::vector<linked_ptr<NavigationEntryImpl> > NavigationEntries; 344 typedef std::vector<linked_ptr<NavigationEntryImpl> > NavigationEntries;
342 NavigationEntries entries_; 345 NavigationEntries entries_;
343 346
347 // Preserved copy of a NavigationEntry when blink blocks a page.
348 linked_ptr<NavigationEntryImpl> blocked_page_entry_;
nasko 2014/06/10 23:21:30 Why not use scoped_ptr here?
349
344 // An entry we haven't gotten a response for yet. This will be discarded 350 // An entry we haven't gotten a response for yet. This will be discarded
345 // when we navigate again. It's used only so we know what the currently 351 // when we navigate again. It's used only so we know what the currently
346 // displayed tab is. 352 // displayed tab is.
347 // 353 //
348 // This may refer to an item in the entries_ list if the pending_entry_index_ 354 // This may refer to an item in the entries_ list if the pending_entry_index_
349 // == -1, or it may be its own entry that should be deleted. Be careful with 355 // == -1, or it may be its own entry that should be deleted. Be careful with
350 // the memory management. 356 // the memory management.
351 NavigationEntryImpl* pending_entry_; 357 NavigationEntryImpl* pending_entry_;
352 358
353 // currently visible entry 359 // currently visible entry
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
413 TimeSmoother time_smoother_; 419 TimeSmoother time_smoother_;
414 420
415 scoped_ptr<NavigationEntryScreenshotManager> screenshot_manager_; 421 scoped_ptr<NavigationEntryScreenshotManager> screenshot_manager_;
416 422
417 DISALLOW_COPY_AND_ASSIGN(NavigationControllerImpl); 423 DISALLOW_COPY_AND_ASSIGN(NavigationControllerImpl);
418 }; 424 };
419 425
420 } // namespace content 426 } // namespace content
421 427
422 #endif // CONTENT_BROWSER_FRAME_HOST_NAVIGATION_CONTROLLER_IMPL_H_ 428 #endif // CONTENT_BROWSER_FRAME_HOST_NAVIGATION_CONTROLLER_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698