Let us make a simple solution to the one remaining issue. We have xcb and xwindows off the IO, shut that down, but they still are windows managers of default, and will generate a draw request. Fine, io manager can put it last on the priority list, and make a call to xchars CheckMsg. In the general case, we can have a time out on libev to execute the redraw on command.
This is not a user issue, it is the user who has resized windows, and xchars does not have direct rendering yet, it is stuck. But, since the user is resizing, there is no real glitch if we check that condition every eighth second, the user will not notice. Once in resize mode we watch redraw every sixteenth second, until done. Make that the general approach, if we get one redraw, then increase the sample rate until the redraws go back. Not much different than tacking mouse, and io could do that very smoothly.
I will leave the method entry in xchars.
That brings up another point on tracking. There is third type of tracker, we have lest squares, maximum entropy, and frequency filtering. In frequency filtering we adjust the sample rte to match the users dx and dy on the mouse. In control theory, you =are performing smooth roll off to prevent feedback oscillations. We will open that whole avenue of research with io manager. Looking deeper into open source, I know this is an exciting opportunity for the kids.
No comments:
Post a Comment