Hallo zusammen.
hab eben festgestellt, dass in der _FFTabAdd ein bug ist.
wenn man mehrere tabs mit ner schleife aufruft und diese nicht aktiv sein sollen passiert folgendes:
Func _FFTabAdd(ByRef $Socket, $sURL = "about:blank", $bSelect = true)
If Not __FFIsSocket($Socket) Then
SetError(__FFError("_FFTabAdd", $_FF_ERROR_SocketError))
Return 0
EndIf
If Not $bSelect Then
_FFSetGet($Socket, "gBrowser.addTab()", 3000) <-- hier kommt ein neuer tab
Else
_FFSetGet($Socket, "gBrowser.addTab()" & @CRLF & _
"gBrowser.tabContainer.selectedIndex = gBrowser.tabContainer.childNodes.length - 1", 3000)
EndIf
If $sURL <> "about:blank" Then _FFOpenURL($Socket,$sURL) <-- hier wird im tab 0 ne neue url geladen
Return
EndFunc ;==> _FFTabAdd
danach wieder n tab mit namen (unbekannt) und tab 0 neue url usw.
ich habe mir erlaubt die funktion umzuschreiben so dass sie funktionieren müsste:
Func _FFTabAdd(ByRef $Socket, $sURL = "about:blank", $bSelect = true)
If Not __FFIsSocket($Socket) Then
SetError(__FFError("_FFTabAdd", $_FF_ERROR_SocketError))
Return 0
EndIf
_FFSetGet($Socket, "gBrowser.addTab('" & $sURL &"')", 3000) ; hier wird der tab direkt mit der url geöffnet
If $bSelect Then ; die prüfung auf False wird daher unnötig
_FFSetGet($Socket, "gBrowser.tabContainer.selectedIndex = gBrowser.tabContainer.childNodes.length - 1", 3000)
EndIf
;ebenso _FFOpenUrl
Return
EndFunc ;==> _FFTabAdd
gefühlt ist die funktion jetzt auch wenigstens doppelt so schnell
mfg
TheCrap
P.S:
mir ist aufgefallen, dass _FFSetGet($Socket, "gBrowser.addTab('" & $sURL &"')", 3000) die zusätzlichen anführungszeichen braucht weil $sURL nicht samt den " übergeben wird. ka wieso.
vielleicht kann man ja auch erst mit __FFIsURL prüfen obs ne url ist