Skip to content

API proposal: publicizing Window #2603

Closed
@Starbuck5

Description

@Starbuck5

I'd like to turn _sdl2.video.Window into a public API in 2.4.0

Firstly, where should it live? I see two contenders.

  • pygame.display.Window
  • pygame.window.Window (like pygame.surface.Surface, primarily advertised as pygame.Window)

Yunline has successfully convinced me it should live at pygame.window.Window. If you disagree, this is the issue to speak out on.

Steps to making this thing public:

  • Make the class public at its final address
  • Extricate Window docs from _sdl2.video docs and publicize them in its final namespace
  • Keep _sdl2.video.Window / _sdl2.Window as an alias for old code
  • Make sure tests are good
  • Make sure nothing will bite us with it in SDL3. (Like fullscreen vs fullscreen desktop is going away in SDL3, so we probably shouldn't expose that...)
  • Window class example that shows off cool new functionality while only using software rendering
  • Can we make private or remove things that are iffy?
    • Sharing a surface with pygame.display can be suspect
    • Every SDL display flag is exposed, but not all of them will work. We don't support OPENGL on these for example. And what would HIGHDPI actually do? (also will change in SDL3?)
  • Polish up documentation

Metadata

Metadata

Assignees

No one assigned

    Labels

    _sdl2pygame._sdl2windowpygame.Window

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions