Forums Développement Multimédia

Aller au contenu

Etrange problème avec composant custom

CMS Silex

8 réponses à ce sujet

#1 Żabojad

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 114 messages

Posté 20 February 2010 - 20:46 PM

Hello,

J'ai un problème bizarre avec deux de mes composants custom. Je vais essayer de l'expliquer du mieux possible parce que c'est assez tordu...

J'ai deux composants custom (tous simples) que je vais nommer "comp1" et "comp2" pour mes explications. Ces composants déroulent chacun un enchaînement de frames.

J'ai fait hériter ces deux composants de org.silex.ui.components.ComponentAnimated.

Ils ont chacun une méthode startCustomAnim() qui démarre leur déroulement de frames.

Le séquencement composants/appels de méthodes sur la page qui les contient est le suivant : Mon animation des deux barres (site zks-szyndler.pl) appelle comp1.startCustomAnim. Lorsque comp1 a terminé son déroulement, il appelle comp2.startCustomAnim

Le problème que j'ai est le suivant :

1 - Je vide mon cache, et j'accède 1 fois à mon site (plus particulièrement à la page qui contient comp1 et comp2). Tout fonctionne.

2 - Je navigue sur une autre page et je reviens ensuite à la page de comp1 et comp2 : ça ne fonctionne plus. L'appel aux méthodes startCustomAnim de comp1 et comp2 n'a aucun effet...

3 - Je rafraîchis le site (en repartant de l'index du site), ça ne marche toujours pas.

4 - Je vide mon cache. Je rafraîchis le site. Ça fonctionne (les appels à startCustomAnim de comp1 et comp2 fonctionnent).

5 - Je navigue sur une autre page et je reviens => ça ne marche plus.

6 - Je vide mon cache et je navigue sur une autre page du site. Je reviens sur la page de comp1 et comp2 : ça marche (startCustomAnim de comp1 et comp2 fonctionnent correctement).


Point important : Si je précharge ces composants : ils ne fonctionnent pas non plus... Même pas une fois après avoir vidé le cache.

C'est vraiment le genre de problèmes à devenir fou...

J'ai remarqué quelque chose d'intéressant : lorsque j'accède aux propriétés de ces composants en mode édition de site, lorsqu'ils n'ont pas fonctionné correctement, ils ont moins de propriétés que lorsqu'ils ont fonctionné correctement. Par exemple, ils n'ont plus les propriétés "clickable", "curseur main", "url image" (...). Comme si Silex les avait "casté" dans une autre classe une fois qu'il ont été chargé... J'ai attaché des screenshots de cet aspect du problème.

Ça expliquerait peut-être pourquoi l'appel à leur méthode startCustomAnim ne fonctionne plus car si Silex a changé la classe qui leur était liée, ils n'ont plus cette méthode...

Je pense qu'il doit y avoir une sorte de problème de conflit de classe ou quelque chose mais pourquoi ça fonctionne correctement une fois après avoir vidé le cache, et une fois que les composants dans le cache ont été chargé une fois, ensuite ils ne fonctionnent plus ?!

J'avoue que là je sèche un peu sur ce problème. Si quelqu'un a la réponse au problème, ou des guidelines qui pourraient me sortir de là, je suis preneur ^^.

Si il y a besoin de fournir plus d'éléments de diagnostique, n'hésitez pas à me demander...

Merci d'avance.

#2 _lex

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 1016 messages

Posté 21 February 2010 - 13:35 PM

aie
je pense que tu devrais nous transmettre les sources
mais si ca se trouve tu mets le doigt sur THE bug qu'on traque depuis la v1.5.0 et qui fait buguer oof de temps en temps et silex sous google chrome :mrgreen:

#3 _lex

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 1016 messages

Posté 21 February 2010 - 13:36 PM

ariel,
qu'as tu changé a oof qui faisait buguer les listes et les listUi ?
ca peut m'aider
il y a surement un bug aussi dans l'api silex

#4 Żabojad

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 114 messages

Posté 22 February 2010 - 12:36 PM

lexa a écrit:aie
je pense que tu devrais nous transmettre les sources
mais si ca se trouve tu mets le doigt sur THE bug qu'on traque depuis la v1.5.0 et qui fait buguer oof de temps en temps et silex sous google chrome :mrgreen:


Mince, j'avais l'espoir que c'était un problème connu, simple à régler, ... :cry:

Ok Lexa je t'envoie par MP un lien vers les sources de tout mon dev-kit, ça te va ? Tu pourras même re-publier mes composants si besoin... D'ailleurs, si tu as des remarques sur la façon dont j'ai fait les choses, pour les améliorer, n'hésite pas.

Mes composants sont dans le dossier /zks_components du dev-kit.

Si tu as des questions, n'hésite pas...

Merci d'avance.

#5 ariels

    Ceinture Marron

  • Silex Lab
  • PipPipPipPipPipPip
  • 137 messages

Posté 22 February 2010 - 17:52 PM

les listes: de temps en temps on créait des cell renderer alors que les données n'étaient pas prêtes.
listui: c'est lié: la liste n'était pas vraiment prête, donc la détection de savoir s'il fallait afficher la listui foirait. J'ai ajouté un mécanisme qui détecte le foirage et qui revient la frame d'après le cas échéant

#6 Żabojad

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 114 messages

Posté 05 March 2010 - 17:39 PM

Salut lexa,

Est-ce que tu as pu reproduire le problème de ton côté avec mon dev-kit ?

Je voulais aussi te préciser que je n'utilise pas chrome mais que j'ai ce problème sous IE 8 et Firefox 3.6.

Si tu as besoin de plus d'éléments pour ce problème, n'hésite pas.

A+

#7 _lex

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 1016 messages

Posté 06 March 2010 - 17:39 PM

ok je regarde
merci Z !

#8 Żabojad

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 114 messages

Posté 09 March 2010 - 20:59 PM

Bon, j'y ai passé la journée, mais j'ai fini par trouver le problème. Ce qui m'a mis sur la voie, c'est que j'avais ce problème avec chacun de mes composants custom à chaque fois qu'il y en avait au moins deux qui se trouvaient sur la même page...

Le problème était simplement que je donnais à chaque fois la valeur "main" pour les "identifier" et "Name" du movie clip principal de mes composants custom (il faut en fait donner "main" seulement pour le nom de l'instance du clip). Du coup au runtime, ça faisait n'importe quoi quand il y en avait deux comme ça...

Tiens, ça m'étonnerait que vous n'ayez pas déjà rencontrer un problème de conflit d'id avec oof et silex, vu le nombre de composants que vous avez...

Case closed :) !

#9 _lex

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 1016 messages

Posté 10 March 2010 - 19:08 PM

Trop fort Mr !
Bravo
il faudrait l'écrire quelque part... dans une doc pour les dev silex et oof ?

pour ma part je galère bien bien bien sur le bug "silex dans chrome"
a+



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)