mshtml: Added separated IE5 and quicks mode compatibility mode.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Jacek Caban 2017-05-09 17:32:45 +02:00 committed by Alexandre Julliard
parent 97e2600607
commit ce80f1e49d
3 changed files with 8 additions and 2 deletions

View File

@ -2997,7 +2997,7 @@ static HRESULT WINAPI HTMLDocument5_get_compatMode(IHTMLDocument5 *iface, BSTR *
TRACE("(%p)->(%p)\n", This, p);
*p = SysAllocString(This->doc_node->document_mode == COMPAT_MODE_QUIRKS ? BackCompatW : CSS1CompatW);
*p = SysAllocString(This->doc_node->document_mode <= COMPAT_MODE_IE5 ? BackCompatW : CSS1CompatW);
return *p ? S_OK : E_OUTOFMEMORY;
}
@ -3098,6 +3098,7 @@ static HRESULT WINAPI HTMLDocument6_get_documentMode(IHTMLDocument6 *iface, VARI
static const int docmode_values[] = {
5, /* DOCMODE_QUIRKS */
5, /* DOCMODE_IE5 */
7, /* DOCMODE_IE7 */
8, /* DOCMODE_IE8 */
9, /* DOCMODE_IE8 */

View File

@ -233,6 +233,7 @@ TID_LIST
typedef enum {
COMPAT_MODE_QUIRKS,
COMPAT_MODE_IE5,
COMPAT_MODE_IE7,
COMPAT_MODE_IE8,
COMPAT_MODE_IE9,

View File

@ -388,6 +388,10 @@ static BOOL parse_ua_compatible(const WCHAR *p, compat_mode_t *r)
return FALSE;
switch(v){
case 5:
case 6:
*r = COMPAT_MODE_IE5;
break;
case 7:
*r = COMPAT_MODE_IE7;
break;
@ -401,7 +405,7 @@ static BOOL parse_ua_compatible(const WCHAR *p, compat_mode_t *r)
*r = COMPAT_MODE_IE10;
break;
default:
*r = v < 7 ? COMPAT_MODE_QUIRKS : COMPAT_MODE_IE11;
*r = v < 5 ? COMPAT_MODE_QUIRKS : COMPAT_MODE_IE11;
}
return TRUE;