توضیحات
 از chrome.app.window API برای ایجاد ویندوز استفاده کنید. ویندوز دارای یک قاب اختیاری با نوار عنوان و کنترل اندازه است. آنها با هیچ پنجره مرورگر کروم مرتبط نیستند. برای نمایش این گزینه ها ، نمونه حالت پنجره را ببینید. 
انواع
AppWindow
خواص
- پنجره محتوا
پنجره
شیء "پنجره" جاوا اسکریپت برای فرزند ایجاد شده.
 - شناسه
رشته
شناسه ای که پنجره با آن ایجاد شده است.
 - مرزهای داخلی
موقعیت، اندازه و محدودیت های محتوای پنجره، که شامل تزئینات پنجره نمی شود. این ویژگی در کروم 36 جدید است.
 - مرزهای بیرونی
موقعیت، اندازه و محدودیت های پنجره، که شامل تزئینات پنجره، مانند نوار عنوان و قاب است. این ویژگی در کروم 36 جدید است.
 - روشن توجه
باطل
توجه خود را به پنجره جلب کنید.
تابع
clearAttentionبه نظر می رسد:() => {...} - بستن
باطل
پنجره را ببند
تابع
closeبه نظر می رسد:() => {...} - جلب توجه
باطل
توجه را به پنجره جلب کنید.
تابع
drawAttentionبه نظر می رسد:() => {...} - تمرکز کنید
باطل
پنجره را متمرکز کنید.
تابع
focusبه نظر می رسد:() => {...} - تمام صفحه
باطل
پنجره را تمام صفحه نمایش می دهد.
کاربر می تواند با فشار دادن ESC پنجره را بازیابی کند. یک برنامه میتواند با درخواست مجوز
app.window.fullscreen.overrideEscو لغو رویداد با فراخوانی .preventDefault()، در کنترلکنندههای keydown و keyup، مانند زیر از باقی ماندن حالت تمام صفحه هنگام فشار دادن ESC جلوگیری کند:window.onkeydown = window.onkeyup = function(e) { if (e.keyCode == 27 /* ESC *\/) { e.preventDefault(); } };توجه داشته باشید
window.fullscreen()باعث می شود که کل پنجره تمام صفحه شود و نیازی به ژست کاربر ندارد. API تمام صفحه HTML5 همچنین می تواند برای ورود به حالت تمام صفحه استفاده شود (برای جزئیات بیشتر به Web API ها مراجعه کنید).عملکرد
fullscreenبه نظر می رسد:() => {...} - getBounds
باطل
منسوخ شده استاز innerBounds یا outerBounds استفاده کنید.
مرزهای داخلی پنجره را به عنوان یک شی
ContentBoundsدریافت کنید.تابع
getBoundsبه نظر می رسد:() => {...}- برمی گرداند
 
 - پنهان کردن
باطل
پنجره را پنهان کنید اگر پنجره قبلاً مخفی شده باشد کاری انجام نمی دهد.
تابع
hideبه صورت زیر است:() => {...} - isAlwaysOnTop
باطل
آیا پنجره همیشه بالاست؟
تابع
isAlwaysOnTopبه نظر می رسد:() => {...}- برمی گرداند
بولی
 
 - تمام صفحه است
باطل
آیا پنجره تمام صفحه است؟ اگر پنجره تمام صفحه ایجاد شده باشد یا از طریق APIهای تمام صفحه
AppWindowیا HTML5 تمام صفحه ساخته شده باشد، این درست خواهد بود.عملکرد
isFullscreenبه شکل زیر است:() => {...}- برمی گرداند
بولی
 
 - حداکثر شده است
باطل
آیا پنجره حداکثر شده است؟
تابع
isMaximizedبه نظر می رسد:() => {...}- برمی گرداند
بولی
 
 - به حداقل رسیده است
باطل
آیا پنجره به حداقل رسیده است؟
تابع
isMinimizedبه صورت زیر است:() => {...}- برمی گرداند
بولی
 
 - به حداکثر رساندن
باطل
پنجره را به حداکثر برسانید.
تابع
maximizeبه صورت زیر است:() => {...} - به حداقل رساندن
باطل
پنجره را به حداقل برسانید.
تابع
minimizeبه صورت زیر است:() => {...} - حرکت به
باطل
از Chrome 43 منسوخ شده استاز outerBounds استفاده کنید.
پنجره را به موقعیت (
left،top) ببرید.تابع
moveToبه شکل زیر است:(left: number, top: number) => {...}
- سمت چپ
شماره
 - بالا
شماره
 
 - resizeTo
باطل
از Chrome 43 منسوخ شده استاز outerBounds استفاده کنید.
اندازه پنجره را به
widthxheightپیکسل تغییر دهید.تابع
resizeToبه شکل زیر است:(width: number, height: number) => {...}
- عرض
شماره
 - ارتفاع
شماره
 
 - بازگرداندن
باطل
بازیابی پنجره، خروج از حالت حداکثر، کمینه یا تمام صفحه.
تابع
restoreبه نظر می رسد:() => {...} - setAlwaysOnTop
باطل
تنظیم کنید که آیا پنجره باید بالای اکثر پنجره های دیگر بماند یا خیر. به اجازه
alwaysOnTopWindowsنیاز دارد.تابع
setAlwaysOnTopبه نظر می رسد:(alwaysOnTop: boolean) => {...}
- همیشه در بالا
بولی
 
 - setBounds
باطل
منسوخ شده استاز innerBounds یا outerBounds استفاده کنید.
محدوده های داخلی پنجره را تنظیم کنید.
تابع
setBoundsبه نظر می رسد:(bounds: ContentBounds) => {...}
- محدوده
 
 - setVisibleOnAllWorkspaces
باطل
تنظیم کنید که آیا پنجره در همه فضاهای کاری قابل مشاهده باشد یا خیر. (فقط برای پلتفرم هایی که از این پشتیبانی می کنند).
تابع
setVisibleOnAllWorkspacesبه شکل زیر است:(alwaysVisible: boolean) => {...}
- همیشه قابل مشاهده
بولی
 
 - نشان می دهد
باطل
پنجره را نشان دهید. اگر پنجره از قبل قابل مشاهده باشد، کاری انجام نمی دهد. اگر
focusedروی درست یا حذف شده باشد، پنجره را فوکوس کنید.تابع
showبه نظر می رسد:(focused?: boolean) => {...}
- متمرکز شده است
بولی اختیاری
 
 
Bounds
خواص
- ارتفاع
شماره
از این ویژگی می توان برای خواندن یا نوشتن ارتفاع فعلی محتوا یا پنجره استفاده کرد.
 - سمت چپ
شماره
از این ویژگی می توان برای خواندن یا نوشتن مختصات X فعلی محتوا یا پنجره استفاده کرد.
 - حداکثر ارتفاع
شماره اختیاری
از این ویژگی می توان برای خواندن یا نوشتن حداکثر ارتفاع فعلی محتوا یا پنجره استفاده کرد. مقدار
nullنشان دهنده «نامشخص» است. - حداکثر عرض
شماره اختیاری
از این ویژگی می توان برای خواندن یا نوشتن حداکثر عرض فعلی محتوا یا پنجره استفاده کرد. مقدار
nullنشان دهنده «نامشخص» است. - من ارتفاع
شماره اختیاری
از این ویژگی می توان برای خواندن یا نوشتن حداقل ارتفاع فعلی محتوا یا پنجره استفاده کرد. مقدار
nullنشان دهنده «نامشخص» است. - عرض کمتر
شماره اختیاری
از این ویژگی می توان برای خواندن یا نوشتن حداقل عرض فعلی محتوا یا پنجره استفاده کرد. مقدار
nullنشان دهنده «نامشخص» است. - بالا
شماره
از این ویژگی می توان برای خواندن یا نوشتن مختصات Y فعلی محتوا یا پنجره استفاده کرد.
 - عرض
شماره
از این ویژگی می توان برای خواندن یا نوشتن عرض فعلی محتوا یا پنجره استفاده کرد.
 - setMaximumSize
باطل
حداکثر محدودیت اندازه محتوا یا پنجره را تنظیم کنید. حداکثر عرض یا ارتفاع را می توان روی
nullتنظیم کرد تا محدودیت حذف شود. مقدارundefinedیک محدودیت را بدون تغییر باقی می گذارد.تابع
setMaximumSizeبه شکل زیر است:(maxWidth: number, maxHeight: number) => {...}
- حداکثر عرض
شماره
 - حداکثر ارتفاع
شماره
 
 - setMinimumSize
باطل
حداقل محدودیت اندازه محتوا یا پنجره را تنظیم کنید. حداقل عرض یا ارتفاع را می توان روی
nullتنظیم کرد تا محدودیت حذف شود. مقدارundefinedیک محدودیت را بدون تغییر باقی می گذارد.تابع
setMinimumSizeبه شکل زیر است:(minWidth: number, minHeight: number) => {...}
- عرض کمتر
شماره
 - من ارتفاع
شماره
 
 - setPosition
باطل
موقعیت چپ و بالای محتوا یا پنجره را تنظیم کنید.
تابع
setPositionبه شکل زیر است:(left: number, top: number) => {...}
- سمت چپ
شماره
 - بالا
شماره
 
 - setSize
باطل
عرض و ارتفاع محتوا یا پنجره را تنظیم کنید.
تابع
setSizeبه نظر می رسد:(width: number, height: number) => {...}
- عرض
شماره
 - ارتفاع
شماره
 
 
BoundsSpecification
خواص
- ارتفاع
شماره اختیاری
ارتفاع محتوا یا پنجره.
 - سمت چپ
شماره اختیاری
مختصات X محتوا یا پنجره.
 - حداکثر ارتفاع
شماره اختیاری
حداکثر ارتفاع محتوا یا پنجره.
 - حداکثر عرض
شماره اختیاری
حداکثر عرض محتوا یا پنجره.
 - من ارتفاع
شماره اختیاری
حداقل ارتفاع محتوا یا پنجره.
 - عرض کمتر
شماره اختیاری
حداقل عرض محتوا یا پنجره.
 - بالا
شماره اختیاری
مختصات Y محتوا یا پنجره.
 - عرض
شماره اختیاری
عرض محتوا یا پنجره.
 
ContentBounds
خواص
- ارتفاع
شماره اختیاری
 - سمت چپ
شماره اختیاری
 - بالا
شماره اختیاری
 - عرض
شماره اختیاری
 
CreateWindowOptions
خواص
- همیشه در بالا
بولی اختیاری
اگر درست باشد، پنجره بالای اکثر پنجره های دیگر باقی می ماند. اگر چندین پنجره از این نوع وجود داشته باشد، پنجره متمرکز فعلی در پیش زمینه خواهد بود. به اجازه
alwaysOnTopWindowsنیاز دارد. پیش فرض به نادرست.برای تغییر این ویژگی پس از ایجاد،
setAlwaysOnTop()در پنجره فراخوانی کنید. - محدوده
ContentBounds اختیاری است
منسوخ شده استاز innerBounds یا outerBounds استفاده کنید.
اندازه و موقعیت محتوا در پنجره (به استثنای نوار عنوان). اگر یک شناسه نیز مشخص شده باشد و قبلاً یک پنجره با شناسه منطبق نشان داده شده باشد، به جای آن از کران های به خاطر سپرده شده پنجره استفاده می شود.
 - متمرکز شده است
بولی اختیاری
اگر درست باشد، پنجره هنگام ایجاد فوکوس خواهد شد. پیش فرض ها به درست است.
 - قاب
رشته | FrameOptions اختیاری است
نوع قاب:
noneیاchrome(پیشفرض بهchromeاست). برایnone، از ویژگی-webkit-app-regionCSS می توان برای اعمال قابلیت کشیدن به پنجره برنامه استفاده کرد.-webkit-app-region: dragمی توان برای علامت گذاری مناطق قابل کشیدن استفاده کرد.no-dragمی توان برای غیرفعال کردن این سبک در عناصر تو در تو استفاده کرد.استفاده از
FrameOptionsدر M36 جدید است. بولی اختیاری
اگر درست باشد، پنجره در حالت مخفی ایجاد می شود. نمایش () را در پنجره فراخوانی کنید تا پس از ایجاد آن نمایش داده شود. پیش فرض به نادرست.
- نماد
رشته اختیاری
Chrome 54+آدرس آیکون پنجره زمانی که showInShelf روی true تنظیم شود، یک پنجره می تواند نماد خود را داشته باشد. URL باید یک URL محلی یا جهانی باشد.
 - شناسه
رشته اختیاری
شناسه برای شناسایی پنجره این برای به خاطر سپردن اندازه و موقعیت پنجره و بازیابی هندسه زمانی که پنجره ای با همان شناسه بعداً باز می شود استفاده می شود. اگر پنجره ای با یک شناسه داده شده ایجاد شود در حالی که پنجره دیگری با همان شناسه از قبل وجود داشته باشد، پنجره باز شده فعلی به جای ایجاد یک پنجره جدید متمرکز می شود.
 - مرزهای داخلی
BoundsSpecification اختیاری است
برای تعیین موقعیت اولیه، اندازه اولیه و محدودیت های محتوای پنجره (به استثنای تزئینات پنجره) استفاده می شود. اگر یک
idنیز مشخص شده باشد و یک پنجره باidمنطبق قبلاً نشان داده شده باشد، به جای آن از کران های به خاطر سپرده شده استفاده می شود.توجه داشته باشید که بالشتک بین مرزهای داخلی و خارجی توسط سیستم عامل تعیین می شود. بنابراین تنظیم یک ویژگی bounds برای
innerBoundsوouterBoundsمنجر به خطا می شود.این ویژگی در کروم 36 جدید است.
 - حداکثر ارتفاع
شماره اختیاری
منسوخ شده استاز innerBounds یا outerBounds استفاده کنید.
حداکثر ارتفاع پنجره
 - حداکثر عرض
شماره اختیاری
منسوخ شده استاز innerBounds یا outerBounds استفاده کنید.
حداکثر عرض پنجره
 - من ارتفاع
شماره اختیاری
منسوخ شده استاز innerBounds یا outerBounds استفاده کنید.
حداقل ارتفاع پنجره
 - عرض کمتر
شماره اختیاری
منسوخ شده استاز innerBounds یا outerBounds استفاده کنید.
حداقل عرض پنجره
 - مرزهای بیرونی
BoundsSpecification اختیاری است
برای تعیین موقعیت اولیه، اندازه اولیه و محدودیت های پنجره (از جمله تزئینات پنجره مانند نوار عنوان و قاب) استفاده می شود. اگر یک
idنیز مشخص شده باشد و یک پنجره باidمنطبق قبلاً نشان داده شده باشد، به جای آن از کران های به خاطر سپرده شده استفاده می شود.توجه داشته باشید که بالشتک بین مرزهای داخلی و خارجی توسط سیستم عامل تعیین می شود. بنابراین تنظیم یک ویژگی bounds برای
innerBoundsوouterBoundsمنجر به خطا می شود.این ویژگی در کروم 36 جدید است.
 - قابل تغییر اندازه
بولی اختیاری
اگر درست باشد، اندازه پنجره توسط کاربر قابل تغییر است. پیش فرض ها به درست است.
 - showInShelf
بولی اختیاری
Chrome 54+اگر درست باشد، پنجره نماد قفسه خود را خواهد داشت. در غیر این صورت پنجره در قفسه با سایر پنجره های مرتبط با برنامه گروه بندی می شود. پیش فرض به نادرست. اگر showInShelf روی true تنظیم شده است، باید یک شناسه برای پنجره مشخص کنید.
 - تک تن
بولی اختیاری
منسوخ شده استچندین پنجره با شناسه یکسان دیگر پشتیبانی نمی شود.
به طور پیش فرض اگر یک شناسه برای پنجره مشخص کنید، پنجره تنها در صورتی ایجاد می شود که پنجره دیگری با همان شناسه از قبل وجود نداشته باشد. اگر پنجره ای با همان شناسه از قبل وجود داشته باشد، آن پنجره به جای آن فعال می شود. اگر می خواهید چندین پنجره با شناسه یکسان ایجاد کنید، می توانید این ویژگی را روی false تنظیم کنید.
 - دولت
حالت اختیاری است
حالت اولیه پنجره که به آن اجازه می دهد از قبل تمام صفحه ایجاد شود، حداکثر یا کوچک شود. پیشفرض به «عادی».
 - نوع
WindowType اختیاری است
Chrome 45+ از Chrome 69 منسوخ شده استهمه پنجره های برنامه از نوع پنجره پوسته استفاده می کنند
نوع پنجره برای ایجاد
 - قابل مشاهده در همه فضاهای کاری
بولی اختیاری
اگر درست باشد و توسط پلتفرم پشتیبانی شود، پنجره در تمام فضاهای کاری قابل مشاهده خواهد بود.
 
FrameOptions
خواص
- فعال رنگ
رشته اختیاری
اجازه می دهد تا رنگ قاب پنجره هنگام فعال تنظیم شود. رنگ آمیزی قاب فقط در صورتی موجود است که نوع قاب
chromeباشد.رنگ آمیزی قاب فقط در صورتی موجود است که نوع قاب
chromeباشد.رنگ آمیزی قاب در کروم 36 جدید است.
 - رنگ
رشته اختیاری
اجازه می دهد تا رنگ قاب تنظیم شود. رنگ آمیزی قاب فقط در صورتی موجود است که نوع قاب
chromeباشد.رنگ آمیزی قاب در کروم 36 جدید است.
 - رنگ غیر فعال
رشته اختیاری
اجازه می دهد تا رنگ قاب پنجره در صورت غیرفعال بودن متفاوت با رنگ فعال تنظیم شود. رنگ آمیزی قاب فقط در صورتی موجود است که نوع قاب
chromeباشد.inactiveColorباید همراه باcolorاستفاده شود.رنگ آمیزی قاب در کروم 36 جدید است.
 - نوع
رشته اختیاری
نوع قاب:
noneیاchrome(پیشفرض بهchromeاست).برای
none، از ویژگی-webkit-app-regionCSS می توان برای اعمال قابلیت کشیدن به پنجره برنامه استفاده کرد.-webkit-app-region: dragمی توان برای علامت گذاری مناطق قابل کشیدن استفاده کرد.no-dragمی توان برای غیرفعال کردن این سبک در عناصر تو در تو استفاده کرد. 
State
حالت یک پنجره: معمولی، تمام صفحه، حداکثر، کوچک شده.
Enum
 "عادی"   "تمام صفحه"   "به حداکثر رساندن"   "به حداقل رسیده" 
WindowType
نوع پنجره ای که باید ایجاد شود را مشخص می کند.
Enum
 "پوسته"  "پانل"
 نوع پنجره پیش فرض 
 پنجره مدیریت شده سیستم عامل (منسوخ شده).
روش ها
canSetVisibleOnAllWorkspaces()
chrome.app.window.canSetVisibleOnAllWorkspaces(): boolean
اینکه آیا پلت فرم فعلی از قابل مشاهده بودن پنجره ها در همه فضاهای کاری پشتیبانی می کند یا خیر.
برمی گرداند
بولی
create()
chrome.app.window.create(
url: string,
options?: CreateWindowOptions,
callback?: function,
): Promise<AppWindow>
اندازه و موقعیت یک پنجره را می توان به روش های مختلف مشخص کرد. ساده ترین گزینه این است که هیچ چیزی را مشخص نکنید، در این صورت از اندازه پیش فرض و موقعیت وابسته به پلت فرم استفاده می شود.
 برای تنظیم موقعیت، اندازه و محدودیت های پنجره، از ویژگی های innerBounds یا outerBounds استفاده کنید. مرزهای داخلی شامل تزئینات پنجره نمی شود. مرزهای بیرونی شامل نوار عنوان و قاب پنجره است. توجه داشته باشید که بالشتک بین مرزهای داخلی و خارجی توسط سیستم عامل تعیین می شود. بنابراین تنظیم یک ویژگی برای هر دو مرز داخلی و خارجی یک خطا در نظر گرفته می شود (به عنوان مثال، تنظیم هر دو innerBounds.left و outerBounds.left ).
برای به خاطر سپردن خودکار موقعیت های ویندوز می توانید به آنها شناسه بدهید. اگر پنجره ای دارای شناسه باشد، از این شناسه برای به خاطر سپردن اندازه و موقعیت پنجره هر زمان که تغییر اندازه داده می شود استفاده می شود. سپس این اندازه و موقعیت به جای محدوده های مشخص شده در باز شدن بعدی پنجره ای با همان شناسه استفاده می شود. اگر نیاز به باز کردن پنجره ای با شناسه در مکانی غیر از پیش فرض به خاطر سپرده شده دارید، می توانید آن را به صورت مخفی ایجاد کنید، آن را به مکان مورد نظر منتقل کنید و سپس آن را نشان دهید.
پارامترها
- آدرس اینترنتی
رشته
 - گزینه ها
CreateWindowOptions اختیاری است
 - پاسخ به تماس
عملکرد اختیاری
پارامتر
callbackبه نظر می رسد:(createdWindow: AppWindow) => void
- ایجاد پنجره
 
 
برمی گرداند
Promise< AppWindow >
Chrome 117+Promises فقط برای Manifest V3 و نسخههای جدیدتر پشتیبانی میشود، پلتفرمهای دیگر باید از callback استفاده کنند.
current()
chrome.app.window.current(): AppWindow | undefined
 یک شی AppWindow برای زمینه اسکریپت فعلی (به عنوان مثال شی 'پنجره' جاوا اسکریپت) برمی گرداند. همچنین میتوان آن را در یک دسته به یک زمینه اسکریپت برای صفحه دیگر فراخوانی کرد، برای مثال: otherWindow.chrome.app.window.current(). 
برمی گرداند
AppWindow | تعریف نشده
get()
chrome.app.window.get(
id: string,
): AppWindow | undefined
 یک AppWindow با شناسه داده شده دریافت می کند. اگر پنجره ای با شناسه داده شده وجود نداشته باشد null برگردانده می شود. این روش در کروم 33 جدید است. 
پارامترها
- شناسه
رشته
 
برمی گرداند
AppWindow | تعریف نشده
getAll()
chrome.app.window.getAll(): AppWindow[]
آرایه ای از تمام پنجره های برنامه ایجاد شده در حال حاضر را دریافت می کند. این روش در کروم 33 جدید است.
برمی گرداند
پنجره برنامه []
رویدادها
onBoundsChanged
chrome.app.window.onBoundsChanged.addListener(
callback: function,
)
با تغییر اندازه پنجره فعال می شود.
پارامترها
- پاسخ به تماس
تابع
پارامتر
callbackبه نظر می رسد:() => void
 
onClosed
chrome.app.window.onClosed.addListener(
callback: function,
)
وقتی پنجره بسته است شلیک می شود. توجه داشته باشید، این باید از پنجره ای غیر از پنجره بسته شده، به عنوان مثال از صفحه پس زمینه گوش شود. این به این دلیل است که پنجره در حال بسته شدن در هنگام فعال شدن رویداد در حال از بین رفتن است، که به این معنی است که همه APIهای موجود در زمینه اسکریپت پنجره کاربردی نخواهند بود.
پارامترها
- پاسخ به تماس
تابع
پارامتر
callbackبه نظر می رسد:() => void
 
onFullscreened
chrome.app.window.onFullscreened.addListener(
callback: function,
)
 هنگامی که پنجره تمام صفحه است (از طریق AppWindow یا APIهای HTML5) فعال می شود. 
پارامترها
- پاسخ به تماس
تابع
پارامتر
callbackبه نظر می رسد:() => void
 
onMaximized
chrome.app.window.onMaximized.addListener(
callback: function,
)
هنگامی که پنجره به حداکثر می رسد روشن می شود.
پارامترها
- پاسخ به تماس
تابع
پارامتر
callbackبه نظر می رسد:() => void
 
onMinimized
chrome.app.window.onMinimized.addListener(
callback: function,
)
هنگامی که پنجره به حداقل برسد، روشن می شود.
پارامترها
- پاسخ به تماس
تابع
پارامتر
callbackبه نظر می رسد:() => void
 
onRestored
chrome.app.window.onRestored.addListener(
callback: function,
)
هنگامی که پنجره از حداقل یا حداکثر شدن بازیابی می شود، روشن می شود.
پارامترها
- پاسخ به تماس
تابع
پارامتر
callbackبه نظر می رسد:() => void