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