PlayerTitle.ets 1.7 KB
import router from '@ohos.router';
import window from '@ohos.window';
import deviceInfo from '@ohos.deviceInfo';
import { WindowModel } from 'wdKit';
import { WDPlayerController } from 'wdPlayer';
import { devicePLSensorManager } from 'wdDetailPlayApi';

@Component
export struct PlayerTitle {
  private playerController?: WDPlayerController;
  @Consume title?: string
  @Consume isFullScreen: boolean;
  @State @Watch('watchSpeed') playSpeed: number = 1;

  aboutToAppear() {
  }

  watchSpeed() {
    this.playerController?.setSpeed(this.playSpeed);
  }

  build() {
    Row() {
      Image($r('app.media.ic_back'))
        .width(44)
        .padding(13)
        .aspectRatio(1)
        .onClick(() => {
          if (this.isFullScreen) {
            if (deviceInfo.deviceType != "phone") {
              WindowModel.shared.getWindowSize().then((size) => {
                if (size.width > size.height) {
                  router.back();
                } else {
                  this.isFullScreen = !this.isFullScreen;
                  WindowModel.shared.setPreferredOrientation(window.Orientation.PORTRAIT);
                  devicePLSensorManager.devicePLSensorOn(window.Orientation.PORTRAIT);
                }
              })
            } else {
              this.isFullScreen = !this.isFullScreen;
              WindowModel.shared.setPreferredOrientation(window.Orientation.PORTRAIT);
              devicePLSensorManager.devicePLSensorOn(window.Orientation.PORTRAIT);
            }
          } else {
            router.back();
          }
        })
      Text(this.title)
        .fontColor(Color.White)
        .fontSize('14fp')
        .maxLines(2)
        .layoutWeight(1)
    }.alignItems(VerticalAlign.Center)
  }
}