| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "content/test/dwrite_font_fake_sender_win.h" | 5 #include "content/test/dwrite_font_fake_sender_win.h" |
| 6 | 6 |
| 7 #include <dwrite.h> |
| 7 #include <shlobj.h> | 8 #include <shlobj.h> |
| 8 | 9 |
| 9 #include "content/common/dwrite_font_proxy_messages.h" | 10 #include "content/common/dwrite_font_proxy_messages.h" |
| 10 | 11 |
| 11 namespace content { | 12 namespace content { |
| 12 | 13 |
| 13 void AddFamily(const base::string16& font_path, | 14 void AddFamily(const base::string16& font_path, |
| 14 const base::string16& family_name, | 15 const base::string16& family_name, |
| 15 const base::string16& base_family_name, | 16 const base::string16& base_family_name, |
| 16 FakeFontCollection* collection) { | 17 FakeFontCollection* collection) { |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 72 | 73 |
| 73 std::unique_ptr<IPC::Message>& | 74 std::unique_ptr<IPC::Message>& |
| 74 FakeFontCollection::ReplySender::OnMessageReceived(const IPC::Message& msg) { | 75 FakeFontCollection::ReplySender::OnMessageReceived(const IPC::Message& msg) { |
| 75 reply_.reset(); | 76 reply_.reset(); |
| 76 bool handled = true; | 77 bool handled = true; |
| 77 IPC_BEGIN_MESSAGE_MAP(ReplySender, msg) | 78 IPC_BEGIN_MESSAGE_MAP(ReplySender, msg) |
| 78 IPC_MESSAGE_HANDLER(DWriteFontProxyMsg_FindFamily, OnFindFamily) | 79 IPC_MESSAGE_HANDLER(DWriteFontProxyMsg_FindFamily, OnFindFamily) |
| 79 IPC_MESSAGE_HANDLER(DWriteFontProxyMsg_GetFamilyCount, OnGetFamilyCount) | 80 IPC_MESSAGE_HANDLER(DWriteFontProxyMsg_GetFamilyCount, OnGetFamilyCount) |
| 80 IPC_MESSAGE_HANDLER(DWriteFontProxyMsg_GetFamilyNames, OnGetFamilyNames) | 81 IPC_MESSAGE_HANDLER(DWriteFontProxyMsg_GetFamilyNames, OnGetFamilyNames) |
| 81 IPC_MESSAGE_HANDLER(DWriteFontProxyMsg_GetFontFiles, OnGetFontFiles) | 82 IPC_MESSAGE_HANDLER(DWriteFontProxyMsg_GetFontFiles, OnGetFontFiles) |
| 83 IPC_MESSAGE_HANDLER(DWriteFontProxyMsg_MapCharacters, OnMapCharacters) |
| 82 IPC_MESSAGE_UNHANDLED(handled = false) | 84 IPC_MESSAGE_UNHANDLED(handled = false) |
| 83 IPC_END_MESSAGE_MAP() | 85 IPC_END_MESSAGE_MAP() |
| 84 return reply_; | 86 return reply_; |
| 85 } | 87 } |
| 86 | 88 |
| 87 bool FakeFontCollection::ReplySender::Send(IPC::Message* msg) { | 89 bool FakeFontCollection::ReplySender::Send(IPC::Message* msg) { |
| 88 reply_.reset(msg); | 90 reply_.reset(msg); |
| 89 return true; | 91 return true; |
| 90 } | 92 } |
| 91 | 93 |
| (...skipping 12 matching lines...) Expand all Loading... |
| 104 std::vector<DWriteStringPair>* family_names) { | 106 std::vector<DWriteStringPair>* family_names) { |
| 105 collection_->OnGetFamilyNames(family_index, family_names); | 107 collection_->OnGetFamilyNames(family_index, family_names); |
| 106 } | 108 } |
| 107 | 109 |
| 108 void FakeFontCollection::ReplySender::OnGetFontFiles( | 110 void FakeFontCollection::ReplySender::OnGetFontFiles( |
| 109 uint32_t family_index, | 111 uint32_t family_index, |
| 110 std::vector<base::string16>* file_paths) { | 112 std::vector<base::string16>* file_paths) { |
| 111 collection_->OnGetFontFiles(family_index, file_paths); | 113 collection_->OnGetFontFiles(family_index, file_paths); |
| 112 } | 114 } |
| 113 | 115 |
| 116 void FakeFontCollection::ReplySender::OnMapCharacters( |
| 117 const base::string16& text, |
| 118 const DWriteFontStyle& font_style, |
| 119 const base::string16& locale_name, |
| 120 uint32_t reading_direction, |
| 121 const base::string16& base_family_name, |
| 122 MapCharactersResult* result) { |
| 123 collection_->OnMapCharacters(text, font_style, locale_name, reading_direction, |
| 124 base_family_name, result); |
| 125 } |
| 126 |
| 114 FakeFontCollection::FakeSender::FakeSender(FakeFontCollection* collection, | 127 FakeFontCollection::FakeSender::FakeSender(FakeFontCollection* collection, |
| 115 bool track_messages) | 128 bool track_messages) |
| 116 : track_messages_(track_messages), collection_(collection) {} | 129 : track_messages_(track_messages), collection_(collection) {} |
| 117 | 130 |
| 118 FakeFontCollection::FakeSender::~FakeSender() = default; | 131 FakeFontCollection::FakeSender::~FakeSender() = default; |
| 119 | 132 |
| 120 bool FakeFontCollection::FakeSender::Send(IPC::Message* message) { | 133 bool FakeFontCollection::FakeSender::Send(IPC::Message* message) { |
| 121 std::unique_ptr<IPC::Message> incoming_message; | 134 std::unique_ptr<IPC::Message> incoming_message; |
| 122 if (track_messages_) | 135 if (track_messages_) |
| 123 collection_->messages_.emplace_back(message); | 136 collection_->messages_.emplace_back(message); |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 158 } | 171 } |
| 159 | 172 |
| 160 void FakeFontCollection::OnGetFontFiles( | 173 void FakeFontCollection::OnGetFontFiles( |
| 161 uint32_t family_index, | 174 uint32_t family_index, |
| 162 std::vector<base::string16>* file_paths) { | 175 std::vector<base::string16>* file_paths) { |
| 163 if (family_index >= fonts_.size()) | 176 if (family_index >= fonts_.size()) |
| 164 return; | 177 return; |
| 165 *file_paths = fonts_[family_index].file_paths_; | 178 *file_paths = fonts_[family_index].file_paths_; |
| 166 } | 179 } |
| 167 | 180 |
| 181 void FakeFontCollection::OnMapCharacters(const base::string16& text, |
| 182 const DWriteFontStyle& font_style, |
| 183 const base::string16& locale_name, |
| 184 uint32_t reading_direction, |
| 185 const base::string16& base_family_name, |
| 186 MapCharactersResult* result) { |
| 187 result->family_index = 0; |
| 188 result->family_name = fonts_[0].font_name(); |
| 189 result->mapped_length = 1; |
| 190 result->scale = 1.0; |
| 191 result->font_style.font_weight = DWRITE_FONT_WEIGHT_NORMAL; |
| 192 result->font_style.font_slant = DWRITE_FONT_STYLE_NORMAL; |
| 193 result->font_style.font_stretch = DWRITE_FONT_STRETCH_NORMAL; |
| 194 } |
| 195 |
| 168 std::unique_ptr<FakeFontCollection::ReplySender> | 196 std::unique_ptr<FakeFontCollection::ReplySender> |
| 169 FakeFontCollection::GetReplySender() { | 197 FakeFontCollection::GetReplySender() { |
| 170 return std::unique_ptr<FakeFontCollection::ReplySender>( | 198 return std::unique_ptr<FakeFontCollection::ReplySender>( |
| 171 new FakeFontCollection::ReplySender(this)); | 199 new FakeFontCollection::ReplySender(this)); |
| 172 } | 200 } |
| 173 | 201 |
| 174 FakeFontCollection::~FakeFontCollection() = default; | 202 FakeFontCollection::~FakeFontCollection() = default; |
| 175 | 203 |
| 176 } // namespace content | 204 } // namespace content |
| OLD | NEW |