OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <htiframe.h> | 5 #include <htiframe.h> |
6 #include <mshtml.h> | 6 #include <mshtml.h> |
7 #include <shlobj.h> | 7 #include <shlobj.h> |
8 #include <wininet.h> | 8 #include <wininet.h> |
9 | 9 |
10 #include "base/file_util.h" | 10 #include "base/file_util.h" |
(...skipping 1060 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1071 return cf == GetTextHtmlClipboardFormat(); | 1071 return cf == GetTextHtmlClipboardFormat(); |
1072 } | 1072 } |
1073 | 1073 |
1074 ProtocolPatchMethod GetPatchMethod() { | 1074 ProtocolPatchMethod GetPatchMethod() { |
1075 ProtocolPatchMethod patch_method = | 1075 ProtocolPatchMethod patch_method = |
1076 static_cast<ProtocolPatchMethod>( | 1076 static_cast<ProtocolPatchMethod>( |
1077 GetConfigInt(PATCH_METHOD_MONIKER, kPatchProtocols)); | 1077 GetConfigInt(PATCH_METHOD_MONIKER, kPatchProtocols)); |
1078 return patch_method; | 1078 return patch_method; |
1079 } | 1079 } |
1080 | 1080 |
1081 bool MonikerPatchEnabled() { | 1081 bool IsIBrowserServicePatchEnabled() { |
1082 ProtocolPatchMethod patch_method = GetPatchMethod(); | 1082 ProtocolPatchMethod patch_method = GetPatchMethod(); |
1083 return patch_method == PATCH_METHOD_MONIKER; | 1083 return patch_method == PATCH_METHOD_IBROWSER; |
1084 } | 1084 } |
1085 | 1085 |
| 1086 std::string BindStatus2Str(ULONG bind_status) { |
| 1087 std::string s; |
| 1088 static const char* const bindstatus_txt[] = { |
| 1089 "BINDSTATUS_FINDINGRESOURCE", |
| 1090 "BINDSTATUS_CONNECTING", |
| 1091 "BINDSTATUS_REDIRECTING", |
| 1092 "BINDSTATUS_BEGINDOWNLOADDATA", |
| 1093 "BINDSTATUS_DOWNLOADINGDATA", |
| 1094 "BINDSTATUS_ENDDOWNLOADDATA", |
| 1095 "BINDSTATUS_BEGINDOWNLOADCOMPONENTS", |
| 1096 "BINDSTATUS_INSTALLINGCOMPONENTS", |
| 1097 "BINDSTATUS_ENDDOWNLOADCOMPONENTS", |
| 1098 "BINDSTATUS_USINGCACHEDCOPY", |
| 1099 "BINDSTATUS_SENDINGREQUEST", |
| 1100 "BINDSTATUS_CLASSIDAVAILABLE", |
| 1101 "BINDSTATUS_MIMETYPEAVAILABLE", |
| 1102 "BINDSTATUS_CACHEFILENAMEAVAILABLE", |
| 1103 "BINDSTATUS_BEGINSYNCOPERATION", |
| 1104 "BINDSTATUS_ENDSYNCOPERATION", |
| 1105 "BINDSTATUS_BEGINUPLOADDATA", |
| 1106 "BINDSTATUS_UPLOADINGDATA", |
| 1107 "BINDSTATUS_ENDUPLOADINGDATA", |
| 1108 "BINDSTATUS_PROTOCOLCLASSID", |
| 1109 "BINDSTATUS_ENCODING", |
| 1110 "BINDSTATUS_VERFIEDMIMETYPEAVAILABLE", |
| 1111 "BINDSTATUS_CLASSINSTALLLOCATION", |
| 1112 "BINDSTATUS_DECODING", |
| 1113 "BINDSTATUS_LOADINGMIMEHANDLER", |
| 1114 "BINDSTATUS_CONTENTDISPOSITIONATTACH", |
| 1115 "BINDSTATUS_FILTERREPORTMIMETYPE", |
| 1116 "BINDSTATUS_CLSIDCANINSTANTIATE", |
| 1117 "BINDSTATUS_IUNKNOWNAVAILABLE", |
| 1118 "BINDSTATUS_DIRECTBIND", |
| 1119 "BINDSTATUS_RAWMIMETYPE", |
| 1120 "BINDSTATUS_PROXYDETECTING", |
| 1121 "BINDSTATUS_ACCEPTRANGES", |
| 1122 "BINDSTATUS_COOKIE_SENT", |
| 1123 "BINDSTATUS_COMPACT_POLICY_RECEIVED", |
| 1124 "BINDSTATUS_COOKIE_SUPPRESSED", |
| 1125 "BINDSTATUS_COOKIE_STATE_UNKNOWN", |
| 1126 "BINDSTATUS_COOKIE_STATE_ACCEPT", |
| 1127 "BINDSTATUS_COOKIE_STATE_REJECT", |
| 1128 "BINDSTATUS_COOKIE_STATE_PROMPT", |
| 1129 "BINDSTATUS_COOKIE_STATE_LEASH", |
| 1130 "BINDSTATUS_COOKIE_STATE_DOWNGRADE", |
| 1131 "BINDSTATUS_POLICY_HREF", |
| 1132 "BINDSTATUS_P3P_HEADER", |
| 1133 "BINDSTATUS_SESSION_COOKIE_RECEIVED", |
| 1134 "BINDSTATUS_PERSISTENT_COOKIE_RECEIVED", |
| 1135 "BINDSTATUS_SESSION_COOKIES_ALLOWED", |
| 1136 "BINDSTATUS_CACHECONTROL", |
| 1137 "BINDSTATUS_CONTENTDISPOSITIONFILENAME", |
| 1138 "BINDSTATUS_MIMETEXTPLAINMISMATCH", |
| 1139 "BINDSTATUS_PUBLISHERAVAILABLE", |
| 1140 "BINDSTATUS_DISPLAYNAMEAVAILABLE", |
| 1141 "BINDSTATUS_SSLUX_NAVBLOCKED", |
| 1142 "BINDSTATUS_SERVER_MIMETYPEAVAILABLE", |
| 1143 "BINDSTATUS_SNIFFED_CLASSIDAVAILABLE", |
| 1144 "BINDSTATUS_64BIT_PROGRESS" |
| 1145 }; |
| 1146 if (bind_status >= 1 && bind_status <= BINDSTATUS_64BIT_PROGRESS) |
| 1147 s = bindstatus_txt[bind_status - 1]; |
| 1148 else |
| 1149 s = StringPrintf("UnDoc[%#x]", bind_status); |
| 1150 return s; |
| 1151 } |
| 1152 |
| 1153 std::string PiFlags2Str(DWORD flags) { |
| 1154 #define ADD_PI_FLAG(x) if (flags & x) { s.append(#x ## " "); flags &= ~x; } |
| 1155 std::string s = " flags "; |
| 1156 ADD_PI_FLAG(PI_PARSE_URL); |
| 1157 ADD_PI_FLAG(PI_FILTER_MODE); |
| 1158 ADD_PI_FLAG(PI_FORCE_ASYNC); |
| 1159 ADD_PI_FLAG(PI_USE_WORKERTHREAD); |
| 1160 ADD_PI_FLAG(PI_MIMEVERIFICATION); |
| 1161 ADD_PI_FLAG(PI_CLSIDLOOKUP); |
| 1162 ADD_PI_FLAG(PI_DATAPROGRESS); |
| 1163 ADD_PI_FLAG(PI_SYNCHRONOUS); |
| 1164 ADD_PI_FLAG(PI_APARTMENTTHREADED); |
| 1165 ADD_PI_FLAG(PI_CLASSINSTALL); |
| 1166 ADD_PI_FLAG(PI_PASSONBINDCTX); |
| 1167 ADD_PI_FLAG(PI_NOMIMEHANDLER); |
| 1168 ADD_PI_FLAG(PI_LOADAPPDIRECT); |
| 1169 ADD_PI_FLAG(PD_FORCE_SWITCH); |
| 1170 ADD_PI_FLAG(PI_PREFERDEFAULTHANDLER); |
| 1171 |
| 1172 if (flags) |
| 1173 s += StringPrintf("+UnDoc[%#x]", flags); |
| 1174 return s; |
| 1175 #undef ADD_PI_FLAG |
| 1176 } |
| 1177 |
| 1178 std::string Bscf2Str(DWORD flags) { |
| 1179 #define ADD_BSCF_FLAG(x) if (flags & x) { s.append(#x ## " "); flags &= ~x; } |
| 1180 std::string s = " flags "; |
| 1181 ADD_BSCF_FLAG(BSCF_FIRSTDATANOTIFICATION) |
| 1182 ADD_BSCF_FLAG(BSCF_INTERMEDIATEDATANOTIFICATION) |
| 1183 ADD_BSCF_FLAG(BSCF_LASTDATANOTIFICATION) |
| 1184 ADD_BSCF_FLAG(BSCF_DATAFULLYAVAILABLE) |
| 1185 ADD_BSCF_FLAG(BSCF_AVAILABLEDATASIZEUNKNOWN) |
| 1186 ADD_BSCF_FLAG(BSCF_SKIPDRAINDATAFORFILEURLS) |
| 1187 ADD_BSCF_FLAG(BSCF_64BITLENGTHDOWNLOAD) |
| 1188 |
| 1189 if (flags) |
| 1190 s += StringPrintf("+UnDoc[%#x]", flags); |
| 1191 return s; |
| 1192 #undef ADD_BSCF_FLAG |
| 1193 } |
OLD | NEW |