Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(51)

Side by Side Diff: Source/core/page/DOMWindow.cpp

Issue 17603004: Remove dead code in DOMWindow. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « Source/core/page/DOMWindow.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008, 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008, 2010 Apple Inc. All rights reserved.
3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after
220 ASSERT_ARG(window, window); 220 ASSERT_ARG(window, window);
221 Frame* frame = window->frame(); 221 Frame* frame = window->frame();
222 if (!frame) 222 if (!frame)
223 return false; 223 return false;
224 Page* page = frame->page(); 224 Page* page = frame->page();
225 if (!page) 225 if (!page)
226 return false; 226 return false;
227 return frame == page->mainFrame(); 227 return frame == page->mainFrame();
228 } 228 }
229 229
230 bool DOMWindow::dispatchAllPendingBeforeUnloadEvents()
231 {
232 DOMWindowSet& set = windowsWithBeforeUnloadEventListeners();
233 if (set.isEmpty())
234 return true;
235
236 static bool alreadyDispatched = false;
237 ASSERT(!alreadyDispatched);
238 if (alreadyDispatched)
239 return true;
240
241 Vector<RefPtr<DOMWindow> > windows;
242 DOMWindowSet::iterator end = set.end();
243 for (DOMWindowSet::iterator it = set.begin(); it != end; ++it)
244 windows.append(it->key);
245
246 size_t size = windows.size();
247 for (size_t i = 0; i < size; ++i) {
248 DOMWindow* window = windows[i].get();
249 if (!set.contains(window))
250 continue;
251
252 Frame* frame = window->frame();
253 if (!frame)
254 continue;
255
256 if (!frame->loader()->shouldClose())
257 return false;
258 }
259
260 enableSuddenTermination();
261
262 alreadyDispatched = true;
263
264 return true;
265 }
266
267 unsigned DOMWindow::pendingUnloadEventListeners() const 230 unsigned DOMWindow::pendingUnloadEventListeners() const
268 { 231 {
269 return windowsWithUnloadEventListeners().count(const_cast<DOMWindow*>(this)) ; 232 return windowsWithUnloadEventListeners().count(const_cast<DOMWindow*>(this)) ;
270 } 233 }
271 234
272 void DOMWindow::dispatchAllPendingUnloadEvents()
273 {
274 DOMWindowSet& set = windowsWithUnloadEventListeners();
275 if (set.isEmpty())
276 return;
277
278 static bool alreadyDispatched = false;
279 ASSERT(!alreadyDispatched);
280 if (alreadyDispatched)
281 return;
282
283 Vector<RefPtr<DOMWindow> > windows;
284 DOMWindowSet::iterator end = set.end();
285 for (DOMWindowSet::iterator it = set.begin(); it != end; ++it)
286 windows.append(it->key);
287
288 size_t size = windows.size();
289 for (size_t i = 0; i < size; ++i) {
290 DOMWindow* window = windows[i].get();
291 if (!set.contains(window))
292 continue;
293
294 window->dispatchEvent(PageTransitionEvent::create(eventNames().pagehideE vent, false), window->document());
295 window->dispatchEvent(Event::create(eventNames().unloadEvent, false, fal se), window->document());
296 }
297
298 enableSuddenTermination();
299
300 alreadyDispatched = true;
301 }
302
303 // This function: 235 // This function:
304 // 1) Validates the pending changes are not changing any value to NaN; in that c ase keep original value. 236 // 1) Validates the pending changes are not changing any value to NaN; in that c ase keep original value.
305 // 2) Constrains the window rect to the minimum window size and no bigger than t he float rect's dimensions. 237 // 2) Constrains the window rect to the minimum window size and no bigger than t he float rect's dimensions.
306 // 3) Constrains the window rect to within the top and left boundaries of the av ailable screen rect. 238 // 3) Constrains the window rect to within the top and left boundaries of the av ailable screen rect.
307 // 4) Constrains the window rect to within the bottom and right boundaries of th e available screen rect. 239 // 4) Constrains the window rect to within the bottom and right boundaries of th e available screen rect.
308 // 5) Translate the window rect coordinates to be within the coordinate space of the screen. 240 // 5) Translate the window rect coordinates to be within the coordinate space of the screen.
309 FloatRect DOMWindow::adjustWindowRect(Page* page, const FloatRect& pendingChange s) 241 FloatRect DOMWindow::adjustWindowRect(Page* page, const FloatRect& pendingChange s)
310 { 242 {
311 ASSERT(page); 243 ASSERT(page);
312 244
(...skipping 1558 matching lines...) Expand 10 before | Expand all | Expand 10 after
1871 1803
1872 Frame* child = frame->tree()->scopedChild(index); 1804 Frame* child = frame->tree()->scopedChild(index);
1873 if (child) 1805 if (child)
1874 return child->document()->domWindow(); 1806 return child->document()->domWindow();
1875 1807
1876 return 0; 1808 return 0;
1877 } 1809 }
1878 1810
1879 1811
1880 } // namespace WebCore 1812 } // namespace WebCore
OLDNEW
« no previous file with comments | « Source/core/page/DOMWindow.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698