copy jsc CLI into JavaScriptCore.framework earlier
[WebKit-https.git] / Source / WebInspectorUI / UserInterface / Views / StorageTabContentView.js
1 /*
2  * Copyright (C) 2015 Apple Inc. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  *    notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  *    notice, this list of conditions and the following disclaimer in the
11  *    documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
14  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
17  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
19  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
21  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
23  * THE POSSIBILITY OF SUCH DAMAGE.
24  */
25
26 WI.StorageTabContentView = class StorageTabContentView extends WI.ContentBrowserTabContentView
27 {
28     constructor()
29     {
30         super(StorageTabContentView.tabInfo(), {
31             navigationSidebarPanelConstructor: WI.StorageSidebarPanel,
32             detailsSidebarPanelConstructors: [
33                 WI.ApplicationCacheDetailsSidebarPanel,
34                 WI.IndexedDatabaseDetailsSidebarPanel,
35             ],
36         });
37
38         WI.applicationCacheManager.enable();
39         WI.databaseManager.enable();
40         WI.domStorageManager.enable();
41         WI.indexedDBManager.enable();
42     }
43
44     static tabInfo()
45     {
46         return {
47             identifier: StorageTabContentView.Type,
48             image: "Images/Storage.svg",
49             displayName: WI.UIString("Storage", "Storage Tab Name", "Name of Storage Tab"),
50         };
51     }
52
53     static isTabAllowed()
54     {
55         return InspectorBackend.hasDomain("ApplicationCache")
56             || InspectorBackend.hasDomain("DOMStorage")
57             || InspectorBackend.hasDomain("Database")
58             || InspectorBackend.hasDomain("IndexedDB");
59     }
60
61     // Public
62
63     get type()
64     {
65         return WI.StorageTabContentView.Type;
66     }
67
68     get supportsSplitContentBrowser()
69     {
70         return true;
71     }
72
73     canShowRepresentedObject(representedObject)
74     {
75         return representedObject instanceof WI.ApplicationCacheFrame
76             || representedObject instanceof WI.CookieStorageObject
77             || representedObject instanceof WI.DOMStorageObject
78             || representedObject instanceof WI.DatabaseObject
79             || representedObject instanceof WI.DatabaseTableObject
80             || representedObject instanceof WI.IndexedDatabase
81             || representedObject instanceof WI.IndexedDatabaseObjectStore
82             || representedObject instanceof WI.IndexedDatabaseObjectStoreIndex;
83     }
84
85     get canHandleFindEvent()
86     {
87         return this.contentBrowser.currentContentView.canFocusFilterBar;
88     }
89
90     handleFindEvent(event)
91     {
92         this.contentBrowser.currentContentView.focusFilterBar();
93     }
94
95     closed()
96     {
97         WI.applicationCacheManager.disable();
98         WI.databaseManager.disable();
99         WI.domStorageManager.disable();
100         WI.indexedDBManager.disable();
101
102         super.closed();
103     }
104 };
105
106 WI.StorageTabContentView.Type = "storage";