OLD | NEW |
1 // Copyright (c) 2008 The Chromium Authors. All rights reserved. Use of this | 1 /* |
2 // source code is governed by a BSD-style license that can be found in the | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
3 // LICENSE file. | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are |
| 6 * met: |
| 7 * |
| 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above |
| 11 * copyright notice, this list of conditions and the following disclaimer |
| 12 * in the documentation and/or other materials provided with the |
| 13 * distribution. |
| 14 * * Neither the name of Google Inc. nor the names of its |
| 15 * contributors may be used to endorse or promote products derived from |
| 16 * this software without specific prior written permission. |
| 17 * |
| 18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| 19 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| 20 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| 21 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
| 22 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| 23 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| 24 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| 25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 29 */ |
4 | 30 |
5 #ifndef WEBKIT_GLUE_BACK_FORWARD_LIST_CLIENT_IMPL_H_ | 31 #ifndef BackForwardListClientImpl_h |
6 #define WEBKIT_GLUE_BACK_FORWARD_LIST_CLIENT_IMPL_H_ | 32 #define BackForwardListClientImpl_h |
7 | 33 |
8 #include "BackForwardList.h" | 34 #include "BackForwardList.h" |
9 | 35 |
10 class WebViewImpl; | 36 class WebViewImpl; |
11 | 37 |
12 namespace webkit_glue { | 38 namespace WebKit { |
13 | 39 |
14 extern const char kBackForwardNavigationScheme[]; | 40 extern const char backForwardNavigationScheme[]; |
15 | 41 |
16 class BackForwardListClientImpl : public WebCore::BackForwardListClient { | 42 class BackForwardListClientImpl : public WebCore::BackForwardListClient { |
17 public: | 43 public: |
18 BackForwardListClientImpl(WebViewImpl* webview); | 44 BackForwardListClientImpl(WebViewImpl* webview); |
19 ~BackForwardListClientImpl(); | 45 ~BackForwardListClientImpl(); |
20 | 46 |
21 void SetCurrentHistoryItem(WebCore::HistoryItem* item); | 47 void SetCurrentHistoryItem(WebCore::HistoryItem* item); |
22 WebCore::HistoryItem* GetPreviousHistoryItem() const; | 48 WebCore::HistoryItem* GetPreviousHistoryItem() const; |
23 | 49 |
24 private: | 50 private: |
25 // WebCore::BackForwardListClient methods: | 51 // WebCore::BackForwardListClient methods: |
26 virtual void addItem(PassRefPtr<WebCore::HistoryItem> item); | 52 virtual void addItem(PassRefPtr<WebCore::HistoryItem>); |
27 virtual void goToItem(WebCore::HistoryItem* item); | 53 virtual void goToItem(WebCore::HistoryItem*); |
28 virtual WebCore::HistoryItem* currentItem(); | 54 virtual WebCore::HistoryItem* currentItem(); |
29 virtual WebCore::HistoryItem* itemAtIndex(int index); | 55 virtual WebCore::HistoryItem* itemAtIndex(int index); |
30 virtual int backListCount(); | 56 virtual int backListCount(); |
31 virtual int forwardListCount(); | 57 virtual int forwardListCount(); |
32 virtual void close(); | 58 virtual void close(); |
33 | 59 |
34 WebViewImpl* webview_; | 60 WebViewImpl* m_webView; |
35 | 61 |
36 RefPtr<WebCore::HistoryItem> previous_item_; | 62 RefPtr<WebCore::HistoryItem> m_previousItem; |
37 RefPtr<WebCore::HistoryItem> current_item_; | 63 RefPtr<WebCore::HistoryItem> m_currentItem; |
38 | 64 |
39 // The last history item that was accessed via itemAtIndex(). We keep track | 65 // The last history item that was accessed via itemAtIndex(). We keep track |
40 // of this until goToItem() is called, so we can track the navigation. | 66 // of this until goToItem() is called, so we can track the navigation. |
41 RefPtr<WebCore::HistoryItem> pending_history_item_; | 67 RefPtr<WebCore::HistoryItem> m_pendingHistoryItem; |
42 }; | 68 }; |
43 | 69 |
44 } // namespace webkit_glue | 70 } // namespace WebKit |
45 | 71 |
46 #endif // WEBKIT_GLUE_BACK_FORWARD_LIST_CLIENT_IMPL_H_ | 72 #endif |
OLD | NEW |