Açıklama
Pencere oluşturmak için chrome.app.window
API'yi kullanın. Pencerelerde başlık çubuğu ve boyut denetimleri bulunan isteğe bağlı bir çerçeve vardır. Herhangi bir Chrome tarayıcı penceresiyle ilişkilendirilmez. Bu seçeneklerin gösterilmesi için Pencere Durumu Örneği'ne bakın.
Türler
AppWindow
Özellikler
-
contentWindow
Pencere
JavaScript "penceresi" nesnesini ifade eder.
-
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'da yenidir.
-
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 yenidir.
-
clearAttention
geçersiz
Dikkati pencereye odaklayın.
clearAttention
işlevi aşağıdaki gibi görünür:() => {...}
-
kapat
geçersiz
Pencereyi kapatın.
close
işlevi aşağıdaki gibi görünür:() => {...}
-
drawAttention
geçersiz
Dikkati pencereye çekin.
drawAttention
işlevi aşağıdaki gibi görünür:() => {...}
-
odak
geçersiz
Pencereye odaklanın.
focus
işlevi aşağıdaki gibi görünür:() => {...}
-
tam ekran
geçersiz
Pencereyi tam ekran yapar.
Kullanıcı ESC tuşuna basarak pencereyi geri yükleyebilir. Bir uygulama, ESC tuşuna basıldığında tam ekran durumunun bırakılmasını önleyebilir. Bunun için,
app.window.fullscreen.overrideEsc
iznini isteyebilir ve keydown ve tuş tuşu işleyicilerinde .preventDefault() çağrısı yaparak etkinliği iptal edebilir:window.onkeydown = window.onkeyup = function(e) { if (e.keyCode == 27 /* ESC *\/) { e.preventDefault(); } };
Not
window.fullscreen()
, tüm pencerenin tam ekran haline gelmesine neden olur ve kullanıcı hareketi gerektirmez. HTML5 tam ekran API'si, tam ekran moduna girmek için de kullanılabilir (daha fazla ayrıntı için Web API'leri bölümüne bakın).fullscreen
işlevi aşağıdaki gibi görünür:() => {...}
-
getBounds
geçersiz
Desteği sonlandırıldıİç sınırları veya dış sınırları kullanın.
Pencerenin iç sınırlarını
ContentBounds
nesnesi olarak alın.getBounds
işlevi aşağıdaki gibi görünür:() => {...}
-
returns
-
-
gizle
geçersiz
Pencereyi gizleyin. Pencere zaten gizliyse hiçbir şey yapmaz.
hide
işlevi aşağıdaki gibi görünür:() => {...}
-
isAlwaysOnTop
geçersiz
Pencere her zaman üstte mi?
isAlwaysOnTop
işlevi aşağıdaki gibi 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 durum geçerlidir.isFullscreen
işlevi aşağıdaki gibi görünür:() => {...}
-
returns
boolean
-
-
isMaximized
geçersiz
Pencere ekranı kaplayacak mı?
isMaximized
işlevi aşağıdaki gibi görünür:() => {...}
-
returns
boolean
-
-
isMinimized
geçersiz
Pencere küçültülmüş mü?
isMinimized
işlevi aşağıdaki gibi görünür:() => {...}
-
returns
boolean
-
-
maksimize et
geçersiz
Pencereyi ekranı kaplayacak şekilde büyütün.
maximize
işlevi aşağıdaki gibi görünür:() => {...}
-
simge durumuna küçült
geçersiz
Pencereyi simge durumuna küçültün.
minimize
işlevi aşağıdaki gibi görünür:() => {...}
-
moveTo
geçersiz
Chrome 43'ten bu yana desteği sonlandırıldıDış sınırları kullanın.
Pencereyi konuma (
left
,top
) taşıyın.moveTo
işlevi aşağıdaki gibi görünür:(left: number, top: number) => {...}
-
sol
sayı
-
üst
sayı
-
-
resizeTo
geçersiz
Chrome 43'ten bu yana desteği sonlandırıldıDış sınırları kullanın.
Pencerenin boyutunu
width
xheight
piksel olacak şekilde yeniden boyutlandırın.resizeTo
işlevi aşağıdaki gibi görünür:(width: number, height: number) => {...}
-
genişlik
sayı
-
yükseklik
sayı
-
-
restore
geçersiz
Pencereyi geri yükleyerek, ekranı kaplamış, küçültülmüş veya tam ekran durumundan çıkın.
restore
işlevi aşağıdaki gibi görünür:() => {...}
-
setAlwaysOnTop
geçersiz
Pencerenin, diğer çoğu pencerenin üzerinde kalıp kalmayacağını ayarlayın.
alwaysOnTopWindows
iznini gerektirir.setAlwaysOnTop
işlevi aşağıdaki gibi görünür:(alwaysOnTop: boolean) => {...}
-
alwaysOnTop
boolean
-
-
setBounds
geçersiz
Desteği sonlandırıldıİç sınırları veya dış sınırları kullanın.
Pencerenin iç sınırlarını belirleyin.
setBounds
işlevi aşağıdaki gibi görünür:(bounds: ContentBounds) => {...}
-
sınırlar
-
-
setVisibleOnAllWorkspaces
geçersiz
Pencerenin tüm çalışma alanlarında görünür olup olmayacağını ayarlayın. (Yalnızca bunu destekleyen platformlar için).
setVisibleOnAllWorkspaces
işlevi aşağıdaki gibi görünür:(alwaysVisible: boolean) => {...}
-
alwaysVisible
boolean
-
-
göster
geçersiz
Pencereyi gösterin. Pencere zaten görünür durumdaysa hiçbir şey yapmaz.
focused
doğru değerine ayarlanırsa veya atlanmışsa pencereye odaklanın.show
işlevi aşağıdaki gibi görünür:(focused?: boolean) => {...}
-
odaklı
boole isteğe bağlı
-
Bounds
Özellikler
-
yükseklik
sayı
Bu özellik, içeriğin veya pencerenin geçerli yüksekliğini okumak veya yazmak için kullanılabilir.
-
sol
sayı
Bu özellik, içeriğin veya pencerenin geçerli X koordinatını okumak veya yazmak için kullanılabilir.
-
maxHeight
sayı isteğe bağlı
Bu özellik, içeriğin veya pencerenin geçerli maksimum yüksekliğini okumak ya da yazmak için kullanılabilir.
null
değeri, "belirtilmemiş"i belirtir. -
maxWidth
sayı isteğe bağlı
Bu özellik, içeriğin veya pencerenin geçerli maksimum genişliğini okumak veya yazmak için kullanılabilir.
null
değeri, "belirtilmemiş"i belirtir. -
minHeight
sayı isteğe bağlı
Bu özellik, içeriğin veya pencerenin geçerli minimum yüksekliğini okumak ya da yazmak için kullanılabilir.
null
değeri, "belirtilmemiş"i belirtir. -
minWidth
sayı isteğe bağlı
Bu özellik, içeriğin veya pencerenin geçerli minimum genişliğini okumak veya yazmak için kullanılabilir.
null
değeri, "belirtilmemiş"i belirtir. -
üst
sayı
Bu özellik, içeriğin veya pencerenin geçerli Y koordinatını okumak veya yazmak için kullanılabilir.
-
genişlik
sayı
Bu özellik, içeriğin veya pencerenin geçerli genişliğini okumak veya 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ştirmez.setMaximumSize
işlevi aşağıdaki gibi 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. Kısıtlamayı kaldırmak için minimum genişlik veya yükseklik
null
olarak ayarlanabilir.undefined
değeri, kısıtlamayı değiştirmez.setMinimumSize
işlevi aşağıdaki gibi 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 aşağıdaki gibi 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 aşağıdaki gibi görünür:(width: number, height: number) => {...}
-
genişlik
sayı
-
yükseklik
sayı
-
BoundsSpecification
Özellikler
-
yükseklik
sayı isteğe bağlı
İçeriğin veya pencerenin yüksekliği.
-
sol
sayı isteğe bağlı
İçeriğin veya pencerenin X koordinatı.
-
maxHeight
sayı isteğe bağlı
İçeriğin veya pencerenin maksimum yüksekliği.
-
maxWidth
sayı isteğe bağlı
İçeriğin veya pencerenin maksimum genişliği.
-
minHeight
sayı isteğe bağlı
İçeriğin veya pencerenin minimum yüksekliği.
-
minWidth
sayı isteğe bağlı
İçeriğin veya pencerenin minimum genişliği.
-
üst
sayı isteğe bağlı
İçeriğin veya pencerenin Y koordinatı.
-
genişlik
sayı isteğe bağlı
İçeriğin veya pencerenin genişliği.
ContentBounds
Özellikler
-
yükseklik
sayı isteğe bağlı
-
sol
sayı isteğe bağlı
-
üst
sayı isteğe bağlı
-
genişlik
sayı isteğe bağlı
CreateWindowOptions
Özellikler
-
alwaysOnTop
boole isteğe bağlı
True (doğru) ise, pencere diğer çoğu pencerelerin üzerinde kalır. Bu türde birden fazla pencere varsa o sırada odaklanılan pencere ön planda olur.
alwaysOnTopWindows
iznini gerektirir. Varsayılan olarak yanlış değerine ayarlanır.Oluşturulduktan sonra bu özelliği değiştirmek için pencerede
setAlwaysOnTop()
komutunu çağırın. -
sınırlar
ContentBounds isteğe bağlı
Desteği sonlandırıldıİç sınırları veya dış sınırları kullanın.
Penceredeki içeriğin boyutu ve konumu (başlık çubuğu hariç). Bir kimlik belirtildiyse 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ı
boole isteğe bağlı
True (doğru) ise, oluşturulduğunda pencereye odaklanılır. Varsayılan değer, doğru değerine ayarlanır.
-
kutuyu sürükleyin
string | FrameOptions isteğe bağlı
Kare türü:
none
veyachrome
(varsayılan olarakchrome
).none
için-webkit-app-region
CSS özelliği, uygulamanın penceresine sürüklenebilirlik özelliğini uygulamak için kullanılabilir. Bölgeleri sürüklenebilir olarak işaretlemek için-webkit-app-region: drag
kullanılabilir. İç içe yerleştirilmiş öğelerde bu stili devre dışı bırakmak içinno-drag
kullanılabilir.FrameOptions
kullanımı, M36 sürümünde yenidir. -
boole isteğe bağlı
True (doğru) değerine ayarlanırsa pencere, gizli durumda oluşturulur. Pencere oluşturulduktan sonra göstermek için pencerede show() işlevini çağırın. Varsayılan olarak yanlış değerine ayarlanır.
-
simge
dize isteğe bağlı
Chrome 54 ve sonraki sürümler 'nı inceleyin.Pencere simgesinin URL'si. showInShelf doğru değerine ayarlandığında bir pencerenin kendi simgesi olabilir. URL, global veya uzantı yerel URL'si olmalıdır.
-
id
dize isteğe bağlı
Pencereyi tanımlayan kimlik. Bu değer, 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 başka bir pencere varken aynı kimliğe sahip başka bir pencere oluşturulursa, yeni bir pencere oluşturmak yerine geçerli olarak açık olan pencereye odaklanılır.
-
innerBounds
BoundsSpecification isteğe bağlı
Pencere içeriğinin ilk konumunu, ilk boyutunu ve kısıtlamalarını (pencere süslemeleri hariç) belirtmek için kullanılır.
id
belirtilmişse ve daha önce eşleşenid
öğ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 deouterBounds
için aynı sınır özelliğinin ayarlanması hatayla sonuçlanır.Bu özellik, Chrome 36'da yenidir.
-
maxHeight
sayı isteğe bağlı
Desteği sonlandırıldıİç sınırları veya dış sınırları kullanın.
Pencerenin maksimum yüksekliği.
-
maxWidth
sayı isteğe bağlı
Desteği sonlandırıldıİç sınırları veya dış sınırları kullanın.
Pencerenin maksimum genişliği.
-
minHeight
sayı isteğe bağlı
Desteği sonlandırıldıİç sınırları veya dış sınırları kullanın.
Pencerenin minimum yüksekliği.
-
minWidth
sayı isteğe bağlı
Desteği sonlandırıldıİç sınırları veya dış sınırları kullanın.
Pencerenin minimum genişliği.
-
outerBounds
BoundsSpecification isteğe bağlı
Pencerenin başlangıç 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.
id
belirtilmişse ve daha önce eşleşenid
öğ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 deouterBounds
için aynı sınır özelliğinin ayarlanması hatayla sonuçlanır.Bu özellik, Chrome 36'da yenidir.
-
yeniden boyutlandırılabilir
boole isteğe bağlı
True (doğru) ise pencere, kullanıcı tarafından yeniden boyutlandırılabilir. Varsayılan değer, doğru değerine ayarlanır.
-
showInShelf
boole isteğe bağlı
Chrome 54 ve sonraki sürümler 'nı inceleyin.Doğru değerine ayarlanırsa pencerenin kendi raf simgesi olur. Aksi takdirde pencere, rafta uygulamayla ilişkili diğer pencerelerle birlikte gruplandırılır. Varsayılan olarak yanlış değerine ayarlanır. showInShelf doğru değerine ayarlanırsa pencere için bir kimlik belirtmeniz gerekir.
-
singleton
boole isteğe bağlı
Desteği sonlandırıldıAynı kimliğe sahip birden fazla pencere artık desteklenmiyor.
Pencere için bir kimlik belirtirseniz varsayılan olarak pencere yalnızca aynı kimliğe sahip başka bir pencere yoksa oluşturulur. Aynı kimliğe sahip bir pencere zaten varsa bunun yerine bu pencere etkinleştirilir. Aynı kimliğe sahip birden çok pencere oluşturmak istiyorsanız bu özelliği "false" (yanlış) olarak ayarlayabilirsiniz.
-
durum
Eyalet isteğe bağlı
Pencerenin, tam ekran, ekranı kaplamış veya küçültülmüş şekilde 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 bu yana desteği sonlandırıldıTüm uygulama pencereleri "kabuk"u kullanır pencere türü
Oluşturulacak pencere türü.
-
visibleOnAllWorkspaces
boole isteğe bağlı
True (doğru) ise ve platform tarafından destekleniyorsa pencere tüm çalışma alanlarında görünür.
FrameOptions
Özellikler
-
activeColor
dize isteğe bağlı
Ayarlanmak üzere, etkin durumdayken pencerenin çerçeve renginin kullanılmasına izin verir. Çerçeve renklendirme yalnızca kare türü
chrome
ise kullanılabilir.Çerçeve renklendirme yalnızca kare türü
chrome
ise kullanılabilir.Çerçeve renklendirme, Chrome 36'da yenidir.
-
renk
dize isteğe bağlı
Çerçeve renginin ayarlanmasına olanak tanır. Çerçeve renklendirme yalnızca kare türü
chrome
ise kullanılabilir.Çerçeve renklendirme, Chrome 36'da yenidir.
-
inactiveColor
dize isteğe bağlı
Etkin değilken pencerenin çerçeve renginin etkin renkten farklı şekilde ayarlanmasına olanak tanır. Çerçeve renklendirme yalnızca kare türü
chrome
ise kullanılabilir.inactiveColor
,color
ile birlikte kullanılmalıdır.Çerçeve renklendirme, Chrome 36'da yenidir.
-
tür
dize isteğe bağlı
Kare türü:
none
veyachrome
(varsayılan olarakchrome
).none
için-webkit-app-region
CSS özelliği, uygulamanın penceresine sürüklenebilirlik özelliğini uygulamak için kullanılabilir.Bölgeleri sürüklenebilir olarak işaretlemek için
-webkit-app-region: drag
kullanılabilir. İç içe yerleştirilmiş öğelerde bu stili devre dışı bırakmak içinno-drag
kullanılabilir.
State
Bir pencerenin durumu: normal, tam ekran, büyütülmüş, küçültülmüş.
Enum
"normal"
"tam ekran"
"maximized"
"minimized"
WindowType
Oluşturulacak pencerenin 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, tüm çalışma alanlarında görünür olan pencereleri destekleyip desteklemediği.
İadeler
-
boolean
create()
chrome.app.window.create(
url: string,
options?: CreateWindowOptions,
callback?: function,
)
Pencerenin boyutu ve konumu birkaç farklı yöntemle 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, aynı özelliğin hem iç hem de dış sınırlar iç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, taşındığında veya yeniden boyutlandırıldığında pencerenin boyutunu ve konumunu hatırlamak için kullanılır. Daha sonra, aynı kimliğe sahip bir pencerenin daha sonra açılmasındaki belirtilen sınırlar yerine bu boyut ve konum kullanılır. Hatırlanan varsayılan konumdan farklı bir konumda kimliği olan bir pencere açmanız gerekirse bu pencereyi gizli olarak oluşturabilir, istediğiniz konuma taşıyabilir ve sonra gösterebilirsiniz.
Parametreler
-
url
dize
-
seçenekler
CreateWindowOptions isteğe bağlı
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(createdWindow: AppWindow) => void
-
createdWindow
-
İadeler
-
Promise<AppWindow>
Chrome 117 ve sonraki sürümler 'nı inceleyin.Vaatler yalnızca Manifest V3 ve sonraki sürümler için desteklenir. Diğer platformların geri çağırma yapması gerekir.
current()
chrome.app.window.current()
Geçerli komut dosyası bağlamı için bir AppWindow
nesnesi döndürür (ör. JavaScript "window" nesnesi). Bu, tutma yerinde başka bir sayfanın komut dosyası bağlamına da çağrılabilir. Örneğin: otherWindow.chrome.app.window.current().
İadeler
-
AppWindow | tanımsız
get()
chrome.app.window.get(
id: string,
)
Verilen kimliğe sahip bir AppWindow
alır. Belirtilen kimliğe sahip herhangi bir pencere yoksa boş döndürülür. Bu yöntem Chrome 33'te yenidir.
Parametreler
-
id
dize
İadeler
-
AppWindow | tanımsız
getAll()
chrome.app.window.getAll()
Şu anda oluşturulmuş tüm uygulama pencerelerinin dizisini alır. Bu yöntem Chrome 33'te yenidir.
İadeler
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. Bunun kapatılmakta olan pencerenin dışında bir pencereden (ör. arka plan sayfası) dinlenmesi gerektiğini unutmayın. Bunun nedeni, kapatılmakta olan pencerenin, etkinlik tetiklendiğinde yıkılma sürecinde olması ve bu nedenle, 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 olduğunda (AppWindow
veya HTML5 API'leri aracılığıyla) tetiklenir.
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 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ülme veya büyütülme durumu geri yüklendiğinde tetiklenir.
Parametreler
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:() => void