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

Unified Diff: third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.h

Issue 2718583002: Refactor WebBluetoothServiceClient in the web_bluetooth.mojom (Closed)
Patch Set: address more comments Created 3 years, 10 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
Index: third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.h
diff --git a/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.h b/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.h
index ca7efb124a359d6d9c2b0374056fd9fd6a095514..e7706507125497d73dd1e32869d84c9db2c64d93 100644
--- a/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.h
+++ b/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.h
@@ -5,16 +5,17 @@
#ifndef BluetoothRemoteGATTCharacteristic_h
#define BluetoothRemoteGATTCharacteristic_h
+#include <memory>
#include "bindings/core/v8/ScriptWrappable.h"
#include "core/dom/ContextLifecycleObserver.h"
#include "core/dom/DOMArrayPiece.h"
#include "core/dom/DOMDataView.h"
#include "modules/EventTargetModules.h"
#include "modules/bluetooth/BluetoothRemoteGATTService.h"
+#include "mojo/public/cpp/bindings/associated_binding.h"
#include "platform/heap/Handle.h"
#include "public/platform/modules/bluetooth/web_bluetooth.mojom-blink.h"
#include "wtf/text/WTFString.h"
-#include <memory>
namespace blink {
@@ -34,7 +35,8 @@ class ScriptState;
// CallbackPromiseAdapter class comments.
class BluetoothRemoteGATTCharacteristic final
: public EventTargetWithInlineData,
- public ContextLifecycleObserver {
+ public ContextLifecycleObserver,
+ public mojom::blink::WebBluetoothCharacteristicClient {
USING_PRE_FINALIZER(BluetoothRemoteGATTCharacteristic, dispose);
DEFINE_WRAPPERTYPEINFO();
USING_GARBAGE_COLLECTED_MIXIN(BluetoothRemoteGATTCharacteristic);
@@ -55,7 +57,9 @@ class BluetoothRemoteGATTCharacteristic final
// Save value.
void setValue(DOMDataView*);
- void dispatchCharacteristicValueChanged(const Vector<uint8_t>& value);
+ // mojom::blink::WebBluetoothCharacteristicClient:
+ void RemoteCharacteristicValueChanged(
+ const WTF::Vector<uint8_t>& value) override;
// ContextLifecycleObserver interface.
void contextDestroyed(ExecutionContext*) override;
@@ -64,10 +68,6 @@ class BluetoothRemoteGATTCharacteristic final
// Called before the object gets garbage collected.
void dispose();
- // Notify our embedder that we should stop any notifications.
- // The function only notifies the embedder once.
- void notifyCharacteristicObjectRemoved();
-
// EventTarget methods:
const AtomicString& interfaceName() const override;
ExecutionContext* getExecutionContext() const;
@@ -110,8 +110,10 @@ class BluetoothRemoteGATTCharacteristic final
void WriteValueCallback(ScriptPromiseResolver*,
const Vector<uint8_t>& value,
mojom::blink::WebBluetoothResult);
- void NotificationsCallback(ScriptPromiseResolver*,
- mojom::blink::WebBluetoothResult);
+ void NotificationsCallback(
+ ScriptPromiseResolver*,
+ mojom::blink::WebBluetoothResult,
+ mojom::blink::WebBluetoothCharacteristicClientAssociatedRequest);
ScriptPromise getDescriptorsImpl(ScriptState*,
mojom::blink::WebBluetoothGATTQueryQuantity,
@@ -130,10 +132,11 @@ class BluetoothRemoteGATTCharacteristic final
mojom::blink::WebBluetoothRemoteGATTCharacteristicPtr m_characteristic;
Member<BluetoothRemoteGATTService> m_service;
- bool m_stopped;
Member<BluetoothCharacteristicProperties> m_properties;
Member<DOMDataView> m_value;
Member<BluetoothDevice> m_device;
+ mojo::AssociatedBinding<mojom::blink::WebBluetoothCharacteristicClient>
+ m_clientBinding;
};
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698