| Index: content/browser/transition_request_manager.cc
|
| diff --git a/content/browser/transition_request_manager.cc b/content/browser/transition_request_manager.cc
|
| index e2c83ea0dea38f65020276cf83cb892262f7577b..9855497391bcef1f2af878c683128bc112be80c8 100644
|
| --- a/content/browser/transition_request_manager.cc
|
| +++ b/content/browser/transition_request_manager.cc
|
| @@ -82,6 +82,22 @@ TransitionLayerData::TransitionLayerData() {
|
| TransitionLayerData::~TransitionLayerData() {
|
| }
|
|
|
| +TransitionRequestManager::TransitionRequestData::AllowedEntry::AllowedEntry(
|
| + const std::string& allowed_destination_host_pattern,
|
| + const std::string& css_selector,
|
| + const std::string& markup,
|
| + const std::vector<std::string>& names,
|
| + const std::vector<gfx::Rect>& rects)
|
| + : allowed_destination_host_pattern(allowed_destination_host_pattern),
|
| + css_selector(css_selector),
|
| + markup(markup),
|
| + names(names),
|
| + rects(rects) {
|
| +}
|
| +
|
| +TransitionRequestManager::TransitionRequestData::AllowedEntry::~AllowedEntry() {
|
| +}
|
| +
|
| void TransitionRequestManager::ParseTransitionStylesheetsFromHeaders(
|
| const scoped_refptr<net::HttpResponseHeaders>& headers,
|
| std::vector<GURL>& entering_stylesheets,
|
| @@ -112,10 +128,14 @@ TransitionRequestManager::TransitionRequestData::~TransitionRequestData() {
|
| void TransitionRequestManager::TransitionRequestData::AddEntry(
|
| const std::string& allowed_destination_host_pattern,
|
| const std::string& css_selector,
|
| - const std::string& markup) {
|
| + const std::string& markup,
|
| + const std::vector<std::string>& names,
|
| + const std::vector<gfx::Rect>& rects) {
|
| allowed_entries_.push_back(AllowedEntry(allowed_destination_host_pattern,
|
| css_selector,
|
| - markup));
|
| + markup,
|
| + names,
|
| + rects));
|
| }
|
|
|
| bool TransitionRequestManager::TransitionRequestData::FindEntry(
|
| @@ -133,6 +153,8 @@ bool TransitionRequestManager::TransitionRequestData::FindEntry(
|
| const AllowedEntry& allowed_entry = allowed_entries_[0];
|
| transition_data->markup = allowed_entry.markup;
|
| transition_data->css_selector = allowed_entry.css_selector;
|
| + transition_data->names = allowed_entry.names;
|
| + transition_data->rects = allowed_entry.rects;
|
| return true;
|
| }
|
|
|
| @@ -153,15 +175,23 @@ bool TransitionRequestManager::HasPendingTransitionRequest(
|
| void TransitionRequestManager::AddPendingTransitionRequestData(
|
| int render_process_id,
|
| int render_frame_id,
|
| - const std::string& allowed_destination_host_pattern,
|
| - const std::string& css_selector,
|
| - const std::string& markup) {
|
| + const std::vector<std::string>& data,
|
| + const std::vector<std::string>& names,
|
| + const std::vector<gfx::Rect>& rects) {
|
| DCHECK_CURRENTLY_ON(BrowserThread::IO);
|
|
|
| std::pair<int, int> key(render_process_id, render_frame_id);
|
| - pending_transition_frames_[key].AddEntry(allowed_destination_host_pattern,
|
| - css_selector,
|
| - markup);
|
| +
|
| + // data[0]: allowed_destination_host_pattern
|
| + // data[1]: selector
|
| + // data[2]: markup
|
| + if (data.size() == 3) {
|
| + pending_transition_frames_[key].AddEntry(
|
| + data[0], data[1], data[2], names, rects);
|
| + } else {
|
| + // for testing
|
| + pending_transition_frames_[key].AddEntry("*", "", "", names, rects);
|
| + }
|
| }
|
|
|
| void TransitionRequestManager::ClearPendingTransitionRequestData(
|
|
|