override _paint()

in packages/core/src/rendering/render-scroll-view.ts [217:241]


  override _paint(context: PaintingContext, offset: Point) {
    super._paint(context, offset)
    if (this._child) {
      const viewportOffset = this.viewportOffset

      if (this.forcePaintScrollbar || this._scrollbarAutoHideDelay === 0 || this._scrollOffsetUpdateFlag > 0) {
        // 绘制滚动条
        this.hScrollbar.offstage = this._child.viewport.width >= this.scrollSize.width
        if (!this.hScrollbar.offstage
          && this.scrollbar & ScrollAxis.Horizontal
          && this.scrollAxis & ScrollAxis.Horizontal
        ) {
          context.paintChild(this.hScrollbar, Point.add3(this.hScrollbar.offset, offset, viewportOffset))
        }

        this.vScrollbar.offstage = this._child.viewport.height >= this.scrollSize.height
        if (!this.vScrollbar.offstage
          && this.scrollbar & ScrollAxis.Vertical
          && this.scrollAxis & ScrollAxis.Vertical
        ) {
          context.paintChild(this.vScrollbar, Point.add3(this.vScrollbar.offset, offset, viewportOffset))
        }
      }
    }
  }