diff options
| author | Pietro Gagliardi <[email protected]> | 2014-08-12 17:18:45 -0400 |
|---|---|---|
| committer | Pietro Gagliardi <[email protected]> | 2014-08-12 17:18:45 -0400 |
| commit | 5523cdb22a6aad761ed4386ecd60143a553a4f02 (patch) | |
| tree | c71fff105ca086b793568141ab0102ab409b8b02 | |
| parent | 2146ac2af3209f70df8c73e16d82bf866ea19c0b (diff) | |
Implemented tab stopping.
| -rw-r--r-- | redo/tab_windows.go | 2 | ||||
| -rw-r--r-- | redo/uitask_windows.c | 5 |
2 files changed, 6 insertions, 1 deletions
diff --git a/redo/tab_windows.go b/redo/tab_windows.go index 62da0b4..06f772b 100644 --- a/redo/tab_windows.go +++ b/redo/tab_windows.go @@ -23,6 +23,8 @@ type tab struct { func newTab() Tab { hwnd := C.newControl(C.xWC_TABCONTROL, C.TCS_TOOLTIPS | C.WS_TABSTOP, + // this is needed to have the tab contents be tab stop + // TODO this seems to override WS_TABSTOP C.WS_EX_CONTROLPARENT) t := &tab{ _hwnd: hwnd, diff --git a/redo/uitask_windows.c b/redo/uitask_windows.c index 479b48a..23aba52 100644 --- a/redo/uitask_windows.c +++ b/redo/uitask_windows.c @@ -7,6 +7,7 @@ void uimsgloop(void) { MSG msg; int res; + HWND active; for (;;) { SetLastError(0); @@ -15,7 +16,9 @@ void uimsgloop(void) xpanic("error calling GetMessage()", GetLastError()); if (res == 0) /* WM_QUIT */ break; - /* TODO IsDialogMessage() */ + active = GetActiveWindow(); + if (active != NULL && IsDialogMessageW(active, &msg) != 0) + continue; TranslateMessage(&msg); DispatchMessageW(&msg); } |
