Screen#

A representation of a screen attached to a device.

Availability (Key)#

macOS

GTK

Windows

iOS

Android

Web

Terminal

Usage#

An app will always have access to at least one screen. The toga.App.screens attribute will return the list of all available screens; the screen at index 0 will be the “primary” screen. Screen sizes and positions are given in CSS pixels.

# Print the size of the primary screen.
print(my_app.screens[0].size)

# Print the identifying name of the second screen
print(my_app.screens[1].name)

Notes#

  • When using the GTK backend under Wayland, the screen at index 0 may not be the primary screen. This because the separation of concerns enforced by Wayland makes determining the primary screen unreliable.

Reference#

class toga.screens.Screen(_impl)#
as_image(format=Image)#

Render the current contents of the screen as an image.

Parameters:

format (type[ImageT]) – Format to provide. Defaults to Image; also supports PIL.Image.Image if Pillow is installed, as well as any image types defined by installed image format plugins.

Returns:

An image containing the screen content, in the format requested.

Return type:

ImageT

property name: str#

Unique name of the screen.

property origin: tuple[int, int]#

The absolute coordinates of the screen’s origin, as a (x, y) tuple.

property size: tuple[int, int]#

The size of the screen, as a (width, height) tuple.