chrome.pageAction

Açıklama

chrome.pageAction API'sini kullanarak adres çubuğunun sağındaki ana Google Chrome araç çubuğuna simgeler yerleştirin. Sayfa işlemleri, geçerli sayfada yapılabilecek ancak tüm sayfalar için geçerli olmayan işlemleri ifade eder. Sayfa işlemleri, etkin olmadığında gri görünür.

Kullanılabilirlik

≤ MV2

Bazı örnekler:

  • Bu sayfanın RSS özet akışına abone olma
  • Bu sayfanın fotoğraflarından slayt gösterisi oluşturma

Aşağıdaki ekran görüntüsünde yer alan RSS simgesi, mevcut sayfanın RSS özet akışına abone olmanızı sağlayan bir sayfa işlemini temsil eder.

Gizli sayfa işlemleri gri renkte görünür. Örneğin, mevcut sayfanın feed'ine abone olamayacağınız için aşağıdaki RSS feed'i gri renkte gösterilir:

Kullanıcıların uzantınızla her zaman etkileşim kurabilmesi için lütfen bunun yerine tarayıcı işlemi kullanmayı düşünün.

Manifest

Sayfa işleminizi uzantı manifestinde şu şekilde kaydedin:

{
  "name": "My extension",
  ...
  "page_action": {
    "default_icon": {                    // optional
      "16": "images/icon16.png",           // optional
      "24": "images/icon24.png",           // optional
      "32": "images/icon32.png"            // optional
    },
    "default_title": "Google Mail",      // optional; shown in tooltip
    "default_popup": "popup.html"        // optional
  },
  ...
}

1,5x veya 1,2x gibi daha az yaygın ölçek faktörlerine sahip cihazlar giderek yaygınlaştığından simgeleriniz için birden fazla boyut sağlamanız önerilir. Chrome, en yakın olanı seçer ve 16 dip'lik alanı dolduracak şekilde ölçeklendirir. Bu sayede, simge görüntüleme boyutu değiştiğinde farklı simgeler sağlamak için başka bir işlem yapmanız gerekmez. Ancak boyut farkı çok büyükse bu ölçeklendirme, simgenin ayrıntı kaybetmesine veya bulanık görünmesine neden olabilir.

Varsayılan simgeyi kaydetmek için eski söz dizimi hâlâ desteklenmektedir:

{
  "name": "My extension",
  ...
  "page_action": {
    ...
    "default_icon": "images/icon32.png"  // optional
    // equivalent to "default_icon": { "32": "images/icon32.png" }
  },
  ...
}

Kullanıcı arayüzünün bölümleri

Tarayıcı işlemlerine benzer şekilde, sayfa işlemlerinde simge, ipucu ve pop-up olabilir ancak rozet olamaz. Ayrıca, sayfa işlemleri devre dışı bırakılabilir. Simgeler, ipuçları ve pop-up'lar hakkında bilgi edinmek için tarayıcı işlemi kullanıcı arayüzü ile ilgili makaleyi okuyabilirsiniz.

pageAction.show ve pageAction.hide yöntemlerini kullanarak sırasıyla bir sayfa işleminin görünmesini ve devre dışı bırakılmasını sağlarsınız. Varsayılan olarak, sayfa işlemleri gri renkte görünür. Gösterdiğinizde simgenin hangi sekmede görüneceğini belirtirsiniz. Sekme kapatılana veya farklı bir URL görüntülemeye başlayana kadar (ör. kullanıcı bir bağlantıyı tıkladığında) simge görünür kalır.

İpuçları

En iyi görsel etki için aşağıdaki yönergeleri uygulayın:

  • Yalnızca birkaç sayfa için anlamlı olan özelliklerde sayfa işlemlerini kullanın.
  • Çoğu sayfa için mantıklı olan özelliklerde sayfa işlemleri kullanmayın. Bunun yerine tarayıcı işlemlerini kullanın.
  • Simgenizi sürekli olarak canlandırmayın. Bu sadece can sıkıcı.

Türler

ImageDataType

Bir resmin piksel verileri. ImageData nesnesi olmalıdır (örneğin, canvas öğesinden).

Tür

ImageData

TabDetails

Chrome 88 ve sonraki sürümler

Özellikler

  • tabId

    number isteğe bağlı

    Durumu sorgulanacak sekmenin kimliği. Sekme belirtilmezse sekmeye özgü olmayan durum döndürülür.

Yöntemler

getPopup()

Promise
chrome.pageAction.getPopup(
  details: TabDetails,
  callback?: function,
)
: Promise<string>

Bu sayfa işlemi için pop-up olarak ayarlanan HTML dokümanını alır.

Parametreler

  • ayrıntılar
  • callback

    işlev isteğe bağlı

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

    (result: string) => void

    • sonuç

      dize

İadeler

  • Promise<string>

    Chrome 101+

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

getTitle()

Promise
chrome.pageAction.getTitle(
  details: TabDetails,
  callback?: function,
)
: Promise<string>

Sayfa işleminin başlığını alır.

Parametreler

  • ayrıntılar
  • callback

    işlev isteğe bağlı

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

    (result: string) => void

    • sonuç

      dize

İadeler

  • Promise<string>

    Chrome 101+

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

hide()

Promise
chrome.pageAction.hide(
  tabId: number,
  callback?: function,
)
: Promise<void>

Sayfa işlemini gizler. Gizlenen sayfa işlemleri, Chrome araç çubuğunda görünmeye devam eder ancak gri renkte gösterilir.

Parametreler

  • tabId

    sayı

    Sayfa işlemini değiştirmek istediğiniz sekmenin kimliği.

  • callback

    işlev isteğe bağlı

    Chrome 67 veya daha yeni bir sürüm

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

    () => void

İadeler

  • Promise<void>

    Chrome 101+

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

setIcon()

Promise
chrome.pageAction.setIcon(
  details: object,
  callback?: function,
)
: Promise<void>

Sayfa işleminin simgesini ayarlar. Simge, bir resim dosyasının yolu, bir tuval öğesinden alınan piksel verileri veya bu ikisinden birinin sözlüğü olarak belirtilebilir. path veya imageData özelliği belirtilmelidir.

Parametreler

  • ayrıntılar

    nesne

    • iconIndex

      number isteğe bağlı

      Kullanımdan kaldırıldı. Bu bağımsız değişken yoksayılır.

    • imageData

      ImageData | object isteğe bağlı

      ImageData nesnesi veya ayarlanacak simgeyi temsil eden bir sözlük {size -> ImageData}. Simge sözlük olarak belirtilmişse kullanılacak gerçek resim, ekranın piksel yoğunluğuna göre seçilir. Bir ekran alanı birimine sığan görüntü piksellerinin sayısı scale ise scale * n boyutundaki görüntü seçilir. Burada n, kullanıcı arayüzündeki simgenin boyutudur. En az bir resim belirtilmelidir. "details.imageData = foo" ifadesinin "details.imageData = {'16': foo}" ifadesine eşdeğer olduğunu unutmayın.

    • yol

      dize | nesne isteğe bağlı

      Ayarlanacak simgeye işaret eden göreli bir resim yolu veya {size -> relative image path} sözlüğü. Simge sözlük olarak belirtilmişse kullanılacak gerçek resim, ekranın piksel yoğunluğuna göre seçilir. Bir ekran alanı birimine sığan görüntü piksellerinin sayısı scale ise scale * n boyutundaki görüntü seçilir. Burada n, kullanıcı arayüzündeki simgenin boyutudur. En az bir resim belirtilmelidir. "details.path = foo" ifadesinin "details.path = {'16': foo}" ifadesine eşdeğer olduğunu unutmayın.

    • tabId

      sayı

      Sayfa işlemini değiştirmek istediğiniz sekmenin kimliği.

  • callback

    işlev isteğe bağlı

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

    () => void

İadeler

  • Promise<void>

    Chrome 101+

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

setPopup()

Promise
chrome.pageAction.setPopup(
  details: object,
  callback?: function,
)
: Promise<void>

Kullanıcı sayfa işleminin simgesini tıkladığında açılacak HTML dokümanını pop-up olarak ayarlar.

Parametreler

  • ayrıntılar

    nesne

    • pop-up

      dize

      Pop-up'ta gösterilecek HTML dosyasının göreli yolu. Boş dize ('') olarak ayarlanırsa pop-up gösterilmez.

    • tabId

      sayı

      Sayfa işlemini değiştirmek istediğiniz sekmenin kimliği.

  • callback

    işlev isteğe bağlı

    Chrome 67 veya daha yeni bir sürüm

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

    () => void

İadeler

  • Promise<void>

    Chrome 101+

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

setTitle()

Promise
chrome.pageAction.setTitle(
  details: object,
  callback?: function,
)
: Promise<void>

Sayfa işleminin başlığını ayarlar. Bu, sayfa işlemi üzerinde bir ipucu olarak gösterilir.

Parametreler

  • ayrıntılar

    nesne

    • tabId

      sayı

      Sayfa işlemini değiştirmek istediğiniz sekmenin kimliği.

    • title

      dize

      İpucu dizesi.

  • callback

    işlev isteğe bağlı

    Chrome 67 veya daha yeni bir sürüm

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

    () => void

İadeler

  • Promise<void>

    Chrome 101+

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

show()

Promise
chrome.pageAction.show(
  tabId: number,
  callback?: function,
)
: Promise<void>

Sayfa işlemini gösterir. Sayfa işlemi, sekme her seçildiğinde gösterilir.

Parametreler

  • tabId

    sayı

    Sayfa işlemini değiştirmek istediğiniz sekmenin kimliği.

  • callback

    işlev isteğe bağlı

    Chrome 67 veya daha yeni bir sürüm

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

    () => void

İadeler

  • Promise<void>

    Chrome 101+

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

Etkinlikler

onClicked

chrome.pageAction.onClicked.addListener(
  callback: function,
)

Bir sayfa işlemi simgesi tıklandığında tetiklenir. Sayfa işleminde pop-up varsa bu etkinlik tetiklenmez.

Parametreler

  • callback

    işlev

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

    (tab: tabs.Tab) => void