pax 4c166ac725 Move ImagePreview from preview.py to preview_pane.py (no behavior change)
Step 7 of the gui/app.py + gui/preview.py structural refactor. Pure
move: the embedded preview pane class (the one that lives in the
right column of the main window and combines image+video+toolbar)
is now in its own module. preview_pane.py is at the same package
depth as preview.py was, so no relative-import depth adjustment is
needed inside the class body.

preview.py grows the final preview-side re-export shim line. After
this commit preview.py is just the original imports + _log + shim
block — every class that used to live in it now lives in its
canonical module under media/ or popout/ or as preview_pane. The
file gets deleted entirely in commit 14.
2026-04-08 14:29:55 -05:00

29 lines
1.2 KiB
Python

"""Full media preview — image viewer with zoom/pan and video player."""
from __future__ import annotations
import logging
from pathlib import Path
from typing import NamedTuple
from PySide6.QtCore import Qt, QPointF, QRect, Signal, QTimer, Property
from PySide6.QtGui import QPixmap, QPainter, QWheelEvent, QMouseEvent, QKeyEvent, QMovie, QColor
from PySide6.QtWidgets import (
QWidget, QVBoxLayout, QHBoxLayout, QLabel, QMainWindow,
QStackedWidget, QPushButton, QSlider, QMenu, QInputDialog, QStyle,
)
import mpv as mpvlib
_log = logging.getLogger("booru")
# -- Refactor compatibility shims (deleted in commit 14) --
from .media.constants import VIDEO_EXTENSIONS, _is_video # re-export for refactor compat
from .popout.viewport import Viewport, _DRIFT_TOLERANCE # re-export for refactor compat
from .media.image_viewer import ImageViewer # re-export for refactor compat
from .media.mpv_gl import _MpvGLWidget, _MpvOpenGLSurface # re-export for refactor compat
from .media.video_player import _ClickSeekSlider, VideoPlayer # re-export for refactor compat
from .popout.window import FullscreenPreview # re-export for refactor compat
from .preview_pane import ImagePreview # re-export for refactor compat