# HG changeset patch # User bsmith@81767d24-ef19-dc11-ae90-00e081727c95 # Date 1303188458 0 # Node ID 6ed34b83a7410d5bde53e2909f5ffc3ffadafb8e # Parent db26726118ba6b8ea443f9412298cd20d2f52574 Fixed scrollbox tab and shift tab focus shifting on OS/2. diff -r db26726118ba -r 6ed34b83a741 os2/dw.c --- a/os2/dw.c Tue Apr 19 04:37:48 2011 +0000 +++ b/os2/dw.c Tue Apr 19 04:47:38 2011 +0000 @@ -591,6 +591,19 @@ return 1; } } + else if(strncmp(tmpbuf, ScrollClassName, strlen(ScrollClassName)+1)==0) /* Scrollbox */ + { + /* Get the box window handle */ + HWND mybox = (HWND)dw_window_get_data(box->items[z].hwnd, "_dw_box"); + + if(mybox) + { + Box *scrollbox = (Box *)WinQueryWindowPtr(mybox, QWP_USER); + + if(scrollbox && _focus_check_box(scrollbox, handle, start == 3 ? 3 : 0, defaultitem)) + return 1; + } + } } } } @@ -713,6 +726,19 @@ return 1; } } + else if(strncmp(tmpbuf, ScrollClassName, strlen(ScrollClassName)+1)==0) /* Scrollbox */ + { + /* Get the box window handle */ + HWND mybox = (HWND)dw_window_get_data(box->items[z].hwnd, "_dw_box"); + + if(mybox) + { + Box *scrollbox = (Box *)WinQueryWindowPtr(mybox, QWP_USER); + + if(scrollbox && _focus_check_box_back(scrollbox, handle, start == 3 ? 3 : 0, defaultitem)) + return 1; + } + } } } }