Расширение Chrome получает информацию об отображении активного экрана

Я создаю расширение Chrome, которое может получать отображаемую информацию [размер экрана] при нажатии на расширение. и я добился успеха, используя API

      chrome.system.display.getInfo();

Этот API предоставляет информацию обо всех подключенных дисплеях [Это действительно здорово], но на самом деле я хочу получить информацию об отображении того экрана, на котором открыт мой браузер Chrome.

например, у меня есть экраны, экран один: 1980 * 1280, экран два: 1680 * 980,

теперь, если мое окно браузера Chrome открыто на экране-два, то информация, которую я хочу, составляет 1680 * 980, а если мое окно браузера Chrome открыто на экране-1, то информация, которую я хочу, будет 1980 * 1280.

Документы используются https://developer.chrome.com/docs/extensions/reference/system_display/

Я прочитал документ, возможно, я что-то упустил. Поэтому, пожалуйста, помогите мне определить, чего мне здесь не хватает или где я могу улучшить себя.

Спасибо

1 ответ

Я не нашел точного решения с использованием API расширения Chrome.

Но подход, который я использовал,

Я создал сценарий содержимого, который считывает объект окна активного экрана и дает мне размер этого экрана, отправляя сообщения в мое расширение Chrome.

      // ContentScript.ts

chrome.runtime.onMessage.addListener((request, _sender, response) => {
        const {
            screen: { height, width },
            innerHeight,
            innerWidth,
            devicePixelRatio,
        } = window;

        const displayInfo = {
            height: height * devicePixelRatio,
            width: width * devicePixelRatio,
            tabHeight: innerHeight,
            tabWidth: innerWidth,
        };

        if (request.requestType === 'getDisplayInfo' && displayInfo) {
            response(displayInfo);
        }
    });

Спасибо