Hi, I'm using Swfdec 0.8.2 and cannot process any kepress events to Swfdec, neither on GTK nor using Direct FB.
The initial screen is OK, but on pressing a key, swfdec_player_key_press() is invoked providing the Swfdec key ID (with UCS4 key = 0). I noticed that swfdec_dfb_player_handle_input_event() is called by swfdec_marshal, therefore I assume that transmitting the key event message works fine, but may be the way of setting up the player is wrong. Do I need a special Function call for processing key events properly? The setup of Swfdec is listed below. Any help would be appreciated. With kind regards, Helmut Jahns (void) setUpSwfdecPlayer:(NSString*)flashFileUr { unsigned int w, h; IDirectFB* dfb; DIRECTFB(DirectFBCreate,(&dfb)); DIRECTFB(dfb->SetCooperativeLevel,(dfb, DFSCL_EXCLUSIVE)); IDirectFBSurface* surface; DFBSurfaceDescription surface_description = { .flags = DSDESC_CAPS, .caps = DSCAPS_PRIMARY, }; DIRECTFB(dfb->CreateSurface,(dfb, &surface_description, &surface)); DIRECTFB(surface->GetSize,(surface,(int*)&w,(int*)&h)); fprintf(stderr, "DirectFB: width=%u, height=%u\n", w, h); DIRECTFB(surface->Clear,(surface,0,0,0,0xff)); DIRECTFB(surface->Flip,(surface,NULL,DSFLIP_NONE)); ioctl(devfb, FBIOBLANK, 0); // create Cairo and link it to Direct FB surface cairo_surface_t* cairo_surface = cairo_directfb_surface_create(dfb, surface); cr = cairo_create(cairo_surface); cairo_set_tolerance(cr, 1); cairo_set_operator(cr, CAIRO_OPERATOR_OVER); cairo_set_source_rgba(cr, 0, 0, 0, 1); cairo_paint(cr); ioctl(devfb, FBIOBLANK, 0); // create player - swfdec_player_init() is executed implicitely my_player = swfdec_player_new(NULL); // 0: no AS debugger // set file to playback SwfdecURL* flash_file_location = swfdec_url_new_from_input ([flashFileUrl cString]); swfdec_player_set_url(my_player, flash_file_location); swfdec_url_free (flash_file_location); // provide renderer to the player SwfdecRenderer* my_renderer = swfdec_renderer_new_for_player (cairo_surface, my_player); swfdec_player_set_renderer (my_player, my_renderer); // initial drawing int i; for (i=0; i<3; i++ ) { swfdec_player_advance(my_player, 100); swfdec_player_render(my_player, cr); ioctl(devfb, FBIOBLANK, 0); } // TODO: remove this. This loop has been introduced due to // a delay of the special swf file to permit to draw // the menu icons. } Sennheiser electronic GmbH & Co.KG, Sitz: Wedemark, Handelsregister: AG Hannover HRA 120100, Aufsichtsratsvorsitzender: Prof. Dr. sc. techn. Jörg Sennheiser phG: Sennheiser Beteiligungsgesellschaft mbH, Sitz: Wedemark, Handelsregister: AG Hannover HRB 120179, Geschäftsführer: Volker Bartels, Dr. Heinrich Esser, Stefan Junker Diese E-Mail enthält vertrauliche oder rechtlich geschützte Informationen. Wenn Sie nicht der beabsichtigte Empfänger sind, informieren Sie bitte sofort den Absender und löschen Sie diese E-Mail. Das unbefugte Kopieren dieser E-Mail oder die unbefugte Weitergabe der enthaltenen Informationen ist nicht gestattet. The information contained in this message is confidential or protected by law. If you are not the intended recipient, please contact the sender and delete this message. Any unauthorized copying of this message or unauthorized distribution of the information contained herein is prohibited. _______________________________________________ Swfdec mailing list Swfdec@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/swfdec