Bug im Webgadget - ajax mit keyup event nicht möglich

Hier werden, insbesondere in den Beta-Phasen, Bugmeldungen gepostet. Das offizielle BugForum ist allerdings hier.
Oliver13
Beiträge: 35
Registriert: 08.05.2010 15:49

Bug im Webgadget - ajax mit keyup event nicht möglich

Beitrag von Oliver13 »

Hallo zusammen,

ich bin grade auf ein seltsames Problem gestossen:
im Webgadget ist es offensichtlich nicht möglich, keyup/keydown events mit ajax zu nutzen.

Nachstehendes Beispiel zeigt die Demoseite eines bekannten jQuery-Frameworks:
das dortige autocomplete-Feld funktioniert im Webgadget nicht. Wenn man die gleiche Seite über den IE (>=7) aufruft, funktioniert es dagegen problemlos.

Hat jemand einen Workaround ?

Danke + viele Grüsse
Oli

Code: Alles auswählen

Enumeration
  #Mainform
  #Web
EndEnumeration


If OpenWindow(#Mainform, 0, 0, 700, 500, "Test", #PB_Window_SystemMenu | #PB_Window_ScreenCentered | #PB_Window_TitleBar)
 
  WebGadget(#Web, 10, 10, 680, 480, "http://demos.kendoui.com/web/autocomplete/index.html")
 
  Repeat
    Event = WaitWindowEvent()
    Select Event         
       
      Case #PB_Event_CloseWindow
        End
       
    EndSelect
  ForEver
EndIf
Benutzeravatar
Kiffi
Beiträge: 10621
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Bug im Webgadget - ajax mit keyup event nicht möglich

Beitrag von Kiffi »

Oliver13 hat geschrieben:Hat jemand einen Workaround ?
vielleicht ist das was für Dich: http://www.purebasic.fr/german/viewtopi ... =3&t=27181

Grüße ... Kiffi
Hygge
Oliver13
Beiträge: 35
Registriert: 08.05.2010 15:49

Re: Bug im Webgadget - ajax mit keyup event nicht möglich

Beitrag von Oliver13 »

Hallo Kiffi,

danke für den Tipp, allerdings hatte ich das schon versucht:
Sowohl FEATURE_XDOMAINREQUEST =1 als auch FEATURE_AJAX_CONNECTIONEVENTS =1 bringen leider nix...

Oder gibt es noch einen anderen Key, der für das Verhalten verantwortlich sein könnte ?

Danke +vG
Oli



Kiffi hat geschrieben:
Oliver13 hat geschrieben:Hat jemand einen Workaround ?
vielleicht ist das was für Dich: http://www.purebasic.fr/german/viewtopi ... =3&t=27181

Grüße ... Kiffi
Oliver13
Beiträge: 35
Registriert: 08.05.2010 15:49

Re: Bug im Webgadget - ajax mit keyup event nicht möglich

Beitrag von Oliver13 »

Hab die Lösung gefunden - es liegt daran, daß die Events wohl verschluckt werden.


Code: Alles auswählen

Enumeration
  #Mainform
  #Web
EndEnumeration


If OpenWindow(#Mainform, 0, 0, 700, 500, "Test", #PB_Window_SystemMenu | #PB_Window_ScreenCentered | #PB_Window_TitleBar)
 
  WebGadget(#web, 10, 10, 680, 480, "http://demos.kendoui.com/web/autocomplete/index.html")
 
  Repeat
    Event = WaitWindowEvent()
    
    If event = #WM_KEYDOWN 
     ; -> Tx to http://www.purebasic.fr/english/viewtopic.php?p=232467
    wParam = EventwParam()
    lParam = EventlParam()
        WebObject.IWebBrowser2 = GetWindowLong_(GadgetID(#web), #GWL_USERDATA)
        CoInitialize_(0)
        CoCreateInstance_(?CLSID_IOleInPlaceActiveObject, 0, 1, ?IID_IOleInPlaceActiveObject,@OleObject.IOleInPlaceActiveObject)
        WebObject\QueryInterface(?IID_IOleInPlaceActiveObject, @OleObject)
        web.MSG\message = event
        web\wParam = wParam
        web\lParam = lParam
        OleObject\TranslateAccelerator(@web)
        OleObject\Release()
        CoUninitialize_()
  EndIf
  
  
    Select Event         
       
      Case #PB_Event_CloseWindow
        End
       
    EndSelect
  ForEver
EndIf


DataSection
;{00000117-0000-0000-C000-000000000046}
IID_IOleInPlaceActiveObject:
Data.l $00000117
Data.w $0000, $0000
Data.b $C0, $00, $00, $00, $00, $00, $00, $46

;{00000320-0000-0000-C000-000000000046}
CLSID_IOleInPlaceActiveObject:
Data.l $00000320
Data.w $0000, $0000
Data.b $C0, $00, $00, $00, $00, $00, $00, $46
EndDataSection
Antworten