blob: 1e27191757f67c473af46ec8d7210956524b1c6e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef WEBKIT_GLUE_NPRUNTIME_UTIL_H_
#define WEBKIT_GLUE_NPRUNTIME_UTIL_H_
#include "third_party/npapi/bindings/npruntime.h"
class Pickle;
namespace WebKit {
class WebDragData;
}
namespace webkit_glue {
// Efficiently serialize/deserialize a NPIdentifier
bool SerializeNPIdentifier(NPIdentifier identifier, Pickle* pickle);
bool DeserializeNPIdentifier(const Pickle& pickle, void** pickle_iter,
NPIdentifier* identifier);
// Return true (success) if the given npobj is the current
// drag event in browser dispatch, and is accessible based on context execution
// frames and their security origins and WebKit clipboard access policy. If so,
// return the event id and the clipboard data (WebDragData).
bool GetDragData(NPObject* npobj, int* event_id, WebKit::WebDragData* data);
// Invoke the event access policy checks listed above with
// GetDragData(). No need for clipboard data or event_id outputs, just confirm
// the given npobj is the current & accessible drag event.
bool IsDragEvent(NPObject* npobj);
} // namespace webkit_glue
#endif // WEBKIT_GLUE_NPRUNTIME_UTIL_H_
|