39 #if !defined(HMONITOR_DECLARED) && (WINVER < 0x500)
40 DECLARE_HANDLE(HMONITOR);
41 #define HMONITOR_DECLARED
65 HMONITOR (WINAPI *_MonitorFromWindow)(HWND wnd, DWORD dwFlags)=(HMONITOR (WINAPI *)(HWND, DWORD)) GetProcAddress(user32,
"MonitorFromWindow");
66 BOOL (WINAPI *_GetMonitorInfoW)(HMONITOR mon, LPMONITORINFO lpmi) = (BOOL (WINAPI *)(HMONITOR, LPMONITORINFO)) GetProcAddress(user32,
"GetMonitorInfoW");
68 if (_MonitorFromWindow && _GetMonitorInfoW)
71 hmon = _MonitorFromWindow(window, MONITOR_DEFAULTTONULL);
75 memset(&mie,
sizeof(mie), 0);
76 mie.cbSize =
sizeof(mie);
77 if (_GetMonitorInfoW(hmon, &mie))
91 SystemParametersInfo(SPI_GETWORKAREA, 0, r, 0);
104 HMONITOR (WINAPI *_MonitorFromPoint)(
POINT pt, DWORD dwFlags) = (HMONITOR (WINAPI *)(
POINT, DWORD)) GetProcAddress(user32,
"MonitorFromPoint");
105 BOOL (WINAPI *_GetMonitorInfoW)(HMONITOR mon, LPMONITORINFO lpmi) = (BOOL (WINAPI *)(HMONITOR, LPMONITORINFO)) GetProcAddress(user32,
"GetMonitorInfoW");
106 if (_MonitorFromPoint && _GetMonitorInfoW)
109 hmon = _MonitorFromPoint(*pt, MONITOR_DEFAULTTONULL);
113 memset(&mie,
sizeof(mie), 0);
114 mie.cbSize =
sizeof(mie);
115 if (_GetMonitorInfoW(hmon, &mie))
129 SystemParametersInfo(SPI_GETWORKAREA, 0, r, 0);
static nsresult LoadLibrary(nsCOMPtr< nsIFile > aLibDir, nsString aLibPath)
Songbird Multiple Monitor Support - Definition.
static void GetMonitorFromPoint(RECT *r, POINT *pt, bool excludeTaskbar)
static void GetMonitorFromWindow(RECT *r, void *wnd, bool excludeTaskbar)