Descrição
Use a API system.display
para consultar metadados de exibição.
Permissões
system.display
Tipos
ActiveState
Uma enumeração para informar se a tela foi detectada e usada pelo sistema. A tela é considerada "inativa" se não for detectada pelo sistema (talvez desconectada ou considerada desconectada devido ao modo de espera etc.). Esse estado é usado para manter a tela atual quando todas as telas são desconectadas, por exemplo.
Enumeração
"ativo"
"inativo"
Bounds
Propriedades
- altura
número
A altura da tela em pixels.
- esquerda
número
A coordenada x do canto superior esquerdo.
- superior
número
A coordenada y do canto superior esquerdo.
- largura
número
A largura da tela em pixels.
DisplayLayout
Propriedades
- ID
string
O identificador exclusivo da exibição.
- offset
número
O deslocamento da tela ao longo da borda conectada. 0 indica que os cantos superior ou esquerdo estão alinhados.
- parentId
string
O identificador exclusivo da exibição principal. Vazio se for a raiz.
- posição
A posição do layout dessa tela em relação ao elemento pai. Isso será ignorado para a raiz.
DisplayMode
Propriedades
- deviceScaleFactor
número
O fator de escala do dispositivo no modo de exibição.
- altura
número
A altura do modo de exibição em pixels independentes do dispositivo (visíveis para o usuário).
- heightInNativePixels
número
A altura do modo de exibição em pixels nativos.
- isInterlaced
booleano opcional
Chrome 74 ou mais recenteVerdadeiro se esse modo for entrelaçado, falso se não for fornecido.
- isNative
booleano
Verdadeiro se o modo for o modo nativo da tela.
- isSelected
booleano
Verdadeiro se o modo de exibição estiver selecionado.
- refreshRate
número
Chrome 67 ou mais recenteA taxa de atualização do modo de exibição em hertz.
- uiScale
number optional
Suspensas desde o Chrome 70Usar
displayZoomFactor
O fator de escalonamento da interface do modo de exibição.
- largura
número
A largura do modo de exibição em pixels independentes do dispositivo (visíveis para o usuário).
- widthInNativePixels
número
A largura do modo de exibição em pixels nativos.
DisplayProperties
Propriedades
- boundsOriginX
number optional
Se definido, atualiza a origem dos limites lógicos da tela ao longo do eixo x. Aplicado com
boundsOriginY
. Se não for definido eboundsOriginY
estiver definido, o padrão será o valor atual. Ao atualizar a origem da exibição, algumas restrições serão aplicadas. Portanto, a origem dos limites finais pode ser diferente da definida. Os limites finais podem ser recuperados usandogetInfo
. Não é possível mudar a origem dos limites na tela principal. - boundsOriginY
number optional
Se definido, atualiza a origem dos limites lógicos da tela ao longo do eixo y. Consulte a documentação do parâmetro
boundsOriginX
. - displayMode
DisplayMode opcional
Chrome 52 ou mais recenteSe definido, atualiza o modo de exibição para o modo correspondente a esse valor. Se outros parâmetros forem inválidos, isso não será aplicado. Se o modo de exibição for inválido, ele não será aplicado e um erro será definido, mas outras propriedades ainda serão aplicadas.
- displayZoomFactor
number optional
Chrome 65 ou mais recenteSe definido, atualiza o zoom associado à tela. Esse zoom faz um novo layout e uma nova pintura, resultando em uma qualidade melhor do que apenas um aumento de alongamento pixel por pixel.
- isPrimary
booleano opcional
Se definido como "true", torna a tela principal. Não faz nada se definido como "false". Observação: se definido, o display será considerado principal para todas as outras propriedades (ou seja,
isUnified
pode ser definido, mas a origem dos limites não). - isUnified
booleano opcional
Chrome 59 ou mais recenteSomente no ChromeOS. Se definido como "true", muda o modo de exibição para área de trabalho unificada. Consulte
enableUnifiedDesktop
para mais detalhes. Se for definida como "false", o modo de área de trabalho unificada será desativado. Isso só é válido para a tela principal. Se mirroringSourceId for fornecido, ele não poderá ser informado, e outras propriedades serão ignoradas. Isso não terá efeito se não for informado. - mirroringSourceId
string opcional
Suspensas desde o Chrome 68Use
setMirrorMode
.Somente no ChromeOS. Se definido e não estiver vazio, ativa o espelhamento apenas para essa tela. Caso contrário, desativa o espelhamento para todas as telas. Esse valor precisa indicar o ID da tela de origem a ser espelhada, que não pode ser o mesmo ID transmitido para setDisplayProperties. Se definido, nenhuma outra propriedade poderá ser definida.
- overscan
Encartes opcional
Se definido, define os encartes de overscan da tela com os valores fornecidos. Os valores de overscan não podem ser negativos nem maiores que metade do tamanho da tela. Não é possível mudar o overscan no monitor interno.
- rotação
number optional
Se definido, atualiza a rotação da tela. Os valores válidos são [0, 90, 180, 270]. A rotação é definida no sentido horário em relação à posição vertical da tela.
DisplayUnitInfo
Propriedades
- activeStateChrome 117 ou mais recente
Ativo se a tela for detectada e usada pelo sistema.
- availableDisplayZoomFactors
number[]
Chrome 67 ou mais recenteUma lista de valores de fator de zoom que podem ser definidos para a tela.
- limites
Os limites lógicos da tela.
- displayZoomFactor
número
Chrome 65 ou mais recenteA proporção entre o zoom atual e o padrão da tela. Por exemplo, o valor 1 equivale a 100% de zoom, e o valor 1,5 equivale a 150% de zoom.
- dpiX
número
O número de pixels por polegada ao longo do eixo x.
- dpiY
número
O número de pixels por polegada ao longo do eixo y.
- edid
Edid opcional
Chrome 67 ou mais recenteOBSERVAÇÃO: isso só está disponível para apps de quiosque do ChromeOS e interface da Web.
- hasTouchSupport
booleano
Chrome 57 ou mais recenteVerdadeiro se a tela tiver um dispositivo de entrada por toque associado a ela.
- ID
string
O identificador exclusivo da exibição.
- isEnabled
booleano
Verdadeiro se a exibição estiver ativada.
- isPrimary
booleano
Verdadeiro se for a tela principal.
- isUnified
booleano
Chrome 59 ou mais recenteVerdadeiro para todas as telas no modo área de trabalho unificada. Consulte a documentação de
enableUnifiedDesktop
. - mirroringDestinationIds
string[]
Chrome 64 ou mais recenteSomente no ChromeOS. Identificadores das telas em que a tela de origem está sendo espelhada. Vazio se nenhuma tela estiver sendo espelhada. Ele será definido com o mesmo valor para todas as exibições. Isso não pode incluir
mirroringSourceId
. - mirroringSourceId
string
Somente no ChromeOS. Identificador da tela que está sendo espelhada se o espelhamento estiver ativado. Caso contrário, fica vazio. Isso será definido para todas as telas, incluindo a que está sendo espelhada.
- modosChrome 52 ou mais recente
A lista de modos de exibição disponíveis. O modo atual terá isSelected=true. Disponível apenas no ChromeOS. Será definido como uma matriz vazia em outras plataformas.
- nome
string
O nome fácil de usar (por exemplo, "Monitor LCD HP").
- overscan
Os encartes da tela dentro dos limites dela. No momento, exposto apenas no ChromeOS. Será definido como encartes vazios em outras plataformas.
- rotação
número
A rotação no sentido horário da tela em graus em relação à posição vertical. No momento, exposto apenas no ChromeOS. Será definido como 0 em outras plataformas. Um valor de -1 será interpretado como rotação automática quando o dispositivo estiver no estado físico de tablet.
- workArea
A área de trabalho utilizável da tela dentro dos limites dela. A área de trabalho exclui áreas da tela reservadas para o SO, como barra de tarefas e iniciador.
Edid
Propriedades
- manufacturerId
string
Código do fabricante com três caracteres. Consulte a página 21 da seção 3.4.1. Obrigatório na v1.4.
- productId
string
Código de 2 bytes atribuído pelo fabricante, seção 3.4.2, página 21. Obrigatório na v1.4.
- yearOfManufacture
número
Ano do fabricante, seção 3.4.4, página 22. Obrigatório na v1.4.
GetInfoFlags
Propriedades
- singleUnified
booleano opcional
Se definido como "true", apenas um único
DisplayUnitInfo
será retornado porgetInfo
no modo de área de trabalho unificada (consulteenableUnifiedDesktop
). O padrão é "false".
Insets
Propriedades
- inferior
número
A distância do eixo y do limite inferior.
- esquerda
número
A distância do eixo x do limite esquerdo.
- direita
número
A distância do eixo x do limite direito.
- superior
número
A distância do eixo y do limite superior.
LayoutPosition
Posição do layout, ou seja, a borda do elemento pai a que a tela está anexada.
Enumeração
"top"
"direita"
"bottom"
"left"
MirrorMode
Modo espelho, ou seja, diferentes maneiras de espelhar uma tela em outras.
Enumeração
"off"
Especifica o modo padrão (área de trabalho estendida ou unificada).
"normal"
Especifica que a exibição da origem padrão será espelhada em todas as outras telas.
"mixed"
Especifica que a tela de origem especificada será espelhada nas telas de destino fornecidas. Todos os outros monitores conectados serão estendidos.
MirrorModeInfo
Propriedades
- mirroringDestinationIds
string[] opcional
Os IDs das telas de destino de espelhamento. Isso é válido apenas para "mixed".
- mirroringSourceId
string opcional
O ID da tela de origem do espelhamento. Isso é válido apenas para "mixed".
- modo
O modo espelho que precisa ser definido.
Point
Propriedades
- x
número
A coordenada x do ponto.
- y
número
A coordenada y do ponto.
TouchCalibrationPair
Propriedades
- displayPoint
As coordenadas do ponto de exibição.
- touchPoint
As coordenadas do ponto de toque correspondente ao ponto de exibição.
TouchCalibrationPairQuad
Propriedades
- pair1
Primeiro par de pontos de toque e exibição necessário para a calibragem do toque.
- pair2
É necessário um segundo par de pontos de toque e exibição para a calibragem do toque.
- pair3
É necessário um terceiro par de toque e ponto de exibição para a calibragem do toque.
- pair4
Quarto par de toque e ponto de exibição necessário para a calibragem do toque.
Métodos
clearTouchCalibration()
chrome.system.display.clearTouchCalibration(
id: string,
): void
Redefine a calibragem do toque na tela e a restaura ao estado padrão limpando todos os dados de calibragem associados a ela.
Parâmetros
- ID
string
O identificador exclusivo da tela.
completeCustomTouchCalibration()
chrome.system.display.completeCustomTouchCalibration(
pairs: TouchCalibrationPairQuad,
bounds: Bounds,
): void
Define os pares de calibragem de toque para uma tela. Esses pairs
seriam usados para calibrar a tela sensível ao toque para exibição com id
chamado em startCustomTouchCalibration(). Sempre chame startCustomTouchCalibration
antes de chamar esse método. Se outra calibragem de toque já estiver em andamento, isso vai gerar um erro.
Parâmetros
- pairs
Os pares de pontos usados para calibrar a tela.
- limites
Limites da tela quando a calibragem do toque foi realizada. Os valores
bounds.left
ebounds.top
são ignorados.
enableUnifiedDesktop()
chrome.system.display.enableUnifiedDesktop(
enabled: boolean,
): void
Ativa/desativa o recurso de área de trabalho unificada. Se ativado enquanto o espelhamento estiver ativo, o modo de computador não vai mudar até que o espelhamento seja desativado. Caso contrário, o modo de computador vai mudar para unificado imediatamente. OBSERVAÇÃO: isso só está disponível para apps de quiosque do ChromeOS e interface da Web.
Parâmetros
- ativado
booleano
Verdadeiro se a área de trabalho unificada estiver ativada.
getDisplayLayout()
chrome.system.display.getDisplayLayout(): Promise<DisplayLayout[]>
Solicita as informações de layout de todas as telas. OBSERVAÇÃO: isso só está disponível para apps de quiosque do ChromeOS e interface da Web.
Retorna
-
Promise<DisplayLayout[]>
Chrome 91+
getInfo()
chrome.system.display.getInfo(
flags?: GetInfoFlags,
): Promise<DisplayUnitInfo[]>
Solicita as informações de todos os dispositivos de exibição conectados.
Parâmetros
- flags
GetInfoFlags opcional
Chrome 59 ou mais recenteOpções que afetam como as informações são retornadas.
Retorna
-
Promise<DisplayUnitInfo[]>
Chrome 91+
overscanCalibrationAdjust()
chrome.system.display.overscanCalibrationAdjust(
id: string,
delta: Insets,
): void
Ajusta os encartes de overscan atuais para uma tela. Normalmente, isso move a tela ao longo de um eixo (por exemplo, esquerda+direita têm o mesmo valor) ou a dimensiona ao longo de um eixo (por exemplo, cima+baixo têm valores opostos). Cada chamada do Adjust é cumulativa com as chamadas anteriores desde o início.
Parâmetros
- ID
string
O identificador exclusivo da tela.
- dado
O valor para mudar os encartes de overscan.
overscanCalibrationComplete()
chrome.system.display.overscanCalibrationComplete(
id: string,
): void
Conclua os ajustes de overscan de uma tela salvando os valores atuais e ocultando a sobreposição.
Parâmetros
- ID
string
O identificador exclusivo da tela.
overscanCalibrationReset()
chrome.system.display.overscanCalibrationReset(
id: string,
): void
Redefine os encartes de overscan de uma tela para o último valor salvo (ou seja, antes de Start ser chamado).
Parâmetros
- ID
string
O identificador exclusivo da tela.
overscanCalibrationStart()
chrome.system.display.overscanCalibrationStart(
id: string,
): void
Inicia a calibragem de overscan para uma tela. Isso vai mostrar uma sobreposição na tela indicando os encartes de overscan atuais. Se a calibragem de overscan para a tela id
estiver em andamento, ela será redefinida.
Parâmetros
- ID
string
O identificador exclusivo da tela.
setDisplayLayout()
chrome.system.display.setDisplayLayout(
layouts: DisplayLayout[],
): Promise<void>
Defina o layout para todas as telas. Qualquer tela não incluída vai usar o layout padrão. Se um layout se sobrepuser ou for inválido, ele será ajustado para um layout válido. Depois que o layout for resolvido, um evento onDisplayChanged será acionado. OBSERVAÇÃO: isso só está disponível para apps de quiosque do ChromeOS e interface da Web.
Parâmetros
- layouts
As informações de layout, obrigatórias para todas as telas, exceto a principal.
Retorna
-
Promise<void>
Chrome 91+
setDisplayProperties()
chrome.system.display.setDisplayProperties(
id: string,
info: DisplayProperties,
): Promise<void>
Atualiza as propriedades da tela especificada por id
, de acordo com as informações fornecidas em info
. Em caso de falha, runtime.lastError
será definido. OBSERVAÇÃO: isso só está disponível para apps de quiosque do ChromeOS e interface da Web.
Parâmetros
- ID
string
O identificador exclusivo da tela.
- informações
As informações sobre as propriedades de exibição que precisam ser mudadas. Uma propriedade só será alterada se um novo valor for especificado em
info
.
Retorna
-
Promise<void>
Chrome 91+
setMirrorMode()
chrome.system.display.setMirrorMode(
info: MirrorModeInfo,
): Promise<void>
Define o modo de exibição para o modo espelho especificado. Cada chamada redefine o estado das chamadas anteriores. A chamada setDisplayProperties() vai falhar para as telas de destino de espelhamento. OBSERVAÇÃO: isso só está disponível para apps de quiosque do ChromeOS e interface da Web.
Parâmetros
- informações
As informações do modo espelho que devem ser aplicadas ao modo de exibição.
Retorna
-
Promise<void>
Chrome 91+
showNativeTouchCalibration()
chrome.system.display.showNativeTouchCalibration(
id: string,
): Promise<boolean>
Mostra a UX de calibragem de toque nativa para a tela com id
como ID de exibição. Isso vai mostrar uma sobreposição na tela com as instruções necessárias sobre como proceder. O callback será invocado apenas em caso de calibragem bem-sucedida. Se a calibragem falhar, um erro será gerado.
Parâmetros
- ID
string
O identificador exclusivo da tela.
Retorna
-
Promise<boolean>
Chrome 91+
startCustomTouchCalibration()
chrome.system.display.startCustomTouchCalibration(
id: string,
): void
Inicia a calibragem de toque personalizada para uma tela. Isso deve ser chamado ao usar uma UX personalizada para coletar dados de calibragem. Se outra calibragem de toque já estiver em andamento, isso vai gerar um erro.
Parâmetros
- ID
string
O identificador exclusivo da tela.
Eventos
onDisplayChanged
chrome.system.display.onDisplayChanged.addListener(
callback: function,
)
Disparado quando há mudanças na configuração de exibição.
Parâmetros
- callback
função
O parâmetro
callback
tem esta aparência:() => void