Adds support for the search key in the Virtual Keyboard. We currently do not use...
[chromium-blink-merge.git] / gin / context_holder.h
blobd43e1933fa896a581eeec1d39b804b768878e88e
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
3 // found in the LICENSE file.
5 #ifndef GIN_CONTEXT_HOLDER_H_
6 #define GIN_CONTEXT_HOLDER_H_
8 #include <list>
10 #include "base/basictypes.h"
11 #include "base/memory/scoped_ptr.h"
12 #include "v8/include/v8.h"
14 namespace gin {
16 class PerContextData;
18 class ContextHolder {
19 public:
20 explicit ContextHolder(v8::Isolate* isolate);
21 ~ContextHolder();
23 v8::Isolate* isolate() const { return isolate_; }
25 v8::Handle<v8::Context> context() const {
26 return v8::Local<v8::Context>::New(isolate_, context_);
29 void SetContext(v8::Handle<v8::Context> context);
31 private:
32 v8::Isolate* isolate_;
33 v8::Persistent<v8::Context> context_;
34 scoped_ptr<PerContextData> data_;
36 DISALLOW_COPY_AND_ASSIGN(ContextHolder);
39 } // namespace gin
41 #endif // GIN_CONTEXT_HOLDER_H_