Replace DISALLOW_COPY_AND_ASSIGN in ppapi/

This replaces DISALLOW_COPY_AND_ASSIGN with explicit constructor deletes
where a local script is able to detect its insertion place (~Foo() is
public => insert before this line).

This is incomplete as not all classes have a public ~Foo() declared, so
not all DISALLOW_COPY_AND_ASSIGN occurrences are replaced.

IWYU cleanup is left as a separate pass that is easier when these macros
go away.

Bug: 1010217
Change-Id: Iab44b67c7ca86cf5cfb1f6b27de5c18769d36632
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3177680
Auto-Submit: Peter Boström <[email protected]>
Commit-Queue: Lei Zhang <[email protected]>
Reviewed-by: Lei Zhang <[email protected]>
Owners-Override: Lei Zhang <[email protected]>
Cr-Commit-Position: refs/heads/main@{#924479}
diff --git a/ppapi/proxy/ppb_graphics_3d_proxy.h b/ppapi/proxy/ppb_graphics_3d_proxy.h
index 8d2f636..20f50843 100644
--- a/ppapi/proxy/ppb_graphics_3d_proxy.h
+++ b/ppapi/proxy/ppb_graphics_3d_proxy.h
@@ -40,6 +40,10 @@
   Graphics3D(const HostResource& resource,
              const gfx::Size& size,
              const bool single_buffer);
+
+  Graphics3D(const Graphics3D&) = delete;
+  Graphics3D& operator=(const Graphics3D&) = delete;
+
   ~Graphics3D() override;
 
   bool Init(gpu::gles2::GLES2Implementation* share_gles2,
@@ -73,13 +77,15 @@
 
   uint64_t swap_id_ = 0;
   bool single_buffer = false;
-
-  DISALLOW_COPY_AND_ASSIGN(Graphics3D);
 };
 
 class PPB_Graphics3D_Proxy : public InterfaceProxy {
  public:
   explicit PPB_Graphics3D_Proxy(Dispatcher* dispatcher);
+
+  PPB_Graphics3D_Proxy(const PPB_Graphics3D_Proxy&) = delete;
+  PPB_Graphics3D_Proxy& operator=(const PPB_Graphics3D_Proxy&) = delete;
+
   ~PPB_Graphics3D_Proxy();
 
   static PP_Resource CreateProxyResource(
@@ -132,8 +138,6 @@
                                   const HostResource& context);
 
   ProxyCompletionCallbackFactory<PPB_Graphics3D_Proxy> callback_factory_;
-
-  DISALLOW_COPY_AND_ASSIGN(PPB_Graphics3D_Proxy);
 };
 
 }  // namespace proxy