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:() => {...}
-
returns
-
-
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 kısım
sayı
-
Üst kısım
sayı
-
-
resizeTo
void
Chrome 43 sürümünden itibaren kullanımdan kaldırıldıouterBounds kullanın.
Pencerenin boyutunu
width
xheight
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) => {...}
-
sınırlar
-
-
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 kısım
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. -
Üst kısım
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 kısım
sayı
-
Üst kısım
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 kısım
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.
-
Üst kısım
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 kısım
numara isteğe bağlı
-
Üst kısım
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
veyachrome
(varsayılan olarakchrome
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. -
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ümlerPencere 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 birid
öğ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ı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 birid
öğ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ı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ümlerDoğ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
veyachrome
(varsayılan olarakchrome
).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
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()
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
-
createdWindow
-
İlerlemeler
-
Promise<AppWindow>
Chrome 117 ve sonraki sürümlerVaatler 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
-
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 null döndürülür. Bu yöntem Chrome 33'te yeni kullanıma sunulmuştur.
Parametreler
-
id
dize
İlerlemeler
-
AppWindow | tanımsız
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