A page containing multiparts with "multipart/x-mixed-replace" should not be cached.
[WebKit-https.git] / Source / WebKit / blackberry / ChangeLog
1 2012-03-27  Chris Guan  <chris.guan@torchmobile.com.cn>
2
3         A page containing multiparts with "multipart/x-mixed-replace" should not be cached.
4         https://bugs.webkit.org/show_bug.cgi?id=82291
5
6         Reviewed by Rob Buis.
7
8         If we have a multiPart reponse with multipart/x-mixed-replace, 
9         the current page should not be cached. I use isMultipartPayload() 
10         API which was supposed to be set in NetworkJob to decide to 
11         cache page or not.
12
13         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
14         (WebCore::FrameLoaderClientBlackBerry::canCachePage):
15
16 2012-03-25  Arvid Nilsson  <anilsson@rim.com>
17
18         [BlackBerry] Accelerated compositing layers fail to render when using WebPageCompositor
19         https://bugs.webkit.org/show_bug.cgi?id=82104
20         RIM PR: 145963
21
22         Reviewed by Rob Buis.
23
24         The root layer may be set before we have a layer renderer, because the
25         latter is not created until we get an OpenGL context from the embedder.
26
27         Fixed by setting the root layer on the layer renderer when it's created
28         instead of assuming a certain order of events.
29
30         * Api/WebPageCompositor.cpp:
31         (BlackBerry::WebKit::WebPageCompositorPrivate::setContext):
32         (BlackBerry::WebKit::WebPageCompositorPrivate::setRootLayer):
33
34 2012-03-23  Arvid Nilsson  <anilsson@rim.com>
35
36         [BlackBerry] Add WebPageCompositor class to BlackBerry WebKit API
37         https://bugs.webkit.org/show_bug.cgi?id=81121
38         RIM PR: 136687
39
40         Reviewed by Rob Buis.
41
42         The idea is for the API client to use a WebPageCompositor object to
43         render the WebPage when there's no screen window available.
44
45         The WebPageCompositorPrivate becomes reference counted in order to be
46         kept alive either because it's used for accelerated compositing layers
47         or used for the WebPageCompositor API. It can still work standalone.
48
49         Clean up some code - no need to keep track of a separate boolean
50         WebPagePrivate::m_isAcceleratedCompositingActive when the state of
51         m_compositor can tell you.
52
53         Also remove duplicated code from WebPagePrivate - go directly to the
54         compositor object instead, if you need to draw the AC layers.
55
56         Reviewed internally by Robin Cao and the hasBlitJobs/blitOnIdle change
57         by Filip Spacek.
58
59         * Api/BackingStore.cpp:
60         (BlackBerry::WebKit::BackingStore::hasBlitJobs):
61         (BlackBerry::WebKit::BackingStore::blitOnIdle):
62         (BlackBerry::WebKit::BackingStorePrivate::blitContents):
63         (BlackBerry::WebKit::BackingStorePrivate::drawSubLayers):
64         (BlackBerry::WebKit::BackingStorePrivate::drawAndBlendLayersForDirectRendering):
65         (BlackBerry::WebKit::BackingStorePrivate::surfaceSize):
66         (BlackBerry::WebKit::BackingStorePrivate::buffer):
67         * Api/WebPage.cpp:
68         (BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
69         (BlackBerry::WebKit::WebPagePrivate::drawLayersOnCommit):
70         (BlackBerry::WebKit::WebPagePrivate::setCompositor):
71         (BlackBerry::WebKit::WebPagePrivate::setRootLayerCompositingThread):
72         (BlackBerry::WebKit::WebPagePrivate::createCompositor):
73         (BlackBerry::WebKit::WebPagePrivate::destroyCompositor):
74         * Api/WebPage.h:
75         * Api/WebPageCompositor.cpp:
76         (BlackBerry::WebKit::WebPageCompositorPrivate::WebPageCompositorPrivate):
77         (BlackBerry::WebKit::WebPageCompositorPrivate::setContext):
78         (BlackBerry::WebKit::WebPageCompositorPrivate::hardwareCompositing):
79         (BlackBerry::WebKit::WebPageCompositorPrivate::setRootLayer):
80         (BlackBerry::WebKit::WebPageCompositorPrivate::render):
81         (BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
82         (BlackBerry::WebKit::WebPageCompositorPrivate::animationTimerFired):
83         (BlackBerry::WebKit::WebPageCompositorPrivate::compositorDestroyed):
84         (BlackBerry::WebKit::WebPageCompositor::WebPageCompositor):
85         (BlackBerry::WebKit::WebPageCompositor::~WebPageCompositor):
86         (BlackBerry::WebKit::WebPageCompositor::client):
87         (BlackBerry::WebKit::WebPageCompositor::prepareFrame):
88         (BlackBerry::WebKit::WebPageCompositor::render):
89         (BlackBerry::WebKit::WebPageCompositor::cleanup):
90         (BlackBerry::WebKit::WebPageCompositor::contextLost):
91         * Api/WebPageCompositor.h: Added.
92         * Api/WebPageCompositorClient.h: Added.
93         * Api/WebPageCompositor_p.h:
94         (BlackBerry::WebKit::WebPageCompositorPrivate::create):
95         (BlackBerry::WebKit::WebPageCompositorPrivate::context):
96         (BlackBerry::WebKit::WebPageCompositorPrivate::animationFrameTimestamp):
97         (BlackBerry::WebKit::WebPageCompositorPrivate::page):
98         (BlackBerry::WebKit::WebPageCompositorPrivate::client):
99         * Api/WebPage_p.h:
100         (BlackBerry::WebKit::WebPagePrivate::client):
101         (BlackBerry::WebKit::WebPagePrivate::isAcceleratedCompositingActive):
102         (BlackBerry::WebKit::WebPagePrivate::compositor):
103
104 2012-03-22  Charles Wei  <charles.wei@torchmobile.com.cn>
105
106         [BlackBerry] Need to store the meta info of a page in the ViewState of the history
107         https://bugs.webkit.org/show_bug.cgi?id=82000
108
109         Reviewed by Rob Buis.
110
111         Internally reviewed by George Staikos.
112
113         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
114         (WebCore::FrameLoaderClientBlackBerry::saveViewStateToItem):
115         (WebCore::FrameLoaderClientBlackBerry::restoreViewState):
116
117 2012-03-22  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>
118
119         [BlackBerry] add interface clearCredentials() and clearNeverRememberSites()
120         https://bugs.webkit.org/show_bug.cgi?id=81887
121
122         Reviewed by Rob Buis.
123
124         Added two interface functions clearCredentials() and
125         clearNeverRememberSites() into class WebPage, which
126         should be used by UI to clear the stored credential
127         information and never remember sites.
128         Also implemented the corresponding functions in class
129         CredentialManager to call CredentialBackingStore
130         to perform the actual clear table work.
131
132         * Api/WebPage.cpp:
133         (BlackBerry::WebKit::WebPage::clearCredentials):
134         (WebKit):
135         (BlackBerry::WebKit::WebPage::clearNeverRememberSites):
136         * Api/WebPage.h:
137         * WebCoreSupport/CredentialManager.cpp:
138         (WebCore::CredentialManager::clearCredentials):
139         (WebCore):
140         (WebCore::CredentialManager::clearNeverRememberSites):
141         * WebCoreSupport/CredentialManager.h:
142         (CredentialManager):
143
144 2012-03-22  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>
145
146         [BlackBerry] http authenticate dialog popup only once no matter authentication pass or fail
147         https://bugs.webkit.org/show_bug.cgi?id=80135
148
149         Reviewed by Rob Buis.
150
151         Modified the interface function authenticationChallenge() in
152         class WebPagePrivate by returning a bool to indicate if user
153         pressed Ok button or not, and moved the Credential from return
154         value to the reference parameter.
155         Also updated the corresponding interface functions in class
156         WebPageClient.
157
158         * Api/WebPage.cpp:
159         (BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):
160         * Api/WebPageClient.h:
161         * Api/WebPage_p.h:
162         (WebPagePrivate):
163
164 2012-03-22  Mike Lattanzio  <mlattanzio@rim.com>
165
166         [BlackBerry] DeviceDPI Scaling is broken on mobile.
167         https://bugs.webkit.org/show_bug.cgi?id=81966
168
169         Fix our viewport argument handling to only override the
170         targetDensityDpi on tablet devices. Allow WebCore to use
171         dpi scaling for smaller screen mobile devices.
172
173         Reviewed by Rob Buis.
174
175         * Api/WebPage.cpp:
176         (BlackBerry::WebKit::WebPagePrivate::recomputeVirtualViewportFromViewportArguments):
177
178 2012-03-22  Mike Fenton  <mifenton@rim.com>
179
180         [BlackBerry] Add pattern matching for hexadecimal type input fields
181         https://bugs.webkit.org/show_bug.cgi?id=81944
182
183         Reviewed by Rob Buis.
184
185         PR 98504.
186
187         Add mapping of patterns matching hexadecimal input
188         to a specialized type and provide input styling based
189         on that format.
190
191         Reviewed Internally by Gen Mak.
192
193         * WebKitSupport/DOMSupport.cpp:
194         (BlackBerry::WebKit::DOMSupport::elementPatternIndicatesHexadecimal):
195         (DOMSupport):
196         * WebKitSupport/DOMSupport.h:
197         * WebKitSupport/InputHandler.cpp:
198         (BlackBerry::WebKit::convertInputType):
199         (BlackBerry::WebKit::inputStyle):
200
201 2012-03-22  Mike Fenton  <mifenton@rim.com>
202
203         [BlackBerry] DOMSupport isPositionInNode should have early returns for null nodes
204         https://bugs.webkit.org/show_bug.cgi?id=81929
205
206         Reviewed by Rob Buis.
207
208         Make suggested style clean up and move int offset = 0 directly
209         above is actual usage.
210
211         * WebKitSupport/DOMSupport.cpp:
212         (BlackBerry::WebKit::DOMSupport::isPositionInNode):
213
214 2012-03-22  Mike Fenton  <mifenton@rim.com>
215
216         [BlackBerry] DOMSupport isPositionInNode should have early returns for null nodes
217         https://bugs.webkit.org/show_bug.cgi?id=81929
218
219         Reviewed by Rob Buis.
220
221         Add early returns in isPositionInNode when either
222         node or the position node is null.
223
224         * WebKitSupport/DOMSupport.cpp:
225         (BlackBerry::WebKit::DOMSupport::isPositionInNode):
226
227 2012-03-21  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>
228
229         [BlackBerry] Credential save and autofill implemetation
230         https://bugs.webkit.org/show_bug.cgi?id=80401
231
232         Reviewed by Rob Buis.
233
234         This patch is intended to implement the credential persist
235         and autofill feature for BlackBerry porting.
236
237         Moved interface authenticationChallenge() from class
238         FrameLoaderClientBlackBerry to WebPagePrivate (derived from
239         PageClientBlackBerry as changes made in its parent interface class);
240         Implemented notifyShouldSaveCredential() in WebPagePrivate
241         and WebPageClient as well.
242         Added credentialManager() to retrive CredentialManager instance
243         as a global singleton; removed its m_frameLoaderClient which is
244         replaced with a passed in PageClientBlackBerry pointer, and modified
245         the interface function accordingly.
246
247         For the http authentication, autofill the input dialog in
248         function authenticationChallenge() and save the credential
249         information in the same function;
250         For the in-form authentication, autofill the username and
251         password input fields in function dispatchDidFinishLoad(),
252         and save the credential information in function
253         dispatchWillSubmitForm() or dispatchWillSendSubmitEvent().
254
255         * Api/WebPage.cpp:
256         (BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):
257         (WebKit):
258         (BlackBerry::WebKit::WebPagePrivate::notifyShouldSaveCredential):
259         * Api/WebPageClient.h:
260         * Api/WebPage_p.h:
261         (WebPagePrivate):
262         * WebCoreSupport/CredentialManager.cpp:
263         (WebCore::credentialManager):
264         (WebCore::CredentialManager::saveCredentialIfConfirmed):
265         * WebCoreSupport/CredentialManager.h:
266         (CredentialManager):
267         (WebCore::CredentialManager::CredentialManager):
268         (WebCore):
269         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
270         (WebCore::FrameLoaderClientBlackBerry::dispatchDidFinishLoad):
271         (WebCore::FrameLoaderClientBlackBerry::dispatchWillSubmitForm):
272         (WebCore::FrameLoaderClientBlackBerry::dispatchWillSendSubmitEvent):
273         (WebCore):
274         * WebCoreSupport/FrameLoaderClientBlackBerry.h:
275         (FrameLoaderClientBlackBerry):
276
277 2012-03-20  Jacky Jiang  <zhajiang@rim.com>
278
279         [BlackBerry] Dijit crash WebCore::CookieManager::getRawCookies
280         https://bugs.webkit.org/show_bug.cgi?id=81686
281
282         Reviewed by Rob Buis.
283
284         When deciding the policy for navigation action, if the url of the
285         request is null, ignore it to avoid the ASSERT failure in
286         MainResourceLoader::willSendRequest.
287
288         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
289         (WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForNavigationAction):
290
291 2012-03-20  Konrad Piascik  <kpiascik@rim.com>
292
293         [BlackBerry] BlackBerry can clear cookies and cache from the Web Inspector
294         https://bugs.webkit.org/show_bug.cgi?id=81670
295
296         Reviewed by Rob Buis.
297
298         * WebCoreSupport/InspectorClientBlackBerry.h:
299         (WebCore::InspectorClientBlackBerry::canClearBrowserCache):
300         (WebCore::InspectorClientBlackBerry::canClearBrowserCookies):
301
302 2012-03-20  Nima Ghanavatian  <nghanavatian@rim.com>
303
304         [BlackBerry] Removing doubly defined methods in BackingStore.cpp
305         https://bugs.webkit.org/show_bug.cgi?id=81664
306
307         Reviewed by Rob Buis.
308
309         * Api/BackingStore.cpp:
310         (BlackBerry::WebKit::BackingStorePrivate::drawAndBlendLayersForDirectRendering):
311
312 2012-03-20  Mike Fenton  <mifenton@rim.com>
313
314         [BlackBerry] Crash when dragging the FCC caret over an invalid node.
315         https://bugs.webkit.org/show_bug.cgi?id=81654
316
317         Reviewed by Rob Buis.
318
319         PR 144505.
320
321         The position did not have a valid container node and was causing
322         a crash.  Validate the node pointer before using it.
323
324         * WebKitSupport/DOMSupport.cpp:
325         (BlackBerry::WebKit::DOMSupport::DOMContainerNodeForPosition):
326
327 2012-03-20  Jason Liu  <jason.liu@torchmobile.com.cn>
328
329         [BlackBerry]Cookies shouldn't be set into each of webcore's request and platform's request. And this makes a regression.
330         https://bugs.webkit.org/show_bug.cgi?id=80800
331
332         Reviewed by George Staikos.
333
334         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
335         (WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForNavigationAction):
336         (WebCore::FrameLoaderClientBlackBerry::dispatchWillSendRequest):
337         (WebCore::FrameLoaderClientBlackBerry::decidePolicyForExternalLoad):
338
339 2012-03-19  Adam Barth  <abarth@webkit.org>
340
341         Remove support for "magic" iframe
342         https://bugs.webkit.org/show_bug.cgi?id=81590
343
344         Reviewed by Eric Seidel.
345
346         Remove FrameLoaderClient methods that no longer exist.
347
348         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
349         (WebCore):
350         * WebCoreSupport/FrameLoaderClientBlackBerry.h:
351         (FrameLoaderClientBlackBerry):
352         (WebCore::FrameLoaderClientBlackBerry::didDetectXSS):
353
354 2012-03-19  Tyler Abbott  <tabbott@rim.com>
355
356         [BlackBerry] speed up text selection for large selections
357         https://bugs.webkit.org/show_bug.cgi?id=81536
358
359         When selecting large disjoint areas of text the cost
360         of calculating the IntRectRegion union becomes very
361         expensive. Simply placing all of the text quads into
362         the IntRectRegion is faster despite the larger memory
363         footprint and the additional calculations at render
364         time.
365
366         Reviewed by Rob Buis.
367
368         * WebKitSupport/SelectionHandler.cpp:
369         (BlackBerry::WebKit::SelectionHandler::getConsolidatedRegionOfTextQuadsForSelection):
370
371 2012-03-19  Mike Lattanzio  <mlattanzio@rim.com>
372
373         [BlackBerry] Use BlackBerry::Platform::DeviceInfo to generate UserAgent
374         https://bugs.webkit.org/show_bug.cgi?id=81269
375
376         Generate the UserAgent lazily, using it as the default for the
377         WebSettings object. BlackBerry::Platform::DeviceInfo is used
378         to ensure the information is accurate to the specific device.
379
380         Remove the !isEmpty() assert when fetching the UA from the
381         WebSettings object, as it will now always be properly initialized.
382
383         Add a static initializer block to ensure defaultUserAgent() is
384         thread-safe from that moment onward.
385
386         Reviewed by Rob Buis.
387
388         * Api/WebPage.cpp:
389         (WebKit):
390         (BlackBerry::WebKit::WebPagePrivate::init):
391         (BlackBerry::WebKit::WebPagePrivate::defaultUserAgent):
392         * Api/WebPage_p.h:
393         (WebPagePrivate):
394         * Api/WebSettings.cpp:
395         (BlackBerry::WebKit::WebSettings::setUserAgentString):
396         * Api/WebSettings.h:
397
398 2012-03-19  Mike Fenton  <mifenton@rim.com>
399
400         [BlackBerry] Input fields with id of e-mail and url should be styled as such.
401         https://bugs.webkit.org/show_bug.cgi?id=81364
402
403         Reviewed by Rob Buis.
404
405         Be less aggressive on matching url, and update as suggested by Rob.
406
407         * WebKitSupport/DOMSupport.cpp:
408         (BlackBerry::WebKit::DOMSupport::matchesReservedStringUrl):
409         * WebKitSupport/InputHandler.cpp:
410         (BlackBerry::WebKit::inputStyle):
411
412 2012-03-19  Arvid Nilsson  <anilsson@rim.com>
413
414         [BlackBerry] Remove obsolete optimization in WebPageCompositorPrivate
415         https://bugs.webkit.org/show_bug.cgi?id=81115
416
417         Reviewed by Benjamin Poulain.
418
419         The compositor tried to avoid rendering the same stuff twice, using a
420         mechanism that didn't work properly and has been redundant since we
421         introduced deferred blits. Remove this code.
422
423         Reviewed internally by Robin Cao.
424
425         * Api/WebPageCompositor.cpp:
426         (BlackBerry::WebKit::WebPageCompositorPrivate::WebPageCompositorPrivate):
427         (BlackBerry::WebKit::WebPageCompositorPrivate::commit):
428         (BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
429         * Api/WebPageCompositor_p.h:
430
431 2012-03-17  Charles Wei  <charles.wei@torchmobile.com.cn>
432
433         [BlackBerry] Enable Web Timing for performance profiling and improvement.
434         https://bugs.webkit.org/show_bug.cgi?id=81085
435
436         Reviewed by Rob Buis.
437
438         * Api/WebPage.cpp:
439         (BlackBerry::WebKit::WebPagePrivate::init):
440
441 2012-03-16  Arvid Nilsson  <anilsson@rim.com>
442
443         [BlackBerry] Rename the existing WebPageCompositor class to WebPageCompositorPrivate
444         https://bugs.webkit.org/show_bug.cgi?id=81108
445         RIM PR: 136687
446
447         Reviewed by Rob Buis.
448
449         This is done in anticipation of a new WebPageCompositor class in the
450         public API. The existing internal class will serve to d-pointerize the
451         new public API. In addition, it is and will be possible to create only
452         the private class, for cases where existing code paths require
453         OpenGL compositing (i.e. due to accelerated compositing layers being
454         added to the page).
455
456         Reviewed internally by Robin Cao.
457
458         * Api/BackingStore.h:
459         * Api/WebPage.cpp:
460         (BlackBerry::WebKit::WebPagePrivate::setIsAcceleratedCompositingActive):
461         * Api/WebPageCompositor.cpp: Renamed from Source/WebKit/blackberry/WebKitSupport/WebPageCompositor.cpp.
462         (BlackBerry::WebKit::WebPageCompositorPrivate::WebPageCompositorPrivate):
463         (BlackBerry::WebKit::WebPageCompositorPrivate::~WebPageCompositorPrivate):
464         (BlackBerry::WebKit::WebPageCompositorPrivate::hardwareCompositing):
465         (BlackBerry::WebKit::WebPageCompositorPrivate::setRootLayer):
466         (BlackBerry::WebKit::WebPageCompositorPrivate::setBackingStoreUsesOpenGL):
467         (BlackBerry::WebKit::WebPageCompositorPrivate::commit):
468         (BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
469         (BlackBerry::WebKit::WebPageCompositorPrivate::releaseLayerResources):
470         (BlackBerry::WebKit::WebPageCompositorPrivate::animationTimerFired):
471         * Api/WebPageCompositor_p.h: Renamed from Source/WebKit/blackberry/WebKitSupport/WebPageCompositor.h.
472         (BlackBerry::WebKit::WebPageCompositorPrivate::layoutRectForCompositing):
473         (BlackBerry::WebKit::WebPageCompositorPrivate::setLayoutRectForCompositing):
474         (BlackBerry::WebKit::WebPageCompositorPrivate::contentsSizeForCompositing):
475         (BlackBerry::WebKit::WebPageCompositorPrivate::setContentsSizeForCompositing):
476         (BlackBerry::WebKit::WebPageCompositorPrivate::lastCompositingResults):
477         (BlackBerry::WebKit::WebPageCompositorPrivate::setLastCompositingResults):
478         * Api/WebPage_p.h:
479         * CMakeListsBlackBerry.txt:
480
481 2012-03-16  Nima Ghanavatian  <nghanavatian@rim.com>
482
483         [BlackBerry] Syncing up left over bits in WebKitSupport from our local branch to upstream
484         https://bugs.webkit.org/show_bug.cgi?id=81118
485
486         Reviewed by Rob Buis.
487
488         This is a consolidation of various changes that are in our local dev branch
489         but do not appear in our upstreamed port.
490
491         * WebKitSupport/DumpRenderTreeSupport.cpp:
492         (DumpRenderTreeSupport::computedStyleIncludingVisitedInfo):
493         * WebKitSupport/FatFingers.cpp:
494         (BlackBerry::WebKit::FatFingers::isElementClickable):
495         * WebKitSupport/InputHandler.cpp:
496         (BlackBerry::WebKit::InputHandler::spannableTextInRange):
497         * WebKitSupport/SurfacePool.cpp:
498         (BlackBerry::WebKit::SurfacePool::createBuffers):
499         (BlackBerry::WebKit::SurfacePool::releaseBuffers):
500         * WebKitSupport/TouchEventHandler.cpp:
501         (BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
502         (BlackBerry::WebKit::TouchEventHandler::handleFatFingerPressed):
503         * WebKitSupport/WebPageCompositor.cpp:
504         (BlackBerry::WebKit::WebPageCompositor::WebPageCompositor):
505         * WebKitSupport/WebPageCompositor.h:
506         (WebPageCompositor):
507
508 2012-03-16  Nima Ghanavatian  <nghanavatian@rim.com>
509
510         [BlackBerry] Syncing up left over bits in WebCoreSupport from our local branch to upstream
511         https://bugs.webkit.org/show_bug.cgi?id=81120
512
513         Reviewed by Rob Buis.
514
515         This is a consolidation of various changes that are in our local dev branch
516         but do not appear in our upstreamed port.
517
518         * WebCoreSupport/AboutDataEnableFeatures.in:
519         * WebCoreSupport/AboutDataHaveFeatures.in:
520         * WebCoreSupport/AboutDataUseFeatures.in:
521         * WebCoreSupport/ChromeClientBlackBerry.cpp:
522         (WebCore::ChromeClientBlackBerry::hasOpenedPopup):
523         (WebCore):
524         (WebCore::ChromeClientBlackBerry::screenToRootView):
525         (WebCore::ChromeClientBlackBerry::rootViewToScreen):
526         (WebCore::ChromeClientBlackBerry::invalidateRootView):
527         (WebCore::ChromeClientBlackBerry::invalidateContentsAndRootView):
528         (WebCore::ChromeClientBlackBerry::invalidateContentsForSlowScroll):
529         (WebCore::ChromeClientBlackBerry::scrollableAreasDidChange):
530         (WebCore::ChromeClientBlackBerry::createColorChooser):
531         * WebCoreSupport/ChromeClientBlackBerry.h:
532         (ChromeClientBlackBerry):
533         (WebCore::ChromeClientBlackBerry::numTouchEventHandlersChanged):
534         * WebCoreSupport/EditorClientBlackBerry.cpp:
535         (WebCore::EditorClientBlackBerry::registerUndoStep):
536         (WebCore::EditorClientBlackBerry::registerRedoStep):
537         (WebCore::EditorClientBlackBerry::undo):
538         (WebCore::EditorClientBlackBerry::redo):
539         * WebCoreSupport/EditorClientBlackBerry.h:
540         (EditorClientBlackBerry):
541         * WebCoreSupport/GeolocationControllerClientBlackBerry.cpp:
542         (GeolocationControllerClientBlackBerry::requestPermission):
543         (GeolocationControllerClientBlackBerry::cancelPermissionRequest):
544         * WebCoreSupport/GeolocationControllerClientBlackBerry.h:
545         * WebCoreSupport/InspectorClientBlackBerry.cpp:
546         (WebCore::InspectorClientBlackBerry::closeInspectorFrontend):
547         (WebCore):
548         (WebCore::InspectorClientBlackBerry::bringFrontendToFront):
549         * WebCoreSupport/InspectorClientBlackBerry.h:
550         (InspectorClientBlackBerry):
551         * WebCoreSupport/NotificationPresenterImpl.cpp:
552         (WebCore::NotificationPresenterImpl::show):
553
554 2012-03-16  Mike Fenton  <mifenton@rim.com>
555
556         [BlackBerry] Input fields with id of e-mail and url should be styled as such.
557         https://bugs.webkit.org/show_bug.cgi?id=81364
558
559         Reviewed by Rob Buis.
560
561         Treat fields that have name/id's that match url or
562         email as url or email fields providing the appropriate
563         keyboard.
564
565         PR 137259.
566
567         Reviewed Internally by Gen Mak and Nima Ghanavatian.
568
569         * WebKitSupport/DOMSupport.cpp:
570         (BlackBerry::WebKit::DOMSupport::matchesReservedStringEmail):
571         (DOMSupport):
572         (BlackBerry::WebKit::DOMSupport::matchesReservedStringUrl):
573         (BlackBerry::WebKit::DOMSupport::elementIdOrNameIndicatesEmail):
574         (BlackBerry::WebKit::DOMSupport::elementIdOrNameIndicatesUrl):
575         (BlackBerry::WebKit::DOMSupport::matchesReservedStringPreventingAutocomplete):
576         * WebKitSupport/DOMSupport.h:
577         (WebCore):
578         * WebKitSupport/InputHandler.cpp:
579         (BlackBerry::WebKit::convertInputType):
580         (BlackBerry::WebKit::inputStyle):
581
582 2012-03-16  Nima Ghanavatian  <nghanavatian@rim.com>
583
584         [BlackBerry] Syncing up left over bits in Api from our local branch to upstream
585         https://bugs.webkit.org/show_bug.cgi?id=81105
586
587         Reviewed by Rob Buis.
588
589         This patches fixes up a previous sync done in this directory and adds some new bits
590         as well.  This is accurate as of ddea1528b37b29925638fe1183318b3c3994f1f8 in our
591         local repo.
592
593         * Api/BackingStore.cpp:
594         (BlackBerry::WebKit::BackingStorePrivate::drawAndBlendLayersForDirectRendering):
595         (WebKit):
596         (BlackBerry::WebKit::BackingStorePrivate::drawLayersOnCommitIfNeeded):
597         * Api/WebPage.cpp:
598         (BlackBerry::WebKit::WebPagePrivate::webContext):
599         (BlackBerry::WebKit::WebPage::webContext):
600         (BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):
601         * Api/WebPage.h:
602         * Api/WebPage_p.h:
603         (WebPagePrivate):
604
605 2012-03-16  Mike Fenton  <mifenton@rim.com>
606
607         [BlackBerry] Input processing mode should be cancelled when processing hot keys
608         https://bugs.webkit.org/show_bug.cgi?id=81348
609
610         Reviewed by Rob Buis.
611
612         Don't suppress IMF notifications if we are handling
613         the event as a hotkey.
614
615         Reviewed Internally by Nima Ghanavatian.
616
617         * WebCoreSupport/EditorClientBlackBerry.cpp:
618         (WebCore::EditorClientBlackBerry::handleKeyboardEvent):
619
620 2012-03-16  Robin Cao  <robin.cao@torchmobile.com.cn>
621
622         [BlackBerry] Can not open certain links from bridge applications
623         https://bugs.webkit.org/show_bug.cgi?id=81197
624
625         Reviewed by Rob Buis.
626
627         Currently, the engine asks the client to handle some type of requests externally.
628         But WebPageClient::handleStringPattern is not yet implemented and exposed to
629         the client. Before that, we still need to give the client a chance to decide
630         how to handle requests such as 'mailto:'.
631
632         To address this problem, r108763 introduced a change that ask the client to
633         decide how to handle the navigation in dispatchDecidePolicyForNewWindowAction().
634         This is not intuitive and will bring troubles, because this navigation will
635         happen in the new page. So the new page client is to decide how to handle
636         the navigation, not the old one.
637
638         This patch reverts r108763 and skips calling WebPageClient::handleStringPattern
639         since it's not implemented.
640
641         This way the new window action will continue, and the logic in
642         dispatchDecidePolicyForNavigationAction() will handle the navigation correctly.
643
644         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
645         (WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForNewWindowAction):
646         (WebCore::FrameLoaderClientBlackBerry::decidePolicyForExternalLoad):
647
648 2012-03-16  Leo Yang  <leo.yang@torchmobile.com.cn>
649
650         [BlackBerry] Crash when going back from an xhtml document containing <img>
651         https://bugs.webkit.org/show_bug.cgi?id=81297
652
653         Reviewed by Rob Buis.
654
655         This is manually reverting the offending internal commit which checked-in before upstreaming.
656
657         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
658         (WebCore::FrameLoaderClientBlackBerry::canCachePage):
659
660 2012-03-16  Genevieve Mak  <gmak@rim.com>
661
662         [BlackBerry] viewportRect has changed to viewportSize
663         https://bugs.webkit.org/show_bug.cgi?id=81262
664
665         Reviewed by Antonio Gomes.
666
667         Set size instead of rect in constructor.
668         * WebKitSupport/InRegionScrollableArea.cpp:
669         (BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):
670
671 2012-03-16  Andrew Lo  <anlo@rim.com>
672
673         [BlackBerry] Enable PAGE_VISIBILITY_API
674         https://bugs.webkit.org/show_bug.cgi?id=81257
675
676         Set Page visibility state for BlackBerry port.
677
678         Reviewed by Rob Buis.
679
680         * Api/WebPage.cpp:
681         (BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
682         (WebKit):
683         (BlackBerry::WebKit::WebPagePrivate::setPageVisibilityState):
684         (BlackBerry::WebKit::WebPagePrivate::setVisible):
685         (BlackBerry::WebKit::WebPage::setVisible):
686         (BlackBerry::WebKit::WebPagePrivate::notifyAppActivationStateChange):
687         (BlackBerry::WebKit::WebPage::notifyAppActivationStateChange):
688         * Api/WebPage_p.h:
689         (WebPagePrivate):
690
691 2012-03-14  Arvid Nilsson  <anilsson@rim.com>
692
693         [BlackBerry] Make sure WebPage and BackingStore don't crash without a Window
694         https://bugs.webkit.org/show_bug.cgi?id=81099
695
696         Reviewed by Rob Buis.
697
698         Also rename the "compositing/blitting to main window" variables to
699         instead refer to OpenGL compositing. The code paths it triggers are
700         related to the BackingStore using OpenGL compositing, and can be useful
701         even when there's no window.
702
703         * Api/BackingStore.cpp:
704         (BlackBerry::WebKit::BackingStorePrivate::isOpenGLCompositing):
705         (BlackBerry::WebKit::BackingStorePrivate::render):
706         (BlackBerry::WebKit::BackingStorePrivate::copyPreviousContentsToBackSurfaceOfWindow):
707         (BlackBerry::WebKit::BackingStorePrivate::paintDefaultBackground):
708         (BlackBerry::WebKit::BackingStorePrivate::blitContents):
709         (BlackBerry::WebKit::BackingStorePrivate::blitTileRect):
710         (BlackBerry::WebKit::BackingStorePrivate::blendCompositingSurface):
711         (BlackBerry::WebKit::BackingStorePrivate::renderContents):
712         (BlackBerry::WebKit::BackingStorePrivate::blitToWindow):
713         (BlackBerry::WebKit::BackingStorePrivate::checkerWindow):
714         (BlackBerry::WebKit::BackingStorePrivate::invalidateWindow):
715         (BlackBerry::WebKit::BackingStorePrivate::clearWindow):
716         (BlackBerry::WebKit::BackingStorePrivate::drawSubLayers):
717         (BlackBerry::WebKit::BackingStorePrivate::surfaceSize):
718         (BlackBerry::WebKit::BackingStorePrivate::buffer):
719         * Api/BackingStore_p.h:
720         * Api/WebPage.cpp:
721         (BlackBerry::WebKit::WebPagePrivate::didPluginEnterFullScreen):
722         (BlackBerry::WebKit::WebPagePrivate::didPluginExitFullScreen):
723         (BlackBerry::WebKit::WebPagePrivate::drawLayersOnCommit):
724         (BlackBerry::WebKit::WebPagePrivate::drawSubLayers):
725         (BlackBerry::WebKit::WebPagePrivate::rootLayerCommitTimerFired):
726         * WebCoreSupport/ChromeClientBlackBerry.cpp:
727         (WebCore::ChromeClientBlackBerry::windowRect):
728         (WebCore::ChromeClientBlackBerry::screenToWindow):
729         (WebCore::ChromeClientBlackBerry::windowToScreen):
730         * WebKitSupport/GLES2Context.cpp:
731         (BlackBerry::WebKit::GLES2Context::GLES2Context):
732         * WebKitSupport/TouchEventHandler.h:
733         * WebKitSupport/WebPageCompositor.cpp:
734         (BlackBerry::WebKit::WebPageCompositor::WebPageCompositor):
735         (BlackBerry::WebKit::WebPageCompositor::setBackingStoreUsesOpenGL):
736         (BlackBerry::WebKit::WebPageCompositor::drawLayers):
737         * WebKitSupport/WebPageCompositor.h:
738
739 2012-03-13  Jon Lee  <jonlee@apple.com>
740
741         Separate NOTIFICATIONS and LEGACY_NOTIFICATIONS
742         https://bugs.webkit.org/show_bug.cgi?id=80922
743         <rdar://problem/11035082>
744
745         Reviewed by Jian Li.
746
747         You can include either NOTIFICATIONS or LEGACY_NOTIFICATIONS and have a complete API.
748         LEGACY_NOTIFICATIONS should cover all of the previous functionality, and NOTIFICATIONS will cover the
749         new API. Therefore, APIs that are common between the two will have:
750         #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
751
752         This patch initially sets both to be exactly the same. As other bugs with patches begin to migrate to
753         the new API, the defines will begin to split. This allows ports to decide which set of APIs to include.
754
755         Update everything to be #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
756         * Api/WebPage.cpp:
757         (BlackBerry::WebKit::WebPagePrivate::init):
758         * WebCoreSupport/NotificationPresenterImpl.cpp:
759         * WebCoreSupport/NotificationPresenterImpl.h:
760
761 2012-03-14  Nima Ghanavatian  <nghanavatian@rim.com>
762
763         [BlackBerry] Syncing up left over bits in Api from our local branch to upstream
764         https://bugs.webkit.org/show_bug.cgi?id=81105
765
766         Reviewed by Rob Buis.
767
768         * Api/BackingStore.cpp:
769         (BlackBerry::WebKit::BackingStorePrivate::renderContents):
770         (BlackBerry::WebKit::BackingStorePrivate::isActive):
771         (BlackBerry::WebKit::BackingStore::createBackingStoreMemory):
772         (WebKit):
773         (BlackBerry::WebKit::BackingStore::releaseBackingStoreMemory):
774         * Api/BackingStore.h:
775         * Api/WebPage.cpp:
776         (BlackBerry::WebKit::toWebCoreMouseEventType):
777         (BlackBerry::WebKit::WebPagePrivate::init):
778         (BlackBerry::WebKit::WebPagePrivate::setLoadState):
779         (BlackBerry::WebKit::WebPagePrivate::activeNodeContext):
780         (BlackBerry::WebKit::WebPage::activeNodeContext):
781         (BlackBerry::WebKit::WebPagePrivate::updateCursor):
782         (BlackBerry::WebKit::WebPagePrivate::contextNode):
783         (BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):
784         * Api/WebPage.h:
785         * Api/WebPage_p.h:
786         (WebPagePrivate):
787
788 2012-03-14  Andrew Lo  <anlo@rim.com>
789
790         [BlackBerry] Implement REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR using AnimationFrameRateController
791         https://bugs.webkit.org/show_bug.cgi?id=81000
792
793         Set the platform display ID, needed for DisplayRefreshMonitor.
794
795         Reviewed by Antonio Gomes.
796
797         * Api/WebPage.cpp:
798         (BlackBerry::WebKit::WebPagePrivate::init):
799
800 2012-03-14  Leo Yang  <leo.yang@torchmobile.com.cn>
801
802         [BlackBerry] Upstream the BlackBerry change to platform/Cursor.h
803         https://bugs.webkit.org/show_bug.cgi?id=81086
804
805         Reviewed by Rob Buis.
806
807         There was an alias named PlatformCursorHandle for PlatformCursor
808         in the internal version of Cursor.h. But it's not necessary so it's
809         not included in the upstreaming version of Cursor.h. As a result,
810         use PlatformCursor directly.
811
812         * Api/WebPage.cpp:
813         (BlackBerry::WebKit::WebPagePrivate::setCursor):
814         * Api/WebPage_p.h:
815         (WebPagePrivate):
816
817 2012-03-13  Mike Fenton  <mifenton@rim.com>
818
819         [BlackBerry] Input focus state should unfocus the frame selection instead of the field.
820         https://bugs.webkit.org/show_bug.cgi?id=81023
821
822         Reviewed by Antonio Gomes.
823
824         PR 137400.
825
826         Prevent cursor drawing by unfocusing the frame selection
827         when input mode is not ready.
828
829         Greatly simplify the decision to focus input fields by removing
830         all ties to the page load state and base it on input.  Input mode
831         is disabled when a page load begins and enabled on any user input.
832
833         The field is focused and ready for input immediately, only the
834         frame selection (or cursor) is unfocused.
835
836         Reviewed Internally by Gen Mak, Antonio Gomes and Nima Ghanavatian.
837
838         * Api/WebPage.cpp:
839         (BlackBerry::WebKit::WebPagePrivate::setLoadState):
840         (BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):
841         * Api/WebPageClient.h:
842         * WebCoreSupport/EditorClientBlackBerry.cpp:
843         (WebCore::EditorClientBlackBerry::shouldBeginEditing):
844         * WebKitSupport/InputHandler.cpp:
845         (BlackBerry::WebKit::InputHandler::InputHandler):
846         (BlackBerry::WebKit::InputHandler::setElementUnfocused):
847         (BlackBerry::WebKit::InputHandler::enableInputMode):
848         (BlackBerry::WebKit::InputHandler::setElementFocused):
849         (BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):
850         (BlackBerry::WebKit::InputHandler::notifyClientOfKeyboardVisibilityChange):
851         (BlackBerry::WebKit::InputHandler::handleKeyboardInput):
852         (BlackBerry::WebKit::InputHandler::setComposingText):
853         * WebKitSupport/InputHandler.h:
854         (InputHandler):
855         * WebKitSupport/TouchEventHandler.cpp:
856         (BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
857
858 2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
859
860         Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
861         https://bugs.webkit.org/show_bug.cgi?id=78853
862
863         Reviewed by Adam Barth.
864
865         * Api/WebPage.cpp:
866         (BlackBerry::WebKit::WebPagePrivate::init):
867         * WebCoreSupport/AboutDataEnableFeatures.in:
868         * WebCoreSupport/ChromeClientBlackBerry.cpp:
869         * WebCoreSupport/ChromeClientBlackBerry.h:
870         (ChromeClientBlackBerry):
871         * WebKitSupport/DumpRenderTreeSupport.cpp:
872         (toGeolocationClientMock):
873         (DumpRenderTreeSupport::numberOfPendingGeolocationPermissionRequests):
874         (DumpRenderTreeSupport::resetGeolocationMock):
875         (DumpRenderTreeSupport::setMockGeolocationError):
876         (DumpRenderTreeSupport::setMockGeolocationPermission):
877         (DumpRenderTreeSupport::setMockGeolocationPosition):
878
879 2012-03-13  Mike Lattanzio  <mlattanzio@rim.com>
880
881         Remove ActiveNodeContext in favour of BlackBerry::Platform::WebContext
882         https://bugs.webkit.org/show_bug.cgi?id=80984
883
884         Remove ActiveNodeContext, and switch the implementation to
885         provide a BlackBerry::Platform::WebContext. The new object
886         adds an explicit IsImage flag, as well as IsAudio and IsVideo
887         for the HTML5 elements.
888
889         Note that for many videos both IsVideo and IsAudio will be true,
890         as videos typically have audio streams as well.
891
892         Reviewed by George Staikos.
893
894         * Api/ActiveNodeContext.h: Removed.
895         * Api/WebPage.cpp:
896         (BlackBerry::WebKit::WebPagePrivate::webContext):
897         (BlackBerry::WebKit::WebPage::webContext):
898         * Api/WebPage.h:
899         * Api/WebPage_p.h:
900
901 2012-03-12  Andy Chen  <andchen@rim.com>
902
903         [Blackberry] Make the process of marking all matches interruptible and asynchronous for find-in-page
904         https://bugs.webkit.org/show_bug.cgi?id=80831
905
906         Reviewed by Antonio Gomes.
907
908         * WebKitSupport/InPageSearchManager.cpp:
909         (BlackBerry::WebKit::InPageSearchManager::DeferredScopeStringMatches::DeferredScopeStringMatches):
910         (BlackBerry::WebKit::InPageSearchManager::DeferredScopeStringMatches::doTimeout):
911         (BlackBerry::WebKit::InPageSearchManager::InPageSearchManager):
912         (BlackBerry::WebKit::InPageSearchManager::~InPageSearchManager):
913         (BlackBerry::WebKit::InPageSearchManager::findNextString):
914         (BlackBerry::WebKit::InPageSearchManager::shouldSearchForText):
915         (BlackBerry::WebKit::InPageSearchManager::findAndMarkText):
916         (BlackBerry::WebKit::InPageSearchManager::clearTextMatches):
917         (BlackBerry::WebKit::InPageSearchManager::frameUnloaded):
918         (BlackBerry::WebKit::InPageSearchManager::scopeStringMatches):
919         (BlackBerry::WebKit::InPageSearchManager::scopeStringMatchesSoon):
920         (BlackBerry::WebKit::InPageSearchManager::callScopeStringMatches):
921         (BlackBerry::WebKit::InPageSearchManager::cancelPendingScopingEffort):
922         * WebKitSupport/InPageSearchManager.h:
923
924 2012-03-09  Jon Lee  <jonlee@apple.com>
925
926         Rename NotificationPresenter to NotificationClient
927         https://bugs.webkit.org/show_bug.cgi?id=80488
928         <rdar://problem/10965558>
929
930         Reviewed by Kentaro Hara.
931
932         Refactor to use renamed WebCore::NotificationClient.
933         * WebCoreSupport/NotificationPresenterImpl.cpp:
934         (WebCore::NotificationPresenterImpl::instance):
935         (WebCore::NotificationPresenterImpl::show):
936         (WebCore::NotificationPresenterImpl::checkPermission):
937         * WebCoreSupport/NotificationPresenterImpl.h:
938         (NotificationPresenterImpl):
939
940 2012-03-09  Charles Wei  <charles.wei@torchmobile.com.cn>
941
942         [BlackBerry] Web Notification not working after rebase
943         https://bugs.webkit.org/show_bug.cgi?id=80690
944
945         Reviewed by George Staikos.
946
947         1. NotificationPresenterImpl should be in namespace WebCore
948         2. Need to connect NotificationPresenterImpl to webcore the new way:
949            WebCore::provideNotification(Page*, NotificationPresenter*)
950         3. Remove the old way of connecting the Notification:
951            ChromeClientBlackBerry::notificationPresenter()
952
953         * Api/WebPage.cpp:
954         (BlackBerry::WebKit::WebPagePrivate::init):
955         * WebCoreSupport/ChromeClientBlackBerry.cpp:
956         (WebCore):
957         * WebCoreSupport/ChromeClientBlackBerry.h:
958         (ChromeClientBlackBerry):
959         * WebCoreSupport/NotificationPresenterImpl.cpp:
960         * WebCoreSupport/NotificationPresenterImpl.h:
961
962 2012-03-08  Mike Fenton  <mifenton@rim.com>
963
964         [BlackBerry] Always use the current focused node when processing focus changes
965         https://bugs.webkit.org/show_bug.cgi?id=80594
966
967         Reviewed by Antonio Gomes.
968
969         Guard against toRange or fromRange being null when called
970         as part of a clear event.
971
972         * WebCoreSupport/EditorClientBlackBerry.cpp:
973         (WebCore::EditorClientBlackBerry::shouldChangeSelectedRange):
974
975 2012-03-08  Yong Li  <yoli@rim.com>
976
977         [BlackBerry] Block file-to-file access by default
978         https://bugs.webkit.org/show_bug.cgi?id=80605
979
980         Reviewed by Rob Buis.
981
982         Turn off allowFileAccessFromFileURLs() by default.
983
984         * Api/WebPage.cpp:
985         (BlackBerry::WebKit::WebPagePrivate::init):
986
987 2012-03-08  Mike Fenton  <mifenton@rim.com>
988
989         [BlackBerry] Always use the current focused node when processing focus changes
990         https://bugs.webkit.org/show_bug.cgi?id=80594
991
992         Reviewed by Antonio Gomes.
993
994         Update InputHandler focused node handling to strictly use
995         the currently focused node.  This prevents a handling loop
996         when JS is modifying the focus and we get a late notification
997         of a past change from ChromeClientBlackBerry with the previously
998         unfocused node.
999
1000         * WebCoreSupport/ChromeClientBlackBerry.cpp:
1001         (WebCore::ChromeClientBlackBerry::focusedNodeChanged):
1002         * WebCoreSupport/EditorClientBlackBerry.cpp:
1003         (WebCore::EditorClientBlackBerry::shouldChangeSelectedRange):
1004         (WebCore::EditorClientBlackBerry::setInputMethodState):
1005         * WebKitSupport/InputHandler.cpp:
1006         (BlackBerry::WebKit::InputHandler::focusedNodeChanged):
1007         * WebKitSupport/InputHandler.h:
1008
1009 2012-03-07  Jacky Jiang  <zhajiang@rim.com>
1010
1011         [BlackBerry] WebKit rendering problem when show/hide VKB
1012         https://bugs.webkit.org/show_bug.cgi?id=80448
1013         RIM PR: 141727
1014
1015         Reviewed by Antonio Gomes.
1016
1017         When setting viewport size, layout happens inside
1018         WebPagePrivate::setDefaultLayoutSize(), in this way, the layout is
1019         outside of the code path of "needsLayout" so that the contents are
1020         not rendered into the backing store. This is a regression of r108718,
1021         switch back to do the layout inside the public API
1022         WebPage::setDefaultLayoutSize().
1023
1024         We haven't upstreamed the manual tests directory yet, therefore,
1025         the new manual test case will be upstreamed later.
1026
1027         * Api/WebPage.cpp:
1028         (BlackBerry::WebKit::WebPagePrivate::setDefaultLayoutSize):
1029         (BlackBerry::WebKit::WebPage::setDefaultLayoutSize):
1030
1031 2012-03-06  Lianghui Chen  <liachen@rim.com>
1032
1033         [BlackBerry] Set correct ResourceRequest target type.
1034         https://bugs.webkit.org/show_bug.cgi?id=80430
1035
1036         Reviewed by Rob Buis.
1037
1038         Removed unused code in dispatchWillSendRequest(). These codes are too
1039         late as the target type has already been referred to when calling
1040         ResourceRequest::initializePlatformRequest().
1041
1042         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
1043         (WebCore::FrameLoaderClientBlackBerry::dispatchWillSendRequest):
1044
1045 2012-03-06  Lianghui Chen  <liachen@rim.com>
1046
1047         [BlackBerry] Remove unused and unneeded WebPageClient::downloadRequested(NetworkRequest&)
1048         https://bugs.webkit.org/show_bug.cgi?id=80438
1049
1050         Reviewed by Antonio Gomes.
1051
1052         * Api/WebPageClient.h:
1053
1054 2012-03-06  Jakob Petsovits  <jpetsovits@rim.com>
1055
1056         [BlackBerry] Don't suspend accel comp when backgrounding a page.
1057         https://bugs.webkit.org/show_bug.cgi?id=80369
1058         RIM PR: 137609
1059
1060         Reviewed by Adam Treat.
1061
1062         Just because the page is in the background doesn't mean
1063         it's invisible, doesn't mean it won't have to be redrawn
1064         at some point - on rotation, for instance.
1065
1066         We still suspend accelerated compositing on setVisible(false).
1067
1068         * Api/WebPage.cpp:
1069         (BlackBerry::WebKit::WebPage::notifyPageBackground):
1070         (BlackBerry::WebKit::WebPage::notifyPageForeground):
1071
1072 2012-03-06  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>
1073
1074         [BlackBerry] function rename issue after MediaPlayerPrivateBlackBerry.[cpp\h] upstream
1075         https://bugs.webkit.org/show_bug.cgi?id=80377
1076
1077         Reviewed by Rob Buis.
1078
1079         As some of the function names changed in class MediaPlayerPrivate
1080         with the upstream of MediaPlayerPrivateBlackBerry.[cpp|h], we
1081         should update WebKit/blackberry/Api/WebPage.cpp which uses these
1082         functions accordingly.
1083         Renamed functions in class MediaPlayerPrivate:
1084         windowGet() -> getWindow()
1085         windowPositionGet() -> getWindowPosition()
1086         mmrContextNameGet() -> mmrContextName()
1087
1088         * Api/WebPage.cpp:
1089         (BlackBerry::WebKit::WebPagePrivate::enterFullscreenForNode):
1090
1091 2012-03-05  Eli Fidler  <efidler@rim.com>
1092
1093         The minimum font size WebSetting should actually change the LOGICAL font size in WebCore.
1094         https://bugs.webkit.org/show_bug.cgi?id=80312
1095         RIM PR: 139874
1096
1097         Reviewed by George Staikos.
1098
1099         * Api/WebPage.cpp:
1100         (BlackBerry::WebKit::WebPagePrivate::didChangeSettings):
1101
1102 2012-03-05  Jakob Petsovits  <jpetsovits@rim.com>
1103
1104         Make accelerated compositing work again with direct rendering.
1105         https://bugs.webkit.org/show_bug.cgi?id=80181
1106         RIM PR: 139110
1107
1108         Reviewed by Antonio Gomes.
1109         Internally reviewed by Arvid Nilsson.
1110
1111         The significant amount of refactoring and optimization work
1112         that has gone into accelerated compositing missed out on
1113         some of the code paths that are being used in direct rendering.
1114
1115         Animations were relying on blitVisibleContents() only (which
1116         is a no-op in direct rendering mode). There were early returns
1117         which are suitable to determine whether screen contents need
1118         to be updated at all; however, when we're already forcing a
1119         re-render then those checks would cause the composition surface
1120         not to appear at all, or avoid drawing new animation frames.
1121
1122         We went through dispatchMessage(), potentially causing
1123         mismatches between rendered (but not yet posted) back content
1124         and layers composited on top of it. As we're rendering onto
1125         the sole target surface (the window) directly and posting
1126         from the same thread, we have to wait for compositing on the
1127         UI thread to finish before posting the window.
1128
1129         In turn, this patch combines both drawSubLayers() and
1130         blendCompositingSurface() calls into one method, reducing
1131         the number of messages to the UI thread within
1132         renderDirectToWindow() to one.
1133
1134         blendCompositingMessage() in renderDirectToScreen() was called
1135         with contents coordinates rather than viewport coordinates.
1136         That caused some of the composited content to be cut off when
1137         the scroll position wasn't (0, 0).
1138
1139         We called copyPreviousContentsToBackSurfaceOfWindow() twice for
1140         one frame, in both renderDirectToWindow() and invalidateWindow().
1141         Only one of those (the latter one) is necessary.
1142
1143         * Api/BackingStore.cpp:
1144         (BlackBerry::WebKit::BackingStorePrivate::BackingStorePrivate):
1145         (BlackBerry::WebKit::BackingStorePrivate::renderDirectToWindow):
1146         (BlackBerry::WebKit::BackingStorePrivate::drawSubLayers):
1147         (WebKit):
1148         (BlackBerry::WebKit::BackingStorePrivate::drawAndBlendLayersForDirectRendering):
1149         * Api/BackingStore.h:
1150         (WebKit):
1151         * Api/BackingStore_p.h:
1152         (BackingStorePrivate):
1153         (BlackBerry::WebKit::BackingStorePrivate::isDirectRenderingAnimationMessageScheduled):
1154         (BlackBerry::WebKit::BackingStorePrivate::setDirectRenderingAnimationMessageScheduled):
1155         * Api/WebPage_p.h:
1156         (BlackBerry::WebKit::WebPagePrivate::isAcceleratedCompositingActive):
1157         (WebPagePrivate):
1158         * WebKitSupport/WebPageCompositor.cpp:
1159         (BlackBerry::WebKit::WebPageCompositor::WebPageCompositor):
1160         (BlackBerry::WebKit::WebPageCompositor::~WebPageCompositor):
1161         (BlackBerry::WebKit::WebPageCompositor::drawLayers):
1162         (BlackBerry::WebKit::WebPageCompositor::animationTimerFired):
1163         * WebKitSupport/WebPageCompositor.h:
1164         (WebPageCompositor):
1165
1166 2012-03-05  George Staikos  <gstaikos@rim.com>
1167
1168         [BlackBerry] DOMSupport visibleSelectionForRangeInputElement incorrectly dereferences a null range.
1169         https://bugs.webkit.org/show_bug.cgi?id=80274
1170
1171         Reviewed by Antonio Gomes.
1172
1173         A null range can be returned so we should not blindly deref it.
1174         Reviewed Internally by Mike Fenton.
1175
1176         * WebKitSupport/DOMSupport.cpp:
1177         (BlackBerry::WebKit::DOMSupport::visibleSelectionForRangeInputElement):
1178
1179 2012-03-04  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>
1180
1181         [BlackBerry] upstream CredentialManager and CredentialTransformData implementation
1182         https://bugs.webkit.org/show_bug.cgi?id=80107
1183
1184         Reviewed by Antonio Gomes.
1185
1186         Initial upstream of CredentialManager.[h|cpp] and
1187         CredentialTransformData.[h|cpp].
1188         No new test.
1189
1190         * WebCoreSupport/CredentialManager.cpp: Added.
1191         (WebCore):
1192         (WebCore::CredentialManager::CredentialManager):
1193         (WebCore::CredentialManager::autofillAuthenticationChallenge):
1194         (WebCore::CredentialManager::autofillPasswordForms):
1195         (WebCore::CredentialManager::saveCredentialIfConfirmed):
1196         * WebCoreSupport/CredentialManager.h: Added.
1197         (WebKit):
1198         (WebCore):
1199         (CredentialManager):
1200         * WebCoreSupport/CredentialTransformData.cpp: Added.
1201         (WebCore::CredentialTransformData::CredentialTransformData):
1202         (WebCore):
1203         (WebCore::CredentialTransformData::url):
1204         (WebCore::CredentialTransformData::credential):
1205         (WebCore::CredentialTransformData::setCredential):
1206         (WebCore::CredentialTransformData::findPasswordFormFields):
1207         * WebCoreSupport/CredentialTransformData.h: Added.
1208         (WebCore):
1209         (CredentialTransformData):
1210         (WebCore::CredentialTransformData::isValid):
1211         (WebCore::CredentialTransformData::protectionSpace):
1212
1213 2012-03-04  Antonio Gomes  <agomes@rim.com>
1214
1215         [BlackBerry] Fixed positioned element not correctly positioned after orientation change, when viewport metatag is used
1216         https://bugs.webkit.org/show_bug.cgi?id=80228
1217         PR #138865
1218
1219         Reviewed by George Staikos.
1220
1221         Viewport size changes in two main scenarios:
1222         - orientation changes;
1223         - virtual keyboard pop up/hide.
1224
1225         When we are setting a new viewport size, we need to
1226         update the FixedReportedSize of the mainframe. This size
1227         is used to return innerWidth|Heigth as well as to calculate
1228         the fixed position elements height relative to the RenderView [1].
1229
1230         [1] RenderBox::containingBlockLogicalHeightForPositioned.
1231
1232         When we are rotating, we need to delay setting the new FixedReportedSize
1233         till we layout and are able to figure out the new contents size. At this
1234         time we call setFixedReportedSize, but we do not reposition the fixed elemts
1235         afterwards.
1236
1237         Patch adds a call to FrameView::repaintFixedElementsAfterScrolling, after
1238         setting the new size.
1239
1240         Source/WebKit/blackberry:
1241         * Api/WebPage.cpp:
1242         (BlackBerry::WebKit::WebPagePrivate::setViewportSize):
1243
1244 2012-03-02  Mike Fenton  <mifenton@rim.com>
1245
1246         [BlackBerry] Expose WebInspector state to client and clean up WebSettings
1247         https://bugs.webkit.org/show_bug.cgi?id=80177
1248
1249         Reviewed by Antonio Gomes.
1250
1251         Expose the Web Inspector state to WebPage client's and
1252         re-order initialization of WebSettings to be alphabetical
1253         matching their definitions.
1254
1255         * Api/WebPage.cpp:
1256         (BlackBerry::WebKit::WebPage::isWebInspectorEnabled):
1257         * Api/WebPage.h:
1258         * Api/WebSettings.cpp:
1259         (BlackBerry::WebKit::WebSettings::standardSettings):
1260
1261 2012-03-02  Arvid Nilsson  <anilsson@rim.com>
1262
1263         Accelerated compositing: Checkerboard never goes away
1264         https://bugs.webkit.org/show_bug.cgi?id=79020
1265         RIM PR #134164
1266
1267         Reviewed by Adam Treat.
1268
1269         Checkerboard appears in accelerated compositing layers when there's no
1270         texture for (part of) a layer. The layer renderer queues up some render
1271         jobs and schedules a commit to make the WebKit thread process those
1272         jobs. Render jobs performed during commit cause texture upload jobs to
1273         be scheduled on the UI thread. Texture uploads are performed when next
1274         drawing the layers.
1275
1276         Unfortunately, sometimes commit operation happens without a subsequent
1277         call draw the layers.
1278
1279         In order to implement one-shot drawing sync, I added a call to
1280         commitRootLayerIfNeeded() in BackingStore::renderContents(), and
1281         I was lucky that most of the time, renderContents() is followed by
1282         blit(Visible)Contents() which in turn draws the layers.
1283         However, render is not always followed by a blit, for example when
1284         rendering offscreen tiles in BackingStore::renderOnIdle(), and in
1285         direct rendering mode.
1286
1287         Fixed by making sure that every call to commitRootLayerIfNeeded() that
1288         returns true is followed by a call to drawLayersOnCommit(), unless a
1289         blit was requested already.
1290
1291         Also tweak the logic for one-shot drawing sync to make the code in
1292         drawLayersOnCommit() reusable outside of rootLayerCommitTimerFired().
1293
1294         * Api/BackingStore.cpp:
1295         (BlackBerry::WebKit::BackingStorePrivate::BackingStorePrivate):
1296         (BlackBerry::WebKit::BackingStorePrivate::renderOnTimer):
1297         (BlackBerry::WebKit::BackingStorePrivate::renderOnIdle):
1298         (BlackBerry::WebKit::BackingStorePrivate::willFireTimer):
1299         (BlackBerry::WebKit::BackingStorePrivate::renderDirectToWindow):
1300         (BlackBerry::WebKit::BackingStorePrivate::render):
1301         (BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
1302         (BlackBerry::WebKit::BackingStorePrivate::blitContents):
1303         (BlackBerry::WebKit::BackingStorePrivate::renderContents):
1304         (WebKit):
1305         (BlackBerry::WebKit::BackingStorePrivate::drawLayersOnCommitIfNeeded):
1306         * Api/BackingStore_p.h:
1307         (BackingStorePrivate):
1308         (BlackBerry::WebKit::BackingStorePrivate::willDrawLayersOnCommit):
1309
1310 2012-03-02  Adam Treat  <atreat@rim.com>
1311
1312         https://bugs.webkit.org/show_bug.cgi?id=80161
1313         PR: 141157
1314
1315         BlackBerryPlatformScreen.h API has been updated.  Reflect those
1316         changes in our usage.
1317
1318         Reviewed by Antonio Gomes.
1319         Internally reviewed by Jakob Petsovits.
1320
1321         * Api/BackingStore.cpp:
1322         (BlackBerry::WebKit::BackingStorePrivate::tileWidth):
1323         (BlackBerry::WebKit::BackingStorePrivate::tileHeight):
1324         * Api/WebPage.cpp:
1325         (BlackBerry::WebKit::WebPagePrivate::init):
1326         (BlackBerry::WebKit::WebPagePrivate::transformedViewportSize):
1327         (BlackBerry::WebKit::WebPagePrivate::fixedLayoutSize):
1328         (BlackBerry::WebKit::WebPagePrivate::recomputeVirtualViewportFromViewportArguments):
1329         (BlackBerry::WebKit::WebPagePrivate::setDefaultLayoutSize):
1330         (BlackBerry::WebKit::WebPagePrivate::defaultMaxLayoutSize):
1331         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
1332         (WebCore::FrameLoaderClientBlackBerry::restoreViewState):
1333         * WebKitSupport/SurfacePool.cpp:
1334         (BlackBerry::WebKit::createCompositingSurface):
1335
1336 2012-03-02  Konrad Piascik  <kpiascik@rim.com>
1337
1338         [BlackBerry] Set the devicePixelRatio from the results of computeViewportAttributes
1339         https://bugs.webkit.org/show_bug.cgi?id=80160
1340
1341         Reviewed by Antonio Gomes.
1342
1343         Tested by going to layout test fast/viewport/viewport-95.html and viewport-93.html
1344         Previously when executing window.devicePixelRatio these two pages returned 1 now
1345         they report the devicePixelRatio returned by computeViewportAttributes.
1346
1347         * Api/WebPage.cpp:
1348         (BlackBerry::WebKit::WebPagePrivate::recomputeVirtualViewportFromViewportArguments):
1349
1350 2012-03-02  Jacky Jiang  <zhajiang@rim.com>
1351
1352         Fix a warning in InputHandler::learnText()
1353         https://bugs.webkit.org/show_bug.cgi?id=80049
1354
1355         Reviewed by Antonio Gomes.
1356
1357         Fix a warning of the comparison "textInField.length() <=
1358         MaxLearnTextDataSize" in InputHandler::learnText().
1359
1360         Rubber-stamped internally by Mike Fenton.
1361
1362         * WebKitSupport/InputHandler.cpp:
1363         (BlackBerry::WebKit::InputHandler::learnText):
1364
1365 2012-03-01  Andy Chen  <andchen@rim.com>
1366
1367         [BlackBerry] Implement features for find-in-page
1368         https://bugs.webkit.org/show_bug.cgi?id=79820
1369
1370         Reviewed by Antonio Gomes.
1371
1372         - Make it be able to search text around the whole page instead of single frame.
1373         - Make it be able to start new search from active selection and last active match.
1374
1375         No new tests as this patch doesn't change behavior.
1376
1377         * Api/WebPage.cpp:
1378         (BlackBerry::WebKit::WebPagePrivate::frameUnloaded):
1379         * Api/WebPage_p.h:
1380         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
1381         (WebCore::FrameLoaderClientBlackBerry::dispatchWillClose):
1382         (WebCore::FrameLoaderClientBlackBerry::detachedFromParent2):
1383         * WebKitSupport/DOMSupport.cpp:
1384         (BlackBerry::WebKit::DOMSupport::incrementFrame):
1385         * WebKitSupport/DOMSupport.h:
1386         * WebKitSupport/InPageSearchManager.cpp:
1387         (BlackBerry::WebKit::InPageSearchManager::findNextString):
1388         (BlackBerry::WebKit::InPageSearchManager::shouldSearchForText):
1389         (BlackBerry::WebKit::InPageSearchManager::findAndMarkText):
1390         (BlackBerry::WebKit::InPageSearchManager::setMarkerActive):
1391         (BlackBerry::WebKit::InPageSearchManager::frameUnloaded):
1392         * WebKitSupport/InPageSearchManager.h:
1393         * WebKitSupport/InputHandler.cpp:
1394         (BlackBerry::WebKit::InputHandler::frameUnloaded):
1395         * WebKitSupport/InputHandler.h:
1396
1397 2012-03-01  Charles Wei  <charles.wei@torchmobile.com.cn>
1398
1399         [BlackBerry] Web Notification crashes the browser.
1400         https://bugs.webkit.org/show_bug.cgi?id=79897
1401
1402         Reviewed by Antonio Gomes.
1403
1404         The reason of the crash is that it still uses the iterator
1405         after been removed from the container, which invalidates the
1406         iterator. 
1407         We should stop processing after we have found the element
1408         and removed from the container through the iterator.
1409
1410         This patch only fixes the crash issue, but not any notification
1411         functionality issue, which is tracked seperatly.
1412
1413         Test case: http://sandbox.gtaero.net/chrome/notifications.php
1414
1415         * WebCoreSupport/NotificationPresenterImpl.cpp:
1416         (WebKit::NotificationPresenterImpl::onPermission):
1417         (WebKit::NotificationPresenterImpl::notificationClicked):
1418
1419 2012-03-01  Mike Fenton  <mifenton@rim.com>
1420
1421         Autocomplete attribute should apply to textarea's.
1422         https://bugs.webkit.org/show_bug.cgi?id=79929
1423
1424         Reviewed by Antonio Gomes.
1425
1426         Add local static Qualified name for autocorrect attribute.
1427
1428         * WebKitSupport/DOMSupport.cpp:
1429         (BlackBerry::WebKit::DOMSupport::elementSupportsAutocorrect):
1430
1431 2012-02-29  Mike Fenton  <mifenton@rim.com>
1432
1433         Autocomplete attribute should apply to textarea's.
1434         https://bugs.webkit.org/show_bug.cgi?id=79929
1435
1436         Reviewed by Antonio Gomes.
1437
1438         Allow the autocomplete attribute to bubble back to the form setting.
1439
1440         Expand support to include checking autocorrect, autocomplete and
1441         name/id matching to text areas.
1442
1443         Reviewed internally by Nima Ghanavatian and Gen Mak.
1444
1445         * WebKitSupport/DOMSupport.cpp:
1446         (BlackBerry::WebKit::DOMSupport::elementSupportsAutocorrect):
1447         (BlackBerry::WebKit::DOMSupport::elementSupportsAutocomplete):
1448         (BlackBerry::WebKit::DOMSupport::elementAttributeState):
1449         * WebKitSupport/DOMSupport.h:
1450         * WebKitSupport/InputHandler.cpp:
1451         (BlackBerry::WebKit::inputStyle):
1452
1453 2012-02-29  Max Feil  <mfeil@rim.com>
1454
1455         [BlackBerry] Add support for FLAC audio and OGG/Vorbis audio
1456         https://bugs.webkit.org/show_bug.cgi?id=79519
1457
1458         Reviewed by Antonio Gomes.
1459
1460         * Api/WebSettings.cpp:
1461         (BlackBerry::WebKit::mimeTypeAssociationMap):
1462
1463 2012-02-28  Konrad Piascik  <kpiascik@rim.com>
1464
1465         [BlackBerry] Change the API to use std::string
1466         https://bugs.webkit.org/show_bug.cgi?id=79818
1467
1468         Reviewed by Antonio Gomes.
1469
1470         * Api/WebPage.cpp:
1471         (BlackBerry::WebKit::WebPage::dispatchInspectorMessage):
1472         * Api/WebPage.h:
1473
1474 2012-02-28  Jacky Jiang  <zhajiang@rim.com>
1475
1476         [BlackBerry] x86 build fix after cleaning up WebPage.cpp
1477         https://bugs.webkit.org/show_bug.cgi?id=79814
1478
1479         Reviewed by Antonio Gomes.
1480
1481         x86 build fix, keep WebPage::destroyWebPageCompositor() method where it
1482         was which was outside of USE(ACCELERATED_COMPOSITING).
1483
1484         * Api/WebPage.cpp:
1485         (BlackBerry::WebKit::WebPage::destroyWebPageCompositor):
1486         (WebKit):
1487
1488 2012-02-28  Mike Fenton  <mifenton@rim.com>
1489
1490         [BlackBerry] Remove unused focusedNodeChange notifications from the Chrome client.
1491         https://bugs.webkit.org/show_bug.cgi?id=79794
1492
1493         Reviewed by Rob Buis.
1494
1495         Remove unused notification for focusedNodeChanged.
1496
1497         Internally reviewed by Gen Mak.
1498
1499         * Api/WebPageClient.h:
1500         * WebCoreSupport/ChromeClientBlackBerry.cpp:
1501         (WebCore::ChromeClientBlackBerry::focusedNodeChanged):
1502
1503 2012-02-27  Jacky Jiang  <zhajiang@rim.com>
1504
1505         [BlackBerry] Upstream BlackBerry API web page related files
1506         https://bugs.webkit.org/show_bug.cgi?id=74380
1507
1508         Reviewed by Antonio Gomes.
1509
1510         Clean up WebPage.{h, cpp} and WebPage_p.h.
1511         - Remove WebPage::mainFrame() as it is bad to expose WebCore::Frame in
1512           the public API, adapt to the change by adding a new method
1513           WebPagePrivate::core(Const WebPage*) and expose it to
1514           DumpRenderTreeSupport.
1515         - Rename WebPage::spellCheckingEnabled to
1516           WebPage::setSpellCheckingEnabled.
1517         - Remove unused WebPage::focusNodeRect().
1518         - Remove extra blank lines.
1519         - Put WebPage methods and their associated WebPagePrivate methods
1520           together.
1521
1522         No new tests as this patch doesn't change behavior.
1523
1524         * Api/WebPage.cpp:
1525         (BlackBerry::WebKit::WebPage::WebPage):
1526         (WebKit):
1527         (BlackBerry::WebKit::WebPage::~WebPage):
1528         (BlackBerry::WebKit::WebPagePrivate::core):
1529         (BlackBerry::WebKit::WebPage::load):
1530         (BlackBerry::WebKit::WebPage::loadExtended):
1531         (BlackBerry::WebKit::WebPage::loadFile):
1532         (BlackBerry::WebKit::WebPage::download):
1533         (BlackBerry::WebKit::WebPage::loadString):
1534         (BlackBerry::WebKit::WebPage::executeJavaScript):
1535         (BlackBerry::WebKit::WebPage::executeJavaScriptInIsolatedWorld):
1536         (BlackBerry::WebKit::WebPage::stopLoading):
1537         (BlackBerry::WebKit::WebPage::prepareToDestroy):
1538         (BlackBerry::WebKit::WebPage::setScrollPosition):
1539         (BlackBerry::WebKit::WebPage::scrollBy):
1540         (BlackBerry::WebKit::WebPage::notifyInRegionScrollStatusChanged):
1541         (BlackBerry::WebKit::WebPage::zoomToFitScale):
1542         (BlackBerry::WebKit::WebPage::initialScale):
1543         (BlackBerry::WebKit::WebPage::maximumScale):
1544         (BlackBerry::WebKit::WebPage::scrollPosition):
1545         (BlackBerry::WebKit::WebPage::viewportSize):
1546         (BlackBerry::WebKit::WebPage::activeNodeContext):
1547         (BlackBerry::WebKit::WebPage::assignFocus):
1548         (BlackBerry::WebKit::WebPage::blockZoomAnimationFinished):
1549         (BlackBerry::WebKit::WebPage::onInputLocaleChanged):
1550         (BlackBerry::WebKit::WebPage::setScreenOrientation):
1551         (BlackBerry::WebKit::WebPage::applyPendingOrientationIfNeeded):
1552         (BlackBerry::WebKit::WebPage::setViewportSize):
1553         (BlackBerry::WebKit::WebPage::setDefaultLayoutSize):
1554         (BlackBerry::WebKit::WebPage::setScrollOriginPoint):
1555         (BlackBerry::WebKit::WebPage::textEncoding):
1556         (BlackBerry::WebKit::WebPage::forcedTextEncoding):
1557         (BlackBerry::WebKit::WebPage::setForcedTextEncoding):
1558         (BlackBerry::WebKit::WebPage::setSpellCheckingEnabled):
1559         (BlackBerry::WebKit::parentLayer):
1560         (BlackBerry::WebKit::WebPagePrivate::inRegionScrollableAreasForPoint):
1561         (BlackBerry::WebKit::WebPage::destroyWebPageCompositor):
1562         * Api/WebPage.h:
1563         (WebCore):
1564         (WebKit):
1565         * Api/WebPage_p.h:
1566         (WebCore):
1567         (WebKit):
1568         * WebKitSupport/DumpRenderTreeSupport.cpp:
1569         (DumpRenderTreeSupport::corePage):
1570         (DumpRenderTreeSupport::numberOfPendingGeolocationPermissionRequests):
1571         (DumpRenderTreeSupport::resetGeolocationMock):
1572         (DumpRenderTreeSupport::setMockGeolocationError):
1573         (DumpRenderTreeSupport::setMockGeolocationPermission):
1574         (DumpRenderTreeSupport::setMockGeolocationPosition):
1575         (DumpRenderTreeSupport::scalePageBy):
1576         * WebKitSupport/DumpRenderTreeSupport.h:
1577         (WebCore):
1578         (DumpRenderTreeSupport):
1579
1580 2012-02-27  Mike Fenton  <mifenton@rim.com>
1581
1582         [BlackBerry] Selection handling should be entirely directional
1583         https://bugs.webkit.org/show_bug.cgi?id=79692
1584
1585         Reviewed by Antonio Gomes.
1586
1587         Make all VisibleSelections directional.
1588
1589         * WebKitSupport/SelectionHandler.cpp:
1590         (BlackBerry::WebKit::SelectionHandler::updateOrHandleInputSelection):
1591         (BlackBerry::WebKit::SelectionHandler::setSelection):
1592
1593 2012-02-27  Ed Baker  <edbaker@rim.com>
1594
1595         [BlackBerry] Dragging a selection handle outside of the content bounding box does not update the selection range correctly
1596         https://bugs.webkit.org/show_bug.cgi?id=78608
1597
1598         Ensure that when selection handles leave the content bounding box that
1599         the handle not being dragged remains fixed. Do not apply padding to a
1600         direction that would cause the selection to shrink when performing the
1601         handle direction detection.
1602
1603         Reviewed by Antonio Gomes.
1604
1605         * WebKitSupport/DOMSupport.cpp:
1606         (BlackBerry::WebKit::DOMSupport::convertPointToFrame):
1607         * WebKitSupport/DOMSupport.h:
1608         * WebKitSupport/SelectionHandler.cpp:
1609         (BlackBerry::WebKit::clamp):
1610         (BlackBerry::WebKit::directionalVisiblePositionAtExtentOfBox):
1611         (BlackBerry::WebKit::SelectionHandler::extendSelectionToFieldBoundary):
1612         (BlackBerry::WebKit::SelectionHandler::setSelection):
1613         (BlackBerry::WebKit::SelectionHandler::clipPointToVisibleContainer):
1614         * WebKitSupport/SelectionHandler.h:
1615
1616 2012-02-27  Leo Yang  <leo.yang@torchmobile.com.cn>
1617
1618         [BlackBerry] Upstream accelerated compositing helper class
1619         https://bugs.webkit.org/show_bug.cgi?id=78448
1620
1621         Reviewed by Antonio Gomes.
1622
1623         Initial upstream, no new tests.
1624
1625         * WebKitSupport/FrameLayers.cpp: Added.
1626         * WebKitSupport/FrameLayers.h: Added.
1627
1628 2012-02-26  Hajime Morrita  <morrita@chromium.org>
1629
1630         Move ChromeClient::showContextMenu() to ContextMenuClient
1631         https://bugs.webkit.org/show_bug.cgi?id=79427
1632
1633         Reviewed by Adam Barth.
1634
1635         * WebCoreSupport/ChromeClientBlackBerry.h:
1636         (ChromeClientBlackBerry):
1637
1638 2012-02-24  Mike Fenton  <mifenton@rim.com>
1639
1640         [BlackBerry] Eliminate excessive BlackBerry::Platform use in InputHandler
1641         https://bugs.webkit.org/show_bug.cgi?id=79393
1642
1643         Reviewed by Antonio Gomes.
1644
1645         Cleanup usage of BlackBerry::Platform in InputHandler.
1646
1647         * WebKitSupport/InputHandler.cpp:
1648         (BlackBerry::WebKit::convertStringToWchar):
1649         (BlackBerry::WebKit::convertStringToWcharVector):
1650         (BlackBerry::WebKit::convertSpannableStringToString):
1651         (BlackBerry::WebKit::InputHandler::learnText):
1652         (BlackBerry::WebKit::InputHandler::setElementUnfocused):
1653         (BlackBerry::WebKit::InputHandler::shouldAcceptInputFocus):
1654         (BlackBerry::WebKit::InputHandler::setElementFocused):
1655         (BlackBerry::WebKit::InputHandler::nodeTextChanged):
1656         (BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):
1657         (BlackBerry::WebKit::InputHandler::frameUnloaded):
1658         (BlackBerry::WebKit::InputHandler::selectionChanged):
1659         (BlackBerry::WebKit::InputHandler::setSelection):
1660         (BlackBerry::WebKit::InputHandler::handleKeyboardInput):
1661         (BlackBerry::WebKit::InputHandler::deleteTextRelativeToCursor):
1662         (BlackBerry::WebKit::InputHandler::deleteText):
1663         (BlackBerry::WebKit::InputHandler::spannableTextInRange):
1664         (BlackBerry::WebKit::InputHandler::setComposingRegion):
1665         (BlackBerry::WebKit::InputHandler::finishComposition):
1666         (BlackBerry::WebKit::InputHandler::setText):
1667         (BlackBerry::WebKit::InputHandler::setTextAttributes):
1668         (BlackBerry::WebKit::InputHandler::setRelativeCursorPosition):
1669         (BlackBerry::WebKit::InputHandler::setSpannableTextAndRelativeCursor):
1670         (BlackBerry::WebKit::InputHandler::setComposingText):
1671         (BlackBerry::WebKit::InputHandler::commitText):
1672
1673 2012-02-24  Mike Fenton  <mifenton@rim.com>
1674
1675         [BlackBerry] Eliminate excessive BlackBerry::Platform use in SelectionHandler.
1676         https://bugs.webkit.org/show_bug.cgi?id=79391
1677
1678         Reviewed by Antonio Gomes.
1679
1680         Clean up usage of BlackBerry::Platform in SelectionHandler and
1681         explicitly define what namespace to use for ambiguous objects like
1682         IntRect and IntPoint.
1683
1684         * WebKitSupport/SelectionHandler.cpp:
1685         (BlackBerry::WebKit::SelectionHandler::cancelSelection):
1686         (BlackBerry::WebKit::SelectionHandler::getConsolidatedRegionOfTextQuadsForSelection):
1687         (BlackBerry::WebKit::visiblePositionForPointIgnoringClipping):
1688         (BlackBerry::WebKit::directionOfPointRelativeToRect):
1689         (BlackBerry::WebKit::SelectionHandler::shouldUpdateSelectionOrCaretForPoint):
1690         (BlackBerry::WebKit::SelectionHandler::setCaretPosition):
1691         (BlackBerry::WebKit::directionalVisiblePositionAtExtentOfBox):
1692         (BlackBerry::WebKit::pointIsOutsideOfBoundingBoxInDirection):
1693         (BlackBerry::WebKit::SelectionHandler::extendSelectionToFieldBoundary):
1694         (BlackBerry::WebKit::SelectionHandler::updateOrHandleInputSelection):
1695         (BlackBerry::WebKit::SelectionHandler::clipPointToFocusNode):
1696         (BlackBerry::WebKit::SelectionHandler::setSelection):
1697         (BlackBerry::WebKit::SelectionHandler::selectAtPoint):
1698         (BlackBerry::WebKit::SelectionHandler::selectObject):
1699         (BlackBerry::WebKit::comparePointsToReferencePoint):
1700         (BlackBerry::WebKit::minXMinYCorner):
1701         (BlackBerry::WebKit::maxXMinYCorner):
1702         (BlackBerry::WebKit::minXMaxYCorner):
1703         (BlackBerry::WebKit::maxXMaxYCorner):
1704         (BlackBerry::WebKit::caretLocationForRect):
1705         (BlackBerry::WebKit::caretComparisonPointForRect):
1706         (BlackBerry::WebKit::adjustCaretRects):
1707         (BlackBerry::WebKit::SelectionHandler::clipRegionToVisibleContainer):
1708         (BlackBerry::WebKit::referencePoint):
1709         (BlackBerry::WebKit::SelectionHandler::selectionPositionChanged):
1710         (BlackBerry::WebKit::SelectionHandler::caretPositionChanged):
1711         (BlackBerry::WebKit::SelectionHandler::selectionContains):
1712
1713 2012-02-24  Shinya Kawanaka  <shinyak@chromium.org>
1714
1715         SpellCheckRequest needs to know the context where the spellcheck happened.
1716         https://bugs.webkit.org/show_bug.cgi?id=79320
1717
1718         Reviewed by Hajime Morita.
1719
1720         * WebCoreSupport/EditorClientBlackBerry.cpp:
1721         (WebCore::EditorClientBlackBerry::requestCheckingOfString):
1722         * WebCoreSupport/EditorClientBlackBerry.h:
1723         (EditorClientBlackBerry):
1724
1725 2012-02-24  Charles Wei  <charles.wei@torchmobile.com.cn>
1726
1727         [BlackBerry] Anchor mailto: with target set won't launch Messaging application when clicked
1728         https://bugs.webkit.org/show_bug.cgi?id=79318
1729
1730         Need to give the client a chance to decide how to handle the new window request.
1731
1732         Reviewed by Rob Buis.
1733
1734         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
1735         (WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForNewWindowAction):
1736
1737 2012-02-23  Mike Fenton  <mifenton@rim.com>
1738
1739         [BlackBerry] Selection handler has compile failure with logs enabled.
1740         https://bugs.webkit.org/show_bug.cgi?id=79392
1741
1742         Reviewed by Antonio Gomes.
1743
1744         Build Fix.  Update log to avoid usage of toString which was removed.
1745
1746         * WebKitSupport/SelectionHandler.cpp:
1747         (BlackBerry::WebKit::SelectionHandler::selectionPositionChanged):
1748
1749 2012-02-19  Antonio Gomes  <agomes@rim.com>
1750
1751         Fat fingers - Add a clearer way to distinguish the node we want (shadow or non-shadow)
1752         https://bugs.webkit.org/show_bug.cgi?id=79256
1753         PR #127814 / MKS_2587410
1754
1755         Reviewed by Rob Buis.
1756
1757         Patch adds a cleaner way for call sites of FatFingersResult to
1758         query for the appropriated target node: shadow or non-shadow DOM nodes.
1759
1760         It also renames FatFingersResults::validNode to ::node, assuming
1761         that "invalid" nodes are not applicable in any context.
1762
1763         * Api/WebPage.cpp:
1764         (BlackBerry::WebKit::WebPagePrivate::clearDocumentData):
1765         (BlackBerry::WebKit::WebPagePrivate::contextNode):
1766         (BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):
1767         * WebKitSupport/FatFingers.h:
1768         (FatFingersResult):
1769         (BlackBerry::WebKit::FatFingersResult::node):
1770         (BlackBerry::WebKit::FatFingersResult::nodeAsElementIfApplicable):
1771         * WebKitSupport/SelectionHandler.cpp:
1772         (BlackBerry::WebKit::SelectionHandler::selectAtPoint):
1773         * WebKitSupport/TouchEventHandler.cpp:
1774         (BlackBerry::WebKit::TouchEventHandler::touchHoldEvent):
1775         (BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
1776
1777 2012-02-23  Jacky Jiang  <zhajiang@rim.com>
1778
1779         [BlackBerry] Upstream BlackBerry API web page related files
1780         https://bugs.webkit.org/show_bug.cgi?id=74380
1781
1782         Reviewed by Antonio Gomes.
1783
1784         Initial upstream, no new tests.
1785
1786         * Api/WebPage.cpp: Added.
1787         * Api/WebPage.h: Added.
1788         * Api/WebPage_p.h: Added.
1789
1790 2012-02-23  Leo Yang  <leo.yang@torchmobile.com.cn>
1791
1792         [BlackBerry] Remove unused ChromeClientBlackBerry::platformCompositingWindow(), platformWindow() and WebPageClient::compositingWindow()
1793         https://bugs.webkit.org/show_bug.cgi?id=78681
1794
1795         Reviewed by Antonio Gomes.
1796
1797         * Api/WebPageClient.h:
1798         * WebCoreSupport/ChromeClientBlackBerry.cpp:
1799         (WebCore):
1800         * WebCoreSupport/ChromeClientBlackBerry.h:
1801         (ChromeClientBlackBerry):
1802
1803 2012-02-23  Leo Yang  <leo.yang@torchmobile.com.cn>
1804
1805         [BlackBerry] Upstream GLES2Context.{h, cpp}
1806         https://bugs.webkit.org/show_bug.cgi?id=79196
1807
1808         Reviewed by Rob Buis.
1809
1810         Initial upstream, no new tests.
1811
1812         * WebKitSupport/GLES2Context.cpp: Added.
1813         * WebKitSupport/GLES2Context.h: Added.
1814
1815 2012-02-23  Mike Fenton  <mifenton@rim.com>
1816
1817         [BlackBerry] InputHandler requires cleanup of Navigation Mode handling.
1818         https://bugs.webkit.org/show_bug.cgi?id=79366
1819
1820         Reviewed by Rob Buis.
1821
1822         Cleanup InputHandler navigation based code.
1823
1824         1) Remove the concept of NavigationMode and replace it
1825            with simple showKeyboard calls.
1826
1827         2) Remove navigation move events and replace with standard
1828            key events.
1829
1830         3) Standardize function/variable names and remove obsolete
1831            functions.
1832
1833         * Api/WebPageClient.h:
1834         * WebKitSupport/InputHandler.cpp:
1835         (BlackBerry::WebKit::InputHandler::InputHandler):
1836         (BlackBerry::WebKit::InputHandler::nodeFocused):
1837         (BlackBerry::WebKit::InputHandler::setElementUnfocused):
1838         (BlackBerry::WebKit::InputHandler::setElementFocused):
1839         (BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):
1840         (BlackBerry::WebKit::InputHandler::setDelayKeyboardVisibilityChange):
1841         (BlackBerry::WebKit::InputHandler::processPendingKeyboardVisibilityChange):
1842         (BlackBerry::WebKit::InputHandler::notifyClientOfKeyboardVisibilityChange):
1843         * WebKitSupport/InputHandler.h:
1844         (InputHandler):
1845         * WebKitSupport/SelectionHandler.cpp:
1846         (BlackBerry::WebKit::SelectionHandler::setCaretPosition):
1847         (BlackBerry::WebKit::SelectionHandler::updateOrHandleInputSelection):
1848         * WebKitSupport/TouchEventHandler.cpp:
1849         (BlackBerry::WebKit::TouchEventHandler::touchEventCancel):
1850         (BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
1851
1852 2012-02-21  Ryosuke Niwa  <rniwa@webkit.org>
1853
1854         Remove the remaining uses of CSSStyleDeclaration in Editor
1855         https://bugs.webkit.org/show_bug.cgi?id=78939
1856
1857         Reviewed by Enrica Casucci.
1858
1859         * WebCoreSupport/EditorClientBlackBerry.cpp:
1860         (WebCore::EditorClientBlackBerry::shouldApplyStyle):
1861         * WebCoreSupport/EditorClientBlackBerry.h:
1862         (EditorClientBlackBerry):
1863
1864 2012-02-22  Mike Fenton  <mifenton@rim.com>
1865
1866         [BlackBerry] InputHandler has signed vs unsigned comparison.
1867         https://bugs.webkit.org/show_bug.cgi?id=79261
1868
1869         Fix warning by casting the unsigned int to an int.
1870
1871         Reviewed by Rob Buis.
1872
1873         * WebKitSupport/InputHandler.cpp:
1874         (BlackBerry::WebKit::InputHandler::rectForCaret):
1875
1876 2012-02-22  Ryosuke Niwa  <rniwa@webkit.org>
1877
1878         Remove the remaining uses of CSSStyleDeclaration in Editor
1879         https://bugs.webkit.org/show_bug.cgi?id=78939
1880
1881         Reviewed by Enrica Casucci.
1882
1883         * WebCoreSupport/EditorClientBlackBerry.cpp:
1884         (WebCore::EditorClientBlackBerry::shouldApplyStyle):
1885         * WebCoreSupport/EditorClientBlackBerry.h:
1886         (EditorClientBlackBerry):
1887
1888 2012-02-18  Antonio Gomes  <agomes@rim.com>
1889
1890         Fat fingers - cache the first rect-based hit test so we do not need to do it again
1891         https://bugs.webkit.org/show_bug.cgi?id=79115
1892
1893         Reviewed by Adam Treat.
1894
1895         Our FatFingers implementation runs currently in two phases:
1896         the first checks for the elements intrinsically clickable;
1897         the second checks for elements made clickable by the page
1898         (for example, a div with a onclick event listener attached to it).
1899         For each phase, we perform a rect hittest, which is not needed since
1900         the result of each is the same.
1901
1902         Patch introduces a caching mechanism so we avoid on rect hittest:
1903         when the first phase runs, it caches each nodeset per document in
1904         a hashmap. This second phase works with the cached results.
1905
1906         No behavioral change, but performance is better since we
1907         avoid one (possibly expensive) rect hittest.
1908
1909         I measured the performance gain on https://www.kvd.se/, and we
1910         save up to 0.04 seconds, by caching and re-using the results.
1911
1912         * WebKitSupport/FatFingers.cpp:
1913         (BlackBerry::WebKit::dumpHitTestResult):
1914         (BlackBerry::WebKit::FatFingers::findBestPoint):
1915         (BlackBerry::WebKit::FatFingers::findIntersectingRegions):
1916         (BlackBerry::WebKit::FatFingers::cachingStrategy):
1917         (WebKit):
1918         (BlackBerry::WebKit::FatFingers::getNodesFromRect):
1919         * WebKitSupport/FatFingers.h:
1920
1921 2012-02-20  Antonio Gomes  <agomes@rim.com>
1922
1923         All default video/audio control elements should be rect-hit testable (Part II)
1924         PR #139518 / MKS_3005538
1925
1926         Reviewed by George Staikos.
1927
1928         Add HTMLInputElement::isMediaControlElement as a criteria
1929         to consider a element as clickable.
1930
1931         Note that is should be only used while in the "ClickableByDefault"
1932         phase of FatFingers.
1933
1934         * WebKitSupport/FatFingers.cpp:
1935         (BlackBerry::WebKit::FatFingers::isElementClickable):
1936
1937 2012-02-16  Antonio Gomes  <agomes@rim.com>
1938
1939         [BlackBerry] Implemented a way to defer client navigation change client notifications
1940         https://bugs.webkit.org/show_bug.cgi?id=78848
1941
1942         Reviewed by Rob Buis.
1943
1944         Currently we postpone touch_down till touch_up if user touches
1945         the screen and an input field has the WebKit focus. This is done
1946         so we can scroll the page without hidding the vkb needlessly.
1947
1948         However, it breaks the conversion of touch to mouse events
1949         if an input field has the focus in the following scenario:
1950         an <input type=text> is focused and an user grab and-drag
1951         a <input type=range> knob/slide. It does not work until the
1952         user unfocuses the currently focused edit field.
1953
1954         Patch introduces a way to unfocus a currently focused input field,
1955         without requesting the client to show or hide the virtual keyboard
1956         right way. Instead it gets a delayed notification of the vkb mode requested
1957         at either touch_released/mouse_up or touch_cancel time.
1958
1959         For now, due to content side issues with major web sites,
1960         only delay navigation mode notification changes if we are not dealing with
1961         input modes.
1962
1963         * WebKitSupport/InputHandler.cpp:
1964         (BlackBerry::WebKit::InputHandler::InputHandler):
1965         (BlackBerry::WebKit::InputHandler::nodeFocused):
1966         (BlackBerry::WebKit::InputHandler::setElementFocused):
1967         (BlackBerry::WebKit::InputHandler::setNavigationMode):
1968         (WebKit):
1969         (BlackBerry::WebKit::InputHandler::setDelayClientNotificationOfNavigationModeChange):
1970         (BlackBerry::WebKit::InputHandler::processPendingClientNavigationModeChangeNotification):
1971         (BlackBerry::WebKit::InputHandler::notifyClientOfNavigationModeChange):
1972         (BlackBerry::WebKit::InputHandler::willOpenPopupForNode):
1973         (BlackBerry::WebKit::InputHandler::setPopupListIndexes):
1974         (BlackBerry::WebKit::InputHandler::spannableTextInRange):
1975         (BlackBerry::WebKit::InputHandler::removeComposedText):
1976         (BlackBerry::WebKit::InputHandler::firstSpanInString):
1977         (BlackBerry::WebKit::InputHandler::setText):
1978         (BlackBerry::WebKit::InputHandler::setRelativeCursorPosition):
1979         * WebKitSupport/InputHandler.h:
1980         (InputHandler):
1981
1982 2012-02-16  Antonio Gomes  <agomes@rim.com>
1983
1984         Crash @WebPagePrivate::enqueueRenderingOfClippedContentOfScrollableNodeAfterInRegionScrolling MKS_2986818
1985         https://bugs.webkit.org/show_bug.cgi?id=78845
1986
1987         Reviewed by Rob Buis.
1988
1989         We were trying to operate on a cached Node when its page/frame/document
1990         were gone to PageCache already. To avoid such problems, lets clean up
1991         any document data we have cached when the Frame goes into the cache.
1992
1993         * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
1994         (WebCore::FrameLoaderClientBlackBerry::didSaveToPageCache):
1995         (WebCore):
1996         * WebCoreSupport/FrameLoaderClientBlackBerry.h:
1997         (FrameLoaderClientBlackBerry):
1998
1999 2012-02-16  Antonio Gomes  <agomes@rim.com>
2000
2001         [BlackBerry] Upstream touch handling related classes
2002         https://bugs.webkit.org/show_bug.cgi?id=78509
2003
2004         Reviewed by Adam Treat and Rob Buis.
2005
2006         FatFingers is the class responsible to the whole touch
2007         accuracy of the BlackBerry port. Initial upstream.
2008
2009         * WebKitSupport/FatFingers.cpp: Added.
2010         (WebKit):
2011         (BlackBerry::WebKit::FatFingers::fingerRectForPoint):
2012         (BlackBerry::WebKit::hasMousePressListener):
2013         (BlackBerry::WebKit::FatFingers::isElementClickable):
2014         (BlackBerry::WebKit::isFieldWithText):
2015         (BlackBerry::WebKit::distanceBetweenPoints):
2016         (BlackBerry::WebKit::compareDistanceBetweenPoints):
2017         (BlackBerry::WebKit::isValidFrameOwner):
2018         (BlackBerry::WebKit::FatFingers::FatFingers):
2019         (BlackBerry::WebKit::FatFingers::~FatFingers):
2020         (BlackBerry::WebKit::FatFingers::findBestPoint):
2021         (BlackBerry::WebKit::FatFingers::checkFingerIntersection):
2022         (BlackBerry::WebKit::FatFingers::findIntersectingRegions):
2023         (BlackBerry::WebKit::FatFingers::checkForClickableElement):
2024         (BlackBerry::WebKit::FatFingers::checkForText):
2025         (BlackBerry::WebKit::FatFingers::getPaddings):
2026         (BlackBerry::WebKit::FatFingers::nodesFromRect):
2027         (BlackBerry::WebKit::FatFingers::getRelevantInfoFromPoint):
2028         (BlackBerry::WebKit::FatFingers::setSuccessfulFatFingersResult):
2029         * WebKitSupport/FatFingers.h: Added.
2030         (WebCore):
2031         (WebKit):
2032         (FatFingersResult):
2033         (BlackBerry::WebKit::FatFingersResult::FatFingersResult):
2034         (BlackBerry::WebKit::FatFingersResult::reset):
2035         (BlackBerry::WebKit::FatFingersResult::originPosition):
2036         (BlackBerry::WebKit::FatFingersResult::adjustedPosition):
2037         (BlackBerry::WebKit::FatFingersResult::positionWasAdjusted):
2038         (BlackBerry::WebKit::FatFingersResult::isTextInput):
2039         (BlackBerry::WebKit::FatFingersResult::isValid):
2040         (BlackBerry::WebKit::FatFingersResult::validNode):
2041         (BlackBerry::WebKit::FatFingersResult::nodeAsElementIfApplicable):
2042         (FatFingers):
2043
2044 2012-02-16  Antonio Gomes  <agomes@rim.com>
2045
2046         [BlackBerry] Upstream touch handling related classes
2047         https://bugs.webkit.org/show_bug.cgi?id=78509
2048
2049         Reviewed by Adam Treat.
2050
2051         Initial upstream of the Blackberry specific single touch event
2052         handler class.
2053
2054         * blackberry/WebKitSupport/TouchEventHandler.cpp: Added.
2055         (WebKit):
2056         (BlackBerry::WebKit::hasMouseMoveListener):
2057         (BlackBerry::WebKit::hasTouchListener):
2058         (BlackBerry::WebKit::elementExpectsMouseEvents):
2059         (BlackBerry::WebKit::shouldConvertTouchToMouse):
2060         (BlackBerry::WebKit::TouchEventHandler::TouchEventHandler):
2061         (BlackBerry::WebKit::TouchEventHandler::~TouchEventHandler):
2062         (BlackBerry::WebKit::TouchEventHandler::shouldSuppressMouseDownOnTouchDown):
2063         [BlackBerry] Upstream touch handling related classes
2064         https://bugs.webkit.org/show_bug.cgi?id=78509
2065
2066         Reviewed by Rob Buis.
2067
2068         InRegionScrollableArea specializes the BlackBerry specific ScrollViewBase,
2069         working as a read-only wrapper object for a scrollable areas in the page.
2070         It is used in our client side to control in-region scrolling (scrollable boxes,
2071         inner frames, etc).
2072
2073         Initial upstream.
2074
2075         * WebKitSupport/InRegionScrollableArea.cpp: Added.
2076         (WebKit):
2077         (BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):
2078         (BlackBerry::WebKit::InRegionScrollableArea::calculateMinimumScrollPosition):
2079         (BlackBerry::WebKit::InRegionScrollableArea::calculateMaximumScrollPosition):
2080         (BlackBerry::WebKit::InRegionScrollableArea::layer):
2081         (BlackBerry):
2082         * WebKitSupport/InRegionScrollableArea.h: Added.
2083         (WebCore):
2084         (WebKit):
2085         (InRegionScrollableArea):
2086
2087 2012-02-16  Antonio Gomes  <agomes@rim.com>
2088
2089         (BlackBerry::WebKit::TouchEventHandler::touchEventCancel):
2090         (BlackBerry::WebKit::TouchEventHandler::touchHoldEvent):
2091         (BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
2092         (BlackBerry::WebKit::TouchEventHandler::spellCheck):
2093         (BlackBerry::WebKit::TouchEventHandler::handleFatFingerPressed):
2094         (BlackBerry::WebKit::elementForTapHighlight):
2095         (BlackBerry::WebKit::TouchEventHandler::drawTapHighlight):
2096         * blackberry/WebKitSupport/TouchEventHandler.h: Added.
2097         (WebCore):
2098         (WebKit):
2099         (TouchEventHandler):
2100         (BlackBerry::WebKit::TouchEventHandler::lastFatFingersResult):
2101         (BlackBerry::WebKit::TouchEventHandler::resetLastFatFingersResult):
2102