From ba346549a26a2f1e65d9756cd019e5286409005e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rulong=20Chen=EF=BC=88=E9=99=88=E6=B1=9D=E9=BE=99=EF=BC=89?= Date: Fri, 12 Apr 2024 11:37:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=86=97=E4=BD=99=E7=9A=84Su?= =?UTF-8?q?rfaceTextureWrapper=EF=BC=8C=E5=A2=9E=E5=8A=A0=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=9A=84=E5=8F=AF=E8=AF=BB=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../engine/renderer/FlutterRenderer.ets | 19 +++++------- .../engine/renderer/SurfaceTextureWrapper.ets | 30 ------------------- .../src/main/ets/view/TextureRegistry.ets | 2 +- 3 files changed, 8 insertions(+), 43 deletions(-) delete mode 100644 shell/platform/ohos/flutter_embedding/flutter/src/main/ets/embedding/engine/renderer/SurfaceTextureWrapper.ets diff --git a/shell/platform/ohos/flutter_embedding/flutter/src/main/ets/embedding/engine/renderer/FlutterRenderer.ets b/shell/platform/ohos/flutter_embedding/flutter/src/main/ets/embedding/engine/renderer/FlutterRenderer.ets index f1624aaa4d..5bd61d35e7 100644 --- a/shell/platform/ohos/flutter_embedding/flutter/src/main/ets/embedding/engine/renderer/FlutterRenderer.ets +++ b/shell/platform/ohos/flutter_embedding/flutter/src/main/ets/embedding/engine/renderer/FlutterRenderer.ets @@ -18,7 +18,6 @@ import { BusinessError } from '@ohos.base'; import { SurfaceTextureEntry, TextureRegistry } from '../../../view/TextureRegistry'; import { FlutterAbility } from '../../ohos/FlutterAbility'; import FlutterNapi from '../FlutterNapi'; -import { SurfaceTextureWrapper } from './SurfaceTextureWrapper'; import Log from '../../../util/Log'; const TAG = "FlutterRenderer" @@ -52,7 +51,7 @@ export class FlutterRenderer implements TextureRegistry { this.nextTextureId = this.nextTextureId + 1; let surfaceTextureRegistryEntry = new SurfaceTextureRegistryEntry(this.nextTextureId); surfaceTextureRegistryEntry.setImageReceiver(receiver); - this.registerImage(surfaceTextureRegistryEntry.getTextureId(), surfaceTextureRegistryEntry.textureWrapper()); + this.registerImage(surfaceTextureRegistryEntry.getTextureId(), surfaceTextureRegistryEntry.getImageReceiver()!); return surfaceTextureRegistryEntry; } @@ -78,8 +77,8 @@ export class FlutterRenderer implements TextureRegistry { } return receiver; } - private registerImage(textureId: number, surfaceTextureWrapper: SurfaceTextureWrapper): void { - let receiver = surfaceTextureWrapper.getImageReceiver(); + + private registerImage(textureId: number, receiver: image.ImageReceiver): void { receiver.on('imageArrival', () => { receiver.readNextImage((err: BusinessError, nextImage: image.Image) => { if (err || nextImage === undefined) { @@ -102,19 +101,18 @@ export class FlutterRenderer implements TextureRegistry { export class SurfaceTextureRegistryEntry implements SurfaceTextureEntry { private textureId: number = 0; private surfaceId: number = 0; - private surfaceTextureWrapper: SurfaceTextureWrapper | null = null; - private released: boolean = false; + private imageReceiver: image.ImageReceiver | null = null; constructor(id: number) { this.textureId = id; } - getImageReceiver(): image.ImageReceiver { - return this.surfaceTextureWrapper!.getImageReceiver(); + getImageReceiver(): image.ImageReceiver | null { + return this.imageReceiver; } setImageReceiver(receiver: image.ImageReceiver): void { - this.surfaceTextureWrapper = new SurfaceTextureWrapper(receiver); + this.imageReceiver = receiver; } getTextureId(): number { @@ -129,9 +127,6 @@ export class SurfaceTextureRegistryEntry implements SurfaceTextureEntry { this.surfaceId = surfaceId; } - textureWrapper(): SurfaceTextureWrapper { - return this.surfaceTextureWrapper!; - } release() { throw new Error('Method not implemented.'); } diff --git a/shell/platform/ohos/flutter_embedding/flutter/src/main/ets/embedding/engine/renderer/SurfaceTextureWrapper.ets b/shell/platform/ohos/flutter_embedding/flutter/src/main/ets/embedding/engine/renderer/SurfaceTextureWrapper.ets deleted file mode 100644 index b1da18061b..0000000000 --- a/shell/platform/ohos/flutter_embedding/flutter/src/main/ets/embedding/engine/renderer/SurfaceTextureWrapper.ets +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright (c) 2023 Hunan OpenValley Digital Industry Development Co., Ltd. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import image from '@ohos.multimedia.image'; - -export class SurfaceTextureWrapper { - private receiver: image.ImageReceiver; - private released: boolean = false; - private attached: boolean = false; - - constructor(receiver: image.ImageReceiver) { - this.receiver = receiver; - } - - getImageReceiver(): image.ImageReceiver { - return this.receiver; - } -} \ No newline at end of file diff --git a/shell/platform/ohos/flutter_embedding/flutter/src/main/ets/view/TextureRegistry.ets b/shell/platform/ohos/flutter_embedding/flutter/src/main/ets/view/TextureRegistry.ets index fa79eb238c..be0b40ad9e 100644 --- a/shell/platform/ohos/flutter_embedding/flutter/src/main/ets/view/TextureRegistry.ets +++ b/shell/platform/ohos/flutter_embedding/flutter/src/main/ets/view/TextureRegistry.ets @@ -30,7 +30,7 @@ export interface SurfaceTextureEntry { getSurfaceId(): number; - getImageReceiver(): image.ImageReceiver; + getImageReceiver(): image.ImageReceiver | null; release(): void; } -- Gitee