Deskripsi
Gunakan chrome.app.window API untuk membuat jendela. Jendela memiliki frame opsional dengan panel judul dan kontrol ukuran. Cookie ini tidak dikaitkan dengan jendela browser Chrome mana pun. Lihat Contoh Status Jendela untuk melihat demonstrasi opsi ini.
Jenis
AppWindow
Properti
- 
    contentWindowJendela Objek 'window' JavaScript untuk anak yang dibuat. 
- 
    idstring ID yang digunakan untuk membuat jendela. 
- 
    innerBoundsPosisi, ukuran, dan batasan konten jendela, yang tidak mencakup dekorasi jendela. Properti ini baru di Chrome 36. 
- 
    outerBoundsPosisi, ukuran, dan batasan jendela, yang mencakup dekorasi jendela, seperti kolom judul dan frame. Properti ini baru di Chrome 36. 
- 
    clearAttentionvoid Perhatian yang jelas pada jendela. Fungsi clearAttentionakan terlihat seperti:() => {...}
- 
    tutupvoid Tutup jendela. Fungsi closeakan terlihat seperti:() => {...}
- 
    drawAttentionvoid Tarik perhatian ke jendela. Fungsi drawAttentionakan terlihat seperti:() => {...}
- 
    fokusvoid Fokuskan jendela. Fungsi focusakan terlihat seperti:() => {...}
- 
    layar penuhvoid Membuat jendela menjadi layar penuh. Pengguna akan dapat memulihkan jendela dengan menekan ESC. Aplikasi dapat mencegah keluar dari status layar penuh saat ESC ditekan dengan meminta izin app.window.fullscreen.overrideEscdan membatalkan peristiwa dengan memanggil .preventDefault(), di handler keydown dan keyup, seperti ini:window.onkeydown = window.onkeyup = function(e) { if (e.keyCode == 27 /* ESC *\/) { e.preventDefault(); } };Catatan window.fullscreen()akan menyebabkan seluruh jendela menjadi layar penuh dan tidak memerlukan gestur pengguna. HTML5 fullscreen API juga dapat digunakan untuk memasuki mode layar penuh (lihat Web API untuk mengetahui detail selengkapnya).Fungsi fullscreenakan terlihat seperti:() => {...}
- 
    getBoundsvoid Tidak digunakan lagiGunakan innerBounds atau outerBounds. Mendapatkan batas dalam jendela sebagai objek ContentBounds.Fungsi getBoundsakan terlihat seperti:() => {...}- 
            return
 
- 
            
- 
    sembunyikanvoid Sembunyikan jendela. Tidak melakukan apa pun jika jendela sudah disembunyikan. Fungsi hideakan terlihat seperti:() => {...}
- 
    isAlwaysOnTopvoid Apakah jendela selalu berada di atas? Fungsi isAlwaysOnTopakan terlihat seperti:() => {...}- 
            returnboolean 
 
- 
            
- 
    isFullscreenvoid Apakah jendela dalam layar penuh? Nilai ini akan benar jika jendela telah dibuat dalam layar penuh atau dibuat dalam layar penuh melalui AppWindowatau API layar penuh HTML5.Fungsi isFullscreenakan terlihat seperti:() => {...}- 
            returnboolean 
 
- 
            
- 
    isMaximizedvoid Apakah jendela dimaksimalkan? Fungsi isMaximizedakan terlihat seperti:() => {...}- 
            returnboolean 
 
- 
            
- 
    isMinimizedvoid Apakah jendela diminimalkan? Fungsi isMinimizedakan terlihat seperti:() => {...}- 
            returnboolean 
 
- 
            
- 
    memaksimalkanvoid Maksimalkan jendela. Fungsi maximizeakan terlihat seperti:() => {...}
- 
    meminimalkanvoid Minimalkan jendela. Fungsi minimizeakan terlihat seperti:() => {...}
- 
    moveTovoid Tidak digunakan lagi sejak Chrome 43Gunakan outerBounds. Pindahkan jendela ke posisi ( left,top).Fungsi moveToakan terlihat seperti:(left: number, top: number) => {...} - 
    kiriangka 
- 
    atasangka 
 
- 
    
- 
    resizeTovoid Tidak digunakan lagi sejak Chrome 43Gunakan outerBounds. Ubah ukuran jendela menjadi widthxheightpiksel.Fungsi resizeToakan terlihat seperti:(width: number, height: number) => {...} - 
    lebarangka 
- 
    tinggiangka 
 
- 
    
- 
    pulihkanvoid Memulihkan jendela, keluar dari status dimaksimalkan, diperkecil, atau layar penuh. Fungsi restoreakan terlihat seperti:() => {...}
- 
    setAlwaysOnTopvoid Menetapkan apakah jendela harus tetap berada di atas sebagian besar jendela lainnya. Memerlukan izin alwaysOnTopWindows.Fungsi setAlwaysOnTopakan terlihat seperti:(alwaysOnTop: boolean) => {...} - 
    alwaysOnTopboolean 
 
- 
    
- 
    setBoundsvoid Tidak digunakan lagiGunakan innerBounds atau outerBounds. Menetapkan batas dalam jendela. Fungsi setBoundsakan terlihat seperti:(bounds: ContentBounds) => {...} - 
    batas
 
- 
    
- 
    setVisibleOnAllWorkspacesvoid Menetapkan apakah jendela terlihat di semua ruang kerja. (Hanya untuk platform yang mendukungnya). Fungsi setVisibleOnAllWorkspacesakan terlihat seperti:(alwaysVisible: boolean) => {...} - 
    alwaysVisibleboolean 
 
- 
    
- 
    tunjukkanvoid Tampilkan jendela. Tidak melakukan apa pun jika jendela sudah terlihat. Fokuskan jendela jika focuseddisetel ke benar (true) atau dihilangkan.Fungsi showakan terlihat seperti:(focused?: boolean) => {...} - 
    fokusboolean opsional 
 
- 
    
Bounds
Properti
- 
    tinggiangka Properti ini dapat digunakan untuk membaca atau menulis tinggi konten atau jendela saat ini. 
- 
    kiriangka Properti ini dapat digunakan untuk membaca atau menulis koordinat X konten atau jendela saat ini. 
- 
    maxHeightnomor opsional Properti ini dapat digunakan untuk membaca atau menulis tinggi maksimum konten atau jendela saat ini. Nilai nullmenunjukkan 'tidak ditentukan'.
- 
    maxWidthnomor opsional Properti ini dapat digunakan untuk membaca atau menulis lebar maksimum konten atau jendela saat ini. Nilai nullmenunjukkan 'tidak ditentukan'.
- 
    minHeightnomor opsional Properti ini dapat digunakan untuk membaca atau menulis tinggi minimum konten atau jendela saat ini. Nilai nullmenunjukkan 'tidak ditentukan'.
- 
    minWidthnomor opsional Properti ini dapat digunakan untuk membaca atau menulis lebar minimum konten atau jendela saat ini. Nilai nullmenunjukkan 'tidak ditentukan'.
- 
    atasangka Properti ini dapat digunakan untuk membaca atau menulis koordinat Y konten atau jendela saat ini. 
- 
    lebarangka Properti ini dapat digunakan untuk membaca atau menulis lebar konten atau jendela saat ini. 
- 
    setMaximumSizevoid Menetapkan batasan ukuran maksimum konten atau jendela. Lebar atau tinggi maksimum dapat disetel ke nulluntuk menghapus batasan. Nilaiundefinedtidak akan mengubah batasan.Fungsi setMaximumSizeakan terlihat seperti:(maxWidth: number, maxHeight: number) => {...} - 
    maxWidthangka 
- 
    maxHeightangka 
 
- 
    
- 
    setMinimumSizevoid Menetapkan batasan ukuran minimum konten atau jendela. Lebar atau tinggi minimum dapat disetel ke nulluntuk menghapus batasan. Nilaiundefinedtidak akan mengubah batasan.Fungsi setMinimumSizeakan terlihat seperti:(minWidth: number, minHeight: number) => {...} - 
    minWidthangka 
- 
    minHeightangka 
 
- 
    
- 
    setPositionvoid Menetapkan posisi kiri dan atas konten atau jendela. Fungsi setPositionakan terlihat seperti:(left: number, top: number) => {...} - 
    kiriangka 
- 
    atasangka 
 
- 
    
- 
    setSizevoid Menetapkan lebar dan tinggi konten atau jendela. Fungsi setSizeakan terlihat seperti:(width: number, height: number) => {...} - 
    lebarangka 
- 
    tinggiangka 
 
- 
    
BoundsSpecification
Properti
- 
    tingginomor opsional Tinggi konten atau jendela. 
- 
    kirinomor opsional Koordinat X konten atau jendela. 
- 
    maxHeightnomor opsional Tinggi maksimum konten atau jendela. 
- 
    maxWidthnomor opsional Lebar maksimum konten atau jendela. 
- 
    minHeightnomor opsional Tinggi minimum konten atau jendela. 
- 
    minWidthnomor opsional Lebar minimum konten atau jendela. 
- 
    atasnomor opsional Koordinat Y konten atau jendela. 
- 
    lebarnomor opsional Lebar konten atau jendela. 
ContentBounds
Properti
- 
    tingginomor opsional 
- 
    kirinomor opsional 
- 
    atasnomor opsional 
- 
    lebarnomor opsional 
CreateWindowOptions
Properti
- 
    alwaysOnTopboolean opsional Jika benar (true), jendela akan tetap berada di atas sebagian besar jendela lainnya. Jika ada beberapa jendela semacam ini, jendela yang saat ini difokuskan akan berada di latar depan. Memerlukan izin alwaysOnTopWindows. Nilai defaultnya adalah false (salah).Panggil setAlwaysOnTop()di jendela untuk mengubah properti ini setelah dibuat.
- 
    batasContentBounds opsional Tidak digunakan lagiGunakan innerBounds atau outerBounds. Ukuran dan posisi konten di jendela (tidak termasuk titlebar). Jika ID juga ditentukan dan jendela dengan ID yang cocok telah ditampilkan sebelumnya, batas jendela yang diingat akan digunakan. 
- 
    fokusboolean opsional Jika benar, jendela akan difokuskan saat dibuat. Nilai defaultnya adalah true (benar). 
- 
    bingkaistring | FrameOptions opsional Jenis frame: noneatauchrome(defaultnyachrome). Untuknone, properti CSS-webkit-app-regiondapat digunakan untuk menerapkan kemampuan penarikan ke jendela aplikasi.-webkit-app-region: dragdapat digunakan untuk menandai wilayah yang dapat ditarik.no-dragdapat digunakan untuk menonaktifkan gaya ini pada elemen bertingkat.Penggunaan FrameOptionsbaru di M36.
- 
    boolean opsional Jika benar, jendela akan dibuat dalam keadaan tersembunyi. Panggil show() di jendela untuk menampilkannya setelah dibuat. Nilai defaultnya adalah false (salah). 
- 
    ikonstring opsional Chrome 54+URL ikon jendela. Jendela dapat memiliki ikonnya sendiri jika showInShelf disetel ke benar (true). URL harus berupa URL global atau URL lokal ekstensi. 
- 
    idstring opsional ID untuk mengidentifikasi jendela. ID ini akan digunakan untuk mengingat ukuran dan posisi jendela serta memulihkan geometri tersebut saat jendela dengan ID yang sama dibuka nanti. Jika jendela dengan ID tertentu dibuat saat jendela lain dengan ID yang sama sudah ada, jendela yang saat ini terbuka akan difokuskan, bukan membuat jendela baru. 
- 
    innerBoundsBoundsSpecification opsional Digunakan untuk menentukan posisi awal, ukuran awal, dan batasan konten jendela (tidak termasuk dekorasi jendela). Jika idjuga ditentukan dan jendela denganidyang cocok telah ditampilkan sebelumnya, batas yang diingat akan digunakan.Perhatikan bahwa padding antara batas dalam dan luar ditentukan oleh OS. Oleh karena itu, menetapkan properti batas yang sama untuk innerBoundsdanouterBoundsakan menghasilkan error.Properti ini baru di Chrome 36. 
- 
    maxHeightnomor opsional Tidak digunakan lagiGunakan innerBounds atau outerBounds. Tinggi maksimum jendela. 
- 
    maxWidthnomor opsional Tidak digunakan lagiGunakan innerBounds atau outerBounds. Lebar maksimum jendela. 
- 
    minHeightnomor opsional Tidak digunakan lagiGunakan innerBounds atau outerBounds. Tinggi minimum jendela. 
- 
    minWidthnomor opsional Tidak digunakan lagiGunakan innerBounds atau outerBounds. Lebar minimum jendela. 
- 
    outerBoundsBoundsSpecification opsional Digunakan untuk menentukan posisi awal, ukuran awal, dan batasan jendela (termasuk dekorasi jendela seperti kolom judul dan frame). Jika idjuga ditentukan dan jendela denganidyang cocok telah ditampilkan sebelumnya, batas yang diingat akan digunakan.Perhatikan bahwa padding antara batas dalam dan luar ditentukan oleh OS. Oleh karena itu, menetapkan properti batas yang sama untuk innerBoundsdanouterBoundsakan menghasilkan error.Properti ini baru di Chrome 36. 
- 
    resizableboolean opsional Jika benar, jendela dapat diubah ukurannya oleh pengguna. Nilai defaultnya adalah true (benar). 
- 
    showInShelfboolean opsional Chrome 54+Jika benar (true), jendela akan memiliki ikon raknya sendiri. Jika tidak, jendela akan dikelompokkan di panel dengan jendela lain yang terkait dengan aplikasi. Nilai defaultnya adalah salah (false). Jika showInShelf disetel ke benar (true), Anda harus menentukan ID untuk jendela. 
- 
    singletonboolean opsional Tidak digunakan lagiBeberapa jendela dengan ID yang sama tidak lagi didukung. Secara default, jika Anda menentukan ID untuk jendela, jendela hanya akan dibuat jika jendela lain dengan ID yang sama belum ada. Jika jendela dengan ID yang sama sudah ada, jendela tersebut akan diaktifkan. Jika ingin membuat beberapa jendela dengan ID yang sama, Anda dapat menyetel properti ini ke false. 
- 
    dengan status tersembunyi akhirNegara bagian opsional Status awal jendela, yang memungkinkan jendela dibuat dalam layar penuh, dimaksimalkan, atau diminimalkan. Nilai defaultnya adalah 'normal'. 
- 
    jenisWindowType opsional Chrome 45+ Tidak digunakan lagi sejak Chrome 69Semua jendela aplikasi menggunakan jenis jendela 'shell' Jenis jendela yang akan dibuat. 
- 
    visibleOnAllWorkspacesboolean opsional Jika benar, dan didukung oleh platform, jendela akan terlihat di semua ruang kerja. 
FrameOptions
Properti
- 
    activeColorstring opsional Memungkinkan warna bingkai jendela saat aktif ditetapkan. Pewarnaan bingkai hanya tersedia jika jenis bingkai adalah chrome.Pewarnaan bingkai hanya tersedia jika jenis bingkai adalah chrome.Pewarnaan frame baru di Chrome 36. 
- 
    warnastring opsional Memungkinkan warna frame ditetapkan. Pewarnaan bingkai hanya tersedia jika jenis bingkai adalah chrome.Pewarnaan frame baru di Chrome 36. 
- 
    inactiveColorstring opsional Memungkinkan warna bingkai jendela saat tidak aktif disetel berbeda dengan warna aktif. Pewarnaan bingkai hanya tersedia jika jenis bingkai adalah chrome.inactiveColorharus digunakan bersama dengancolor.Pewarnaan frame baru di Chrome 36. 
- 
    jenisstring opsional Jenis frame: noneatauchrome(defaultnyachrome).Untuk none, properti CSS-webkit-app-regiondapat digunakan untuk menerapkan kemampuan ditarik ke jendela aplikasi.-webkit-app-region: dragdapat digunakan untuk menandai wilayah yang dapat ditarik.no-dragdapat digunakan untuk menonaktifkan gaya ini pada elemen bertingkat.
State
Status jendela: normal, layar penuh, dimaksimalkan, diminimalkan.
Enum
"normal" 
 
"fullscreen" 
 
"dimaksimalkan" 
 
"diminimalkan" 
 
WindowType
Menentukan jenis jendela yang akan dibuat.
Enum
"shell" 
 Jenis jendela default.
"panel" 
 Jendela yang dikelola OS (Tidak digunakan lagi).
Metode
canSetVisibleOnAllWorkspaces()
chrome.app.window.canSetVisibleOnAllWorkspaces(): boolean
Apakah platform saat ini mendukung jendela yang terlihat di semua ruang kerja.
Hasil
- 
            boolean 
create()
chrome.app.window.create(
url: string,
options?: CreateWindowOptions,
callback?: function,
): Promise<AppWindow>
Ukuran dan posisi jendela dapat ditentukan dengan berbagai cara. Opsi paling sederhana adalah tidak menentukan apa pun, yang dalam hal ini ukuran default dan posisi yang bergantung pada platform akan digunakan.
Untuk menetapkan posisi, ukuran, dan batasan jendela, gunakan properti innerBounds atau outerBounds. Batas dalam tidak menyertakan dekorasi jendela. Batas luar mencakup frame dan panel judul jendela. Perhatikan bahwa padding antara batas dalam dan luar ditentukan oleh OS. Oleh karena itu, menyetel properti yang sama untuk batas dalam dan luar dianggap sebagai error (misalnya, menyetel innerBounds.left dan outerBounds.left).
Untuk mengingat posisi jendela secara otomatis, Anda dapat memberikan ID ke jendela tersebut. Jika jendela memiliki ID, ID ini digunakan untuk mengingat ukuran dan posisi jendela setiap kali jendela dipindahkan atau diubah ukurannya. Ukuran dan posisi ini kemudian digunakan, bukan batas yang ditentukan pada pembukaan jendela berikutnya dengan ID yang sama. Jika Anda perlu membuka jendela dengan ID di lokasi selain default yang diingat, Anda dapat membuatnya tersembunyi, memindahkannya ke lokasi yang diinginkan, lalu menampilkannya.
Parameter
- 
    urlstring 
- 
    opsiCreateWindowOptions opsional 
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:(createdWindow: AppWindow) => void - 
    createdWindow
 
- 
    
Hasil
- 
            Promise<AppWindow> Chrome 117+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
current()
chrome.app.window.current(): AppWindow | undefined
Menampilkan objek AppWindow untuk konteks skrip saat ini (yaitu objek 'window' JavaScript). Hal ini juga dapat dipanggil pada handle ke konteks skrip untuk halaman lain, misalnya: otherWindow.chrome.app.window.current().
Hasil
- 
            AppWindow | undefined 
get()
chrome.app.window.get(
id: string,
): AppWindow | undefined
Mendapatkan AppWindow dengan ID yang ditentukan. Jika tidak ada jendela dengan ID yang diberikan, null akan ditampilkan. Metode ini baru di Chrome 33.
Parameter
- 
    idstring 
Hasil
- 
            AppWindow | undefined 
getAll()
chrome.app.window.getAll(): AppWindow[]
Mendapatkan array dari semua jendela aplikasi yang saat ini dibuat. Metode ini baru di Chrome 33.
Hasil
Acara
onBoundsChanged
chrome.app.window.onBoundsChanged.addListener(
callback: function,
)
Diaktifkan saat jendela diubah ukurannya.
Parameter
- 
    callbackfungsi Parameter callbackterlihat seperti:() => void 
onClosed
chrome.app.window.onClosed.addListener(
callback: function,
)
Diaktifkan saat jendela ditutup. Perhatikan, peristiwa ini harus didengarkan dari jendela selain jendela yang ditutup, misalnya dari halaman latar belakang. Hal ini karena jendela yang ditutup akan dalam proses penutupan saat peristiwa dipicu, yang berarti tidak semua API dalam konteks skrip jendela akan berfungsi.
Parameter
- 
    callbackfungsi Parameter callbackterlihat seperti:() => void 
onFullscreened
chrome.app.window.onFullscreened.addListener(
callback: function,
)
Diaktifkan saat jendela ditampilkan dalam layar penuh (baik melalui API AppWindow maupun HTML5).
Parameter
- 
    callbackfungsi Parameter callbackterlihat seperti:() => void 
onMaximized
chrome.app.window.onMaximized.addListener(
callback: function,
)
Diaktifkan saat jendela dimaksimalkan.
Parameter
- 
    callbackfungsi Parameter callbackterlihat seperti:() => void 
onMinimized
chrome.app.window.onMinimized.addListener(
callback: function,
)
Diaktifkan saat jendela diminimalkan.
Parameter
- 
    callbackfungsi Parameter callbackterlihat seperti:() => void 
onRestored
chrome.app.window.onRestored.addListener(
callback: function,
)
Diaktifkan saat jendela dipulihkan dari status diminimalkan atau dimaksimalkan.
Parameter
- 
    callbackfungsi Parameter callbackterlihat seperti:() => void