OLD | NEW |
1 /* | 1 /* |
2 Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) | 2 Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
3 | 3 |
4 This library is free software; you can redistribute it and/or | 4 This library is free software; you can redistribute it and/or |
5 modify it under the terms of the GNU Library General Public | 5 modify it under the terms of the GNU Library General Public |
6 License as published by the Free Software Foundation; either | 6 License as published by the Free Software Foundation; either |
7 version 2 of the License, or (at your option) any later version. | 7 version 2 of the License, or (at your option) any later version. |
8 | 8 |
9 This library is distributed in the hope that it will be useful, | 9 This library is distributed in the hope that it will be useful, |
10 but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
12 Library General Public License for more details. | 12 Library General Public License for more details. |
13 | 13 |
14 You should have received a copy of the GNU Library General Public License | 14 You should have received a copy of the GNU Library General Public License |
15 along with this library; see the file COPYING.LIB. If not, write to | 15 along with this library; see the file COPYING.LIB. If not, write to |
16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
17 Boston, MA 02110-1301, USA. | 17 Boston, MA 02110-1301, USA. |
18 */ | 18 */ |
19 | 19 |
20 #ifndef NavigatorGeolocation_h | 20 #ifndef NavigatorGeolocation_h |
21 #define NavigatorGeolocation_h | 21 #define NavigatorGeolocation_h |
22 | 22 |
23 #include "core/dom/ContextLifecycleObserver.h" | |
24 #include "core/frame/Navigator.h" | 23 #include "core/frame/Navigator.h" |
25 #include "platform/Supplementable.h" | 24 #include "platform/Supplementable.h" |
26 #include "platform/heap/Handle.h" | 25 #include "platform/heap/Handle.h" |
27 | 26 |
28 namespace blink { | 27 namespace blink { |
29 | 28 |
30 class LocalFrame; | |
31 class Geolocation; | 29 class Geolocation; |
32 class Navigator; | 30 class Navigator; |
33 | 31 |
34 class NavigatorGeolocation final | 32 class NavigatorGeolocation final |
35 : public GarbageCollected<NavigatorGeolocation>, | 33 : public GarbageCollected<NavigatorGeolocation>, |
36 public Supplement<Navigator>, | 34 public Supplement<Navigator> { |
37 public ContextClient { | |
38 USING_GARBAGE_COLLECTED_MIXIN(NavigatorGeolocation); | 35 USING_GARBAGE_COLLECTED_MIXIN(NavigatorGeolocation); |
39 | 36 |
40 public: | 37 public: |
41 static NavigatorGeolocation& from(Navigator&); | 38 static NavigatorGeolocation& from(Navigator&); |
42 static Geolocation* geolocation(Navigator&); | 39 static Geolocation* geolocation(Navigator&); |
43 Geolocation* geolocation(); | 40 Geolocation* geolocation(); |
44 | 41 |
45 DECLARE_TRACE(); | 42 DECLARE_TRACE(); |
46 | 43 |
47 private: | 44 private: |
48 explicit NavigatorGeolocation(LocalFrame*); | 45 explicit NavigatorGeolocation(Navigator&); |
49 | 46 |
50 static const char* supplementName(); | 47 static const char* supplementName(); |
51 | 48 |
52 Member<Geolocation> m_geolocation; | 49 Member<Geolocation> m_geolocation; |
53 }; | 50 }; |
54 | 51 |
55 } // namespace blink | 52 } // namespace blink |
56 | 53 |
57 #endif // NavigatorGeolocation_h | 54 #endif // NavigatorGeolocation_h |
OLD | NEW |