Firefox Addons SDK API - event aktywne okno i wykrywanie aktywej karty


(look997) #1

Pozornie proste, jednak:

Mam otwarte okno Firefoksa z 2 kartami.

Nad oknem Firefoksa mam otwarte mniejsze okno, nie zasłaniające tylko paska kart.

 

Chcę, aby przy aktywowaniu okna Firefoksa, skrypt z dodatku sprawdził czy aktywną kartą jest karta1 i wtedy wykonał pewną funkcję.

 

Problem występuje, gdy przy takim układzie okien jak napisałem wyżej, klikam bezpośrednio na karta2.

Teoretycznie skrypt dodatku powinien stwierdzić, że akrywną kartą przy aktywowaniu okna jest karta2.

Jednak w praktyce, Firefox najpier wykrywa aktywną kartę "karta1", a dopiero po aktywowaniu okna - aktywuje kartę "karta2".

 

Próbowałem różnych sposobów i żadne nie zadziałały

  • window.on("activate"(...),
  • onfocus w karta1,
  • onclick i wykrcie co się kryje pod klikniętą kartą - nie wystarczy, jeśli otwieram okno Firefoksa w inny sposób, niż kliknięcie bezpośrednio w kartę, więc nie jest to żadne rozwiązanie,
  • Jedynie opóźnienie wykonania sprawdzenia aktywnej karty po aktywowaniu okna wydaje się jakimś rozwiązaniem, jednak powoduje to niepotrzebne opóźnienie i nie zasze zadziała, bo zdarza się, że Firefox trochę zamuli, zanim się faktycznie wyświetli okno.

 

To uniemożliwia wykrycie faktycznie aktywnej karty.

 

Mam nadzieję, że rozwiązanie jest banalne a tylko ja mam z tym problem.

 

Jak obejść ten problem w API dodatków Firefoksa?

 

 

 

Czy pytanie jest zrozumiałe??