Module: wine Branch: master Commit: e8fb248886565ad086ebe0e6b2d5952bcd8f7c57 URL: http://source.winehq.org/git/wine.git/?a=commit;h=e8fb248886565ad086ebe0e6b2...
Author: Jacek Caban jacek@codeweavers.com Date: Fri May 27 14:37:06 2011 +0200
mshtml: Added IHTMLScreen::get_availWidth implementation.
---
dlls/mshtml/htmlscreen.c | 11 +++++++++-- dlls/mshtml/tests/dom.c | 5 +++++ 2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/dlls/mshtml/htmlscreen.c b/dlls/mshtml/htmlscreen.c index 460347f..68091a0 100644 --- a/dlls/mshtml/htmlscreen.c +++ b/dlls/mshtml/htmlscreen.c @@ -200,8 +200,15 @@ static HRESULT WINAPI HTMLScreen_get_availHeight(IHTMLScreen *iface, LONG *p) static HRESULT WINAPI HTMLScreen_get_availWidth(IHTMLScreen *iface, LONG *p) { HTMLScreen *This = impl_from_IHTMLScreen(iface); - FIXME("(%p)->(%p)\n", This, p); - return E_NOTIMPL; + RECT work_area; + + TRACE("(%p)->(%p)\n", This, p); + + if(!SystemParametersInfoW(SPI_GETWORKAREA, 0, &work_area, 0)) + return E_FAIL; + + *p = work_area.right-work_area.left; + return S_OK; }
static HRESULT WINAPI HTMLScreen_get_fontSmoothingEnabled(IHTMLScreen *iface, VARIANT_BOOL *p) diff --git a/dlls/mshtml/tests/dom.c b/dlls/mshtml/tests/dom.c index a11e9a4..d7e8dda 100644 --- a/dlls/mshtml/tests/dom.c +++ b/dlls/mshtml/tests/dom.c @@ -3973,6 +3973,11 @@ static void test_screen(IHTMLWindow2 *window) ok(hres == S_OK, "get_availHeight failed: %08x\n", hres); ok(l == work_area.bottom-work_area.top, "availHeight = %d, expected %d\n", l, work_area.bottom-work_area.top);
+ l = 0xdeadbeef; + hres = IHTMLScreen_get_availWidth(screen, &l); + ok(hres == S_OK, "get_availWidth failed: %08x\n", hres); + ok(l == work_area.right-work_area.left, "availWidth = %d, expected %d\n", l, work_area.right-work_area.left); + IHTMLScreen_Release(screen); }