Suggestion: built-in double-buffering

I was looking over the old BeOS Developer’s Guide and didn’t see mention of double-buffering for a BView. I was thinking that it would be really nice to have a flag on a BView constructor like B_DOUBLE_BUFFER and, voila, it’s all taken care of for you instead of having to write that same old common code where one has to manage their own offscreen pic and do a bit blit.

I haven’t gotten into the lower layer code of the lowest level library that does the basic graphics but was wondering if that actually has double-buffering at that level and whether it could just be a pass-thru to turn it on?

Thanks to any Interface Kit development team members out there for their thoughts on how doable this is. It sure would save a lot of the same code from being written in each graphics app out there that needs smooth screen updates.

Steve

steveh wrote:
I was looking over the old BeOS Developer's Guide and didn't see mention of double-buffering for a BView. I was thinking that it would be really nice to have a flag on a BView constructor like B_DOUBLE_BUFFER and, voila, it's all taken care of for you instead of having to write that same old common code where one has to manage their own offscreen pic and do a bit blit.

I haven’t gotten into the lower layer code of the lowest level library that does the basic graphics but was wondering if that actually has double-buffering at that level and whether it could just be a pass-thru to turn it on?

Thanks to any Interface Kit development team members out there for their thoughts on how doable this is. It sure would save a lot of the same code from being written in each graphics app out there that needs smooth screen updates.

Steve

I recall various discussions about double-buffering in the new app_server (and even some mention of triple-buffering)

I’m fairly certain the drawing code for the Haiku app_server is double buffered at this point - but I don’t know how that translates to BView. There were a slew of mailing list posts about this topic … probably about 6 months to a year ago.