Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(173)

Unified Diff: components/nacl/renderer/progress_event.cc

Issue 275403004: Revert of Pepper: Clean up ProgressEvent logic. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « components/nacl/renderer/progress_event.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/nacl/renderer/progress_event.cc
diff --git a/components/nacl/renderer/progress_event.cc b/components/nacl/renderer/progress_event.cc
deleted file mode 100644
index 317ee3c869e379f0066a7e6f56280a2ec43e3155..0000000000000000000000000000000000000000
--- a/components/nacl/renderer/progress_event.cc
+++ /dev/null
@@ -1,95 +0,0 @@
-// Copyright 2014 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.
-
-#include "components/nacl/renderer/progress_event.h"
-
-#include "base/bind.h"
-#include "base/location.h"
-#include "base/logging.h"
-#include "base/message_loop/message_loop_proxy.h"
-#include "content/public/renderer/pepper_plugin_instance.h"
-#include "ppapi/c/private/ppb_nacl_private.h"
-#include "ppapi/shared_impl/ppapi_globals.h"
-#include "third_party/WebKit/public/platform/WebString.h"
-#include "third_party/WebKit/public/web/WebDOMResourceProgressEvent.h"
-#include "third_party/WebKit/public/web/WebDocument.h"
-#include "third_party/WebKit/public/web/WebElement.h"
-#include "third_party/WebKit/public/web/WebLocalFrame.h"
-#include "third_party/WebKit/public/web/WebPluginContainer.h"
-#include "v8/include/v8.h"
-
-namespace nacl {
-
-namespace {
-blink::WebString EventTypeToString(PP_NaClEventType event_type) {
- switch (event_type) {
- case PP_NACL_EVENT_LOADSTART:
- return blink::WebString::fromUTF8("loadstart");
- case PP_NACL_EVENT_PROGRESS:
- return blink::WebString::fromUTF8("progress");
- case PP_NACL_EVENT_ERROR:
- return blink::WebString::fromUTF8("error");
- case PP_NACL_EVENT_ABORT:
- return blink::WebString::fromUTF8("abort");
- case PP_NACL_EVENT_LOAD:
- return blink::WebString::fromUTF8("load");
- case PP_NACL_EVENT_LOADEND:
- return blink::WebString::fromUTF8("loadend");
- case PP_NACL_EVENT_CRASH:
- return blink::WebString::fromUTF8("crash");
- }
- NOTIMPLEMENTED();
- return blink::WebString();
-}
-
-void DispatchProgressEventOnMainThread(PP_Instance instance,
- const ProgressEvent &event) {
- content::PepperPluginInstance* plugin_instance_ =
- content::PepperPluginInstance::Get(instance);
-
- blink::WebPluginContainer* container = plugin_instance_->GetContainer();
- // It's possible that container() is NULL if the plugin has been removed from
- // the DOM (but the PluginInstance is not destroyed yet).
- if (!container)
- return;
- blink::WebLocalFrame* frame = container->element().document().frame();
- if (!frame)
- return;
- v8::HandleScope handle_scope(plugin_instance_->GetIsolate());
- v8::Local<v8::Context> context(
- plugin_instance_->GetIsolate()->GetCurrentContext());
- if (context.IsEmpty()) {
- // If there's no JavaScript on the stack, we have to make a new Context.
- context = v8::Context::New(plugin_instance_->GetIsolate());
- }
- v8::Context::Scope context_scope(context);
-
- if (!event.resource_url.empty()) {
- blink::WebString url_string = blink::WebString::fromUTF8(
- event.resource_url.data(), event.resource_url.size());
- blink::WebDOMResourceProgressEvent blink_event(
- EventTypeToString(event.event_type),
- event.length_is_computable,
- event.loaded_bytes,
- event.total_bytes,
- url_string);
- container->element().dispatchEvent(blink_event);
- } else {
- blink::WebDOMProgressEvent blink_event(EventTypeToString(event.event_type),
- event.length_is_computable,
- event.loaded_bytes,
- event.total_bytes);
- container->element().dispatchEvent(blink_event);
- }
-}
-
-} // namespace
-
-void DispatchProgressEvent(PP_Instance instance, const ProgressEvent &event) {
- ppapi::PpapiGlobals::Get()->GetMainThreadMessageLoop()->PostTask(
- FROM_HERE,
- base::Bind(&DispatchProgressEventOnMainThread, instance, event));
-}
-
-} // namespace nacl
« no previous file with comments | « components/nacl/renderer/progress_event.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698