Have is<>(T*) function do a null check on the pointer argument
[WebKit-https.git] / Source / WebKit / ios / ChangeLog
1 2014-10-01  Christophe Dumez  <cdumez@apple.com>
2
3         Have is<>(T*) function do a null check on the pointer argument
4         https://bugs.webkit.org/show_bug.cgi?id=137333
5
6         Reviewed by Gavin Barraclough.
7
8         Have is<>(T*) function do a null check on the argument instead of a
9         simple assertion. This makes sense for 2 reasons:
10         1. It is more consistent with downcast<>(T*), which will succeed even
11            if the argument is a nullptr.
12         2. It simplifies the code a bit as it gets rid of a lot of explicit
13            null checks.
14
15         * WebCoreSupport/WebChromeClientIOS.mm:
16         (WebChromeClientIOS::focusedElementChanged):
17
18 2014-09-29  Daniel Bates  <dabates@apple.com>
19
20         [iOS] Remove CoreLocation workaround
21         https://bugs.webkit.org/show_bug.cgi?id=137198
22
23         Reviewed by Dan Bernstein.
24
25         Following the fix for <rdar://problem/18448331>, we can revert the CoreLocation workaround
26         committed in <http://trac.webkit.org/changeset/173946> and <http://trac.webkit.org/changeset/173940> (in order).
27
28         * Misc/WebGeolocationCoreLocationProvider.mm:
29         (-[WebGeolocationCoreLocationProvider requestGeolocationAuthorization]):
30         (-[WebGeolocationCoreLocationProvider locationManager:didChangeAuthorizationStatus:]):
31
32 2014-09-24  Daniel Bates  <dabates@apple.com>
33
34         [iOS] Another iOS build fix; workaround for CoreLocation
35         https://bugs.webkit.org/show_bug.cgi?id=137104
36         <rdar://problem/18450785>
37
38         Rubber-stamped by Benjamin Poulain.
39
40         Workaround CoreLocation issue by adding a default statement in -[WebGeolocationCoreLocationProvider requestGeolocationAuthorization]
41         and -[WebGeolocationCoreLocationProvider locationManager:didChangeAuthorizationStatus:].
42         We'll remove these default statements once we have the fix for <rdar://problem/18448331>.
43
44         * Misc/WebGeolocationCoreLocationProvider.mm:
45         (-[WebGeolocationCoreLocationProvider requestGeolocationAuthorization]):
46         (-[WebGeolocationCoreLocationProvider locationManager:didChangeAuthorizationStatus:]):
47
48 2014-09-24  Daniel Bates  <dabates@apple.com>
49
50         [iOS] Fix the iOS build; add case statements for kCLAuthorizationStatusAuthorized
51         https://bugs.webkit.org/show_bug.cgi?id=137101
52         <rdar://problem/18449815>
53
54         Reviewed by Mark Lam.
55
56         * Misc/WebGeolocationCoreLocationProvider.mm:
57         (-[WebGeolocationCoreLocationProvider requestGeolocationAuthorization]):
58         (-[WebGeolocationCoreLocationProvider locationManager:didChangeAuthorizationStatus:]):
59
60 2014-09-24  Christophe Dumez  <cdumez@apple.com>
61
62         Use is<HTML*Element>() instead of isHTML*Element() - Part 1
63         https://bugs.webkit.org/show_bug.cgi?id=137068
64
65         Reviewed by Ryosuke Niwa.
66
67         Start using is<HTML*Element>() instead of isHTML*Element().
68         Remaining usages will be updated in a follow-up patch to
69         reduce the size of the change.
70
71         * WebCoreSupport/WebChromeClientIOS.mm:
72         (WebChromeClientIOS::focusedElementChanged):
73
74 2014-09-21  Timothy Hatcher  <timothy@apple.com>
75
76         Make the Web Inspector use a separate web process.
77
78         https://bugs.webkit.org/show_bug.cgi?id=135120
79
80         Reviewed by Anders Carlsson.
81
82         * WebCoreSupport/WebInspectorClientIOS.mm:
83         (WebInspectorClient::WebInspectorClient):
84         Removed m_frontendClient initialization since it is
85         now a std::unique_ptr that defaults to nullptr.
86
87 2014-09-23  Chris Dumez  <cdumez@apple.com>
88
89         Use downcast<HTML*Element>() instead of toHTML*Element()
90         https://bugs.webkit.org/show_bug.cgi?id=137007
91
92         Reviewed by Benjamin Poulain.
93
94         Use downcast<HTML*Element>() instead of toHTML*Element().
95
96         * WebCoreSupport/WebChromeClientIOS.mm:
97         (WebChromeClientIOS::focusedElementChanged):
98
99 2014-09-17  Daniel Bates  <dabates@apple.com>
100
101         Unreviewed, rolling out r173695.
102
103         Broke building third-party Legacy WebKit apps; will
104         investigate offline
105
106         Reverted changeset:
107
108         "[iOS] Make WebCore build with public iOS SDK"
109         https://bugs.webkit.org/show_bug.cgi?id=136487
110         http://trac.webkit.org/changeset/173695
111
112 2014-09-17  Daniel Bates  <dabates@apple.com>
113
114         [iOS] Make WebCore build with public iOS SDK
115         https://bugs.webkit.org/show_bug.cgi?id=136487
116
117         Reviewed by David Kilzer.
118
119         Substitute <WebCore/CGFloatSPI.h> for <CoreGraphics/CGFloat.h>.
120
121         * WebCoreSupport/WebFixedPositionContent.mm:
122
123 2014-09-05  Simon Fraser  <simon.fraser@apple.com>
124
125         Remove some PLATFORM(IOS) code in Color.h/cpp
126         https://bugs.webkit.org/show_bug.cgi?id=136582
127
128         Reviewed by Dan Bates.
129         
130         createCGColorWithDeviceWhite() is only used here so make it a local static function.
131
132         * WebView/WebPDFViewIOS.mm:
133         (createCGColorWithDeviceWhite):
134
135 2014-09-04  Pratik Solanki  <psolanki@apple.com>
136
137         Remove iOS specific disk image cache
138         https://bugs.webkit.org/show_bug.cgi?id=136517
139
140         Reviewed by Antti Koivisto.
141
142         Disk image cache code unnecessarily complicates SharedBuffer implementation. We can remove
143         this now since we don't enable it in WebKit2 on iOS.
144
145         * WebCoreSupport/WebDiskImageCacheClientIOS.h: Removed.
146         * WebCoreSupport/WebDiskImageCacheClientIOS.mm: Removed.
147         * WebView/WebPDFViewPlaceholder.mm:
148         (-[WebPDFViewPlaceholder finishedLoadingWithDataSource:]):
149         (-[WebPDFViewPlaceholder dataSourceMemoryMapped]): Deleted.
150         (-[WebPDFViewPlaceholder dataSourceMemoryMapFailed]): Deleted.
151
152 2014-08-31  Tim Horton  <timothy_horton@apple.com>
153
154         Remove unnecessary (and unnecessarily iOS-specific) setStrokeAndFillColor
155         https://bugs.webkit.org/show_bug.cgi?id=136416
156
157         Reviewed by Dan Bernstein.
158
159         * WebView/WebPDFViewIOS.mm:
160         (-[WebPDFView drawPage:]):
161         (-[WebPDFView drawRect:]):
162         * WebView/WebPlainWhiteView.mm:
163         We only end up filling, so only set the fill color.
164
165 2014-08-22  Simon Fraser  <simon.fraser@apple.com>
166
167         Implement paint flashing in the WK1 InspectorOverlay page
168         https://bugs.webkit.org/show_bug.cgi?id=136138
169
170         Reviewed by Sam Weinig, Joseph Pecoraro.
171
172         Implement paint flashing for the WebKit1 InspectorOverlay via a second canvas in the overlay page.
173         We avoid allocating backing store for this canvas until we have paint rects.
174         
175         Because this overlay page is weird and doesn't know how to paint itself, InspectorOverlay manages
176         an array of rects, and pushes them to the page when they change, before forcing a paint.
177         
178         Because iOS doesn't use the InspectorOverlay page, stub out setShowPaintRects on its
179         WebKit WebInspectorClient, but don't yet implement paint flashing there.
180
181         * WebCoreSupport/WebInspectorClientIOS.mm:
182         (WebInspectorClient::setShowPaintRects):
183         (WebInspectorClient::showPaintRect):
184
185 2014-08-18  Andy Estes  <aestes@apple.com>
186
187         Fix the iOS build after  r172709.
188
189         * WebView/WebPDFViewPlaceholder.mm:
190         (-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):
191
192 2014-07-03  Daniel Bates  <dabates@apple.com>
193
194         Add WTF::move()
195         https://bugs.webkit.org/show_bug.cgi?id=134500
196
197         Rubber-stamped by Anders Carlsson.
198
199         Substitute WTF::move() for std::move().
200
201         * WebCoreSupport/WebFixedPositionContent.mm:
202         (-[WebFixedPositionContent setViewportConstrainedLayers:stickyContainerMap:]):
203         * WebCoreSupport/WebInspectorClientIOS.mm:
204         (WebInspectorFrontendClient::WebInspectorFrontendClient):
205
206 2014-07-01  Alex Christensen  <achristensen@webkit.org>
207
208         [iOS] Compile fix with pointer lock enabled.
209         https://bugs.webkit.org/show_bug.cgi?id=134472
210
211         Reviewed by Pratik Solanki.
212
213         * WebView/WebPDFViewPlaceholder.mm:
214         (-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):
215         Add parameters required for pointer lock.
216
217 2014-06-05  Benjamin Poulain  <bpoulain@apple.com>
218
219         [iOS][WK2] Add device orientation
220         https://bugs.webkit.org/show_bug.cgi?id=133530
221
222         Reviewed by Tim Horton.
223
224         Change WebKit1 to provide the deviceOrientation as pull instead of push.
225
226         * DefaultDelegates/WebDefaultUIKitDelegate.m:
227         (-[WebDefaultUIKitDelegate deviceOrientation]):
228         * WebCoreSupport/WebChromeClientIOS.h:
229         * WebCoreSupport/WebChromeClientIOS.mm:
230         (WebChromeClientIOS::deviceOrientation):
231         * WebView/WebUIKitDelegate.h:
232
233 2014-05-09  Benjamin Poulain  <benjamin@webkit.org>
234
235         [iOS] Switch geolocation to an explicit authorization query model
236         https://bugs.webkit.org/show_bug.cgi?id=132717
237         <rdar://problem/16762390>
238
239         Reviewed by Sam Weinig.
240
241         WebGeolocationCoreLocationProvider is the general WebKit wrapper for CoreLocation.
242
243         The old model was to start WebGeolocationCoreLocationProvider and have the start fail or succeed.
244         The new model is to explicitely ask for authorization through "requestGeolocationAuthorization", and
245         listen to "geolocationAuthorizationGranted" and "geolocationAuthorizationDenied".
246
247         We assume the client of WebGeolocationCoreLocationProvider is well behaved and ask for authorization
248         before invoking "start".
249         If "start" is called and the authorization is not granted, we assume geolocation was reset since
250         the last time authorization was requested, and we reset the client.
251
252
253         WebGeolocationProviderIOS has been adapted to that model. Instead of doing the "warmup" sequence
254         to get the authorization, it queries WebGeolocationCoreLocationProvider explicitly.
255
256         * Misc/WebGeolocationCoreLocationProvider.h:
257         * Misc/WebGeolocationCoreLocationProvider.mm:
258         (-[WebGeolocationCoreLocationProvider createLocationManager]):
259         (-[WebGeolocationCoreLocationProvider dealloc]):
260         (-[WebGeolocationCoreLocationProvider requestGeolocationAuthorization]):
261         (isAuthorizationGranted):
262         (-[WebGeolocationCoreLocationProvider start]):
263         (-[WebGeolocationCoreLocationProvider stop]):
264         (-[WebGeolocationCoreLocationProvider locationManager:didChangeAuthorizationStatus:]):
265         (-[WebGeolocationCoreLocationProvider setEnableHighAccuracy:]):
266         (-[WebGeolocationCoreLocationProvider handleExternalAuthorizationStatusChange:]): Deleted.
267         * Misc/WebGeolocationProviderIOS.mm:
268         (-[WebGeolocationProviderIOS suspend]):
269         (-[WebGeolocationProviderIOS resume]):
270         (-[WebGeolocationProviderIOS registerWebView:]):
271         (-[WebGeolocationProviderIOS unregisterWebView:]):
272         (-[WebGeolocationProviderIOS setEnableHighAccuracy:]):
273         (-[WebGeolocationProviderIOS initializeGeolocationForWebView:listener:]):
274         (-[WebGeolocationProviderIOS geolocationAuthorizationGranted]):
275         (-[WebGeolocationProviderIOS geolocationAuthorizationDenied]):
276         (-[WebGeolocationProviderIOS stopTrackingWebView:]):
277         (-[WebGeolocationProviderIOS resetGeolocation]):
278         (-[_WebCoreLocationUpdateThreadingProxy geolocationAuthorizationGranted]):
279         (-[_WebCoreLocationUpdateThreadingProxy geolocationAuthorizationDenied]):
280         (-[_WebCoreLocationUpdateThreadingProxy positionChanged:WebCore::]):
281         (-[_WebCoreLocationUpdateThreadingProxy errorOccurred:]):
282         (-[_WebCoreLocationUpdateThreadingProxy resetGeolocation]):
283         (-[WebGeolocationProviderIOS _startCoreLocationDelegate]): Deleted.
284         (-[WebGeolocationProviderIOS _stopCoreLocationDelegateIfNeeded]): Deleted.
285         (-[WebGeolocationProviderIOS cancelWarmUpForWebView:]): Deleted.
286         (-[WebGeolocationProviderIOS geolocationDelegateStarted]): Deleted.
287         (-[WebGeolocationProviderIOS geolocationDelegateUnableToStart]): Deleted.
288         (-[_WebCoreLocationUpdateThreadingProxy geolocationDelegateStarted]): Deleted.
289         (-[_WebCoreLocationUpdateThreadingProxy geolocationDelegateUnableToStart]): Deleted.
290
291 2014-04-30  Anders Carlsson  <andersca@apple.com>
292
293         Move the legacy WebKit API into WebKitLegacy.framework and move it inside WebKit.framework
294         https://bugs.webkit.org/show_bug.cgi?id=132399
295         <rdar://problem/15920046>
296
297         Reviewed by Dan Bernstein.
298
299         Import WebKitLegacy headers instead of WebKit headers.
300         
301         * DefaultDelegates/WebDefaultFormDelegate.h:
302         * DefaultDelegates/WebDefaultFrameLoadDelegate.m:
303         * DefaultDelegates/WebDefaultResourceLoadDelegate.m:
304         * DefaultDelegates/WebDefaultUIKitDelegate.h:
305         * Misc/WebGeolocationProviderIOS.h:
306         * Misc/WebNSStringExtrasIPhone.h:
307         * WebCoreSupport/WebFrameIOS.h:
308         * WebCoreSupport/WebFrameIOS.mm:
309         * WebCoreSupport/WebFrameIPhone.h:
310         * WebCoreSupport/WebSelectionRect.h:
311         * WebCoreSupport/WebVisiblePosition.h:
312         * WebView/WebPDFViewIOS.h:
313         * WebView/WebPDFViewIOS.mm:
314         * WebView/WebPDFViewIPhone.h:
315         * WebView/WebPDFViewPlaceholder.h:
316         * WebView/WebPDFViewPlaceholder.mm:
317         * WebView/WebPlainWhiteView.h:
318         * WebView/WebUIKitDelegate.h:
319
320 2014-04-24  Myles C. Maxfield  <mmaxfield@apple.com>
321
322         FontCache::fontCache() never returns nullptr so it can be made to return a reference instead
323         https://bugs.webkit.org/show_bug.cgi?id=132110
324
325         Reviewed by Tim Horton.
326
327         Updates callers to use '.' instead of '->'.
328
329         No new tests are necessary because there should be no behavior change.
330
331         * Misc/EmojiFallbackFontSelector.cpp:
332         (EmojiFallbackFontSelector::getFallbackFontData):
333
334 2014-04-17  Daniel Bates  <dabates@apple.com>
335
336         [iOS] Hook up screen.{availHeight, availWidth, height, width}
337         https://bugs.webkit.org/show_bug.cgi?id=131821
338         <rdar://problem/16413795>
339
340         Reviewed by Benjamin Poulain and Tim Horton.
341
342         Provide iOS-specific WebKit1 implementation for ChromeClient::availableScreenSize().
343
344         Additionally substitute "screenSize" for "viewporScreenSize" to make the code more understandable.
345
346         * WebCoreSupport/WebChromeClientIOS.h:
347         * WebCoreSupport/WebChromeClientIOS.mm:
348         (WebChromeClientIOS::screenSize): Renamed; formerly named viewportScreenSize.
349         (WebChromeClientIOS::availableScreenSize): Added; ASSERT_NOT_REACHED() as a widget
350         should consult it's associated WAKWindow for the available screen size.
351
352 2014-04-08  Alexey Proskuryakov  <ap@apple.com>
353
354         Rename Clipboard to DataTransfer
355         https://bugs.webkit.org/show_bug.cgi?id=131371
356
357         Reviewed by Anders Carlsson.
358
359         * WebView/WebPDFViewPlaceholder.mm:
360
361 2014-04-02  Benjamin Poulain  <bpoulain@apple.com>
362
363         [iOS] Remove the legacy string drawing code
364         https://bugs.webkit.org/show_bug.cgi?id=131088
365
366         Reviewed by Sam Weinig.
367
368         * Misc/WebNSStringDrawing.h: Removed.
369         * Misc/WebNSStringDrawing.mm: Removed.
370         * Misc/WebUIKitSupport.h:
371
372 2014-04-02  Mark Rowe  <mrowe@apple.com>
373
374         Build fix after r166684.
375
376         * WebView/WebPDFViewPlaceholder.mm:
377         (-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):
378
379 2014-03-31  Anders Carlsson  <andersca@apple.com>
380
381         Fix iOS build.
382
383         * WebCoreSupport/WebChromeClientIOS.h:
384         * WebCoreSupport/WebChromeClientIOS.mm:
385         * WebCoreSupport/WebFixedPositionContent.mm:
386         * WebCoreSupport/WebFixedPositionContentInternal.h:
387
388 2014-03-30  Dan Bernstein  <mitz@apple.com>
389
390         Tried to fix the iOS build.
391
392         * Misc/WebGeolocationCoreLocationProvider.mm:
393         (-[WebGeolocationCoreLocationProvider start]):
394         (-[WebGeolocationCoreLocationProvider locationManager:didChangeAuthorizationStatus:]):
395
396 2014-03-27  Enrica Casucci  <enrica@apple.com>
397
398         Add support for AirPlay picker for iOS.
399         https://bugs.webkit.org/show_bug.cgi?id=130876
400         <rdar://problem/15349859>
401
402         Reviewed by Benjamin Poulain.
403
404         Adds support for the AirPlay picker for WebKit.
405         The actual picker is implemented in UIKit.
406
407         * DefaultDelegates/WebDefaultUIKitDelegate.m:
408         (-[WebDefaultUIKitDelegate interactionLocation]):
409         (-[WebDefaultUIKitDelegate showPlaybackTargetPicker:fromRect:]):
410         * WebCoreSupport/WebChromeClientIOS.mm:
411         (WebChromeClientIOS::showPlaybackTargetPicker):
412         * WebCoreSupport/WebFrameIOS.h:
413         * WebCoreSupport/WebFrameIOS.mm:
414         (-[WebFrame elementRectAtPoint:]):
415         * WebView/WebUIKitDelegate.h:
416
417 2014-03-27  Enrica Casucci  <enrica@apple.com>
418
419         Add support for AirPlay picker in WK2 for iOS.
420         https://bugs.webkit.org/show_bug.cgi?id=130855
421         <rdar://problem/15349859>
422
423         Reviewed by Eric Carlson, Joseph Pecoraro and Benjamin Poulain.
424
425         Adds stub for new WebKit chrome client method.
426
427         * WebCoreSupport/WebChromeClientIOS.h:
428         * WebCoreSupport/WebChromeClientIOS.mm:
429         (WebChromeClientIOS::showAirPlayRoutePicker):
430
431 2014-03-25  Joseph Pecoraro  <pecoraro@apple.com>
432
433         [iOS] Inspector View Indication Support
434         https://bugs.webkit.org/show_bug.cgi?id=130709
435
436         Reviewed by Simon Fraser.
437
438         * WebCoreSupport/WebInspectorClientIOS.mm:
439         (WebInspectorClient::showInspectorIndication):
440         (WebInspectorClient::hideInspectorIndication):
441         Renamed methods.
442
443 2014-03-22  Darin Adler  <darin@apple.com>
444
445         Remove String::deprecatedCharacters
446         https://bugs.webkit.org/show_bug.cgi?id=126854
447
448         Reviewed by Sam Weinig.
449
450         * Misc/WebNSStringDrawing.h: Added a FIXME about deleting this file; we can probably do it soon.
451         * Misc/WebNSStringDrawing.mm:
452         (+[NSString _web_setWordRoundingEnabled:]):
453         (+[NSString _web_wordRoundingEnabled]):
454         (+[NSString _web_setWordRoundingAllowed:]):
455         (+[NSString _web_wordRoundingAllowed]):
456         (+[NSString _web_setAscentRoundingEnabled:]):
457         (+[NSString _web_ascentRoundingEnabled]):
458         (-[NSString _web_drawAtPoint:withFont:]):
459         (-[NSString _web_sizeWithFont:]):
460         (-[NSString _web_sizeWithFont:forWidth:ellipsis:]):
461         (-[NSString _web_sizeWithFont:forWidth:ellipsis:letterSpacing:]):
462         (-[NSString _web_sizeWithFont:forWidth:ellipsis:letterSpacing:resultRange:]):
463         (-[NSString _web_drawAtPoint:forWidth:withFont:ellipsis:]):
464         (-[NSString _web_drawAtPoint:forWidth:withFont:ellipsis:letterSpacing:]):
465         (-[NSString _web_drawAtPoint:forWidth:withFont:ellipsis:letterSpacing:includeEmoji:]):
466         (-[NSString _web_drawInRect:withFont:ellipsis:alignment:lineSpacing:includeEmoji:truncationRect:measureOnly:]):
467         (-[NSString _web_drawInRect:withFont:ellipsis:alignment:lineSpacing:includeEmoji:truncationRect:]):
468         (-[NSString _web_drawInRect:withFont:ellipsis:alignment:lineSpacing:]):
469         (-[NSString _web_drawInRect:withFont:ellipsis:alignment:]):
470         (-[NSString _web_sizeInRect:withFont:ellipsis:lineSpacing:]):
471         (-[NSString _web_sizeInRect:withFont:ellipsis:]):
472         (-[NSString _web_stringForWidth:withFont:ellipsis:letterSpacing:includeEmoji:]):
473         (-[NSString _web_sizeForWidth:withAttributes:]):
474         (-[NSString _web_drawAtPoint:forWidth:withAttributes:]):
475         (-[NSString _web_sizeInRect:withAttributes:]):
476         (-[NSString _web_drawInRect:withAttributes:]):
477         Emptied out all these functions since callers aren't really using them any more.
478
479 2014-03-21  Tim Horton  <timothy_horton@apple.com>
480
481         Always retrieve the screen scale factor from WKSI
482         <rdar://problem/16329679>
483
484         Reviewed by Sam Weinig.
485
486         * Misc/WebUIKitSupport.mm:
487         (WebKitSetIsClassic): Empty this out; it's no longer needed, but will still be called.
488
489 2014-03-19  Tim Horton  <timothy_horton@apple.com>
490
491         [iOS] WebPDFViewPlaceholder divides-by-zero with an empty document
492         https://bugs.webkit.org/show_bug.cgi?id=130444
493         <rdar://problem/15580682>
494
495         Reviewed by Sam Weinig.
496
497         * WebView/WebPDFViewPlaceholder.h:
498         * WebView/WebPDFViewPlaceholder.mm:
499         (-[WebPDFViewPlaceholder layout]):
500         Get rid of boundingSize, it's never assigned to anything but CGSizeZero,
501         which is confusing.
502
503         Don't divide by zero if we have no pages, instead return an empty bounding size.
504
505         (-[WebPDFViewPlaceholder _computePageRects:]):
506         If we have an empty document, set the background color to white.
507         Otherwise, set it to black. It's not clear that black is the ideal
508         background color, but this retains existing behavior.
509
510 2014-03-14  Maciej Stachowiak  <mjs@apple.com>
511
512         Replace "Apple Computer, Inc." with "Apple Inc." in copyright headers
513         https://bugs.webkit.org/show_bug.cgi?id=130276
514         <rdar://problem/16266927>
515         
516         Reviewed by Simon Fraser.
517
518         * WebCoreSupport/WebCaretChangeListener.h:
519         * WebCoreSupport/WebInspectorClientIOS.mm:
520         * WebView/WebPlainWhiteView.h:
521         * WebView/WebPlainWhiteView.mm:
522
523 2014-03-12  Sergio Villar Senin  <svillar@igalia.com>
524
525         Rename DEFINE_STATIC_LOCAL to DEPRECATED_DEFINE_STATIC_LOCAL
526         https://bugs.webkit.org/show_bug.cgi?id=129612
527
528         Reviewed by Darin Adler.
529
530         For new code use static NeverDestroyed<T> instead.
531
532         * Misc/EmojiFallbackFontSelector.cpp:
533         (EmojiFallbackFontSelector::getFallbackFontData):
534         * WebCoreSupport/WebFixedPositionContent.mm:
535         (WebFixedPositionContentDataLock):
536
537 2014-03-13  Benjamin Poulain  <bpoulain@apple.com>
538
539         The viewport code should not depend on WebKitSystemInterface
540         https://bugs.webkit.org/show_bug.cgi?id=130218
541
542         Reviewed by Tim Horton.
543
544         * WebCoreSupport/WebChromeClientIOS.h:
545         * WebCoreSupport/WebChromeClientIOS.mm:
546         (WebChromeClientIOS::viewportScreenSize):
547         Get the viewport size from WebKitSystemInterface.
548
549 2014-03-12  Enrica Casucci  <enrica@apple.com>
550
551         Incorrect reference counting of Range in WebFrame.
552         https://bugs.webkit.org/show_bug.cgi?id=130160
553         <rdar://problem/16282535>
554
555         Reviewed by Anders Carlsson.
556
557         * WebCoreSupport/WebFrameIOS.mm:
558         (-[WebFrame selectionRects]):
559
560 2014-03-12  Simon Fraser  <simon.fraser@apple.com>
561
562         Spelling is hard
563         https://bugs.webkit.org/show_bug.cgi?id=130146
564
565         Reviewed by Beth Dakin.
566         
567         Fix spelling (constained -> constrained).
568
569         * WebCoreSupport/WebFixedPositionContent.mm:
570         (-[WebFixedPositionContent scrollOrZoomChanged:]):
571         (-[WebFixedPositionContent overflowScrollPositionForLayer:changedTo:]):
572         (-[WebFixedPositionContent setViewportConstrainedLayers:WTF::WebCore::stickyContainerMap:WTF::]):
573         (-[WebFixedPositionContent hasFixedOrStickyPositionLayers]):
574         (-[WebFixedPositionContent minimumOffsetFromFixedPositionLayersToAnchorEdge:ofRect:inLayer:]):
575
576 2014-02-17  Sergio Correia  <sergio.correia@openbossa.org>
577
578         Replace uses of PassOwnPtr/OwnPtr with std::unique_ptr in WebCore/inspector
579         https://bugs.webkit.org/show_bug.cgi?id=128681
580
581         Reviewed by Timothy Hatcher.
582
583         Another step towards getting rid of PassOwnPtr/OwnPtr, now targeting
584         WebCore/inspector/*. Besides files in there, a few other files in
585         JavaScriptCore/inspector, WebKit/, WebKit2/WebProcess/WebCoreSupport/
586         and WebCore/testing were touched.
587
588         * WebCoreSupport/WebInspectorClientIOS.mm:
589
590 2014-02-12  Benjamin Poulain  <bpoulain@apple.com>
591
592         [WK2][iOS] Add back the special viewport for the old xhtml mobile doctype
593         https://bugs.webkit.org/show_bug.cgi?id=128639
594
595         Reviewed by Andreas Kling.
596
597         * WebCoreSupport/WebChromeClientIOS.h:
598         * WebCoreSupport/WebChromeClientIOS.mm:
599         (WebChromeClientIOS::didReceiveMobileDocType):
600
601 2014-02-08  Ryosuke Niwa  <rniwa@webkit.org>
602
603         Build fix after r163739.
604
605         * WebCoreSupport/WebFrameIOS.mm:
606         (-[WebFrame collapseSelection]):
607         (-[WebFrame aggressivelyExpandSelectionToWordContainingCaretSelection]):
608
609 2014-02-03  Dan Bernstein  <mitz@apple.com>
610
611         More iOS build fixing.
612
613         * Misc/WebNSStringDrawing.mm:
614         (-[NSString __web_drawAtPoint:forWidth:withFont:ellipsis:letterSpacing:includeEmoji:measureOnly:renderedStringOut:drawUnderline:]):
615         (-[NSString __web_drawInRect:withFont:ellipsis:alignment:letterSpacing:lineSpacing:includeEmoji:truncationRect:measureOnly:renderedStringOut:drawUnderline:]):
616
617 2014-01-31  Ryosuke Niwa  <rniwa@webkit.org>
618
619         Remove inline member functions of FrameSelection that access m_selection
620         https://bugs.webkit.org/show_bug.cgi?id=127986
621
622         Reviewed by Enrica Casucci.
623
624         * WebCoreSupport/WebFrameIOS.mm:
625         (-[WebFrame extendSelection:]):
626         (-[WebFrame ensureRangedSelectionContainsInitialStartPoint:initialEndPoint:]):
627         (-[WebFrame aggressivelyExpandSelectionToWordContainingCaretSelection]):
628         (-[WebFrame expandSelectionToSentence]):
629         (-[WebFrame setBaseWritingDirection:]):
630         (-[WebFrame smartExtendRangedSelection:]):
631
632 2014-01-30  Andrei Bucur  <abucur@adobe.com>
633
634         Remove the ACCELERATED_COMPOSITING flag
635         https://bugs.webkit.org/show_bug.cgi?id=127833
636
637         Reviewed by Antti Koivisto.
638
639         Remove the USE(ACCELERATED_COMPOSITING) conditionals from the code base and make AC
640         mandatory.
641
642         * WebCoreSupport/WebChromeClientIOS.h:
643         * WebCoreSupport/WebChromeClientIOS.mm:
644         (WebChromeClientIOS::attachRootGraphicsLayer):
645         * WebView/WebUIKitDelegate.h:
646
647 2014-01-27  Joseph Pecoraro  <pecoraro@apple.com>
648
649         Unreviewed iOS build fix. FALLTHROUGHs for iOS.
650
651         * Misc/WebNSStringDrawing.mm:
652         (needsBidiLayout):
653
654 2014-01-27  Andy Estes  <aestes@apple.com>
655
656         Scrub WebKit API headers of WTF macros
657         https://bugs.webkit.org/show_bug.cgi?id=127706
658
659         Reviewed by David Kilzer.
660
661         * WebCoreSupport/WebMIMETypeRegistry.h: Changed PLATFORM(IOS) to
662         TARGET_OS_IPHONE.
663
664 2014-01-15  Sam Weinig  <sam@webkit.org>
665
666         TextBreakIterator's should support Latin-1 for all iterator types (Part 3)
667         https://bugs.webkit.org/show_bug.cgi?id=126856
668
669         Reviewed by Ryosuke Niwa.
670
671         Change all the TextBreakIterator creation functions to take StringViews. Remove a few
672         now unnecessary up-conversions to UTF-16 in the process.
673
674         * Misc/WebNSStringDrawing.mm:
675
676 2014-01-16  Anders Carlsson  <andersca@apple.com>
677
678         Change all uses of FINAL to final now that all our compilers support it
679         https://bugs.webkit.org/show_bug.cgi?id=127142
680
681         Reviewed by Benjamin Poulain.
682
683         * WebCoreSupport/WebDiskImageCacheClientIOS.h:
684
685 2014-01-16  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
686
687         Remove workaround for compilers not supporting explicit override control
688         https://bugs.webkit.org/show_bug.cgi?id=127111
689
690         Reviewed by Anders Carlsson.
691
692         Now all compilers support explicit override control, this workaround can be removed.
693
694         * Misc/EmojiFallbackFontSelector.h:
695         * Storage/WebSQLiteDatabaseTrackerClient.h:
696         * WebCoreSupport/PopupMenuIOS.h:
697         * WebCoreSupport/SearchPopupMenuIOS.h:
698         * WebCoreSupport/WebChromeClientIOS.h:
699         * WebCoreSupport/WebDiskImageCacheClientIOS.h:
700
701 2014-01-16  Andy Estes  <aestes@apple.com>
702
703         [iOS] Fix build issues with exported headers
704
705         * Misc/WebNSStringExtrasIOS.h: Changed PLATFORM(IOS) to
706         TARGET_OS_IPHONE.
707
708 2014-01-14  Simon Fraser  <simon.fraser@apple.com>
709
710         Avoid PLATFORM() macros in exported headers.
711
712         * WebView/WebPDFViewPlaceholder.h:
713
714 2014-01-14  Simon Fraser  <simon.fraser@apple.com>
715
716         Clean up exports and headers for iOS.
717
718         * Misc/WebNSStringDrawing.h: Don't use PLATFORM() macro in an exported header.
719         * WebCoreSupport/WebFrameIOS.h: Ditto.
720         * WebCoreSupport/WebSelectionRect.h: Ditto.
721
722 2014-01-14  Dean Jackson  <dino@apple.com>
723
724         Remove .objc_class_name_WebInspectorXPCWrapper from export on iOS build.
725
726         * WebKit.iOS.exp:
727
728 2014-01-14  Simon Fraser  <simon.fraser@apple.com>
729
730         Fix WK1 iOS build: need implementations of these functions in WebInspectorClientIOS.
731
732         * WebCoreSupport/WebInspectorClientIOS.mm:
733         (WebInspectorClient::indicate):
734         (WebInspectorClient::hideIndication):
735
736 2014-01-13  Simon Fraser  <simon.fraser@apple.com>
737
738         More work towards getting iOS WK1 building.
739
740         * WebCoreSupport/WebFrameIOS.mm:
741         (-[WebFrame imageForNode:allowDownsampling:drawContentBehindTransparentNodes:]): Stub out this
742         function, since it should use recently-refactored node snapshotting code. Covered by <rdar://problem/15808709>.
743
744 2014-01-12  Darin Adler  <darin@apple.com>
745
746         Add type checking to isEqual methods
747         https://bugs.webkit.org/show_bug.cgi?id=126862
748
749         Reviewed by Anders Carlsson.
750
751         * WebCoreSupport/WebVisiblePosition.mm:
752         (-[WebVisiblePosition isEqual:]): Add type checking on the argument.
753         Add a FIXME about the lack of a hash method override. Simplified by
754         removing the unneeded local variables.
755
756 2014-01-02  Andy Estes  <aestes@apple.com>
757
758         [iOS] Upstream remainder of minimal-ui viewport changes
759         https://bugs.webkit.org/show_bug.cgi?id=126410
760
761         Reviewed by Sam Weinig.
762
763         * WebCoreSupport/WebChromeClientIOS.mm:
764         (dictionaryForViewportArguments):
765         * WebKit.iOS.exp:
766
767 2013-12-31  Andy Estes  <aestes@apple.com>
768
769         [iOS] Upstream PLATFORM(IOS) changes to Source/WebKit/
770         https://bugs.webkit.org/show_bug.cgi?id=125746
771
772         Reviewed by David Kilzer.
773
774         * WebCoreSupport/WebVisiblePosition.mm:
775         (-[WebVisiblePosition positionAtStartOrEndOfWord]): Changed a comment
776         to mention iOS rather than iPhone.
777
778 2013-12-27  Daniel Bates  <dabates@apple.com>
779
780         [iOS] Upstream WebCore/page changes
781         https://bugs.webkit.org/show_bug.cgi?id=126180
782
783         Reviewed by Darin Adler.
784
785         * WebCoreSupport/WebChromeClientIOS.mm: Substitute ENABLE(IOS_TOUCH_EVENTS) for ENABLE(TOUCH_EVENTS).
786
787 2013-12-04  Brian J. Burg  <burg@cs.washington.edu>
788
789         Consolidate various frame snapshot capabilities.
790         https://bugs.webkit.org/show_bug.cgi?id=124325
791
792         Reviewed by Darin Adler.
793
794         * WebCoreSupport/WebFrameIOS.mm: use new header file.
795
796 2013-12-04  Andy Estes  <aestes@apple.com>
797
798         [iOS] Upstream build fixes in Source/WebKit/ios/
799         https://bugs.webkit.org/show_bug.cgi?id=125230
800
801         Reviewed by Sam Weinig.
802
803         * DefaultDelegates/WebDefaultUIKitDelegate.m:
804         (-[WebDefaultUIKitDelegate webViewDidReceiveMobileDocType:]):
805         * Misc/WebNSStringDrawing.mm:
806         (needsBidiLayout):
807         (-[NSString __web_drawAtPoint:forWidth:withFont:ellipsis:letterSpacing:includeEmoji:measureOnly:renderedStringOut:drawUnderline:]):
808         (-[NSString __web_drawInRect:withFont:ellipsis:alignment:letterSpacing:lineSpacing:includeEmoji:truncationRect:measureOnly:renderedStringOut:drawUnderline:]):
809         * Misc/WebUIKitSupport.mm:
810         (WebKitInitialize):
811         * WebCoreSupport/WebChromeClientIOS.h:
812         * WebCoreSupport/WebChromeClientIOS.mm:
813         (WebChromeClientIOS::didReceiveMobileDocType):
814         (WebChromeClientIOS::focusedElementChanged):
815         * WebCoreSupport/WebFrameIOS.mm:
816         (-[WebFrame clearSelection]):
817         (-[WebFrame selectionState]):
818         (-[WebFrame collapseSelection]):
819         (-[WebFrame extendSelection:]):
820         (-[WebFrame selectionRects]):
821         (-[WebFrame setRangedSelectionWithExtentPoint:]):
822         (-[WebFrame setRangedSelectionExtentPoint:baseIsStart:allowFlipping:]):
823         (-[WebFrame setSelectionWithBasePoint:extentPoint:baseIsStart:allowFlipping:]):
824         (-[WebFrame setSelectionWithFirstPoint:secondPoint:]):
825         (-[WebFrame ensureRangedSelectionContainsInitialStartPoint:initialEndPoint:]):
826         (-[WebFrame aggressivelyExpandSelectionToWordContainingCaretSelection]):
827         (-[WebFrame expandSelectionToSentence]):
828         (-[WebFrame setBaseWritingDirection:]):
829         (-[WebFrame moveSelectionToStart]):
830         (-[WebFrame moveSelectionToEnd]):
831         (-[WebFrame moveSelectionToPoint:]):
832         (-[WebFrame setSelectionGranularity:]):
833         (-[WebFrame smartExtendRangedSelection:]):
834         (-[WebFrame previousUnperturbedDictationResultBoundaryFromPosition:]):
835         (-[WebFrame nextUnperturbedDictationResultBoundaryFromPosition:]):
836         * WebCoreSupport/WebInspectorClientIOS.mm:
837         (WebInspectorClient::WebInspectorClient):
838         (WebInspectorClient::didSetSearchingForNode):
839         (WebInspectorClient::setupRemoteConnection):
840         (WebInspectorClient::teardownRemoteConnection):
841         * WebCoreSupport/WebVisiblePosition.mm:
842         (-[WebVisiblePosition enclosingRangeWithDictationPhraseAlternatives:]):
843         (-[WebVisiblePosition enclosingRangeWithCorrectionIndicator]):
844         (-[DOMHTMLInputElement startPosition]):
845         (-[DOMHTMLInputElement endPosition]):
846         (-[DOMHTMLTextAreaElement startPosition]):
847         (-[DOMHTMLTextAreaElement endPosition]):
848         * WebView/WebPDFViewIOS.mm:
849         (+[WebPDFView shadowColor]):
850         (+[WebPDFView backgroundColor]):
851         (-[WebPDFView _checkPDFTitle]):
852         * WebView/WebPDFViewPlaceholder.mm:
853         (-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):
854         * WebView/WebUIKitDelegate.h:
855
856 2013-12-03  Joseph Pecoraro  <pecoraro@apple.com>
857
858         Web Inspector: Push Remote Inspector debugging connection management into JavaScriptCore
859         https://bugs.webkit.org/show_bug.cgi?id=124613
860
861         Reviewed by Timothy Hatcher.
862
863         * WebCoreSupport/WebInspectorClientIOS.mm:
864         (WebInspectorClient::WebInspectorClient):
865         (WebInspectorClient::inspectorDestroyed):
866
867 2013-12-03  Ralph Thomas  <ralpht@gmail.com>
868
869         Typo: FixedPositionConstaint -> FixedPositionConstraint
870         https://bugs.webkit.org/show_bug.cgi?id=125171
871
872         Reviewed by Simon Fraser.
873
874         * WebCoreSupport/WebFixedPositionContent.mm:
875         (-[WebFixedPositionContent scrollOrZoomChanged:]):
876
877 2013-11-18  Commit Queue  <commit-queue@webkit.org>
878
879         Unreviewed, rolling out r159455.
880         http://trac.webkit.org/changeset/159455
881         https://bugs.webkit.org/show_bug.cgi?id=124568
882
883         broke two api tests (see bug 124564) (Requested by thorton on
884         #webkit).
885
886         * WebCoreSupport/WebFrameIOS.mm:
887
888 2013-11-18  Brian J. Burg  <burg@cs.washington.edu>
889
890         Consolidate various frame snapshot capabilities.
891         https://bugs.webkit.org/show_bug.cgi?id=124325
892
893         Reviewed by Timothy Hatcher.
894
895         * WebCoreSupport/WebFrameIOS.mm: use new header file.
896
897 2013-11-07  Joseph Pecoraro  <pecoraro@apple.com>
898
899         Remove a PLATFORM(IOS) from WebKit Private Header
900         https://bugs.webkit.org/show_bug.cgi?id=124014
901
902         Reviewed by Timothy Hatcher.
903
904         * WebKit.iOS.exp:
905
906 2013-10-29  Andy Estes  <aestes@apple.com>
907
908         [iOS] Upstream Source/WebKit/ios/
909         https://bugs.webkit.org/show_bug.cgi?id=123470
910
911         Reviewed by Sam Weinig.
912
913         * DefaultDelegates/WebDefaultFormDelegate.h: Added.
914         * DefaultDelegates/WebDefaultFormDelegate.m: Added.
915         * DefaultDelegates/WebDefaultFrameLoadDelegate.h: Added.
916         * DefaultDelegates/WebDefaultFrameLoadDelegate.m: Added.
917         * DefaultDelegates/WebDefaultResourceLoadDelegate.h: Added.
918         * DefaultDelegates/WebDefaultResourceLoadDelegate.m: Added.
919         * DefaultDelegates/WebDefaultUIKitDelegate.h: Added.
920         * DefaultDelegates/WebDefaultUIKitDelegate.m: Added.
921         * Misc/EmojiFallbackFontSelector.cpp: Added.
922         * Misc/EmojiFallbackFontSelector.h: Added.
923         * Misc/MemoryMeasure.h: Added.
924         * Misc/MemoryMeasure.mm: Added.
925         * Misc/WebGeolocationCoreLocationProvider.h: Added.
926         * Misc/WebGeolocationCoreLocationProvider.mm: Added.
927         * Misc/WebGeolocationProviderIOS.h: Added.
928         * Misc/WebGeolocationProviderIOS.mm: Added.
929         * Misc/WebNSStringDrawing.h: Added.
930         * Misc/WebNSStringDrawing.mm: Added.
931         * Misc/WebNSStringExtrasIOS.h: Added.
932         * Misc/WebNSStringExtrasIOS.m: Added.
933         * Misc/WebNSStringExtrasIPhone.h: Added.
934         * Misc/WebUIKitSupport.h: Added.
935         * Misc/WebUIKitSupport.mm: Added.
936         * Storage/WebSQLiteDatabaseTrackerClient.h: Added.
937         * Storage/WebSQLiteDatabaseTrackerClient.mm: Added.
938         * WebCoreSupport/PopupMenuIOS.h: Added.
939         * WebCoreSupport/PopupMenuIOS.mm: Added.
940         * WebCoreSupport/SearchPopupMenuIOS.cpp: Added.
941         * WebCoreSupport/SearchPopupMenuIOS.h: Added.
942         * WebCoreSupport/WebCaretChangeListener.h: Added.
943         * WebCoreSupport/WebChromeClientIOS.h: Added.
944         * WebCoreSupport/WebChromeClientIOS.mm: Added.
945         * WebCoreSupport/WebFixedPositionContent.h: Added.
946         * WebCoreSupport/WebFixedPositionContent.mm: Added.
947         * WebCoreSupport/WebFixedPositionContentInternal.h: Added.
948         * WebCoreSupport/WebFrameIOS.h: Added.
949         * WebCoreSupport/WebFrameIOS.mm: Added.
950         * WebCoreSupport/WebFrameIPhone.h: Added.
951         * WebCoreSupport/WebGeolocation.mm: Added.
952         * WebCoreSupport/WebGeolocationInternal.h: Added.
953         * WebCoreSupport/WebGeolocationPrivate.h: Added.
954         * WebCoreSupport/WebMIMETypeRegistry.h: Added.
955         * WebCoreSupport/WebMIMETypeRegistry.mm: Added.
956         * WebCoreSupport/WebSelectionRect.h: Added.
957         * WebCoreSupport/WebSelectionRect.m: Added.
958         * WebCoreSupport/WebVisiblePosition.h: Added.
959         * WebCoreSupport/WebVisiblePosition.mm: Added.
960         * WebCoreSupport/WebVisiblePositionInternal.h: Added.
961         * WebKit.iOS.exp: Added.
962         * WebView/WebFrameViewWAKCompatibility.m: Added.
963         * WebView/WebMailDelegate.h: Added.
964         * WebView/WebPDFViewIOS.h: Added.
965         * WebView/WebPDFViewIOS.mm: Added.
966         * WebView/WebPDFViewIPhone.h: Added.
967         * WebView/WebPDFViewPlaceholder.h: Added.
968         * WebView/WebPDFViewPlaceholder.mm: Added.
969         * WebView/WebPlainWhiteView.h: Added.
970         * WebView/WebPlainWhiteView.mm: Added.
971         * WebView/WebUIKitDelegate.h: Added.
972
973 2013-10-25  Joseph Pecoraro  <pecoraro@apple.com>
974
975         Upstream ENABLE(REMOTE_INSPECTOR) and enable on iOS and Mac
976         https://bugs.webkit.org/show_bug.cgi?id=123111
977
978         Reviewed by Timothy Hatcher.
979
980         iOS does not have a local inspector, only remote. So give it a custom
981         implementation separate from the WebKit/mac WebInspectorClient
982         implementation which handles an attaching/detaching local inspector.
983
984         * WebKit.xcodeproj/project.pbxproj:
985         * ios/WebCoreSupport/WebInspectorClientIOS.mm: Added.
986         (WebInspectorClient::WebInspectorClient):
987         (WebInspectorClient::inspectorDestroyed):
988         (WebInspectorClient::openInspectorFrontend):
989         (WebInspectorClient::bringFrontendToFront):
990         (WebInspectorClient::closeInspectorFrontend):
991         (WebInspectorClient::didResizeMainFrame):
992         (WebInspectorClient::highlight):
993         (WebInspectorClient::hideHighlight):
994         (WebInspectorClient::didSetSearchingForNode):
995         (WebInspectorClient::sendMessageToFrontend):
996         (WebInspectorClient::sendMessageToBackend):
997         (WebInspectorClient::setupRemoteConnection):
998         (WebInspectorClient::teardownRemoteConnection):
999         (WebInspectorClient::hasLocalSession):
1000         (WebInspectorClient::canBeRemotelyInspected):
1001         (WebInspectorClient::inspectedWebView):
1002         (WebInspectorFrontendClient::WebInspectorFrontendClient):
1003         (WebInspectorFrontendClient::attachAvailabilityChanged):
1004         (WebInspectorFrontendClient::frontendLoaded):
1005         (WebInspectorFrontendClient::localizedStringsURL):
1006         (WebInspectorFrontendClient::bringToFront):
1007         (WebInspectorFrontendClient::closeWindow):
1008         (WebInspectorFrontendClient::disconnectFromBackend):
1009         (WebInspectorFrontendClient::attachWindow):
1010         (WebInspectorFrontendClient::detachWindow):
1011         (WebInspectorFrontendClient::setAttachedWindowHeight):
1012         (WebInspectorFrontendClient::setAttachedWindowWidth):
1013         (WebInspectorFrontendClient::setToolbarHeight):
1014         (WebInspectorFrontendClient::inspectedURLChanged):
1015         (WebInspectorFrontendClient::updateWindowTitle):
1016         (WebInspectorFrontendClient::save):
1017         (WebInspectorFrontendClient::append):