chrome.app.window

Açıklama

Pencereler oluşturmak için chrome.app.window API'yi kullanın. Pencerelerde başlık çubuğu ve boyut kontrolleri içeren isteğe bağlı bir çerçeve bulunur. Herhangi bir Chrome tarayıcı penceresiyle ilişkilendirilmemişse Bu seçeneklerin gösterimi için Window State Sample (Pencere Durumu Örneği) bölümüne bakın.

Türler

AppWindow

Özellikler

  • contentWindow

    Pencere

    Oluşturulan alt öğe için JavaScript "window" nesnesi.

  • id

    dize

    Pencerenin oluşturulduğu kimlik.

  • innerBounds

    Pencere süslemeleri hariç olmak üzere pencere içeriğinin konumu, boyutu ve kısıtlamaları. Bu özellik Chrome 36'da kullanıma sunulmuştur.

  • outerBounds

    Başlık çubuğu ve çerçeve gibi pencere süslemelerini içeren pencerenin konumu, boyutu ve kısıtlamaları. Bu özellik Chrome 36'da kullanıma sunulmuştur.

  • clearAttention

    geçersiz

    Pencereye odaklanın.

    clearAttention işlevi şu şekilde görünür:

    () => {...}

  • kapat

    geçersiz

    Pencereyi kapatın.

    close işlevi şu şekilde görünür:

    () => {...}

  • drawAttention

    geçersiz

    Pencereye dikkat çekin.

    drawAttention işlevi şu şekilde görünür:

    () => {...}

  • odak

    geçersiz

    Pencereye odaklanın.

    focus işlevi şu şekilde görünür:

    () => {...}

  • tam ekran

    geçersiz

    Pencereyi tam ekran yapar.

    Kullanıcı, ESC tuşuna basarak pencereyi geri yükleyebilir. Bir uygulama, app.window.fullscreen.overrideEsc izni isteyerek ve keydown ile keyup işleyicilerinde .preventDefault() çağırarak etkinliği iptal ederek ESC tuşuna basıldığında tam ekran durumundan çıkılmasını engelleyebilir. Örneğin:

    window.onkeydown = window.onkeyup = function(e) { if (e.keyCode == 27 /* ESC *\/) { e.preventDefault(); } };

    Not window.fullscreen(), pencerenin tamamının tam ekran olmasını sağlar ve kullanıcı hareketi gerektirmez. Tam ekran moduna girmek için HTML5 tam ekran API'si de kullanılabilir (daha fazla bilgi için Web API'leri başlıklı makaleyi inceleyin).

    fullscreen işlevi şu şekilde görünür:

    () => {...}

  • getBounds

    geçersiz

    Kullanımdan kaldırıldı

    innerBounds veya outerBounds kullanın.

    Pencerenin iç sınırlarını ContentBounds nesnesi olarak alın.

    getBounds işlevi şu şekilde görünür:

    () => {...}

  • gizle

    geçersiz

    Pencereyi gizleyin. Pencere zaten gizliyse hiçbir işlem yapılmaz.

    hide işlevi şu şekilde görünür:

    () => {...}

  • isAlwaysOnTop

    geçersiz

    Pencere her zaman en üstte mi?

    isAlwaysOnTop işlevi şu şekilde görünür:

    () => {...}

    • returns

      boolean

  • isFullscreen

    geçersiz

    Pencere tam ekran mı? Pencere tam ekran olarak oluşturulduysa veya AppWindow ya da HTML5 tam ekran API'leri aracılığıyla tam ekran yapıldıysa bu değer doğru olur.

    isFullscreen işlevi şu şekilde görünür:

    () => {...}

    • returns

      boolean

  • isMaximized

    geçersiz

    Pencere ekranı kaplayacak şekilde büyütülmüş mü?

    isMaximized işlevi şu şekilde görünür:

    () => {...}

    • returns

      boolean

  • isMinimized

    geçersiz

    Pencere simge durumuna küçültülmüş mü?

    isMinimized işlevi şu şekilde görünür:

    () => {...}

    • returns

      boolean

  • ekranı kapla

    geçersiz

    Pencereyi ekranı kaplayacak şekilde büyütün.

    maximize işlevi şu şekilde görünür:

    () => {...}

  • küçültmek

    geçersiz

    Pencereyi simge durumuna küçültün.

    minimize işlevi şu şekilde görünür:

    () => {...}

  • moveTo

    geçersiz

    Chrome 43'ten beri kullanımdan kaldırıldı

    outerBounds'u kullanın.

    Pencereyi (left, top) konumuna taşıyın.

    moveTo işlevi şu şekilde görünür:

    (left: number, top: number) => {...}

    • sol

      sayı

    • üst

      sayı

  • resizeTo

    geçersiz

    Chrome 43'ten beri kullanımdan kaldırıldı

    outerBounds'u kullanın.

    Pencereyi widthxheight piksel boyutunda yeniden boyutlandırın.

    resizeTo işlevi şu şekilde görünür:

    (width: number, height: number) => {...}

    • genişlik

      sayı

    • yükseklik

      sayı

  • restore

    geçersiz

    Pencereyi geri yükleyerek büyütülmüş, küçültülmüş veya tam ekran durumundan çıkın.

    restore işlevi şu şekilde görünür:

    () => {...}

  • setAlwaysOnTop

    geçersiz

    Pencerenin diğer pencerelerin çoğunun üzerinde kalıp kalmayacağını ayarlayın. alwaysOnTopWindows izni gerekir.

    setAlwaysOnTop işlevi şu şekilde görünür:

    (alwaysOnTop: boolean) => {...}

    • alwaysOnTop

      boolean

  • setBounds

    geçersiz

    Kullanımdan kaldırıldı

    innerBounds veya outerBounds kullanın.

    Pencerenin iç sınırlarını ayarlayın.

    setBounds işlevi şu şekilde görünür:

    (bounds: ContentBounds) => {...}

  • setVisibleOnAllWorkspaces

    geçersiz

    Pencerenin tüm çalışma alanlarında görünür olup olmayacağını ayarlayın. (Yalnızca bu özelliği destekleyen platformlar için geçerlidir.)

    setVisibleOnAllWorkspaces işlevi şu şekilde görünür:

    (alwaysVisible: boolean) => {...}

    • alwaysVisible

      boolean

  • göster

    geçersiz

    Pencereyi gösterin. Pencere zaten görünür durumdaysa hiçbir işlem yapılmaz. focused true olarak ayarlanırsa veya atlanırsa pencereye odaklanın.

    show işlevi şu şekilde görünür:

    (focused?: boolean) => {...}

    • odaklı

      boolean isteğe bağlı

Bounds

Özellikler

  • yükseklik

    sayı

    Bu özellik, içeriğin veya pencerenin mevcut yüksekliğini okumak ya da yazmak için kullanılabilir.

  • sol

    sayı

    Bu özellik, içeriğin veya pencerenin mevcut X koordinatını okumak ya da yazmak için kullanılabilir.

  • maxHeight

    number isteğe bağlı

    Bu özellik, içeriğin veya pencerenin mevcut maksimum yüksekliğini okumak ya da yazmak için kullanılabilir. null değeri "belirtilmemiş" anlamına gelir.

  • maxWidth

    number isteğe bağlı

    Bu özellik, içeriğin veya pencerenin mevcut maksimum genişliğini okumak ya da yazmak için kullanılabilir. null değeri "belirtilmemiş" anlamına gelir.

  • minHeight

    number isteğe bağlı

    Bu özellik, içeriğin veya pencerenin mevcut minimum yüksekliğini okumak ya da yazmak için kullanılabilir. null değeri "belirtilmemiş" anlamına gelir.

  • minWidth

    number isteğe bağlı

    Bu özellik, içeriğin veya pencerenin mevcut minimum genişliğini okumak ya da yazmak için kullanılabilir. null değeri "belirtilmemiş" anlamına gelir.

  • üst

    sayı

    Bu özellik, içeriğin veya pencerenin mevcut Y koordinatını okumak ya da yazmak için kullanılabilir.

  • genişlik

    sayı

    Bu özellik, içeriğin veya pencerenin mevcut genişliğini okumak ya da yazmak için kullanılabilir.

  • setMaximumSize

    geçersiz

    İçeriğin veya pencerenin maksimum boyut kısıtlamalarını ayarlayın. Kısıtlamayı kaldırmak için maksimum genişlik veya yükseklik null olarak ayarlanabilir. undefined değeri, kısıtlamayı değiştirmeden bırakır.

    setMaximumSize işlevi şu şekilde görünür:

    (maxWidth: number, maxHeight: number) => {...}

    • maxWidth

      sayı

    • maxHeight

      sayı

  • setMinimumSize

    geçersiz

    İçeriğin veya pencerenin minimum boyut kısıtlamalarını ayarlayın. Sınırlamayı kaldırmak için minimum genişlik veya yükseklik null olarak ayarlanabilir. undefined değeri, kısıtlamayı değiştirmeden bırakır.

    setMinimumSize işlevi şu şekilde görünür:

    (minWidth: number, minHeight: number) => {...}

    • minWidth

      sayı

    • minHeight

      sayı

  • setPosition

    geçersiz

    İçeriğin veya pencerenin sol ve üst konumunu ayarlayın.

    setPosition işlevi şu şekilde görünür:

    (left: number, top: number) => {...}

    • sol

      sayı

    • üst

      sayı

  • setSize

    geçersiz

    İçeriğin veya pencerenin genişliğini ve yüksekliğini ayarlayın.

    setSize işlevi şu şekilde görünür:

    (width: number, height: number) => {...}

    • genişlik

      sayı

    • yükseklik

      sayı

BoundsSpecification

Özellikler

  • yükseklik

    number isteğe bağlı

    İçeriğin veya pencerenin yüksekliği.

  • sol

    number isteğe bağlı

    İçeriğin veya pencerenin X koordinatı.

  • maxHeight

    number isteğe bağlı

    İçeriğin veya pencerenin maksimum yüksekliği.

  • maxWidth

    number isteğe bağlı

    İçeriğin veya pencerenin maksimum genişliği.

  • minHeight

    number isteğe bağlı

    İçeriğin veya pencerenin minimum yüksekliği.

  • minWidth

    number isteğe bağlı

    İçeriğin veya pencerenin minimum genişliği.

  • üst

    number isteğe bağlı

    İçeriğin veya pencerenin Y koordinatı.

  • genişlik

    number isteğe bağlı

    İçeriğin veya pencerenin genişliği.

ContentBounds

Özellikler

  • yükseklik

    number isteğe bağlı

  • sol

    number isteğe bağlı

  • üst

    number isteğe bağlı

  • genişlik

    number isteğe bağlı

CreateWindowOptions

Özellikler

  • alwaysOnTop

    boolean isteğe bağlı

    Doğruysa pencere, diğer pencerelerin çoğunun üzerinde kalır. Bu türden birden fazla pencere varsa şu anda odaklanılan pencere ön planda olur. alwaysOnTopWindows izni gerekir. Varsayılan olarak false değerine ayarlanır.

    Oluşturulduktan sonra bu özelliği değiştirmek için pencerede setAlwaysOnTop() işlevini çağırın.

  • sınırlar

    ContentBounds isteğe bağlı

    Kullanımdan kaldırıldı

    innerBounds veya outerBounds kullanın.

    İçeriğin penceredeki boyutu ve konumu (başlık çubuğu hariç). Bir kimlik de belirtilmişse ve daha önce eşleşen kimliğe sahip bir pencere gösterilmişse bunun yerine pencerenin hatırlanan sınırları kullanılır.

  • odaklı

    boolean isteğe bağlı

    Doğru değerine ayarlanırsa pencere oluşturulduğunda odaklanılır. Varsayılan olarak true değerine ayarlanır.

  • kare

    dize | FrameOptions isteğe bağlı

    Çerçeve türü: none veya chrome (varsayılan olarak chrome kullanılır). none için -webkit-app-region CSS özelliği, uygulamanın penceresine sürüklenebilirlik özelliği uygulamak için kullanılabilir. -webkit-app-region: drag, bölgeleri sürüklenebilir olarak işaretlemek için kullanılabilir. no-drag, iç içe yerleştirilmiş öğelerde bu stili devre dışı bırakmak için kullanılabilir.

    FrameOptions kullanımı M36'da yeni bir özelliktir.

  • gizli

    boolean isteğe bağlı

    Doğruysa pencere gizli durumda oluşturulur. Oluşturulduktan sonra pencereyi göstermek için pencerede show() işlevini çağırın. Varsayılan olarak false değerine ayarlanır.

  • kurallara göz atabilirsiniz

    dize isteğe bağlı

    Chrome 54 veya daha yeni bir sürüm

    Pencere simgesinin URL'si. showInShelf doğru olarak ayarlandığında bir pencerenin kendi simgesi olabilir. URL, genel veya uzantı yerel URL'si olmalıdır.

  • id

    dize isteğe bağlı

    Pencereyi tanımlamak için kullanılan kimlik. Bu, pencerenin boyutunu ve konumunu hatırlamak ve aynı kimliğe sahip bir pencere daha sonra açıldığında bu geometriyi geri yüklemek için kullanılır. Aynı kimliğe sahip başka bir pencere zaten varken belirli bir kimliğe sahip bir pencere oluşturulursa yeni bir pencere oluşturmak yerine şu anda açık olan pencereye odaklanılır.

  • innerBounds

    BoundsSpecification isteğe bağlı

    Pencere içeriğinin (pencere süslemeleri hariç) ilk konumunu, ilk boyutunu ve kısıtlamalarını belirtmek için kullanılır. Bir id de belirtilmişse ve daha önce eşleşen bir id ile pencere gösterilmişse bunun yerine hatırlanan sınırlar kullanılır.

    İç ve dış sınırlar arasındaki dolgunun işletim sistemi tarafından belirlendiğini unutmayın. Bu nedenle, hem innerBounds hem de outerBounds için aynı sınırlar özelliğini ayarlamak hataya neden olur.

    Bu özellik Chrome 36'da kullanıma sunulmuştur.

  • maxHeight

    number isteğe bağlı

    Kullanımdan kaldırıldı

    innerBounds veya outerBounds kullanın.

    Pencerenin maksimum yüksekliği.

  • maxWidth

    number isteğe bağlı

    Kullanımdan kaldırıldı

    innerBounds veya outerBounds kullanın.

    Pencerenin maksimum genişliği.

  • minHeight

    number isteğe bağlı

    Kullanımdan kaldırıldı

    innerBounds veya outerBounds kullanın.

    Pencerenin minimum yüksekliği.

  • minWidth

    number isteğe bağlı

    Kullanımdan kaldırıldı

    innerBounds veya outerBounds kullanın.

    Pencerenin minimum genişliği.

  • outerBounds

    BoundsSpecification isteğe bağlı

    Pencerenin ilk konumunu, ilk boyutunu ve kısıtlamalarını (başlık çubuğu ve çerçeve gibi pencere süslemeleri dahil) belirtmek için kullanılır. Bir id de belirtilmişse ve daha önce eşleşen bir id ile pencere gösterilmişse bunun yerine hatırlanan sınırlar kullanılır.

    İç ve dış sınırlar arasındaki dolgunun işletim sistemi tarafından belirlendiğini unutmayın. Bu nedenle, hem innerBounds hem de outerBounds için aynı sınırlar özelliğini ayarlamak hataya neden olur.

    Bu özellik Chrome 36'da kullanıma sunulmuştur.

  • yeniden boyutlandırılabilir

    boolean isteğe bağlı

    Doğruysa pencere, kullanıcı tarafından yeniden boyutlandırılabilir. Varsayılan olarak true değerine ayarlanır.

  • showInShelf

    boolean isteğe bağlı

    Chrome 54 veya daha yeni bir sürüm

    Doğruysa pencerenin kendi raf simgesi olur. Aksi takdirde pencere, rafta uygulamayla ilişkili diğer pencerelerle birlikte gruplandırılır. Varsayılan olarak false değerini alır. showInShelf değeri doğru olarak ayarlanırsa pencere için bir kimlik belirtmeniz gerekir.

  • singleton

    boolean isteğe bağlı

    Kullanımdan kaldırıldı

    Aynı kimliğe sahip birden fazla pencere artık desteklenmiyor.

    Varsayılan olarak, pencere için bir kimlik belirtirseniz pencere yalnızca aynı kimliğe sahip başka bir pencere zaten mevcut değilse oluşturulur. Aynı kimliğe sahip bir pencere zaten varsa bunun yerine o pencere etkinleştirilir. Aynı kimliğe sahip birden fazla pencere oluşturmak istiyorsanız bu özelliği false olarak ayarlayabilirsiniz.

  • durum

    Eyalet isteğe bağlıdır.

    Pencerenin başlangıç durumu. Pencerenin başlangıçta tam ekran, ekranı kaplayacak şekilde veya küçültülmüş olarak oluşturulmasına olanak tanır. Varsayılan olarak "normal" değerine ayarlanır.

  • tür

    WindowType isteğe bağlı

    Chrome 45 ve sonraki sürümler Chrome 69'dan beri kullanımdan kaldırıldı

    Tüm uygulama pencereleri "shell" pencere türünü kullanır.

    Oluşturulacak pencerenin türü.

  • visibleOnAllWorkspaces

    boolean isteğe bağlı

    Doğruysa ve platform tarafından destekleniyorsa pencere tüm çalışma alanlarında görünür.

FrameOptions

Özellikler

  • activeColor

    dize isteğe bağlı

    Etkin pencerenin çerçeve renginin ayarlanmasına izin verir. Çerçeve renklendirme yalnızca çerçeve türü chrome ise kullanılabilir.

    Çerçeve renklendirme yalnızca çerçeve türü chrome ise kullanılabilir.

    Çerçeve renklendirme, Chrome 36'da yeni bir özelliktir.

  • renk

    dize isteğe bağlı

    Çerçeve renginin ayarlanmasına izin verir. Çerçeve renklendirme yalnızca çerçeve türü chrome ise kullanılabilir.

    Çerçeve renklendirme, Chrome 36'da yeni bir özelliktir.

  • inactiveColor

    dize isteğe bağlı

    Etkin olmayan pencerenin çerçeve renginin, etkin renkten farklı ayarlanmasına olanak tanır. Çerçeve renklendirme yalnızca çerçeve türü chrome ise kullanılabilir.

    inactiveColor, color ile birlikte kullanılmalıdır.

    Çerçeve renklendirme, Chrome 36'da yeni bir özelliktir.

  • tür

    dize isteğe bağlı

    Çerçeve türü: none veya chrome (varsayılan olarak chrome'dir).

    none için -webkit-app-region CSS özelliği, uygulamanın penceresine sürüklenebilirlik özelliği uygulamak için kullanılabilir.

    -webkit-app-region: drag, bölgeleri sürüklenebilir olarak işaretlemek için kullanılabilir. no-drag, iç içe yerleştirilmiş öğelerde bu stili devre dışı bırakmak için kullanılabilir.

State

Pencerenin durumu: normal, tam ekran, ekranı kaplayacak şekilde büyütülmüş, simge durumuna küçültülmüş.

Enum

"normal"

"fullscreen"

"maximized"

"minimized"

WindowType

Chrome 45 ve sonraki sürümler

Oluşturulacak pencerenin türünü belirtir.

Enum

"shell"
Varsayılan pencere türü.

"panel"
OS managed window (Kullanımdan kaldırıldı).

Yöntemler

canSetVisibleOnAllWorkspaces()

chrome.app.window.canSetVisibleOnAllWorkspaces(): boolean

Geçerli platformun, pencerelerin tüm çalışma alanlarında görünmesini destekleyip desteklemediği.

İadeler

  • boolean

create()

Promise
chrome.app.window.create(
  url: string,
  options?: CreateWindowOptions,
  callback?: function,
)
: Promise<AppWindow>

Pencerenin boyutu ve konumu çeşitli şekillerde belirtilebilir. En basit seçenek hiçbir şey belirtmemektir. Bu durumda varsayılan boyut ve platforma bağlı konum kullanılır.

Pencerenin konumunu, boyutunu ve kısıtlamalarını ayarlamak için innerBounds veya outerBounds özelliklerini kullanın. İç sınırlar, pencere süslemelerini içermez. Dış sınırlar, pencerenin başlık çubuğunu ve çerçevesini içerir. İç ve dış sınırlar arasındaki dolgunun işletim sistemi tarafından belirlendiğini unutmayın. Bu nedenle, hem iç hem de dış sınırlar için aynı özelliğin ayarlanması hata olarak kabul edilir (örneğin, hem innerBounds.left hem de outerBounds.left ayarlanması).

Pencerelerin konumlarını otomatik olarak hatırlamak için onlara kimlik verebilirsiniz. Bir pencerenin kimliği varsa bu kimlik, pencere taşındığında veya yeniden boyutlandırıldığında boyutunu ve konumunu hatırlamak için kullanılır. Bu boyut ve konum, aynı kimliğe sahip bir pencerenin sonraki açılışlarında belirtilen sınırlar yerine kullanılır. Hatırlanan varsayılan konumun dışında bir konumda kimlik içeren bir pencere açmanız gerekiyorsa pencereyi gizli olarak oluşturabilir, istediğiniz konuma taşıyabilir ve ardından gösterebilirsiniz.

Parametreler

  • url

    dize

  • seçenekler

    CreateWindowOptions isteğe bağlı

  • callback

    işlev isteğe bağlı

    callback parametresi şu şekilde görünür:

    (createdWindow: AppWindow) => void

İadeler

  • Promise<AppWindow>

    Chrome 117 ve sonraki sürümler

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

current()

chrome.app.window.current(): AppWindow | undefined

Geçerli komut dosyası bağlamı (ör. JavaScript "window" nesnesi) için bir AppWindow nesnesi döndürür. Bu, başka bir sayfanın komut dosyası bağlamı için bir işleyende de çağrılabilir. Örneğin: otherWindow.chrome.app.window.current().

İadeler

get()

chrome.app.window.get(
  id: string,
)
: AppWindow | undefined

Belirtilen kimliğe sahip bir AppWindow alır. Belirtilen kimliğe sahip bir pencere yoksa null değeri döndürülür. Bu yöntem Chrome 33'te yeni kullanıma sunulmuştur.

Parametreler

  • id

    dize

İadeler

getAll()

chrome.app.window.getAll(): AppWindow[]

Şu anda oluşturulmuş tüm uygulama pencerelerinin dizisini alır. Bu yöntem Chrome 33'te yeni kullanıma sunulmuştur.

İadeler

Etkinlikler

onBoundsChanged

chrome.app.window.onBoundsChanged.addListener(
  callback: function,
)

Pencere yeniden boyutlandırıldığında tetiklenir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    () => void

onClosed

chrome.app.window.onClosed.addListener(
  callback: function,
)

Pencere kapatıldığında tetiklenir. Bu işlem, kapatılan pencere dışında bir pencereden (ör. arka plan sayfasından) dinlenmelidir. Bunun nedeni, pencere kapatılırken etkinliğin tetiklenmesi ve bu nedenle pencerenin komut dosyası bağlamındaki tüm API'lerin işlevsel olmamasıdır.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    () => void

onFullscreened

chrome.app.window.onFullscreened.addListener(
  callback: function,
)

Pencere tam ekran yapıldığında (AppWindow veya HTML5 API'leri aracılığıyla) tetiklenir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    () => void

onMaximized

chrome.app.window.onMaximized.addListener(
  callback: function,
)

Pencere ekranı kaplayacak şekilde büyütüldüğünde tetiklenir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    () => void

onMinimized

chrome.app.window.onMinimized.addListener(
  callback: function,
)

Pencere simge durumuna küçültüldüğünde tetiklenir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    () => void

onRestored

chrome.app.window.onRestored.addListener(
  callback: function,
)

Pencere simge durumuna küçültülmüş veya ekranı kaplayacak şekilde büyütülmüş durumdan geri yüklendiğinde tetiklenir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    () => void