chrome.app.window

Açıklama

Pencere oluşturmak için chrome.app.window API'yi kullanın. Pencereler, başlık çubuğu ve boyut denetimleri bulunan isteğe bağlı bir çerçeveye sahiptir. Bunlar, herhangi bir Chrome tarayıcı penceresiyle ilişkilendirilmez. Bu seçeneklerin gösterimi için 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üslemelerini içermeyen, pencere içeriğinin konumu, boyutu ve kısıtlamaları. Bu özellik, Chrome 36 sürümünde yenidir.

  • outerBounds

    Pencerenin, başlık çubuğu ve çerçevesi gibi pencere süslemelerini içeren konumu, boyutu ve sınırlamaları. Bu özellik, Chrome 36 sürümünde yenidir.

  • clearAttention

    void

    Pencereye dikkat edin.

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

    ()=> {...}

  • kapat

    void

    Pencereyi kapatın.

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

    ()=> {...}

  • drawAttention

    void

    Dikkatleri pencereye çekin.

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

    ()=> {...}

  • odak

    void

    Pencereye odaklanın.

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

    ()=> {...}

  • tam ekran

    void

    Pencere tam ekran yapar.

    Kullanıcı ESC tuşuna basarak pencereyi geri yükleyebilir. Bir uygulama, ESC tuşuna basıldığında app.window.fullscreen.overrideEsc iznini isteyerek ve aşağıdaki gibi, keydown ve tuş oluşturma işleyicilerinde .preventDefault() çağrısı yaparak etkinliği iptal ederek tam ekran durumunun kalmasını engelleyebilir:

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

    window.fullscreen() işlevinin tüm pencerenin tam ekran olmasına neden olacağına ve kullanıcı hareketi gerektirmediğine dikkat edin. Tam ekran moduna girmek için HTML5 tam ekran API'sı da kullanılabilir (daha fazla ayrıntı için Web API'leri sayfasına bakın).

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

    ()=> {...}

  • getBounds

    void

    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

    void

    Pencereyi gizleyin. Pencere zaten gizliyse hiçbir şey yapmaz.

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

    ()=> {...}

  • isAlwaysOnTop

    void

    Pencere her zaman üstte mi?

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

    ()=> {...}

    • returns

      boolean

  • isFullscreen

    void

    Pencere tam ekran mı? Pencere tam ekran veya AppWindow ya da HTML5 tam ekran API'ları aracılığıyla tam ekran olarak oluşturulmuşsa bu durum geçerlidir.

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

    ()=> {...}

    • returns

      boolean

  • isMaximized

    void

    Pencere tam ekran mı?

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

    ()=> {...}

    • returns

      boolean

  • isMinimized

    void

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

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

    ()=> {...}

    • returns

      boolean

  • ekranı kapla

    void

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

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

    ()=> {...}

  • küçült

    void

    Pencereyi simge durumuna küçültün.

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

    ()=> {...}

  • moveTo

    void

    Chrome 43 sürümünden itibaren kullanımdan kaldırıldı

    outerBounds kullanın.

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

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

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

    • sol

      sayı

    • ilk yarı

      sayı

  • resizeTo

    void

    Chrome 43 sürümünden itibaren kullanımdan kaldırıldı

    outerBounds kullanın.

    Pencerenin boyutunu widthxheight piksel olarak yeniden boyutlandırın.

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

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

    • genişlik

      sayı

    • yükseklik

      sayı

  • geri yükle

    void

    Ekranı kaplayan, küçültülmüş veya tam ekran durumundan çıkarak pencereyi geri yükleyin.

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

    ()=> {...}

  • setAlwaysOnTop

    void

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

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

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

    • alwaysOnTop

      boolean

  • setBounds

    void

    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

    void

    Pencerenin tüm çalışma alanlarında görünüp görünmeyeceğini ayarlayın. (Yalnızca bunu destekleyen platformlar için).

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

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

    • alwaysVisible

      boolean

  • göster

    void

    Pencereyi göster. Pencere zaten görünür durumdaysa hiçbir şey yapmaz. focused doğru değerine ayarlanırsa veya atlanırsa pencereye odaklan.

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

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

    • odaklı

      boole 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 geçerli X koordinatını okumak ya da yazmak için kullanılabilir.

  • maxHeight

    numara 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 "belirtilmedi" durumunu belirtir.

  • maxWidth

    numara 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 "belirtilmedi" durumunu belirtir.

  • minHeight

    numara 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 "belirtilmedi" durumunu belirtir.

  • minWidth

    numara 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 "belirtilmedi" durumunu belirtir.

  • ilk yarı

    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

    void

    İç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 değerine ayarlanabilir. undefined değeri, kısıtlamayı değiştirmez.

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

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

    • maxWidth

      sayı

    • maxHeight

      sayı

  • setMinimumSize

    void

    İçerik veya pencerenin minimum boyut sınırlamalarını ayarlayın. Kısıtlamayı kaldırmak için minimum genişlik veya yükseklik null değerine ayarlanabilir. undefined değeri, kısıtlamayı değiştirmez.

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

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

    • minWidth

      sayı

    • minHeight

      sayı

  • setPosition

    void

    İç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ı

    • ilk yarı

      sayı

  • setSize

    void

    İç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

    numara isteğe bağlı

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

  • sol

    numara isteğe bağlı

    İçeriğin veya pencerenin X koordinatı.

  • maxHeight

    numara isteğe bağlı

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

  • maxWidth

    numara isteğe bağlı

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

  • minHeight

    numara isteğe bağlı

    İçerik veya pencerenin minimum yüksekliği.

  • minWidth

    numara isteğe bağlı

    İçerik veya pencerenin minimum genişliği.

  • ilk yarı

    numara isteğe bağlı

    İçeriğin veya pencerenin Y koordinatı.

  • genişlik

    numara isteğe bağlı

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

ContentBounds

Özellikler

  • yükseklik

    numara isteğe bağlı

  • sol

    numara isteğe bağlı

  • ilk yarı

    numara isteğe bağlı

  • genişlik

    numara isteğe bağlı

CreateWindowOptions

Özellikler

  • alwaysOnTop

    boole isteğe bağlı

    True (doğru) değerine ayarlanırsa pencere, diğer pencerelerin çoğunun üstünde kalır. Bu türde birden fazla pencere varsa geçerli olarak odaklanılan pencere ön planda olur. alwaysOnTopWindows iznini gerektirir. Varsayılan olarak false değerine ayarlanır.

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

  • sınırlar

    ContentBounds isteğe bağlı

    Kullanımdan kaldırıldı

    InnerBounds veya outerBounds kullanın.

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

  • odaklı

    boole isteğe bağlı

    True (doğru) değerine ayarlanırsa, pencere oluşturulduğunda odaklanır. Varsayılan olarak true değerine ayarlanır.

  • çerçeve

    string|FrameOptions isteğe bağlı

    Kare türü: none veya chrome (varsayılan olarak chrome değerine ayarlanır). none için, uygulamanın penceresine sürüklenebilirlik uygulamak üzere -webkit-app-region CSS özelliği kullanılabilir. -webkit-app-region: drag, sürüklenebilir bölgeleri 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 yenidir.

  • gizli

    boole isteğe bağlı

    True (doğru) değerine ayarlanırsa pencere gizli durumda oluşturulur. Oluşturulduktan sonra göstermek için pencerede show() komutunu çağırın. Varsayılan olarak false değerine ayarlanır.

  • simge

    string isteğe bağlı

    Chrome 54 ve sonraki sürümler

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

  • id

    string isteğe bağlı

    Pencereyi tanımlayan 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. Belirli bir kimliğe sahip bir pencere oluşturulurken aynı kimliğe sahip başka bir pencere zaten varsa yeni bir pencere oluşturmak yerine o anda açık olan pencere odaklanır.

  • innerBounds

    BoundsSpecification isteğe bağlı

    Pencere içeriğinin ilk konumunu, başlangıç boyutunu ve kısıtlamalarını (pencere süslemeleri hariç) belirtmek için kullanılır. Bir id değeri de belirtilir ve daha önce eşleşen bir id öğesine sahip bir 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ğinin ayarlanması hataya neden olur.

    Bu özellik, Chrome 36 sürümünde yenidir.

  • maxHeight

    numara isteğe bağlı

    Kullanımdan kaldırıldı

    InnerBounds veya outerBounds kullanın.

    Pencerenin maksimum yüksekliği.

  • maxWidth

    numara isteğe bağlı

    Kullanımdan kaldırıldı

    InnerBounds veya outerBounds kullanın.

    Pencerenin maksimum genişliği.

  • minHeight

    numara isteğe bağlı

    Kullanımdan kaldırıldı

    InnerBounds veya outerBounds kullanın.

    Pencerenin minimum yüksekliği.

  • minWidth

    numara 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, başlangıç 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ğeri de belirtilir ve daha önce eşleşen bir id öğesine sahip bir 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ğinin ayarlanması hataya neden olur.

    Bu özellik, Chrome 36 sürümünde yenidir.

  • resizable

    boole isteğe bağlı

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

  • showInShelf

    boole isteğe bağlı

    Chrome 54 ve sonraki sürümler

    Doğru değerine ayarlanırsa pencerenin kendi raf simgesi olur. Aksi takdirde, pencere rafta uygulamayla ilişkilendirilmiş diğer pencerelerle birlikte gruplanır. Varsayılan olarak "false" değerine ayarlanır. showInShelf true (doğru) değerine ayarlanırsa pencere için bir kimlik belirtmeniz gerekir.

  • singleton

    boole isteğe bağlı

    Kullanımdan kaldırıldı

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

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

  • state

    Eyalet isteğe bağlı

    Pencerenin zaten tam ekran, ekranı kaplayacak veya küçültülmüş olarak oluşturulmasına olanak tanıyan ilk durumu. 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 itibaren kullanımdan kaldırıldı

    Tüm uygulama pencereleri, "kabuk" pencere türünü kullanır

    Oluşturulacak pencere türü.

  • visibleOnAllWorkspaces

    boole isteğe bağlı

    True (doğru) değerine ayarlanırsa ve platform tarafından destekleniyorsa pencere, tüm çalışma alanlarında görünür.

FrameOptions

Özellikler

  • activeColor

    string isteğe bağlı

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

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

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

  • renk

    string isteğe bağlı

    Çerçeve renginin ayarlanmasına olanak tanır. Çerçeve renklendirmesi yalnızca çerçeve türü chrome ise kullanılabilir.

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

  • inactiveColor

    string isteğe bağlı

    Etkin olmadığında pencerenin çerçeve renginin etkin renkten farklı bir şekilde ayarlanmasını sağlar. Çerçeve renklendirmesi yalnızca çerçeve türü chrome ise kullanılabilir.

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

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

  • tür

    string isteğe bağlı

    Kare türü: none veya chrome (varsayılan olarak chrome).

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

    -webkit-app-region: drag, sürüklenebilir bölgeleri 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

Bir pencerenin durumu: normal, tam ekran, ekranı kaplayan, simge durumuna küçültülmüş.

Enum

"normal"

"maximized"

"minimized" (küçültülmüş)

WindowType

Chrome 45 ve sonraki sürümler

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

Enum

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

"panel"
İşletim sistemi tarafından yönetilen pencere (Kullanımdan kaldırıldı).

Yöntemler

canSetVisibleOnAllWorkspaces()

chrome.app.window.canSetVisibleOnAllWorkspaces()

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

İlerlemeler

  • boolean

create()

Söz
chrome.app.window.create(
  url: string,
  options?: CreateWindowOptions,
  callback?: function,
)

Bir pencerenin boyutu ve konumu birçok farklı şekilde belirtilebilir. En basit seçenek, hiçbir şey belirtmemektir. Bu durumda, varsayılan boyut ve platforma bağlı bir 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ı bir hata olarak kabul edilir (örneğin, hem innerBounds.left hem de outerBounds.left ayarlandığında).

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

Parametreler

  • url

    dize

  • seçenekler

    CreateWindowOptions isteğe bağlı

  • geri çağırma

    Functions (isteğe bağlı)

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

    (createdWindow: AppWindow)=>void

İlerlemeler

  • Promise<AppWindow>

    Chrome 117 ve sonraki sürümler

    Vaatler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırmaları kullanması gerekir.

current()

chrome.app.window.current()

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

İlerlemeler

get()

chrome.app.window.get(
  id: string,
)

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

Parametreler

  • id

    dize

İlerlemeler

getAll()

chrome.app.window.getAll()

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

İlerlemeler

Etkinlikler

onBoundsChanged

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

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

Parametreler

  • geri çağırma

    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 mesajın, kapanan pencere dışındaki bir pencereden, örneğin arka plan sayfasından dinlenmesi gerektiğini unutmayın. Bunun nedeni, etkinlik tetiklendiğinde kapatılmakta olan pencerenin yok edilme sürecinde olmasıdır. Bu, pencerenin komut dosyası bağlamındaki tüm API'lerin çalışmayacağı anlamına gelir.

Parametreler

  • geri çağırma

    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 tetiklenir (AppWindow veya HTML5 API'leri aracılığıyla).

Parametreler

  • geri çağırma

    işlev

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

    ()=>void

onMaximized

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

Pencere ekranı kapladığında tetiklenir.

Parametreler

  • geri çağırma

    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

  • geri çağırma

    işlev

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

    ()=>void

onRestored

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

Pencere, küçültülmüş veya ekranı kaplayacak şekilde eski durumuna getirildiğinde tetiklenir.

Parametreler

  • geri çağırma

    işlev

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

    ()=>void