comparison src/video/bwindow/SDL_sysevents.cc @ 4287:0620847bf1a8 SDL-1.2

Fixed bug #798 kty@lavabit.com 2009-09-19 14:19:04 PDT The stable release of SDL 1.2.13 for BeOS/Haiku has a bug in BE_FindClosestFSMode that causes it to sometimes not select the best mode when going fullscreen. There are in fact two bugs in the implementation but I will not go into specifics because there is already a patch for it in the developer SVN 1.3. However I am still reporting it because I believe the following code is a better patch for the issue. The current implementation on SVN only works if it is able to find an exact match for the requested mode. However, by scanning from lowest-to-highest resolution instead of highest-to-lowest, one can find the best mode at all times
author Sam Lantinga <slouken@libsdl.org>
date Sat, 10 Oct 2009 02:11:07 +0000
parents a1b03ba2fcd0
children 930614179450
comparison
equal deleted inserted replaced
4286:9ea4413f0a9e 4287:0620847bf1a8
377 //BDirectWindow::DispatchMessage(msg, target); 377 //BDirectWindow::DispatchMessage(msg, target);
378 break; 378 break;
379 } 379 }
380 BDirectWindow::DispatchMessage(msg, target); 380 BDirectWindow::DispatchMessage(msg, target);
381 } 381 }
382
383 void SDL_BWin::DirectConnected(direct_buffer_info *info) {
384 switch (info->buffer_state & B_DIRECT_MODE_MASK) {
385 case B_DIRECT_START:
386 case B_DIRECT_MODIFY:
387 {
388 int32 width = info->window_bounds.right -
389 info->window_bounds.left + 1;
390 int32 height = info->window_bounds.bottom -
391 info->window_bounds.top + 1;
392 SDL_PrivateResize(width, height);
393 break;
394 }
395 default:
396 break;
397 }
398 }