[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: programme pour afficher plus rapidement



Tue, 22 Jun 2004 06:17:28 +0200, Patrick Carabin a écrit :
> Le Vendredi 18 Juin 2004 16:09, Sylvain Sauvage a écrit :
> > Fri, 18 Jun 2004 15:19:23 +0200, Patrick Carabin a écrit :
> > >[...]
> > >    Je vois une option « virtual » et une option «
> > > screen » qui pourraient être ça, sinon « fvwm »
> > > pourrait aussi correspondre à ce que je cherche, mais
> > > je n'ai trouvé jusqu'à présent qu'une doc en Angliche,
> > > et comme d'habitude écrite probablement par des
> > > non-anglophones, donc douteuse... Je vais chercher +
> > > loin, merci pour les idées!
> >
> > Je ne pense pas.
> > En fait, le problème que tu as c'est que lorsqu'une
> > fenêtre devient visible, elle reçoit un évènement qui
> > l'en informe. Donc, si le programme à qui appartient
> > cette fenêtre gère cet évènement, il redessine le contenu
> > de la fenêtre.
> > Pour éviter cela, il faut donc que le programme ne
> > relance pas le réaffichage complet et n'arrête pas son
> > calcul lorsqu'il reçoit l'évènement (il doit soit ignorer
> > l'évènement, soit faire du double-buffering).
> > Maintenant, tu peux trouver un gestionnaire de fenêtres
> > qui conserve lui-même une copie (le fameux swap dont il a
> > été question dans ce fil) de la fenêtre et qui évite de
> > lancer des évènements à tout bout de champ. Le problème
> > qui se pose alors est : Comment le contenu de cette copie
> > est-elle donc modifiée par l'application ? Il faut que
> > l'application puisse prévenir le gestionnaire de
> > fenêtres...
> >
>    Le principe est que l'application ignore si oui ou non 
> elle est effectivement visible: elle se croit TOUJOURS 
> visible, et s'affiche là où on lui a dit de s'afficher, 
> elle n'a pas à savoir si ce técran correspond à l'écran 
> réel ou est simplement virtuel pour l'application, jécran 
> nest jamais qu'une zone en mémoire... C'est le gestionnaire 
> X qui doit assurer la correspondance entre l'écran réel et 
> ( une portion de ) l'écran virtuel. C'est d'ailleurs ce qui 
> se passe avec certaines cartes gaphiques, ans les limites 
> de leur mémoire et des modes qu'elles savent gérer, et avec 
> les inconvénients qui en découlent. Si l'affichage virtuel 
> est géré par X ( et non plus par la carte video ), 
> l'affichage virtuel devient possible avec toutes les cartes 
> gaphiques et tous les écrans, et n'est plus limité que par 
> la mémoire centrale disponible

Note : j'utilise moi-même fvwm depuis un long moment.

Ce que je voulais dire, c'est que le gestionnaire de fenêtres envoie
toujours des événements à la fenêtre lorsqu'elle devient visible (il
suffit de faire un essai avec xev : lorsque l'on change d'écran et que
l'on revient, la fenêtre reçoit des événements VisibilityNotify et
Expose). Ces événements surviennent toujours, même lorsque la fenêtre n'a
pas le focus.

Donc Fvwm n'est pas une solution si le programme s'intéresse à ces
événements et relance son affichage complet lorsqu'il les reçoit.

-- 
Sylvain Sauvage



Reply to: