ChangeLog 193 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
2012-05-29  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] WebKit-side implementation of SelectionOverlay
        https://bugs.webkit.org/show_bug.cgi?id=87605

        Reviewed by Rob Buis.

        Leverage the new WebOverlay API to move SelectionOverlay to the WebKit
        library, so we always draw selection regardless of which embedder is
        integrating WebKit.

        PR #160263

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::init):
        (BlackBerry::WebKit::WebPage::selectionOverlay):
        (WebKit):
        * Api/WebPage.h:
        (WebKit):
        * Api/WebPage_p.h:
        (WebPagePrivate):
        * Api/WebSelectionOverlay.h: Added.
        (WebKit):
        * WebKitSupport/SelectionHandler.cpp:
        (BlackBerry::WebKit::SelectionHandler::selectionPositionChanged):
        * WebKitSupport/SelectionOverlay.cpp: Added.
        (WebKit):
        (BlackBerry::WebKit::SelectionOverlay::SelectionOverlay):
        (BlackBerry::WebKit::SelectionOverlay::~SelectionOverlay):
        (BlackBerry::WebKit::SelectionOverlay::draw):
        (BlackBerry::WebKit::SelectionOverlay::hide):
        (BlackBerry::WebKit::SelectionOverlay::notifySyncRequired):
        (BlackBerry::WebKit::SelectionOverlay::paintContents):
        * WebKitSupport/SelectionOverlay.h: Added.
        (WebKit):
        (SelectionOverlay):
        (BlackBerry::WebKit::SelectionOverlay::create):
        (BlackBerry::WebKit::SelectionOverlay::notifyAnimationStarted):
        (BlackBerry::WebKit::SelectionOverlay::showDebugBorders):
        (BlackBerry::WebKit::SelectionOverlay::showRepaintCounter):
        (BlackBerry::WebKit::SelectionOverlay::contentsVisible):

43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235
2012-05-29  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] WebOverlay API
        https://bugs.webkit.org/show_bug.cgi?id=87603

        Reviewed by Rob Buis.

        This new API makes it possible to leverage the BlackBerry accelerated
        compositing implementation to draw, transform and fluidly animate
        overlays in the embedding library or application.

        A WebOverlay has an affinity for the thread where it was created. If
        the current thread is the WebKit thread, use WebPage::addOverlay() to
        add it to the page, and manipulate it only from the WebKit thread, with
        exception of the "override" functionality which can be used from the
        compositing thread. If the current thread is the compositing thread,
        use WebPage::addCompositingThreadOverlay() to add it to the page, and
        only manipulate it on the compositing thread.

        A WebOverlay can be painted using Skia, or its contents can be set to
        an image or a solid color.

        PR #156812

        * Api/WebAnimation.cpp: Added.
        (WebKit):
        (BlackBerry::WebKit::WebAnimation::fadeAnimation):
        (BlackBerry::WebKit::WebAnimation::name):
        (BlackBerry::WebKit::WebAnimation::WebAnimation):
        (BlackBerry::WebKit::WebAnimation::~WebAnimation):
        (BlackBerry::WebKit::WebAnimation::operator=):
        * Api/WebAnimation.h: Added.
        (WebKit):
        * Api/WebAnimation_p.h: Added.
        (WebKit):
        (WebAnimationPrivate):
        (BlackBerry::WebKit::WebAnimationPrivate::WebAnimationPrivate):
        * Api/WebOverlay.cpp: Added.
        (WebKit):
        (BlackBerry::WebKit::WebOverlay::WebOverlay):
        (BlackBerry::WebKit::WebOverlay::~WebOverlay):
        (BlackBerry::WebKit::WebOverlay::position):
        (BlackBerry::WebKit::WebOverlay::setPosition):
        (BlackBerry::WebKit::WebOverlay::anchorPoint):
        (BlackBerry::WebKit::WebOverlay::setAnchorPoint):
        (BlackBerry::WebKit::WebOverlay::size):
        (BlackBerry::WebKit::WebOverlay::setSize):
        (BlackBerry::WebKit::WebOverlay::sizeIsScaleInvariant):
        (BlackBerry::WebKit::WebOverlay::setSizeIsScaleInvariant):
        (BlackBerry::WebKit::WebOverlay::transform):
        (BlackBerry::WebKit::WebOverlay::setTransform):
        (BlackBerry::WebKit::WebOverlay::opacity):
        (BlackBerry::WebKit::WebOverlay::setOpacity):
        (BlackBerry::WebKit::WebOverlay::addAnimation):
        (BlackBerry::WebKit::WebOverlay::removeAnimation):
        (BlackBerry::WebKit::WebOverlay::parent):
        (BlackBerry::WebKit::WebOverlay::addChild):
        (BlackBerry::WebKit::WebOverlay::removeFromParent):
        (BlackBerry::WebKit::WebOverlay::setContentsToImage):
        (BlackBerry::WebKit::WebOverlay::setContentsToColor):
        (BlackBerry::WebKit::WebOverlay::setDrawsContent):
        (BlackBerry::WebKit::WebOverlay::invalidate):
        (BlackBerry::WebKit::WebOverlay::setClient):
        (BlackBerry::WebKit::WebOverlay::override):
        (BlackBerry::WebKit::WebOverlay::resetOverrides):
        (BlackBerry::WebKit::WebOverlayPrivate::page):
        (BlackBerry::WebKit::WebOverlayPrivate::override):
        (BlackBerry::WebKit::WebOverlayPrivate::drawContents):
        (BlackBerry::WebKit::WebOverlayPrivate::scheduleCompositingRun):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::WebOverlayPrivateWebKitThread):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::override):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::position):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::setPosition):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::anchorPoint):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::setAnchorPoint):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::size):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::setSize):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::sizeIsScaleInvariant):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::setSizeIsScaleInvariant):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::transform):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::setTransform):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::opacity):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::setOpacity):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::addAnimation):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::removeAnimation):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::addChild):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::removeFromParent):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::setContentsToImage):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::setContentsToColor):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::setDrawsContent):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::clear):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::invalidate):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::resetOverrides):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::notifySyncRequired):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::paintContents):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::WebOverlayLayerCompositingThreadClient):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::~WebOverlayLayerCompositingThreadClient):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::setDrawsContent):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::invalidate):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::setContents):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::setContentsToColor):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::layerCompositingThreadDestroyed):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::layerVisibilityChanged):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::uploadTexturesIfNeeded):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::drawTextures):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::deleteTextures):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::WebOverlayPrivateCompositingThread):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::~WebOverlayPrivateCompositingThread):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::setClient):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::override):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::position):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::setPosition):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::anchorPoint):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::setAnchorPoint):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::size):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::setSize):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::sizeIsScaleInvariant):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::setSizeIsScaleInvariant):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::transform):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::setTransform):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::opacity):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::setOpacity):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::addAnimation):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::removeAnimation):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::addChild):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::removeFromParent):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::setContentsToImage):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::setContentsToColor):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::setDrawsContent):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::clear):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::invalidate):
        (BlackBerry::WebKit::WebOverlayPrivateCompositingThread::resetOverrides):
        * Api/WebOverlay.h: Added.
        (WebCore):
        (WebKit):
        * Api/WebOverlayClient.h: Added.
        (WebKit):
        * Api/WebOverlayOverride.cpp: Added.
        (WebKit):
        (BlackBerry::WebKit::WebOverlayOverride::WebOverlayOverride):
        (BlackBerry::WebKit::WebOverlayOverride::~WebOverlayOverride):
        (BlackBerry::WebKit::WebOverlayOverride::setPosition):
        (BlackBerry::WebKit::WebOverlayOverride::setAnchorPoint):
        (BlackBerry::WebKit::WebOverlayOverride::setSize):
        (BlackBerry::WebKit::WebOverlayOverride::setTransform):
        (BlackBerry::WebKit::WebOverlayOverride::setOpacity):
        (BlackBerry::WebKit::WebOverlayOverride::addAnimation):
        (BlackBerry::WebKit::WebOverlayOverride::removeAnimation):
        * Api/WebOverlayOverride.h: Added.
        (WebKit):
        * Api/WebOverlay_p.h: Added.
        (WTF):
        (WebCore):
        (WebKit):
        (WebOverlayPrivate):
        (BlackBerry::WebKit::WebOverlayPrivate::WebOverlayPrivate):
        (BlackBerry::WebKit::WebOverlayPrivate::~WebOverlayPrivate):
        (BlackBerry::WebKit::WebOverlayPrivate::setPage):
        (BlackBerry::WebKit::WebOverlayPrivate::setClient):
        (BlackBerry::WebKit::WebOverlayPrivate::layerCompositingThread):
        (BlackBerry::WebKit::WebOverlayPrivate::graphicsLayer):
        (WebOverlayPrivateWebKitThread):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::graphicsLayer):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::notifyAnimationStarted):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::showDebugBorders):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::showRepaintCounter):
        (BlackBerry::WebKit::WebOverlayPrivateWebKitThread::contentsVisible):
        (WebOverlayLayerCompositingThreadClient):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::setLayer):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::setClient):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::drawsContent):
        (BlackBerry::WebKit::WebOverlayLayerCompositingThreadClient::contents):
        (WebOverlayPrivateCompositingThread):
        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPage::addOverlay):
        (WebKit):
        (BlackBerry::WebKit::WebPage::removeOverlay):
        (BlackBerry::WebKit::WebPage::addCompositingThreadOverlay):
        (BlackBerry::WebKit::WebPage::removeCompositingThreadOverlay):
        * Api/WebPage.h:
        (WebKit):
        * Api/WebPageCompositor.cpp:
        (BlackBerry::WebKit::WebPageCompositorPrivate::prepareFrame):
        (BlackBerry::WebKit::WebPageCompositorPrivate::render):
        (WebKit):
        (BlackBerry::WebKit::WebPageCompositorPrivate::compositeLayers):
        (BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
        (BlackBerry::WebKit::WebPageCompositorPrivate::addOverlay):
        (BlackBerry::WebKit::WebPageCompositorPrivate::removeOverlay):
        * Api/WebPageCompositor_p.h:
        (BlackBerry::WebKit::WebPageCompositorPrivate::compositingThreadOverlayLayer):
        (WebPageCompositorPrivate):

236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268
2012-05-28  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>

        [BlackBerry] http authenticate dialog popup only once no matter authentication pass or fail
        https://bugs.webkit.org/show_bug.cgi?id=80135

        Reviewed by Rob Buis.

        RIM PR: 145660
        Fixed a regression introduced by r111810, which used the wrong
        credential object.

        Added the interface function didReceivedAuthenticaitonChallenge()
        in interface class DumpRenderTreeClient;
        Called m_dumpRenderTree->didReceiveAuthenticationChallenge() in
        WebPagePrivate::authenticationChallenge() when DRT is enabled.

        Test: reuse existing test cases:
        http/tests/loading/basic-credentials-sent-automatically.html
        http/tests/loading/basic-auth-resend-wrong-credentials.html

        Resubmit the patch reverted by r115104 after the digest infinite loop
        issue for BlackBerry porting get identified and fixed.

        Internally reviewed by Joe Mason <jmason@rim.com>

        * Api/DumpRenderTreeClient.h:
        (WebCore):
        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):
        * Api/WebPageClient.h:
        * Api/WebPage_p.h:
        (WebPagePrivate):

269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296
2012-05-28  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Always create a compositor
        https://bugs.webkit.org/show_bug.cgi?id=87598

        Reviewed by Rob Buis.

        There will likely be compositing layers either due to web content or
        due to overlays.

        Defer initialization of OpenGL objects (i.e., delay creation of the
        LayerRenderer object) until we actually need to draw and there are such
        layers, to avoid initializing OpenGL in the unlikely case that there
        are no compositing layers or overlay layers.

        PR #156811

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::init):
        (BlackBerry::WebKit::WebPagePrivate::createCompositor):
        * Api/WebPageCompositor.cpp:
        (BlackBerry::WebKit::WebPageCompositorPrivate::setContext):
        (BlackBerry::WebKit::WebPageCompositorPrivate::prepareFrame):
        (BlackBerry::WebKit::WebPageCompositorPrivate::render):
        (BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
        * Api/WebPageCompositor_p.h:
        (WebPageCompositorPrivate):

297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329
2012-05-28  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Dangling pointer in WebPagePrivate::setCompositor() message
        https://bugs.webkit.org/show_bug.cgi?id=87590

        Reviewed by Rob Buis.

        A crash would be seen in GuardedPointerBase::getWithGuardLocked when
        attempting to unpickle and execute serialized call to setCompositor.

        The problem was that the message had been created with a dangling
        pointer as the target. The web page failed to inform its compositor
        that it was being destroyed due to an early return in
        WebPagePrivate::destroyCompositor.

        The root cause was that a method called "destroyCompositor" was being
        called in two situations, when navigating to a new page as well as when
        actually deleting the web page. And in one case, we really only wanted
        to free up some memory by clearing textures, while in the other case we
        really did want to destroy the compositor.

        Fixed by calling a method to release textures when that's what we want
        to do, and calling a method to destroy the compositor when that's what
        we want to do, and making that latter method unconditional.

        Reviewed internally by Jeff Rogers.

        PR #156765

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::setLoadState):
        (BlackBerry::WebKit::WebPagePrivate::destroyCompositor):

330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382
2012-05-28  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Add a default tap highlight
        https://bugs.webkit.org/show_bug.cgi?id=87569

        Reviewed by Rob Buis.

        We used to require the embedder to implement tap highlight drawing.
        Now, a default tap highlight, implemented using the recently added
        accelerated compositing overlay layer support, can be used instead.

        The tap highlight appears instantly but fades out when hidden.

        The default tap highlight can be overridden using the new
        WebPage::setTapHighlight() method.

        Reviewed internally by Mike Lattanzio and Mike Fenton.

        PR #154329

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::init):
        (BlackBerry::WebKit::WebPage::tapHighlight):
        (WebKit):
        (BlackBerry::WebKit::WebPage::setTapHighlight):
        * Api/WebPage.h:
        (WebKit):
        * Api/WebPageClient.h:
        * Api/WebPage_p.h:
        (WebCore):
        (WebPagePrivate):
        * Api/WebTapHighlight.h: Added.
        (WebKit):
        * WebKitSupport/DefaultTapHighlight.cpp: Added.
        (WebKit):
        (BlackBerry::WebKit::fadeAnimationName):
        (BlackBerry::WebKit::DefaultTapHighlight::DefaultTapHighlight):
        (BlackBerry::WebKit::DefaultTapHighlight::~DefaultTapHighlight):
        (BlackBerry::WebKit::DefaultTapHighlight::draw):
        (BlackBerry::WebKit::DefaultTapHighlight::hide):
        (BlackBerry::WebKit::DefaultTapHighlight::notifySyncRequired):
        (BlackBerry::WebKit::DefaultTapHighlight::paintContents):
        * WebKitSupport/DefaultTapHighlight.h: Added.
        (WebKit):
        (DefaultTapHighlight):
        (BlackBerry::WebKit::DefaultTapHighlight::create):
        (BlackBerry::WebKit::DefaultTapHighlight::notifyAnimationStarted):
        (BlackBerry::WebKit::DefaultTapHighlight::showDebugBorders):
        (BlackBerry::WebKit::DefaultTapHighlight::showRepaintCounter):
        (BlackBerry::WebKit::DefaultTapHighlight::contentsVisible):
        * WebKitSupport/TouchEventHandler.cpp:
        (BlackBerry::WebKit::TouchEventHandler::drawTapHighlight):

383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417
2012-05-28  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Add an overlay layer
        https://bugs.webkit.org/show_bug.cgi?id=87567

        Reviewed by Antonio Gomes.

        The overlay layer allows us to have compositing layers even though the
        web page is not currently using accelerated compositing.

        These layers can be used to implement tap highlight, inspector overlay
        and more.

        Reviewed internally by Filip Spacek.

        PR #154335

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::scheduleRootLayerCommit):
        (BlackBerry::WebKit::WebPagePrivate::overlayLayer):
        (WebKit):
        (BlackBerry::WebKit::WebPagePrivate::commitRootLayer):
        (BlackBerry::WebKit::WebPagePrivate::commitRootLayerIfNeeded):
        * Api/WebPageCompositor.cpp:
        (BlackBerry::WebKit::WebPageCompositorPrivate::setOverlayLayer):
        (WebKit):
        (BlackBerry::WebKit::WebPageCompositorPrivate::prepareFrame):
        (BlackBerry::WebKit::WebPageCompositorPrivate::render):
        (BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
        * Api/WebPageCompositor_p.h:
        (BlackBerry::WebKit::WebPageCompositorPrivate::overlayLayer):
        (WebPageCompositorPrivate):
        * Api/WebPage_p.h:
        (WebPagePrivate):

418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470
2012-05-28  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Update WebPageCompositor::render() API
        https://bugs.webkit.org/show_bug.cgi?id=87565

        Reviewed by Rob Buis.

        The new API allows the embedder to specify the root transform and many
        OpenGL related parameters to be used when rendering the web page.

        To honor the transform, we have to implement a way to composite the
        BackingStore output using a generic transform. This method,
        BackingStorePrivate::compositeContents(), uses a strategy that differs
        from blitContents(), because that one is optimized for software
        blitting, while this one is optimized for GPU rendering. Specifically,
        instead of drawing the checkerboard first, and the rendered subregions
        of the tile afterward, we draw the whole tile in one call, and then
        draw checkered regions on top, if any.

        Removed the blit generation condvar from the new code paths for drawing
        BackingStore output using a transform, since the condvar is ineffective
        in preventing flicker when we're not in charge of swapping the window.
        Instead, another synchronization solution will be implemented in the
        future.

        Reviewed internally by Filip Spacek.
        Some parts reviewed internally by Jacky Jiang and others by
        Mike Lattanzio.

        PR #151887, #154334

        * Api/BackingStore.cpp:
        (BlackBerry::WebKit::BackingStorePrivate::render):
        (BlackBerry::WebKit::BackingStorePrivate::blitContents):
        (WebKit):
        (BlackBerry::WebKit::BackingStorePrivate::compositeContents):
        * Api/BackingStore_p.h:
        (WebCore):
        (BackingStorePrivate):
        * Api/WebPageCompositor.cpp:
        (BlackBerry::WebKit::WebPageCompositorPrivate::setContext):
        (BlackBerry::WebKit::WebPageCompositorPrivate::setRootLayer):
        (BlackBerry::WebKit::WebPageCompositorPrivate::prepareFrame):
        (BlackBerry::WebKit::WebPageCompositorPrivate::render):
        (BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
        (BlackBerry::WebKit::WebPageCompositor::prepareFrame):
        (BlackBerry::WebKit::WebPageCompositor::render):
        * Api/WebPageCompositor.h:
        * Api/WebPageCompositorClient.h:
        * Api/WebPageCompositor_p.h:
        (WebPageCompositorPrivate):
        * WebCoreSupport/ChromeClientBlackBerry.cpp:

471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487
2012-05-28  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Plumb through the return value of makeCurrent to caller
        https://bugs.webkit.org/show_bug.cgi?id=87564

        Reviewed by Rob Buis.

        This way the caller can take appropriate action if makeCurrent fails,
        for example because we're running out of memory.

        Reviewed internally by George Staikos.

        PR #149721

        * WebKitSupport/GLES2Context.cpp:
        (BlackBerry::WebKit::GLES2Context::makeCurrent):

488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514
2012-05-27  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Crash when deleting WebPageCompositor
        https://bugs.webkit.org/show_bug.cgi?id=87589

        Reviewed by Rob Buis.

        The WebPageCompositorPrivate is reference counted, so it may outlive
        either the WebPage or the WebPageCompositor, depending on who releases
        its reference first.

        Fixed by disconnecting the objects properly, regardless of who goes
        away first.

        Reviewed internally by Mike Lattanzio.

        PR #156444

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::setCompositor):
        (BlackBerry::WebKit::WebPagePrivate::destroyCompositor):
        * Api/WebPageCompositor.cpp:
        (BlackBerry::WebKit::WebPageCompositor::~WebPageCompositor):
        (BlackBerry::WebKit::WebPageCompositor::client):
        * Api/WebPageCompositor_p.h:
        (BlackBerry::WebKit::WebPageCompositorPrivate::setPage):

515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553
2012-05-27  Arvid Nilsson  <anilsson@rim.com>

        2012-04-18  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] BackingStore accesses tiles even though it's not active
        https://bugs.webkit.org/show_bug.cgi?id=87563

        Reviewed by Antonio Gomes.

        There are many scenarios that can call render and cause tile access,
        and they used to be rerouted to the direct rendering code when the
        backing store was not active. This was thanks to an implicit check for
        isActive() by virtue of calling shouldDirectRenderingToWindow() from
        render().

        If we're using OpenGL for compositing the backing store contents
        however, direct rendering is always disabled and we jump right into the
        tile based rendering code.

        Fixed by adding an explicit check for isActive() in render(), now that
        the implicit check in shouldDirectRenderingToWindow() is conditional on
        having raster usage.

        Since PR136381/bug83131, when OpenGL compositing is used, and the
        backing store is not active, it is not in charge of drawing the root
        layer. Instead, we switch off the paintingGoesToWindow flag on the root
        RenderLayer so no invalidates will reach the ChromeClient or the
        BackingStore any more. Instead, invalidations will cause the root
        accelerated compositing layer to be repainted. Any BackingStore render
        calls while in this state are pointless, and can safely do an early
        return.

        Reviewed internally by Jakob Petsovits.

        PR #150403

        * Api/BackingStore.cpp:
        (BlackBerry::WebKit::BackingStorePrivate::render):

554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579
2012-05-27  Arvid Nilsson  <anilsson@rim.com>

        2012-04-12  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Web page fails to render after clicking link with target=_blank
        https://bugs.webkit.org/show_bug.cgi?id=87562

        Reviewed by Antonio Gomes.

        Clicking such a link opens a new tab. The compositor was briefly in
        charge of drawing the root layer while the backing store was inactive
        and the user was looking at the other tab. The problem was that the
        compositor believed it was still painting the root layer even after the
        backing store became active again. The flag was not properly cleared
        when turning off compositing.

        Fixed by returning false from drawsRootLayer() if we don't have a root
        layer.

        Reviewed internally by Filip Spacek.

        PR #149342

        * Api/WebPageCompositor.cpp:
        (BlackBerry::WebKit::WebPageCompositorPrivate::drawsRootLayer):

580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604
2012-05-24  Jacky Jiang  <zhajiang@rim.com>

        [BlackBerry] History navigation caused google.com scale not kept
        https://bugs.webkit.org/show_bug.cgi?id=87438

        Reviewed by Antonio Gomes.
        Patch by Jacky Jiang <zhajiang@rim.com>

        PR: 159923
        For back/forward history navigation, we were trying to keep the values
        set by dispatchViewportDataDidChange. However, when we went back from
        the previous page, if the current page didn't contain the meta viewport
        tag, then those values set by previous page would never be reset.
        Although the current page could get correct saved scale when restoring
        view state, the scale would still be clamped by zoomToFitScale which
        was based on the virtual viewport of the previous page which could make
        the scale incorrect.
        Since we know the viewport arguments of the current document before
        setLoadState on back/forward history navigation, we can reset these
        previous values if the document doesn't have viewport arguments during
        setLoadState.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::setLoadState):

605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621
2012-05-25  Mary Wu  <mary.wu@torchmobile.com.cn>

        [BlackBerry] Pass http headers to loader in download request
        https://bugs.webkit.org/show_bug.cgi?id=87449

        Reviewed by Rob Buis.

        PR# 149283

        This is to support byte-range download and we could pass http headers like
        "Range" in download request to loader.

        Reviewed internally by Lyon Chen.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPage::download):

622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638
2012-05-24  Mike Fenton  <mifenton@rim.com>

        [BlackBerry] InputHandler can hold a ref on an object when document is cleared.
        https://bugs.webkit.org/show_bug.cgi?id=87412

        Reviewed by Rob Buis.

        PR 145234.

        When the document data is cleared, notify the InputHandler
        of the associated frame being unloaded.

        Reviewed Internally by Nima Ghanavatian.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::clearDocumentData):

639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673
2012-05-24  Crystal Zhang  <haizhang@rim.com>

        [BlackBerry] Implement select popup and remove old hook to air popup
        https://bugs.webkit.org/show_bug.cgi?id=87419

        Reviewed by Rob Buis.

        Introduce new html select popup client, remove the old hook to air popup.

        * Api/WebPageClient.h:
        * WebCoreSupport/SelectPopupClient.cpp: Added.
        (WebCore):
        (WebCore::SelectPopupClient::SelectPopupClient):
        (WebCore::SelectPopupClient::~SelectPopupClient):
        (WebCore::SelectPopupClient::update):
        (WebCore::SelectPopupClient::generateHTML):
        (WebCore::SelectPopupClient::closePopup):
        (WebCore::SelectPopupClient::contentSize):
        (WebCore::SelectPopupClient::htmlSource):
        (WebCore::SelectPopupClient::setValueAndClosePopup):
        (WebCore::SelectPopupClient::didClosePopup):
        (WebCore::SelectPopupClient::writeDocument):
        * WebCoreSupport/SelectPopupClient.h: Added.
        (WebKit):
        (WebCore):
        (SelectPopupClient):
        * WebKitSupport/InputHandler.cpp:
        (BlackBerry::WebKit::InputHandler::openSelectPopup):
        * WebKitSupport/InputHandler.h:
        (WebCore):
        (InputHandler):
        * WebKitSupport/WebPopupType.h: Added.
        (BlackBerry):
        (WebKit):

674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701
2012-05-24  Antonio Gomes  <agomes@rim.com>

        Possible missing layout in Iris browser after hiding VKB
        https://bugs.webkit.org/show_bug.cgi?id=87408
        PR #153056 / MKS_3674963

        Reviewed by Adam Treat.

        Also informally reviewed by Mike Fenton.

        If we are not rotating and we've started a viewport resize with
        the Render tree in dirty state (i.e. it needs layout), lets
        reset the needsLayout flag for now but set our own 'needsLayout'.

        Reason: calls like ScrollView::setFixedLayoutSize can trigger a layout
        if the render tree needs it. We want to avoid it till the viewport resize
        is actually done (i.e. ScrollView::setViewportSize gets called
        further down the method) so we do not get render artifacts.

        Since our WebPage::setViewportSize calls rely on async Virtual
        Keyboard responses, we were getting it called with the render
        tree sometimes in a dirty state, sometimes not. It was flaky!
        Patch ensures a clear render tree state, and sets it as dirty
        afterwards as needed, so layout happens at the proper time.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::setViewportSize):

702 703 704 705 706 707 708 709 710 711 712 713 714 715
2012-05-24  Mike Fenton  <mifenton@rim.com>

        [BlackBerry] Padding adjustment for determining the relative distance for a point was backwards.
        https://bugs.webkit.org/show_bug.cgi?id=87404

        Reviewed by Rob Buis.

        Fix padding calculation for handle adjustment.

        Reviewed Internally by Mike Lattanzio.

        * WebKitSupport/SelectionHandler.cpp:
        (BlackBerry::WebKit::directionOfPointRelativeToRect):

716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732
2012-05-24  Mike Fenton  <mifenton@rim.com>

        [BlackBerry] Remove unused API function touchEventCancelAndClearFocusedNode.
        https://bugs.webkit.org/show_bug.cgi?id=87379

        Reviewed by Antonio Gomes.

        Remove unused API, touchEventCancelAndClearFocusedNode.

        Reviewed Internally by Gen Mak.

        * Api/WebPage.cpp:
        * Api/WebPage.h:
        * WebKitSupport/TouchEventHandler.cpp:
        * WebKitSupport/TouchEventHandler.h:
        (TouchEventHandler):

733 734 735 736 737 738 739 740 741 742 743 744 745
2012-05-23  Genevieve Mak  <gmak@rim.com>

        Remove minimum and maximum scroll position as they are no
        longer required due to changes in ScrollViewBase.
        https://bugs.webkit.org/show_bug.cgi?id=87298

        Reviewed by Antonio Gomes.

        * WebKitSupport/InRegionScrollableArea.cpp:
        (BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):
        * WebKitSupport/InRegionScrollableArea.h:
        (InRegionScrollableArea):

746 747 748 749 750 751 752 753 754 755 756 757 758 759
2012-05-22  Chris Guan  <chris.guan@torchmobile.com.cn>

        [Blackberry]Pages contain video or audio tags should be in pageCache
        https://bugs.webkit.org/show_bug.cgi?id=87116

        Reviewed by George Staikos.
        
        There is not any reason to disable pageCache for video/audio 
        tags probably. By my testing, Back and Forward are working for 
        those pages contain video and audio tags.

        * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
        (WebCore::FrameLoaderClientBlackBerry::canCachePage):

760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775
2012-05-22  Konrad Piascik  <kpaiscik@rim.com>

        [BlackBerry] Remove unused/unimplemented methods from InspectorClientBlackberry
        https://bugs.webkit.org/show_bug.cgi?id=87125

        Reviewed by Rob Buis.

        Removed unimplemented methods that are no longer part of InspectorClient and added
        a new stub for InspectorStateClient::updateInspectorStateCookie

        * WebCoreSupport/InspectorClientBlackBerry.cpp:
        (WebCore::InspectorClientBlackBerry::updateInspectorStateCookie):
        (WebCore):
        * WebCoreSupport/InspectorClientBlackBerry.h:
        (InspectorClientBlackBerry):

776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804
2012-05-18  Mike Fenton  <mifenton@rim.com>

        [BlackBerry] Validation of Last Fat Finger result is needed for selection.
        https://bugs.webkit.org/show_bug.cgi?id=86888

        Reviewed by Antonio Gomes.

        PR 128393.

        Cached FatFingersResults must be validatible against
        the desired request to ensure the result is both for
        the same point and of the same type.

        * WebKitSupport/FatFingers.h:
        (WebKit):
        (FatFingersResult):
        (BlackBerry::WebKit::FatFingersResult::FatFingersResult):
        (BlackBerry::WebKit::FatFingersResult::reset):
        (BlackBerry::WebKit::FatFingersResult::resultMatches):
        (BlackBerry::WebKit::FatFingersResult::originPosition):
        (BlackBerry::WebKit::FatFingersResult::adjustedPosition):
        (BlackBerry::WebKit::FatFingersResult::positionWasAdjusted):
        (BlackBerry::WebKit::FatFingersResult::isTextInput):
        (BlackBerry::WebKit::FatFingersResult::isValid):
        (BlackBerry::WebKit::FatFingersResult::node):
        (BlackBerry::WebKit::FatFingersResult::nodeAsElementIfApplicable):
        * WebKitSupport/SelectionHandler.cpp:
        (BlackBerry::WebKit::SelectionHandler::selectAtPoint):

805 806 807 808 809 810 811 812 813 814
2012-05-18  MORITA Hajime  <morrita@google.com>

        https://bugs.webkit.org/show_bug.cgi?id=85515
        Stale frame in WebCore::SpellChecker::didCheckSucceeded

        Reviewed by Ryosuke Niwa.

        * WebCoreSupport/EditorClientBlackBerry.h:
        (WebCore::EditorClientBlackBerry::frameWillDetachPage):

815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833
2012-05-17  Jacky Jiang  <zhajiang@rim.com>

        [BlackBerry] www.thestar.com/iphone Viewport Weirdness
        https://bugs.webkit.org/show_bug.cgi?id=86756

        Reviewed by George Staikos.

        PR 156710
        On high DPI devices, the virtual viewport size of this page was smaller
        than screen size. During the refreshing of the page, we reset the scale
        when the state was Committed, then layouted and rendered contents based
        on the virtual viewport size and default scale 1, which caused a small
        size thumbnail before we restored the previous view state.
        Fixed it by keeping the previous scale, user scalable and
        m_userViewportArguments during the Committed state of refreshing.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::setLoadState):

834 835 836 837 838 839 840 841 842 843 844
2012-05-17  Mike Fenton  <mifenton@rim.com>

        [BlackBerry] Cleanup headers in SelectionHandler.cpp
        https://bugs.webkit.org/show_bug.cgi?id=86760

        Reviewed by Antonio Gomes.

        Clean up includes in SelectionHandler.cpp.

        * WebKitSupport/SelectionHandler.cpp:

845 846 847 848 849 850 851 852 853 854 855 856 857 858
2012-05-17  Mike Fenton  <mifenton@rim.com>

        [BlackBerry] expandSelectionToGranularity should only use VisibleSelection and not range.
        https://bugs.webkit.org/show_bug.cgi?id=86759

        Reviewed by Antonio Gomes.

        expandSelectionToGranularity unnecesarily converted the
        selection to range and back. Using the selection
        directly is preferred.

        * WebKitSupport/SelectionHandler.cpp:
        (BlackBerry::WebKit::expandSelectionToGranularity):

859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877
2012-05-17  Hironori Bono  <hbono@chromium.org>

        [Refactoring] Move platform-specific code in Editor::respondToChangedSelection to the WebKit layer
        https://bugs.webkit.org/show_bug.cgi?id=86591

        Reviewed by Ryosuke Niwa.

        This change adds a TextCheckerClient::shouldEraseMarkersAfterChangeSelection
        function to remove platform-specific code from Editor::respondToChangedSelection
        function.

        No new tests, no change in behavior.

        * WebCoreSupport/EditorClientBlackBerry.cpp:
        (WebCore::EditorClientBlackBerry::shouldEraseMarkersAfterChangeSelection):
        (WebCore):
        * WebCoreSupport/EditorClientBlackBerry.h:
        (EditorClientBlackBerry):

878 879 880 881 882 883 884 885 886 887 888 889
2012-05-17  Mike Fenton  <mifenton@rim.com>

        [BlackBerry] Build fix, SelectionHandler extra debug logs
        https://bugs.webkit.org/show_bug.cgi?id=86743

        Reviewed by Antonio Gomes.

        Add include for BlackBerryPlatformLog to SelectionHandler.cpp


        * WebKitSupport/SelectionHandler.cpp:

890 891 892 893 894 895 896 897 898 899 900 901 902 903 904
2012-05-16  Yongxin Dai  <yodai@rim.com>

        [BlackBerry] The FCC shows up on an empty input field
        https://bugs.webkit.org/show_bug.cgi?id=86657

        Reviewed by Antonio Gomes.

        Turn off the caret by sending a caret changed notification with empty caret.
        PR #120620

        Reviewed Internally by Mike Fenton.

        * WebKitSupport/SelectionHandler.cpp:
        (BlackBerry::WebKit::SelectionHandler::caretPositionChanged):

905 906 907 908 909 910 911 912 913 914 915 916 917
2012-05-16  Eli Fidler  <efidler@rim.com>

        [BlackBerry] Don't reset the default font families in WebSettings
        https://bugs.webkit.org/show_bug.cgi?id=86660

        Reviewed by Rob Buis.

        PR 152467
        The default families are also set definitively in WebCore/page/blackberry/SettingsBlackBerry.cpp

        * Api/WebSettings.cpp:
        (BlackBerry::WebKit::WebSettings::standardSettings):

918 919 920 921 922 923 924 925 926 927
2012-05-16  Genevieve Mak  <gmak@rim.com>

        Add missing include that was causing build errors.
        https://bugs.webkit.org/show_bug.cgi?id=86502

        Reviewed by Rob Buis.
        Reviewed Internally by Liam Quinn.

        * WebKitSupport/InputHandler.cpp:

928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945
2012-05-15  Chris Guan  <chris.guan@torchmobile.com.cn>

        [BlackBerry] Enhance an API of BackingStore::drawContents
        https://bugs.webkit.org/show_bug.cgi?id=86447

        Reviewed by George Staikos.

        Enhance the current APIs by adding parameters of id and destination
        contentSize, because chrome browser may want different contents from
        the same webview at different times.

        * Api/BackingStore.cpp:
        (BlackBerry::WebKit::BackingStorePrivate::renderContents):
        (BlackBerry::WebKit::BackingStore::drawContents):
        * Api/BackingStore.h:
        * Api/BackingStore_p.h:
        (BackingStorePrivate):

946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978
2012-05-15  Max Feil  <mfeil@rim.com>

        [BlackBerry] Enable the Fullscreen API
        https://bugs.webkit.org/show_bug.cgi?id=86129

        Reviewed by Antonio Gomes.

        This patch enables the new document-based Fullscreen API.
        The ENABLE(FULLSCREEN_API) is already enabled in the
        BlackBerry WebKit build. My patch turns fullscreen on
        in the page settings by default and implements the missing
        ChromeClientBlackBerry::{supports,enter,exit}FullScreenForElement()
        member functions. I am also plumbing through the existing
        "fullScreenVideoCapable" that QNXStageWebView has always been
        sending to allow the presence of a native fullscreen video player
        to be checked.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::didChangeSettings):
        * Api/WebSettings.cpp:
        (WebKit):
        (BlackBerry::WebKit::WebSettings::standardSettings):
        (BlackBerry::WebKit::WebSettings::fullScreenVideoCapable):
        (BlackBerry::WebKit::WebSettings::setFullScreenVideoCapable):
        * Api/WebSettings.h:
        * WebCoreSupport/ChromeClientBlackBerry.cpp:
        (WebCore):
        (WebCore::ChromeClientBlackBerry::supportsFullScreenForElement):
        (WebCore::ChromeClientBlackBerry::enterFullScreenForElement):
        (WebCore::ChromeClientBlackBerry::exitFullScreenForElement):
        * WebCoreSupport/ChromeClientBlackBerry.h:
        (ChromeClientBlackBerry):

979 980 981 982 983 984 985 986 987 988 989 990 991 992
2012-05-15  Hanna Ma  <Hanma@rim.com>

        [BlackBerry] adding a functionality for web inspector to inspect current selected element
        https://bugs.webkit.org/show_bug.cgi?id=86394

        Reviewed by Rob Buis.

        Add a way to trigger the remote web inspector on selected element.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPage::inspectCurrentContextElement):
        (WebKit):
        * Api/WebPage.h:

993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005
2012-05-14  Jacky Jiang  <zhajiang@rim.com>

        [BlackBerry] ASSERT failure in FrameView::paintContents when refleshing www.thestar.com/iphone
        https://bugs.webkit.org/show_bug.cgi?id=86391

        Reviewed by Adam Treat.

        PR 156992
        Request layout first if needed before painting contents.

        * Api/BackingStore.cpp:
        (BlackBerry::WebKit::BackingStorePrivate::renderContents):

1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022
2012-05-10  Mike Fenton  <mifenton@rim.com>

        Caret node boundary should be adjusted to account for the visible region.
        https://bugs.webkit.org/show_bug.cgi?id=86116

        Reviewed by Antonio Gomes.

        PR 138988.

        Update the node bounding box to be clipped and adjusted
        for the visible region of the frame.

        Reviewed Internally by Gen Mak.

        * WebKitSupport/SelectionHandler.cpp:
        (BlackBerry::WebKit::SelectionHandler::caretPositionChanged):

1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047
2012-05-10  Antonio Gomes  <agomes@rim.com>

        [BlackBerry] Assertions and assumptions in BackingStoreClient around m_frame and m_frame->view() are invalid
        https://bugs.webkit.org/show_bug.cgi?id=86096

        Reviewed by Rob Buis.

        A Frame's FrameView has always to be checked since it is
        a volatile object, and gets created and destroyed all the time.

        We have been facing a particular issue, where during our automated
        interaction tests, the main frame object was being pinch zoomed in
        the middle of it creation, and WebKit thread was blocked by a mutex.
        In practice, it is a case that would not be possible in a real
        world scenario, but shows that the ASSERTs are bogus regardless.

        * WebKitSupport/BackingStoreClient.cpp:
        (BlackBerry::WebKit::BackingStoreClient::scrollPosition):
        (BlackBerry::WebKit::BackingStoreClient::setScrollPosition):
        (BlackBerry::WebKit::BackingStoreClient::maximumScrollPosition):
        (BlackBerry::WebKit::BackingStoreClient::viewportSize):
        (BlackBerry::WebKit::BackingStoreClient::transformedViewportSize):
        (BlackBerry::WebKit::BackingStoreClient::visibleContentsRect):
        (BlackBerry::WebKit::BackingStoreClient::contentsSize):

1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081
2012-05-09  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>

        [BlackBerry] Autofill feature implementation for BlackBerry porting
        https://bugs.webkit.org/show_bug.cgi?id=85577

        Reviewed by Rob Buis.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPage::autofillTextField): Added this interface
        function to auto fill the inputting text field when user selects
        a autofill candidate value from autofill context dialog.
        (WebKit):
        (BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
        (BlackBerry::WebKit::WebPagePrivate::notifyPopupAutofillDialog): Added
        this interface function to notify WebPageClient to pop up the autofill
        context dialog with the suggested input items.
        (BlackBerry::WebKit::WebPage::clearAutofillData):
        * Api/WebPage.h:
        * Api/WebPageClient.h:
        * Api/WebPage_p.h:
        (WebCore):
        (WebPagePrivate):
        * WebCoreSupport/AutofillManager.cpp:
        (WebCore::AutofillManager::didChangeInTextField):
        * WebCoreSupport/EditorClientBlackBerry.cpp:
        (WebCore::EditorClientBlackBerry::textDidChangeInTextField): Implemented
        this function to listen to the notification of text field change, and
        notify AutofillManager to handle the autofill.
        * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
        (WebCore::FrameLoaderClientBlackBerry::dispatchWillSubmitForm):
        (WebCore::FrameLoaderClientBlackBerry::dispatchWillSendSubmitEvent):
        Save the name and value pair of every autofillable input text field when
        user submitting a form.

1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118
2012-05-09  Crystal Zhang  <haizhang@rim.com>

        [BlackBerry] Enable PAGE_POPUP in make file, and implement required methods
        https://bugs.webkit.org/show_bug.cgi?id=85907

        Reviewed by Rob Buis.

        Internal reviewed by Yong Li.

        Enable PAGE_POPUP so we can use WebCore::PagePopup and WebCore::PagePopupClient interface.
        Implement virtual methods in WebCore::ChromeClientBlackBerry that required for the 
        implementation and add methods in WebKit::WebPage that needed for PagePopupClient.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
        (BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):
        (BlackBerry::WebKit::WebPage::initPopupWebView):
        (WebKit):
        (BlackBerry::WebKit::WebPage::popupOpened):
        (BlackBerry::WebKit::WebPage::popupClosed):
        (BlackBerry::WebKit::WebPage::hasOpenedPopup):
        (BlackBerry::WebKit::WebPage::popup):
        (BlackBerry::WebKit::WebPagePrivate::setParentPopup):
        * Api/WebPage.h:
        (WebCore):
        * Api/WebPage_p.h:
        (WebCore):
        (WebPagePrivate):
        * WebCoreSupport/ChromeClientBlackBerry.cpp:
        (WebCore::ChromeClientBlackBerry::hasOpenedPopup):
        (WebCore::ChromeClientBlackBerry::openPagePopup):
        (WebCore):
        (WebCore::ChromeClientBlackBerry::closePagePopup):
        * WebCoreSupport/ChromeClientBlackBerry.h:
        (WebCore):
        (ChromeClientBlackBerry):

1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133
2012-05-08  Jason Liu  <jason.liu@torchmobile.com.cn>

        [BlackBerry] Auth credentials set in private mode are reused in public mode.
        https://bugs.webkit.org/show_bug.cgi?id=84697

        Reviewed by Rob Buis.

        Add setPrivateMode function for CredentialStorage.

        We have to change Private Browsing to test, so have to write a manual test case.
        Test: ManualTests/blackberry/http-auth-private-mode-changed.html

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::didChangeSettings):

1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165
2012-05-08  Crystal Zhang  <haizhang@rim.com>
    
            [BlackBerry] Implement a popup client for HTML controls
            https://bugs.webkit.org/show_bug.cgi?id=85670
    
            Reviewed by Rob Buis.
    
            Implement a popup client for HTML controls, which would be used to load
            different popups according to popup type.
    
            * WebCoreSupport/PagePopupBlackBerry.cpp: Added.
            (WebCore):
            (PagePopupChromeClient):
            (WebCore::PagePopupChromeClient::PagePopupChromeClient):
            (WebCore::PagePopupChromeClient::closeWindowSoon):
            (WebCore::PagePopupChromeClient::webPage):
            (WebCore::PagePopupBlackBerry::PagePopupBlackBerry):
            (WebCore::PagePopupBlackBerry::~PagePopupBlackBerry):
            (WebCore::PagePopupBlackBerry::sendCreatePopupWebViewRequest):
            (WebCore::PagePopupBlackBerry::init):
            (WebCore::setValueAndClosePopupCallback):
            (WebCore::popUpExtensionInitialize):
            (WebCore::popUpExtensionFinalize):
            (WebCore::PagePopupBlackBerry::installDomFunction):
            (WebCore::PagePopupBlackBerry::handleMouseEvent):
            (WebCore::PagePopupBlackBerry::closePopup):
            (WebCore::PagePopupBlackBerry::closeWebPage):
            * WebCoreSupport/PagePopupBlackBerry.h: Added.
            (WebKit):
            (WebCore):
            (PagePopupBlackBerry):

1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182
2012-05-08  Andrew Lo  <anlo@rim.com>

        [BlackBerry] Over-scroll image should be tiled
        https://bugs.webkit.org/show_bug.cgi?id=85860

        Reviewed by Rob Buis.

        Implement tiling for over-scroll image if image dimension don't match
        the surface dimensions.

        * Api/BackingStore.cpp:
        (WebKit):
        (BlackBerry::WebKit::BackingStorePrivate::ensureOverScrollImage):
        (BlackBerry::WebKit::BackingStorePrivate::paintDefaultBackground):
        * Api/BackingStore_p.h:
        (BackingStorePrivate):

1183 1184 1185 1186 1187 1188 1189 1190 1191 1192
2012-05-08  Chris Guan  <chris.guan@torchmobile.com.cn>

        [Blackberry] remove m_isRequestedByPlugin in ResourceRequest
        https://bugs.webkit.org/show_bug.cgi?id=84559

        Reviewed by Antonio Gomes.

        * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
        (WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForNewWindowAction):

1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221
2012-05-08  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>

        [BlackBerry] AutofillManager implementation upstream
        https://bugs.webkit.org/show_bug.cgi?id=85576

        Reviewed by Rob Buis.

        RIM PR: 136405
        Implemented class AutofillManager to handle the form autofill
        interactions.
        It listens to text changed notification from text input, searches
        autofill database for the suggested autofill candidate value,
        and notifies WebPageClient to pop up a context dialog for user;
        it also responds to user's choice by autofilling the text input.

        * WebCoreSupport/AutofillManager.cpp: Added.
        (WebCore):
        (WebCore::AutofillManager::create):
        (WebCore::AutofillManager::didChangeInTextField):
        (WebCore::AutofillManager::autofillTextField):
        (WebCore::AutofillManager::saveTextFields):
        (WebCore::AutofillManager::clear):
        * WebCoreSupport/AutofillManager.h: Added.
        (WTF):
        (WebKit):
        (WebCore):
        (AutofillManager):
        (WebCore::AutofillManager::m_element):

1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234
2012-05-07  Andrew Lo  <anlo@rim.com>

        [BlackBerry] Delete previous buffer when new over-scroll image path is set
        https://bugs.webkit.org/show_bug.cgi?id=85812

        Reviewed by Rob Buis.

        When a new over-scroll image path is set, delete old buffer before creating
        a new one.

        * Api/BackingStore.cpp:
        (BlackBerry::WebKit::BackingStorePrivate::ensureOverScrollImage):

1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246
2012-05-07  Andrew Lo  <anlo@rim.com>

        [BlackBerry] Over-scroll image path property should be relative to local application directory
        https://bugs.webkit.org/show_bug.cgi?id=85814

        Reviewed by Rob Buis.

        Over-scroll image path web setting should be relative to the local directory.

        * Api/BackingStore.cpp:
        (BlackBerry::WebKit::BackingStorePrivate::ensureOverScrollImage):

1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258
2012-05-07  Crystal Zhang  <haizhang@rim.com>

        [BlackBerry] Add methods need by client side
        https://bugs.webkit.org/show_bug.cgi?id=85661

        Reviewed by Antonio Gomes.

        Add methods needed by client side when create and close HTML popup dialogs.
        PR 154360

        * Api/WebPageClient.h:

1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277
2012-05-06  Mary Wu  <mary.wu@torchmobile.com.cn>

        [BlackBerry] Support html5 download attribute.
        https://bugs.webkit.org/show_bug.cgi?id=85044

        Reviewed by Antonio Gomes.

        If a link has download attribute, we should pass that value and be able to
        save file with the name according to HTML5:
        http://updates.html5rocks.com/2011/08/Downloading-resources-in-HTML5-a-download

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::load):
        (BlackBerry::WebKit::WebPage::download):
        * Api/WebPage_p.h:
        (WebPagePrivate):
        * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
        (WebCore::FrameLoaderClientBlackBerry::startDownload):

1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294
2012-05-06  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>

        [BlackBerry] Autofill backing store implementation upstream
        https://bugs.webkit.org/show_bug.cgi?id=85575

        Reviewed by Rob Buis.

        Replaced calling static function CredentialBackingStore::instance()
        with calling the helper function credentialBackingStore().

        * WebCoreSupport/CredentialManager.cpp:
        (WebCore::CredentialManager::autofillAuthenticationChallenge):
        (WebCore::CredentialManager::autofillPasswordForms):
        (WebCore::CredentialManager::saveCredentialIfConfirmed):
        (WebCore::CredentialManager::clearCredentials):
        (WebCore::CredentialManager::clearNeverRememberSites):

1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311
2012-05-06  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>

        [BlackBerry] Enable credential persistance and auto fill
        https://bugs.webkit.org/show_bug.cgi?id=85572

        Reviewed by Rob Buis.

        Set autofilled status of credential input fields when credential
        information is auto filled by CredentialManager.
        By doing this the input element will get painted with yellow background
        which can notify user this input field is auto filled by the browser.

        No behavior changes, so no new test.

        * WebCoreSupport/CredentialTransformData.cpp:
        (WebCore::CredentialTransformData::setCredential):

1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334
2012-05-04  Andrew Lo  <anlo@rim.com>

        [Blackberry] Implement over-scroll background image
        https://bugs.webkit.org/show_bug.cgi?id=85538

        Reviewed by Rob Buis.

        Use over-scroll image when set instead of the solid colour.
        Internal PR146652

        * Api/BackingStore.cpp:
        (WebKit):
        (BlackBerry::WebKit::BackingStorePrivate::ensureOverScrollImage):
        (BlackBerry::WebKit::BackingStorePrivate::paintDefaultBackground):
        * Api/BackingStore_p.h:
        (BackingStorePrivate):
        * Api/WebSettings.cpp:
        (WebKit):
        (BlackBerry::WebKit::WebSettings::standardSettings):
        (BlackBerry::WebKit::WebSettings::overScrollImagePath):
        (BlackBerry::WebKit::WebSettings::setOverScrollImagePath):
        * Api/WebSettings.h:

1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352
2012-05-04  Rob Buis  <rbuis@rim.com>

        [BlackBerry] Rendering bmp file as text file when Content-Type:image/x-ms-bmp from apache web server.
        https://bugs.webkit.org/show_bug.cgi?id=85036

        Reviewed by Antonio Gomes.

        Move getNormalizedMIMEType into WebCore::MIMETypeRegistry.

        * Api/WebSettings.cpp:
        (WebKit):
        (BlackBerry::WebKit::WebSettings::isSupportedObjectMIMEType):
        * Api/WebSettings.h:
        * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
        (WebCore::FrameLoaderClientBlackBerry::createPlugin):
        (WebCore::FrameLoaderClientBlackBerry::canShowMIMEType):
        (WebCore::FrameLoaderClientBlackBerry::objectContentType):

1353 1354 1355 1356 1357 1358 1359 1360 1361 1362
2012-05-04  Nate Chapin  <japhet@chromium.org>

        Don't require FrameLoaderClient to manufacture a commitData() call for empty documents.
        https://bugs.webkit.org/show_bug.cgi?id=85533

        Reviewed by Alexey Proskuryakov.

        * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
        (WebCore::FrameLoaderClientBlackBerry::finishedLoading):

1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375
2012-05-04  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r116085, r116091, and r116095.
        http://trac.webkit.org/changeset/116085
        http://trac.webkit.org/changeset/116091
        http://trac.webkit.org/changeset/116095
        https://bugs.webkit.org/show_bug.cgi?id=85628

        We are not ready with dependencies on all platform yet (mac) +
        problems with debug builds. (Requested by Zoltan on #webkit).

        * WebCoreSupport/AboutDataEnableFeatures.in:

1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386
2012-05-04  Zoltan Horvath  <zoltan@webkit.org>

        [Qt] Set WebCore imagedecoders as default and add fallback to QImageDecoder
        https://bugs.webkit.org/show_bug.cgi?id=80400

        Get rid off QT_IMAGE_DECODER flag.

        Reviewed by Simon Hausmann.

        * WebCoreSupport/AboutDataEnableFeatures.in:

1387 1388 1389 1390 1391 1392 1393 1394 1395 1396
2012-05-03  Fady Samuel  <fsamuel@chromium.org>

        Removing line in computeViewportAttributes that enforces a minimum scale factor to never allow zooming out more than viewport
        https://bugs.webkit.org/show_bug.cgi?id=70609

        Reviewed by Kenneth Rohde Christiansen.

        * WebKitSupport/DumpRenderTreeSupport.cpp:
        (DumpRenderTreeSupport::dumpConfigurationForViewport):

mifenton@rim.com's avatar
mifenton@rim.com committed
1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408
2012-05-03  Mike Fenton  <mifenton@rim.com>

        [BlackBerry] Add special attribute for alternate selection touch handling.
        https://bugs.webkit.org/show_bug.cgi?id=85284

        Reviewed by Rob Buis.

        Rename the custom attribute and make it a data- attribute.

        * WebKitSupport/SelectionHandler.cpp:
        (BlackBerry::WebKit::SelectionHandler::inputNodeOverridesTouch):

1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424
2012-04-18  Jon Honeycutt  <jhoneycutt@apple.com>

        FrameLoaderClient::dispatchWillSendSubmitEvent() should be given more
        information about the form being submitted
        https://bugs.webkit.org/show_bug.cgi?id=84297

        Reviewed by Andy Estes.

        * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
        (WebCore::FrameLoaderClientBlackBerry::dispatchWillSendSubmitEvent):
        Updated to use the FormState.

        * WebCoreSupport/FrameLoaderClientBlackBerry.h:
        (FrameLoaderClientBlackBerry):
        Updated method declaration.

1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443
2012-05-02  Jacky Jiang  <zhajiang@rim.com>

        [BlackBerry] Double tap zooming does nothing on small size table
        https://bugs.webkit.org/show_bug.cgi?id=85383

        Reviewed by George Staikos.

        PR: 153232
        When we search the best node for block zoom, if the initial node's new
        scale exceeds the maximum block zoom scale, we will try to walk through
        it's ancestors and pick the acceptable one. But the reality is that the
        acceptable ancestor's size can be too close to the size of the actual
        contents, we will do nothing for it. As we will still select the
        minimum of the new scale and the maximum block zoom scale as block zoom
        scale, we can ignore such kind of node and use the initial node instead.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::adjustedBlockZoomNodeForZoomLimits):

1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465
2012-05-01  Mike Fenton  <mifenton@rim.com>

        Add special attribute for alternate selection touch handling.
        https://bugs.webkit.org/show_bug.cgi?id=85284

        Reviewed by Antonio Gomes.

        PR 152975.

        Add attribute -bb-selection-touchoverride to override
        touch handling on selection overlay.

        Reviewed Internally by Gen Mak.

        * Api/WebPageClient.h:
        * WebKitSupport/SelectionHandler.cpp:
        (BlackBerry::WebKit::SelectionHandler::inputNodeOverridesTouch):
        (WebKit):
        (BlackBerry::WebKit::SelectionHandler::selectionPositionChanged):
        * WebKitSupport/SelectionHandler.h:
        (SelectionHandler):

1466 1467 1468 1469 1470 1471 1472 1473 1474 1475
2012-04-30  Benjamin Poulain  <benjamin@webkit.org>

        Add String::startsWith() and endsWith() for string literals
        https://bugs.webkit.org/show_bug.cgi?id=85154

        Reviewed by Darin Adler.

        * WebKitSupport/DOMSupport.cpp:
        (BlackBerry::WebKit::DOMSupport::elementPatternMatches):

1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492
2012-04-27  Jacky Jiang  <zhajiang@rim.com>

        [BlackBerry] Double tap zooming does nothing on table element on bustedtees.com
        https://bugs.webkit.org/show_bug.cgi?id=85104

        Reviewed by George Staikos.

        PR: 147006
        This was caused by the incorrect fix master_33/SHA:612caec4.
        Calculations like this "originalArea / pageArea" would always return 0
        so that the incorrect node and blockRect were used by block zoom. This
        patch takes care of it.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::blockZoomRectForNode):
        (BlackBerry::WebKit::WebPage::blockZoom):

1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511
2012-04-27  Nima Ghanavatian  <nghanavatian@rim.com>

        [BlackBerry] Improve log output in InputHandler.cpp
        https://bugs.webkit.org/show_bug.cgi?id=85007

        Reviewed by Antonio Gomes.

        PR 138292
        Improving logging in InputHandler.
        In setText we had an early return which wasn't being captured.
        Also, cleaning up the output to make it more clear and descriptive.

        Internally reviewed by Mike Fenton.

        * WebKitSupport/InputHandler.cpp:
        (BlackBerry::WebKit::InputHandler::learnText):
        (BlackBerry::WebKit::InputHandler::enableInputMode):
        (BlackBerry::WebKit::InputHandler::setText):

1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526
2012-04-27  Chris Guan  <chris.guan@torchmobile.com.cn>

        [Blackberry] remove redundant returns
        https://bugs.webkit.org/show_bug.cgi?id=85033

        Reviewed by Antonio Gomes.

        Remove two redundant returns which were added by accident.

        No new test cases, because no behaviour has changed.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPage::setSelection):
        (BlackBerry::WebKit::WebPage::setCaretPosition):

1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543
2012-04-27  Andy Chen  <andchen@rim.com>

        [BlackBerry] Find-in-page fails to deactivate the old active match when moving backwards
        https://bugs.webkit.org/show_bug.cgi?id=84892

        Reviewed by Antonio Gomes.

        Find in page fails to deactivate the old active match when moving backwards
        because searchStartingPoint was incorrectly initialized.
        Create a real range object instead of referencing other range object.
        PR 152009

        Internally reviewed by Yongxin Dai.

        * WebKitSupport/InPageSearchManager.cpp:
        (BlackBerry::WebKit::InPageSearchManager::findNextString):

1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557
2012-04-26  Yong Li  <yoli@rim.com>

        [BlackBerry] A quick fix to the previous patch r115245.
        https://bugs.webkit.org/show_bug.cgi?id=84862

        Reviewed by Antonio Gomes.

        Fix an obvious bug in previous patch: DeferredTaskLoadManualScript
        was using a wrong flag.

        * Api/WebPage.cpp:
        * Api/WebPage_p.h:
        (WebPagePrivate):

1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576
2012-04-25  Chris Guan  <chris.guan@torchmobile.com.cn>

        [Blackberry] add a new function in BackingStore
        https://bugs.webkit.org/show_bug.cgi?id=84818

        Reviewed by Antonio Gomes.

        Adding two functions in BackingStorePrivate and
        BackingStore, which could render out webpage contents
        into BlackBerry::Platform::Graphics::Drawable.

        * Api/BackingStore.cpp:
        (BlackBerry::WebKit::BackingStorePrivate::renderContents):
        (WebKit):
        (BlackBerry::WebKit::BackingStore::drawContents):
        * Api/BackingStore.h:
        * Api/BackingStore_p.h:
        (BackingStorePrivate):

1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589
2012-04-25  Charles Wei  <charles.wei@torchmobile.com.cn>

        [BlackBerry] Input Range element expects mouse events
        https://bugs.webkit.org/show_bug.cgi?id=84571

        Reviewed by Antonio Gomes.

        This just cleans up the code a bit to make it less code and more readable.
        * WebKitSupport/TouchEventHandler.cpp:
        (BlackBerry::WebKit::shouldConvertTouchToMouse):
        (BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
        (BlackBerry::WebKit::TouchEventHandler::spellCheck):

1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656
2012-04-25  Yong Li  <yoli@rim.com>

        [BlackBerry] Possible JS re-entrancy caused by UI events.
        https://bugs.webkit.org/show_bug.cgi?id=84862

        Reviewed by Antonio Gomes.

        1. block UI events when running in nested event loop
        2. defer some tasks we still want to perform when it is safe to do,
           with cached data.
        3. deferred task can be cancelled by clearing the flag. duplicate tasks
           is not a problem because they share same flag and data.
        4. move deferred manual script from FrameLoaderClientBlackBerry to WebPagePrivate
           and make it a deferred task

        * Api/WebPage.cpp:
        (WebKit):
        (BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
        (BlackBerry::WebKit::WebPagePrivate::load):
        (BlackBerry::WebKit::WebPagePrivate::stopCurrentLoad):
        (BlackBerry::WebKit::WebPagePrivate::willDeferLoading):
        (BlackBerry::WebKit::WebPagePrivate::didResumeLoading):
        (BlackBerry::WebKit::WebPagePrivate::deferredTasksTimerFired):
        (BlackBerry::WebKit::WebPage::assignFocus):
        (BlackBerry::WebKit::WebPagePrivate::setPageVisibilityState):
        (BlackBerry::WebKit::WebPage::setInputSelection):
        (BlackBerry::WebKit::WebPage::popupListClosed):
        (BlackBerry::WebKit::WebPage::setDateTimeInput):
        (BlackBerry::WebKit::WebPage::setColorInput):
        (BlackBerry::WebKit::WebPage::mouseEvent):
        (BlackBerry::WebKit::WebPage::touchEvent):
        (BlackBerry::WebKit::WebPage::touchPointAsMouseEvent):
        (BlackBerry::WebKit::WebPage::touchEventCancel):
        (BlackBerry::WebKit::WebPage::touchEventCancelAndClearFocusedNode):
        (BlackBerry::WebKit::WebPage::keyEvent):
        (BlackBerry::WebKit::WebPage::deleteTextRelativeToCursor):
        (BlackBerry::WebKit::WebPage::setComposingText):
        (BlackBerry::WebKit::WebPage::commitText):
        (BlackBerry::WebKit::WebPage::selectionCancelled):
        (BlackBerry::WebKit::WebPage::cutSelectedText):
        (BlackBerry::WebKit::WebPage::insertText):
        (BlackBerry::WebKit::WebPage::clearCurrentInputField):
        (BlackBerry::WebKit::WebPage::cut):
        (BlackBerry::WebKit::WebPage::paste):
        (BlackBerry::WebKit::WebPage::setSelection):
        (BlackBerry::WebKit::WebPage::setCaretPosition):
        (BlackBerry::WebKit::WebPage::selectAtPoint):
        (BlackBerry::WebKit::WebPage::setFocused):
        * Api/WebPage.h:
        * Api/WebPage_p.h:
        (WebCore):
        (WebPagePrivate):
        (DeferredTaskBase):
        (BlackBerry::WebKit::WebPagePrivate::DeferredTaskBase::perform):
        (BlackBerry::WebKit::WebPagePrivate::DeferredTaskBase::DeferredTaskBase):
        * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
        (WebCore::FrameLoaderClientBlackBerry::FrameLoaderClientBlackBerry):
        (WebCore::FrameLoaderClientBlackBerry::~FrameLoaderClientBlackBerry):
        (WebCore::FrameLoaderClientBlackBerry::willDeferLoading):
        (WebCore::FrameLoaderClientBlackBerry::didResumeLoading):
        * WebCoreSupport/FrameLoaderClientBlackBerry.h:
        (FrameLoaderClientBlackBerry):
        * WebKitSupport/InputHandler.cpp:
        (BlackBerry::WebKit::InputHandler::setPopupListIndexes):
        * WebKitSupport/InputHandler.h:
        (InputHandler):

1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681
2012-04-24  Nima Ghanavatian  <nghanavatian@rim.com>

        [BlackBerry] Perform spellcheck before handling TouchRelease event
        https://bugs.webkit.org/show_bug.cgi?id=84744

        After rebasing to master_35, it appears as though some code had been moved around.
        Here, we were handling the TouchReleased event before calling spellcheck.  This
        meant that when we finally got the call to spellcheck, the fatFinger result had been
        reset and the spelling markers had been removed.

        In addition, based on https://bugs.webkit.org/show_bug.cgi?id=66330
        I am also updating the BlackBerry specific documentMarkerContainingPoint to use
        LayoutPoint instead of IntPoint.

        Internally reviewed by Mike Fenton.

        Reviewed by Antonio Gomes.

        * WebKitSupport/TouchEventHandler.cpp:
        (BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
        (BlackBerry::WebKit::TouchEventHandler::spellCheck):
        * dom/DocumentMarkerController.cpp:
        (WebCore::DocumentMarkerController::markerContainingPoint):
        * dom/DocumentMarkerController.h:

1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699
2012-04-24  Mike Lattanzio  <mlattanzio@rim.com>

        [BlackBerry] setUserViewportArguments not always respected.
        https://bugs.webkit.org/show_bug.cgi?id=84738

        Reviewed by Antonio Gomes.

        Remove the unnecessary logic in
        WebPagePrivate::recomputeVirtualViewportFromViewportArguments().
        Instead it is much simpler to just set the m_viewportArguments to
        m_userViewportArguments on LoadCommitted. If there is a viewport
        tag in the content, m_viewportArguments will be replaced with it
        as usual during normal page load.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::setLoadState):
        (BlackBerry::WebKit::WebPagePrivate::recomputeVirtualViewportFromViewportArguments):

1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716
2012-04-24  Joe Mason  <jmason@rim.com>

        [BlackBerry] Revert broken changes to authentication dialog
        https://bugs.webkit.org/show_bug.cgi?id=80135

        Reviewed by Antonio Gomes.

        The previous patches from this bug caused an infinite loop when using digest auth;
        apparently they were only tested with basic.

        * Api/DumpRenderTreeClient.h:
        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):
        * Api/WebPageClient.h:
        * Api/WebPage_p.h:
        (WebPagePrivate):

1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740
2012-04-24  Mike Fenton  <mifenton@rim.com>

        [BlackBerry] Add additional details including the bounds of the box for caretPositionChanged.
        https://bugs.webkit.org/show_bug.cgi?id=84728

        Reviewed by Antonio Gomes.

        PR 138988.

        Update caretPositionChanged to include the limit of the input field
        for single line inputs.

        Reviewed Internally by Gen Mak.

        * Api/WebPageClient.h:
        * WebKitSupport/InputHandler.cpp:
        (BlackBerry::WebKit::InputHandler::boundingBoxForInputField):
        (WebKit):
        * WebKitSupport/InputHandler.h:
        (InputHandler):
        * WebKitSupport/SelectionHandler.cpp:
        (BlackBerry::WebKit::SelectionHandler::clippingRectForVisibleContent):
        (BlackBerry::WebKit::SelectionHandler::caretPositionChanged):

1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757
2012-04-24  Charles Wei  <charles.wei@torchmobile.com.cn>

        [BlackBerry] Input Range element expects mouse events
        https://bugs.webkit.org/show_bug.cgi?id=84571

        Reviewed by Antonio Gomes.

        Input element with Range type expects mouse events to
        drag the handle. Note that Input Range could appear
        in both the web page directly, or in some shadow tree,
        like the MediaControlTimeline and MediaControlVolume.
        * WebKitSupport/TouchEventHandler.cpp:
        (BlackBerry::WebKit::isRangeControlElement):
        (WebKit):
        (BlackBerry::WebKit::elementExpectsMouseEvents):
        (BlackBerry::WebKit::shouldConvertTouchToMouse):

1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770
2012-04-23  Charles Wei  <charles.wei@torchmobile.com.cn>

        [BlackBerry] Build failure when DEBUG_FAT_FINGER is enabled
        https://bugs.webkit.org/show_bug.cgi?id=84563

        Reviewed by Antonio Gomes.

        Fat Finger log code uses obsolete IntRect::toString() for logging,
        which was first implemented interally and removed later.

        * WebKitSupport/FatFingers.cpp:
        (BlackBerry::WebKit::FatFingers::findIntersectingRegions):

1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793
2012-04-21  Benjamin C Meyer  <bmeyer@rim.com>

        Don't hard code the plugins that blackberry supports.
        https://bugs.webkit.org/show_bug.cgi?id=84535

        Use the existing PluginDatabase to query for the plugins we can handle.

        The original implemention of FrameLoaderClientBlackBerry::createPlugin
        was a partial copy from another port.  In the Qt port there is some
        workarounds for flash which is why this exists there.  Sadly the bits
        that were copied made it so only flash worked, but as flash was the only
        plugin on the system this issue was not noticed until QNX tried to get
        jnext working.  Tracing it down to this bit of code rather then
        correcting it they hardcoded the jnext into the same block as flash was.

        The blackberry port isn't specifically suppose to only allow jnext and
        flash, but was an accident due to the way this code was developed.

        Reviewed by Adam Treat.

        * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
        (WebCore::FrameLoaderClientBlackBerry::createPlugin):

1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810
2012-04-20  Brady Eidson  <beidson@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=84512
        Repurpose ActiveDOMObject::WillShowDialog to WillDeferLoading

        Reviewed by Eric Carlson.

        PageGroupLoadDeferrer's don't take a ReasonForSuspension argument anymore;
        They just use WillDeferLoading by default.

        * Api/WebPageGroupLoadDeferrer.cpp:
        (BlackBerry::WebKit::WebPageGroupLoadDeferrer::WebPageGroupLoadDeferrer):

        * WebCoreSupport/ChromeClientBlackBerry.cpp:
        (WebCore::ChromeClientBlackBerry::createWindow):
        (WebCore::ChromeClientBlackBerry::runOpenPanel):

1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825
2012-04-20  Brady Eidson  <beidson@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=84490
        PageGroupLoadDeferrer needs to take a ReasonForSuspension argument

        Reviewed by Anders Carlsson.

        * Api/WebPageGroupLoadDeferrer.cpp:
        (BlackBerry::WebKit::WebPageGroupLoadDeferrer::WebPageGroupLoadDeferrer): Pass along ActiveDOMObject::WillShowDialog,
          which used to be the default

        * WebCoreSupport/ChromeClientBlackBerry.cpp:
        (WebCore::ChromeClientBlackBerry::createWindow): Pass along ActiveDOMObject::WillShowDialog, which used to be the default.
        (WebCore::ChromeClientBlackBerry::runOpenPanel): Ditto.

1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880
2012-04-20  Mike Lattanzio  <mlattanzio@rim.com>

        [BlackBerry] Expose WebViewportArguments to WebPageClient
        https://bugs.webkit.org/show_bug.cgi?id=84471

        Reviewed by Antonio Gomes.

        Implement the ability for the WebPageClient to specify a fallback
        virtual viewport to be used whenever a meta viewport tag is not
        present in the HTML. This can drastically impact apparent layout.
        This patch is designed to provide a classic "Column View" style of
        layout without breaking the web by simply exposing meta viewport
        arguments to WebPageClients.

        Note: As a side effect of this change. the WebPagePrivate::
        recomputeVirtualViewportFromViewportArguments method no longer
        modifies the targetDensityDpi property of the m_viewportArguments.
        However this does not affect the class because that property itself
        means nothing to us. Only the computeViewportArguments method from
        WebCore uses it, and the currentViewportArguments object we pass
        into that method has the adjusted targetDensityDpi value as before.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPage::setUserViewportArguments):
        (WebKit):
        (BlackBerry::WebKit::WebPage::resetUserViewportArguments):
        (BlackBerry::WebKit::WebPagePrivate::recomputeVirtualViewportFromViewportArguments):
        * Api/WebPage.h:
        (WebKit):
        * Api/WebPage_p.h:
        (WebPagePrivate):
        * Api/WebViewportArguments.cpp: Added.
        (WebKit):
        (BlackBerry::WebKit:::d):
        (BlackBerry::WebKit::WebViewportArguments::~WebViewportArguments):
        (BlackBerry::WebKit::WebViewportArguments::initialScale):
        (BlackBerry::WebKit::WebViewportArguments::setInitialScale):
        (BlackBerry::WebKit::WebViewportArguments::minimumScale):
        (BlackBerry::WebKit::WebViewportArguments::setMinimumScale):
        (BlackBerry::WebKit::WebViewportArguments::maximumScale):
        (BlackBerry::WebKit::WebViewportArguments::setMaximumScale):
        (BlackBerry::WebKit::WebViewportArguments::width):
        (BlackBerry::WebKit::WebViewportArguments::setWidth):
        (BlackBerry::WebKit::WebViewportArguments::height):
        (BlackBerry::WebKit::WebViewportArguments::setHeight):
        (BlackBerry::WebKit::WebViewportArguments::targetDensityDpi):
        (BlackBerry::WebKit::WebViewportArguments::setTargetDensityDpi):
        (BlackBerry::WebKit::WebViewportArguments::userScalable):
        (BlackBerry::WebKit::WebViewportArguments::setUserScalable):
        (BlackBerry::WebKit::WebViewportArguments::operator==):
        (BlackBerry::WebKit::WebViewportArguments::operator!=):
        * Api/WebViewportArguments.h: Added.
        (WebCore):
        (WebKit):

1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900
2012-04-19  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Always use the AnimationFrameRateController for accelerated animations
        https://bugs.webkit.org/show_bug.cgi?id=84323

        Reviewed by Antonio Gomes.

        PR 150750
        Regardless of whether there's a WebPageCompositorClient, we want the
        AnimationFrameRateController to manage animation frames.
        Reviewed internally by Andrew Lo.

        * Api/BackingStore.cpp:
        (BlackBerry::WebKit::BackingStorePrivate::blitContents):
        * Api/WebPageCompositor.cpp:
        (BlackBerry::WebKit::WebPageCompositorPrivate::WebPageCompositorPrivate):
        (BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
        * Api/WebPageCompositor_p.h:
        (WebPageCompositorPrivate):

1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914
2012-04-18  Max Feil  <mfeil@rim.com>

        [BlackBerry] Tab awareness for HTML5 concurrent audio
        https://bugs.webkit.org/show_bug.cgi?id=82930
        Support for concurrent HTML5 audio improvements being made in
        the platform library, which need to be aware of tabs and tab
        visibility. PR96004.

        Reviewed by George Staikos.

        * Api/WebPageClient.h:
        * Api/WebPage_p.h:
        (BlackBerry::WebKit::WebPagePrivate::isVisible):

1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938
2012-04-17  Jacky Jiang  <zhajiang@rim.com>

        [BlackBerry] Viewport metatag doesn't disable double-tap zoom
        https://bugs.webkit.org/show_bug.cgi?id=84199

        Reviewed by George Staikos.

        PR: 148279
        When we set "user-scalable=no" in viewport meta-tag and change any
        other WebSettings, the WebPage can turn to be scalable.
        This is a regression of the change master_32/SHA:fa0f8ee9. In that
        change, we used setUserScalable(webSettings->isUserScalable())
        in WebPagePrivate::didChangeSettings which was incorrect for non-DRT
        case, as webSettings->isUserScalable() would always return true by
        default.
        Create a new API WebPage::setUserScalable which will be used in
        DumpRenderTree.cpp.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPage::setUserScalable):
        (WebKit):
        (BlackBerry::WebKit::WebPagePrivate::didChangeSettings):
        * Api/WebPage.h:

1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959
2012-04-17  Mike Fenton  <mifenton@rim.com>

        [BlackBerry] Pattern matching should be applied to numbers
        https://bugs.webkit.org/show_bug.cgi?id=84152

        Reviewed by Antonio Gomes.

        PR 148906.

        Add pattern matching for number based on [0-9] to trigger
        input help matching number fields.

        * WebKitSupport/DOMSupport.cpp:
        (BlackBerry::WebKit::DOMSupport::elementPatternIndicatesNumber):
        (DOMSupport):
        (BlackBerry::WebKit::DOMSupport::elementPatternIndicatesHexadecimal):
        (BlackBerry::WebKit::DOMSupport::elementPatternMatches):
        * WebKitSupport/DOMSupport.h:
        * WebKitSupport/InputHandler.cpp:
        (BlackBerry::WebKit::convertInputType):

1960 1961 1962 1963 1964 1965 1966 1967 1968 1969
2012-04-17  George Staikos  <staikos@webkit.org>

        Export the initialization function so it can be called earlier.
        https://bugs.webkit.org/show_bug.cgi?id=84134

        Reviewed by Nikolas Zimmermann.

        * Api/BlackBerryGlobal.h: export globalInitialize()
        (WebKit):

1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992
2012-04-16  Antonio Gomes  <agomes@rim.com>

        Screen shift down when VKB shows by clicking in a input box MKS_3601371
        https://bugs.webkit.org/show_bug.cgi?id=84057

        Reviewed by Rob Buis.

        After switching from ScrollView::canOverscroll to ScrollView::constrainsScrollingToContentEdge
        we had a less restricted code path allowing/disallowing overscrolling. That caused
        some webpages like google.com to get on overscroll when adjusting the scroll
        position to ensure the focused input field is visible.

        Patch restricts the way we allow overscrolling to the bottom, where the virtual
        keyboard pops up from, clamping it to 0, 0 if it tries to
        overscroll upwards, and to maximum scroll position if it overscrolls
        downwards.

        PR #149846
        Internally reviewed by Mike Fenton.

        * WebKitSupport/InputHandler.cpp:
        (BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):

1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010
2012-04-16  Yongxin Dai  <yodai@rim.com>

        [BlackBerry] Increase padding for text element
        https://bugs.webkit.org/show_bug.cgi?id=83903

        Reviewed by Antonio Gomes.
        
        PR 125888
        
        Increase the padding value for focused text element to make selection handle
        at least partially visible when the user is dragging at edge of viewport
        in in-region scoll mode.
 
        Reviewed internally by Mike Fenton.

        * WebKitSupport/InputHandler.cpp:
        (BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):

2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031
2012-04-16  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>

        [BlackBerry] Add ability for DRT to handle HTTP authentication challenges.
        https://bugs.webkit.org/show_bug.cgi?id=84031

        Reviewed by Rob Buis.

        Added the interface function didReceivedAuthenticaitonChallenge()
        in interface class DumpRenderTreeClient;
        Called m_dumpRenderTree->didReceiveAuthenticationChallenge() in
        WebPagePrivate::authenticationChallenge() when DRT is enabled.

        Test: reuse existing test cases:
        http/tests/loading/basic-credentials-sent-automatically.html
        http/tests/loading/basic-auth-resend-wrong-credentials.html

        * Api/DumpRenderTreeClient.h:
        (WebCore):
        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):

2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046
2012-04-16  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Accelerated compositing layers fail to render in direct rendering mode
        https://bugs.webkit.org/show_bug.cgi?id=83933

        Reviewed by Adam Treat.

        RIM PR: 149609
        This was because I accidentally dropped an exclamation mark when
        upstreaming the patch for PR 136381 (bug #83131). Fixed by adding back
        the exclamation mark.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::rootLayerCommitTimerFired):

2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060
2012-04-12  Konrad Piascik  <kpiascik@rim.com>

        [BlackBerry] Web Inspector messages incorrectly converted
        https://bugs.webkit.org/show_bug.cgi?id=83796

        Reviewed by Rob Buis.

        The JSON sent over from the remote Web Inspector front-end was being
        mis interpreted as ISO-8859-1.  This caused all non ascii characters to
        become garbled when using the String constructor, so we use fromtUTF8 instead.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPage::dispatchInspectorMessage):

2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082
2012-04-12  Mike Fenton  <mifenton@rim.com>

        [BlackBerry] Speed up processing of Selection region generation.
        https://bugs.webkit.org/show_bug.cgi?id=82766

        Reviewed by Rob Buis.

        PR 136593.

        Re-speed up text selection.  The previous patch had a merge
        error causing text selection not to function.  The fix
        implemented removed the optimization.  This fixes the error
        in the original patch and removes the temporary fix.

        Make style updated as suggested by Antonio Gomes.

        Reviewed Internally by Gen Mak.

        * WebKitSupport/SelectionHandler.cpp:
        (BlackBerry::WebKit::SelectionHandler::regionForTextQuads):
        (BlackBerry::WebKit::regionRectListContainsPoint):

2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099
2012-04-12  Mike Fenton  <mifenton@rim.com>

        Pattern matching for hexadecimal should include * as an allowable count.
        https://bugs.webkit.org/show_bug.cgi?id=83779

        Reviewed by Rob Buis.

        Update pattern matching check to allow wildcard for number
        of characters allowed.

        PR 148907.

        Reviewed Internally by Gen Mak.

        * WebKitSupport/DOMSupport.cpp:
        (BlackBerry::WebKit::DOMSupport::elementPatternIndicatesHexadecimal):

2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126
2012-04-11  Joe Mason  <jmason@rim.com>

        [BlackBerry] Update to the thread-safe GuardedPointer API
        https://bugs.webkit.org/show_bug.cgi?id=83603

        Reviewed by Rob Buis.

        RIM PR: 134984
        Make the destructors of all objects inheriting GuardedPointerBase protected or
        private, and delete them using BlackBerry::Platform::deleteGuardedObject.
        Access all GuardedPointers through GuardedPointerLocker.

        No new tests, refactor.

        Reviewed internally by Yong Li and George Staikos.

        * Api/BackingStore.cpp:
        (BlackBerry::WebKit::BackingStore::~BackingStore):
        * Api/BackingStore_p.h:
        (BackingStorePrivate):
        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPage::~WebPage):
        (BlackBerry::WebKit::WebPage::destroy):
        * Api/WebPage.h:
        * Api/WebPage_p.h:
        (WebPagePrivate):

2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138
2012-04-10  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Crash when tearing down web page rendered using WebPageCompositor
        https://bugs.webkit.org/show_bug.cgi?id=83567

        Reviewed by Antonio Gomes.

        Fixed by checking if there's a layer renderer before calling into it.

        * Api/WebPageCompositor.cpp:
        (BlackBerry::WebKit::WebPageCompositorPrivate::releaseLayerResources):

2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151
2012-04-09  Eli Fidler  <efidler@rim.com>

        [BlackBerry] Update about:config page
        https://bugs.webkit.org/show_bug.cgi?id=83515

        Reviewed by Rob Buis.

        * WebCoreSupport/AboutData.cpp:
        (WebCore::configPage):
        * WebCoreSupport/AboutDataEnableFeatures.in:
        * WebCoreSupport/AboutDataHaveFeatures.in:
        * WebCoreSupport/AboutDataUseFeatures.in:

2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178
2012-04-07  Rob Buis  <rbuis@rim.com>

        [BlackBerry] Add Battery Status API support
        https://bugs.webkit.org/show_bug.cgi?id=82615

        Reviewed by George Staikos.

        Add client implementation for Battery API.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::init):  initialize BatteryClient.
        * WebCoreSupport/BatteryClientBlackBerry.cpp: Added.
        (WebCore):
        (WebCore::BatteryClientBlackBerry::BatteryClientBlackBerry):
        (WebCore::BatteryClientBlackBerry::setController):
        (WebCore::BatteryClientBlackBerry::startUpdating):
        (WebCore::BatteryClientBlackBerry::stopUpdating):
        (WebCore::BatteryClientBlackBerry::batteryControllerDestroyed):
        (WebCore::BatteryClientBlackBerry::onLevelChange):
        (WebCore::BatteryClientBlackBerry::onChargingChange):
        (WebCore::BatteryClientBlackBerry::onChargingTimeChange):
        (WebCore::BatteryClientBlackBerry::onDischargingTimeChange):
        * WebCoreSupport/BatteryClientBlackBerry.h: Added.
        (WebCore):
        (BatteryClientBlackBerry):
        (WebCore::BatteryClientBlackBerry::~BatteryClientBlackBerry):

2179 2180 2181 2182 2183 2184 2185 2186 2187
2012-04-06  Benjamin Poulain  <bpoulain@apple.com>

        Get rid of the useless flag PREEMPT_GEOLOCATION_PERMISSION
        https://bugs.webkit.org/show_bug.cgi?id=83325

        Reviewed by Ryosuke Niwa.

        * WebCoreSupport/AboutDataUseFeatures.in:

2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202
2012-04-06  Sean Wang  <Xuewen.Wang@torchmobile.com.cn>

        [BlackBerry] Text selection - Can't select texts
        https://bugs.webkit.org/show_bug.cgi?id=83355

        Fix the problem of not sending out the result of the function 
        SelectionHandler::regionForTextQuads(). This regression issue
        is introduced by the git commit f9446b7d671d48a833ab0acf12b1e20637e0a910.

        Reviewed by George Staikos.

        * WebKitSupport/SelectionHandler.cpp:
        (BlackBerry::WebKit::SelectionHandler::regionForTextQuads):
            Add code to return the function result.

2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214
2012-04-05  Jason Liu  <jason.liu@torchmobile.com.cn>

        [BlackBerry] Empty Referrer should not be set into ResourceRequest when loading a main resource.
        https://bugs.webkit.org/show_bug.cgi?id=83252

        Reviewed by George Staikos.

        Test: http/tests/misc/resources/referrer-main-resource.php

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::load):

2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234
2012-04-05  George Staikos  <staikos@webkit.org>

        Add a vibration client for BlackBerry and enable it.
        https://bugs.webkit.org/show_bug.cgi?id=83340

        Reviewed by Rob Buis.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::init): enable the client
        * WebCoreSupport/VibrationClientBlackBerry.cpp: Added.
        (WebCore):
        (WebCore::VibrationClientBlackBerry::VibrationClientBlackBerry):
        (WebCore::VibrationClientBlackBerry::vibrate):
        (WebCore::VibrationClientBlackBerry::cancelVibration):
        (WebCore::VibrationClientBlackBerry::vibrationDestroyed):
        * WebCoreSupport/VibrationClientBlackBerry.h: Added.
        (WebCore):
        (VibrationClientBlackBerry):
        (WebCore::VibrationClientBlackBerry::~VibrationClientBlackBerry):

2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286
2012-04-05  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Force compositing mode when backing store is not active
        https://bugs.webkit.org/show_bug.cgi?id=83131

        Reviewed by George Staikos.

        RIM PR: 136381
        Normally, the BlackBerry WebKit port resorts to direct rendering when
        the backing store is not active. However, direct rendering is broken
        with the OpenGL code path. This prevented multiple web pages from being
        displayed at once with the new WebPageCompositor API.

        Fixed by using accelerated compositing layer to render the root layer
        instead of backing store. This will give us a tiled layer backing the
        root layer, which for some use cases is even better than direct
        rendering.

        Reviewed internally by Filip Spacek.

        * Api/BackingStore.cpp:
        (BlackBerry::WebKit::BackingStorePrivate::shouldDirectRenderingToWindow):
        (BlackBerry::WebKit::BackingStorePrivate::blitContents):
        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::setLoadState):
        (BlackBerry::WebKit::WebPage::setVisible):
        (BlackBerry::WebKit::WebPagePrivate::suspendBackingStore):
        (BlackBerry::WebKit::WebPagePrivate::resumeBackingStore):
        (BlackBerry::WebKit::WebPagePrivate::compositorDrawsRootLayer):
        (WebKit):
        (BlackBerry::WebKit::WebPagePrivate::setCompositorDrawsRootLayer):
        (BlackBerry::WebKit::WebPagePrivate::drawLayersOnCommit):
        (BlackBerry::WebKit::WebPagePrivate::scheduleRootLayerCommit):
        (BlackBerry::WebKit::WebPagePrivate::commitRootLayer):
        (BlackBerry::WebKit::WebPagePrivate::commitRootLayerIfNeeded):
        (BlackBerry::WebKit::WebPagePrivate::rootLayerCommitTimerFired):
        (BlackBerry::WebKit::WebPagePrivate::setRootLayerCompositingThread):
        (BlackBerry::WebKit::WebPagePrivate::createCompositor):
        (BlackBerry::WebKit::WebPagePrivate::suspendRootLayerCommit):
        (BlackBerry::WebKit::WebPagePrivate::setNeedsOneShotDrawingSynchronization):
        * Api/WebPageCompositor.cpp:
        (BlackBerry::WebKit::WebPageCompositorPrivate::WebPageCompositorPrivate):
        (BlackBerry::WebKit::WebPageCompositorPrivate::drawsRootLayer):
        (WebKit):
        (BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
        * Api/WebPageCompositor_p.h:
        (BlackBerry::WebKit::WebPageCompositorPrivate::rootLayer):
        (WebPageCompositorPrivate):
        (BlackBerry::WebKit::WebPageCompositorPrivate::setDrawsRootLayer):
        * Api/WebPage_p.h:
        (WebPagePrivate):

2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304
2012-04-05  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>

        [BlackBerry] Clear local storage won't take effect until browser exit and relaunch
        https://bugs.webkit.org/show_bug.cgi?id=83253

        Reviewed by Rob Buis.

        RIM PR: #146871
        Cleared the local storage namespace of a WebPage's PageGroup
        when WebPage::clearLocalStorage() get called.
        Also deleted unused global function clearLocalStorage().

        * Api/BlackBerryGlobal.cpp:
        * Api/BlackBerryGlobal.h:
        (WebKit):
        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPage::clearLocalStorage):

2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318
2012-04-04  Rob Buis  <rbuis@rim.com>

        [BlackBerry] Make the switch statement in WebPage::notifyAppActivationStateChange() stronger
        https://bugs.webkit.org/show_bug.cgi?id=83085

        Reviewed by Antonio Gomes.

        PR 121109

        This way when we add something to the enum and forget to add to the switch we'll get a compile error.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPage::notifyAppActivationStateChange):

2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350
2012-04-03  Mike Lattanzio  <mlattanzio@rim.com>

        [BlackBerry] Expose CaseSensitive, Wrap, and HighlightAllMatches in WebPage::findNextString()
        https://bugs.webkit.org/show_bug.cgi?id=82643

        Enhance BlackBerry::WebKit::WebPage::findNextString()

        This patch adds support for toggling case sensitivity,
        search wrapping, and whether or not to highlight all matches
        in addition to the next found match.

        I refactored and renamed the new setActiveMatchAndMarker() method
        to move the active match from one range to another. This was
        required because in the case of a non wrapped search we do not
        want to adjust the m_activeMatch if another match is not found.

        Internal Review by Andy Chen.

        Reviewed by Rob Buis.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPage::findNextString):
        * Api/WebPage.h:
        * WebKitSupport/InPageSearchManager.cpp:
        (BlackBerry::WebKit::InPageSearchManager::InPageSearchManager):
        (BlackBerry::WebKit::InPageSearchManager::findNextString):
        (BlackBerry::WebKit::InPageSearchManager::findAndMarkText):
        (BlackBerry::WebKit::InPageSearchManager::setActiveMatchAndMarker):
        (BlackBerry::WebKit::InPageSearchManager::scopeStringMatches):
        * WebKitSupport/InPageSearchManager.h:
        (InPageSearchManager):

2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364
2012-04-02  Jacky Jiang  <zhajiang@rim.com>

        [BlackBerry] Adapt WebPagePrivate::webContext to the API change of r109570
        https://bugs.webkit.org/show_bug.cgi?id=82945

        Reviewed by Rob Buis.

        RIM PR: 147163
        Adapt WebPagePrivate::webContext to the API change of the security
        cherry-pick of r109570 and r112023.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::webContext):

2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385
2012-04-02  Lianghui Chen  <liachen@rim.com>

        [BlackBerry] Set ResourceRequest TargetType in WebPagePrivate::load()
        https://bugs.webkit.org/show_bug.cgi?id=80519

        Set the right TargetType for main loads if they are not already set in
        dispatchWillSendRequest().

        Also adjust NetworkRequest TargetType for decidePolicyForExternalLoad()
        and dispatchDecidePolicyForNavigationAction() as they are called before
        dispatchWillSendRequest() is called. Patch to change ResourceRequest
        TargetType earlier has been rejected as in WebKit bug
        https://bugs.webkit.org/show_bug.cgi?id=80713

        Reviewed by Rob Buis.

        * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
        (WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForNavigationAction):
        (WebCore::FrameLoaderClientBlackBerry::dispatchWillSendRequest):
        (WebCore::FrameLoaderClientBlackBerry::decidePolicyForExternalLoad):

2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422
2012-04-01  Arvid Nilsson  <anilsson@rim.com>

        [BlackBerry] Simplify the code that gets accelerated compositing output onto the screen
        https://bugs.webkit.org/show_bug.cgi?id=82845

        Reviewed by Rob Buis.

        RIM PR: 136381
        The code accounted for a now obsolete setup where we used one OpenGL
        window for accelerated compositing and one native window for backing
        store output, and let the windowing system composite those two. In that
        setup an optimization to try and only update the window that had
        changed was viable.

        Nowadays, we either use an offscreen surface for accelerated
        compositing output, which we blend onto the window containing the
        backing store output, or render both backing store and accelerated
        compositing output directly to one OpenGL window. We always have to
        blit the backingstore contents and draw the accelerated compositing
        output every frame with these code paths, so don't try to be clever
        about it.

        Even when we use an OpenGL window, the compositing surface can be non-
        null, so don't try to glFinish() and swap the compositing surface when
        the GLES2Context is tied to a window.

        * Api/BackingStore.cpp:
        (BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
        (BlackBerry::WebKit::BackingStorePrivate::blitContents):
        (WebKit):
        * Api/BackingStore_p.h:
        (BackingStorePrivate):
        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::drawLayersOnCommit):
        * WebKitSupport/GLES2Context.cpp:
        (BlackBerry::WebKit::GLES2Context::swapBuffers):

2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436
2012-03-31  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>

        [BlackBerry] http authenticate dialog popup only once no matter authentication pass or fail
        https://bugs.webkit.org/show_bug.cgi?id=80135

        Reviewed by Rob Buis.

        RIM PR: 145660
        Fixed a regression introduced by r111810, which used the wrong
        credential object.

        * Api/WebPage.cpp:
        (BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):