1. 08 Jun, 2012 1 commit
  2. 07 Jun, 2012 4 commits
    • zhajiang@rim.com's avatar
      [BlackBerry] Get rid of unused maximumLayoutSize in WebPage · 5a11df13
      zhajiang@rim.com authored
      https://bugs.webkit.org/show_bug.cgi?id=88574
      
      Reviewed by Rob Buis.
      Patch by Jacky Jiang <zhajiang@rim.com>
      
      PR: 164098
      maximumLayoutSize was deprecated when we made use of
      WebCore::computeViewportAttributes for
      WebPagePrivate::recomputeVirtualViewportFromViewportArguments.
      So clean it up.
      
      * Api/WebPage.cpp:
      (WebKit):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119771 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5a11df13
    • commit-queue@webkit.org's avatar
      [BlackBerry] User viewport arguments are not respected · 2d891683
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=88530
      
      Patch by Arvid Nilsson <anilsson@rim.com> on 2012-06-07
      Reviewed by Antonio Gomes.
      
      RIM PR #163767
      
      Fixed by applying the user supplied viewport arguments if the page
      specifies default viewport arguments (i.e. the page has no viewport
      meta tag).
      
      If the user didn't supply any viewport arguments either, the behaviour
      is the same as before the patch, the caller will successfully reset to
      default viewport arguments.
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::dispatchViewportPropertiesDidChange):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119721 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2d891683
    • commit-queue@webkit.org's avatar
      [BlackBerry] Allow WebPageCompositor to blend a transparent web page · f915c290
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=88233
      
      Patch by Arvid Nilsson <anilsson@rim.com> on 2012-06-07
      Reviewed by Rob Buis.
      
      RIM PR #159998
      
      Source/WebCore:
      
      Add a parameter to LayerRenderer::compositeBuffer() indicating whether
      the buffer contents are opaque, and set the GL blend mode accordingly.
      
      This is not currently testable using BlackBerry testing infrastructure.
      
      Reviewed internally by Jakob Petsovits.
      
      * platform/graphics/blackberry/LayerRenderer.cpp:
      (WebCore::LayerRenderer::compositeBuffer):
      * platform/graphics/blackberry/LayerRenderer.h:
      (LayerRenderer):
      
      Source/WebKit/blackberry:
      
      Keep track of the web page background color in the compositor so we can
      determine whether the contents of the root layer are transparent.
      
      Reviewed internally by Jakob Petsovits.
      
      * Api/BackingStore.cpp:
      (BlackBerry::WebKit::BackingStorePrivate::compositeContents):
      * Api/BackingStore_p.h:
      (BackingStorePrivate):
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::setCompositor):
      (BlackBerry::WebKit::WebPagePrivate::setCompositorBackgroundColor):
      (WebKit):
      (BlackBerry::WebKit::WebPagePrivate::createCompositor):
      (BlackBerry::WebKit::WebPagePrivate::didChangeSettings):
      * Api/WebPageCompositor.cpp:
      (BlackBerry::WebKit::WebPageCompositorPrivate::render):
      (BlackBerry::WebKit::WebPageCompositorPrivate::setBackgroundColor):
      (WebKit):
      * Api/WebPageCompositor_p.h:
      (BlackBerry::WebKit::WebPageCompositorPrivate::backgroundColor):
      (WebPageCompositorPrivate):
      * Api/WebPage_p.h:
      (WebPagePrivate):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119718 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f915c290
    • commit-queue@webkit.org's avatar
      [BlackBerry] Add enable credential autofill and enable form autofill feature control in WebSetting · 58be518a
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=88513
      
      Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-06-07
      Reviewed by Rob Buis.
      
      RIM PR: #163391
      Implemented credential autofill setting and form autofill setting.
      
      Internally reviewed by Leo Yang <leo.yang@torchmobile.com.cn>.
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPage::autofillTextField):
      (BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):
      (BlackBerry::WebKit::WebPage::clearCredentials):
      (BlackBerry::WebKit::WebPage::clearAutofillData):
      (BlackBerry::WebKit::WebPage::clearNeverRememberSites):
      * Api/WebSettings.cpp:
      (WebKit):
      (BlackBerry::WebKit::WebSettings::standardSettings):
      (BlackBerry::WebKit::WebSettings::isCredentialAutofillEnabled):
      (BlackBerry::WebKit::WebSettings::setCredentialAutofillEnabled):
      (BlackBerry::WebKit::WebSettings::isFormAutofillEnabled):
      (BlackBerry::WebKit::WebSettings::setFormAutofillEnabled):
      * Api/WebSettings.h:
      * WebCoreSupport/EditorClientBlackBerry.cpp:
      (WebCore::EditorClientBlackBerry::textFieldDidEndEditing):
      (WebCore::EditorClientBlackBerry::textDidChangeInTextField):
      * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
      (WebCore::FrameLoaderClientBlackBerry::dispatchDidFinishLoad):
      (WebCore::FrameLoaderClientBlackBerry::dispatchWillSubmitForm):
      (WebCore::FrameLoaderClientBlackBerry::dispatchWillSendSubmitEvent):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119713 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      58be518a
  3. 06 Jun, 2012 2 commits
  4. 05 Jun, 2012 1 commit
    • abarth@webkit.org's avatar
      Remove support for target-densitydpi in the viewport meta tag · c27d725c
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=88047
      
      Reviewed by Kenneth Rohde Christiansen.
      
      Source/WebCore:
      
      The target-densitydpi parameter was originally implemented on Android,
      but it does not appear to be widely used and introduces significant
      implementation complexity because it forces us to track three scale
      factors (defaultDeviceScaleFactor, deviceScaleFactor, and
      pageScaleFactor) rather than just two (deviceScaleFactor and
      pageScaleFactor).
      
      There don't appear to be many web sites that use target-densitydpi
      because it is not supported on iOS.  There are also concerns from the
      standards community about the design of the feature.  It seems our best
      course of action is to remove target-densitydpi and address these use
      cases via other mechanisms, such as responsive images and device units
      in CSS because those approaches are likely to be implemented broadly.
      
      * dom/ViewportArguments.cpp:
      (WebCore::computeViewportAttributes):
      (WebCore):
      (WebCore::setViewportFeature):
      (WebCore::viewportErrorMessageTemplate):
      (WebCore::viewportErrorMessageLevel):
      * dom/ViewportArguments.h:
      (WebCore::ViewportArguments::ViewportArguments):
      (ViewportArguments):
      (WebCore::ViewportArguments::operator==):
      
      Source/WebKit/blackberry:
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::recomputeVirtualViewportFromViewportArguments):
      * Api/WebViewportArguments.cpp:
      (BlackBerry::WebKit::WebViewportArguments::targetDensityDpi):
      (BlackBerry::WebKit::WebViewportArguments::setTargetDensityDpi):
      * Api/WebViewportArguments.h:
      
      Source/WebKit/efl:
      
      * ewk/ewk_view.cpp:
      (_ewk_view_priv_new):
      
      LayoutTests:
      
      These tests are no longer needed because they're testing a feature we
      no longer support.
      
      * fast/viewport/viewport-133-expected.txt: Removed.
      * fast/viewport/viewport-133.html: Removed.
      * fast/viewport/viewport-92-expected.txt: Removed.
      * fast/viewport/viewport-92.html: Removed.
      * fast/viewport/viewport-93-expected.txt: Removed.
      * fast/viewport/viewport-93.html: Removed.
      * fast/viewport/viewport-94-expected.txt: Removed.
      * fast/viewport/viewport-94.html: Removed.
      * fast/viewport/viewport-95-expected.txt: Removed.
      * fast/viewport/viewport-95.html: Removed.
      * fast/viewport/viewport-96-expected.txt: Removed.
      * fast/viewport/viewport-96.html: Removed.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119527 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c27d725c
  5. 02 Jun, 2012 2 commits
    • tonikitoo@webkit.org's avatar
      [BlackBerry] browser video player fullscreen mode (portrait) - out of... · af63823e
      tonikitoo@webkit.org authored
      [BlackBerry] browser video player fullscreen mode (portrait) - out of screen/focus - cannot navigate or use the buttons on the screen (PART III)
      https://bugs.webkit.org/show_bug.cgi?id=88019
      
      Reviewed by George Staikos.
      Patch by Antonio Gomes <agomes@rim.com>
      
      Enter 'pure-with-mouse-conversion' mode when going fullscreen, so
      that it prevents user from scrolling the WebPage, pinch zooming,
      touch-and-hold, enter selection mode, etc ...
      
      Internally reviewed by Gen Mak.
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
      (BlackBerry::WebKit::WebPagePrivate::enterFullScreenForElement):
      (BlackBerry::WebKit::WebPagePrivate::exitFullScreenForElement):
      * Api/WebPage_p.h:
      (WebPagePrivate):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119322 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      af63823e
    • tonikitoo@webkit.org's avatar
      [BlackBerry] browser video player fullscreen mode (portrait) - out of... · 78e88f52
      tonikitoo@webkit.org authored
      [BlackBerry] browser video player fullscreen mode (portrait) - out of screen/focus - cannot navigate or use the buttons on the screen (PART II)
      https://bugs.webkit.org/show_bug.cgi?id=88019
      
      Reviewed by George Staikos.
      Patch by Antonio Gomes <agomes@rim.com>
      
      When an element goes fullscreen, its wrapper/container obeys all
      BlackBerry specific fixed position customizations: we fixed
      against Y, but not X. Then, in order to have the wrapper element
      properly positioned when entering fullscreen mode, we
      temporarily scroll x to 0.
      
      The original x scroll position is restored when we leave
      fullscreen.
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
      (BlackBerry::WebKit::WebPagePrivate::enterFullScreenForElement):
      (BlackBerry::WebKit::WebPagePrivate::exitFullScreenForElement):
      * Api/WebPage_p.h:
      (WebPagePrivate):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119321 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      78e88f52
  6. 01 Jun, 2012 1 commit
    • commit-queue@webkit.org's avatar
      [BlackBerry] Add end editing handling into AutofillManager · aac7f509
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=88071
      
      Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-06-01
      Reviewed by Rob Buis.
      
      RIM PR: 160857
      Implemented EditorClientBlackBerry::textFieldDidEndEditing
      to notify AutofillManager to send the dismissing autofill
      dialog notification to webpage client.
      
      No new tests since there is no behavior changes.
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::notifyDismissAutofillDialog):
      (WebKit):
      * Api/WebPageClient.h:
      * Api/WebPage_p.h:
      (WebPagePrivate):
      * WebCoreSupport/AutofillManager.cpp:
      (WebCore::AutofillManager::textFieldDidEndEditing):
      (WebCore):
      * WebCoreSupport/AutofillManager.h:
      (AutofillManager):
      * WebCoreSupport/EditorClientBlackBerry.cpp:
      (WebCore::EditorClientBlackBerry::textFieldDidEndEditing):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119239 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aac7f509
  7. 31 May, 2012 3 commits
    • commit-queue@webkit.org's avatar
      [BlackBerry] WebGL and 2D canvas output not available to WebPageCompositor · 7da03741
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=88012
      
      Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-31
      Reviewed by George Staikos.
      
      Properly set up resource sharing between WebKit thread EGL contexts and
      the compositing thread EGL context, so the texture ID produced by WebGL
      and 2D canvas makes sense to the compositing context.
      
      There's no public API to supply an EGLContext yet, so we're lucky that
      the embedder never makes its context un-current. Just grab the current
      context on the compositing thread and use that as the compositing
      context.
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::setCompositor):
      * Api/WebPageCompositor.cpp:
      (BlackBerry::WebKit::WebPageCompositor::WebPageCompositor):
      (BlackBerry::WebKit::WebPageCompositor::~WebPageCompositor):
      * Api/WebPage_p.h:
      (WebPagePrivate):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119185 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7da03741
    • commit-queue@webkit.org's avatar
      [Blackberry] WebKit's fullscreen mode needs to notify page client. · ccd39940
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=87337
      
      Patch by Chris Guan <chris.guan@torchmobile.com.cn> on 2012-05-31
      Reviewed by Antonio Gomes.
      
      Move "fullScreenVideoCapable" into webpagePrivate to make code
      clean for "fullScreenForElement/Node" of cromeClientBlackberry,
      All Video checks and code path selections are in webpagePrivate now.
      For some UX and secure reasons, we could not apply fullscreen capacity
      for all elements, So we use client's fullscreenStart/Stop only for
      those video elements and those elements containing video tags.
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::webContext):
      (BlackBerry::WebKit::WebPage::notifyFullScreenVideoExited):
      (WebKit):
      (BlackBerry::WebKit::containsVideoTags):
      (BlackBerry::WebKit::WebPagePrivate::enterFullScreenForElement):
      (BlackBerry::WebKit::WebPagePrivate::exitFullScreenForElement):
      * Api/WebPageClient.h:
      * Api/WebPage_p.h:
      (WebCore):
      (WebPagePrivate):
      * WebCoreSupport/ChromeClientBlackBerry.cpp:
      (WebCore::ChromeClientBlackBerry::enterFullScreenForElement):
      (WebCore::ChromeClientBlackBerry::exitFullScreenForElement):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119119 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ccd39940
    • commit-queue@webkit.org's avatar
      [BlackBerry] Crash when closing web page if selection is active · 2775206e
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=87962
      
      Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-31
      Reviewed by Antonio Gomes.
      
      The embedder may try to remove a layer from the compositor at a stage
      where the compositor has been set to 0.
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPage::addCompositingThreadOverlay):
      (BlackBerry::WebKit::WebPage::removeCompositingThreadOverlay):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119105 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2775206e
  8. 30 May, 2012 2 commits
    • commit-queue@webkit.org's avatar
      [BlackBerry] Add an Accelerated Compositing layer for Web Inspector DOM highlight. · f94b94cd
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=81001
      
      Source/WebKit:
      
      Patch by Konrad Piascik <kpiascik@rim.com> on 2012-05-30
      Reviewed by Antonio Gomes
      
      Added new InspectorOverlay class
      
      * PlatformBlackBerry.cmake:
      
      Source/WebKit/blackberry:
      
      Patch by Konrad Piascik <kpiascik@rim.com> on 2012-05-30
      Reviewed by Antonio Gomes.
      
      Implemented InspectorOverlay using WebOverlayAPI.
      
      * Api/BackingStore.cpp:
      (BlackBerry::WebKit::BackingStorePrivate::renderContents):
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::updateDelegatedOverlays):
      (BlackBerry::WebKit::WebPagePrivate::commitRootLayerIfNeeded):
      (BlackBerry::WebKit::WebPagePrivate::setInspectorOverlayClient):
      (WebKit):
      * Api/WebPage_p.h:
      (WebCore):
      (WebPagePrivate):
      * WebCoreSupport/InspectorClientBlackBerry.cpp:
      (WebCore::InspectorClientBlackBerry::highlight):
      (WebCore::InspectorClientBlackBerry::hideHighlight):
      (WebCore::InspectorClientBlackBerry::paintInspectorOverlay):
      (WebCore):
      * WebCoreSupport/InspectorClientBlackBerry.h:
      (InspectorClientBlackBerry):
      * WebCoreSupport/InspectorOverlay.cpp: Added.
      (WebCore):
      (WebCore::InspectorOverlay::create):
      (WebCore::InspectorOverlay::InspectorOverlay):
      (WebCore::InspectorOverlay::notifySyncRequired):
      (WebCore::InspectorOverlay::paintContents):
      (WebCore::InspectorOverlay::showDebugBorders):
      (WebCore::InspectorOverlay::showRepaintCounter):
      (WebCore::InspectorOverlay::contentsVisible):
      (WebCore::InspectorOverlay::~InspectorOverlay):
      (WebCore::InspectorOverlay::clear):
      (WebCore::InspectorOverlay::update):
      (WebCore::InspectorOverlay::paintWebFrame):
      (WebCore::InspectorOverlay::invalidateWebFrame):
      * WebCoreSupport/InspectorOverlay.h: Added.
      (WebKit):
      (WebCore):
      (InspectorOverlay):
      (InspectorOverlayClient):
      (WebCore::InspectorOverlay::setClient):
      (WebCore::InspectorOverlay::notifyAnimationStarted):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@119046 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f94b94cd
    • commit-queue@webkit.org's avatar
      [BlackBerry] The Page's deviceScaleFactor() is not being properly maintained · c7043e7c
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=87817
      
      Patch by Max Feil <mfeil@rim.com> on 2012-05-29
      Reviewed by Antonio Gomes.
      
      This bug fix in WebKit/blackberry is needed by the changes for
      fullscreen media control sizing in WebCore (bug 87551). The sizing
      of controls depends on the page's deviceScaleFactor(), which was
      not being maintained properly due to errors in logic. Viewport
      changes from non-default to default were being erroneously
      thrown out. Also, when the viewport did change back to default
      the deviceScaleFactor was not being updated.
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::recomputeVirtualViewportFromViewportArguments):
      (BlackBerry::WebKit::WebPagePrivate::dispatchViewportPropertiesDidChange):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@118895 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c7043e7c
  9. 29 May, 2012 3 commits
    • commit-queue@webkit.org's avatar
      [BlackBerry] WebOverlay build fixes and bug fixes · e4ecf697
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=87780
      
      Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-29
      Reviewed by Rob Buis.
      
      Fix build when accelerated compositing disabled, or debug build.
      
      Also fix a bug where the selection overlay would not disappear properly
      because of a typo in WebPage::removeOverlay(). Also convert said method
      to early return style.
      
      Debug build fixes contributed by Ming Xie.
      
      * Api/WebOverlay.cpp:
      (BlackBerry::WebKit::WebOverlay::addAnimation):
      (BlackBerry::WebKit::WebOverlay::setContentsToImage):
      (WebKit):
      (BlackBerry::WebKit::WebOverlay::setContentsToColor):
      (BlackBerry::WebKit::WebOverlay::setDrawsContent):
      (BlackBerry::WebKit::WebOverlay::invalidate):
      (BlackBerry::WebKit::WebOverlay::setClient):
      (BlackBerry::WebKit::WebOverlay::override):
      (BlackBerry::WebKit::WebOverlay::resetOverrides):
      * Api/WebOverlayOverride.cpp:
      (BlackBerry::WebKit::WebOverlayOverride::WebOverlayOverride):
      * Api/WebOverlay_p.h:
      (BlackBerry::WebKit::WebOverlayPrivate::~WebOverlayPrivate):
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPage::removeOverlay):
      (BlackBerry::WebKit::WebPage::addCompositingThreadOverlay):
      (BlackBerry::WebKit::WebPage::removeCompositingThreadOverlay):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@118850 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e4ecf697
    • commit-queue@webkit.org's avatar
      [BlackBerry] WebKit-side implementation of SelectionOverlay · b198650a
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=87605
      
      Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-29
      Reviewed by Rob Buis.
      
      Source/WebKit:
      
      Add SelectionOverlay to the build system.
      
      PR #160263
      
      * PlatformBlackBerry.cmake:
      
      Source/WebKit/blackberry:
      
      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):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@118785 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b198650a
    • commit-queue@webkit.org's avatar
      [BlackBerry] WebOverlay API · 3331a7f1
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=87603
      
      Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-29
      Reviewed by Rob Buis.
      
      Source/WebKit:
      
      Add WebOverlay related files to the build system.
      
      PR #156812
      
      * PlatformBlackBerry.cmake:
      
      Source/WebKit/blackberry:
      
      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):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@118750 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3331a7f1
  10. 28 May, 2012 5 commits
    • commit-queue@webkit.org's avatar
      [BlackBerry] http authenticate dialog popup only once no matter authentication pass or fail · 1a7c3e81
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=80135
      
      Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-05-28
      Reviewed by Rob Buis.
      
      Source/WebCore:
      
      RIM PR: 145660
      Fixed a regression introduced by r111810, we should cancel the new
      request when user press cancel button in http authentication challenge
      dialog, and we should also allow sending empty username and password
      with the request.
      Also removed redundant codes which checked the existence of the
      FrameLoaderClient pointer, as we've already moved authenticationChallenge()
      out of class FrameLoaderClient, it is not needed.
      
      Manual test added. Testing http authentication dialog relies on user interaction.
      
      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>
      
      * platform/blackberry/PageClientBlackBerry.h:
      * platform/network/blackberry/NetworkJob.cpp:
      (WebCore::NetworkJob::sendRequestWithCredentials):
      
      Source/WebKit/blackberry:
      
      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):
      
      Tools:
      
      Implemented interface function didReceiveAuthenticationChallenge in class
      DumpRenderTree.
      
      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>
      
      * DumpRenderTree/blackberry/DumpRenderTree.cpp:
      (drtCredentialDescription):
      (BlackBerry::WebKit::DumpRenderTree::didReceiveAuthenticationChallenge):
      (WebKit):
      * DumpRenderTree/blackberry/DumpRenderTreeBlackBerry.h:
      (WebCore):
      (DumpRenderTree):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@118719 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1a7c3e81
    • commit-queue@webkit.org's avatar
      [BlackBerry] Always create a compositor · 52fa1543
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=87598
      
      Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
      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):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@118704 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      52fa1543
    • commit-queue@webkit.org's avatar
      [BlackBerry] Dangling pointer in WebPagePrivate::setCompositor() message · 9ccf1231
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=87590
      
      Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
      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):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@118702 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9ccf1231
    • commit-queue@webkit.org's avatar
      [BlackBerry] Add a default tap highlight · 7c3c1cfd
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=87569
      
      Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
      Reviewed by Rob Buis.
      
      Source/WebKit:
      
      Add DefaultTapHighlight to the build system
      
      Reviewed internally by Mike Lattanzio and Mike Fenton.
      
      PR #154329
      
      * PlatformBlackBerry.cmake:
      
      Source/WebKit/blackberry:
      
      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):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@118701 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7c3c1cfd
    • commit-queue@webkit.org's avatar
      [BlackBerry] Add an overlay layer · e7381707
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=87567
      
      Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
      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.
      
      Source/WebCore:
      
      The WebCore changes support the overlay layer functionality in WebKit
      by making it possible to add animations from the compositing thread
      without them being instantly overwritten during the next commit.
      
      Also a new custom layer type is added, which allow an overlay layer to
      draw itself using raw OpenGL calls. An instance of a custom subclass of
      LayerCompositingThread must be provided when creating the
      LayerWebKitThread. Then, the custom layer can be used as the content
      layer of a GraphicsLayer, or by itself.
      
      Reviewed internally by Filip Spacek.
      
      PR #154335
      
      * platform/graphics/blackberry/LayerCompositingThread.cpp:
      (WebCore::LayerCompositingThread::~LayerCompositingThread):
      (WebCore::LayerCompositingThread::deleteTextures):
      (WebCore::LayerCompositingThread::drawTextures):
      (WebCore::LayerCompositingThread::drawMissingTextures):
      (WebCore::LayerCompositingThread::updateTextureContentsIfNeeded):
      (WebCore::LayerCompositingThread::setVisible):
      (WebCore::LayerCompositingThread::scheduleCommit):
      * platform/graphics/blackberry/LayerCompositingThread.h:
      (WebCore::LayerCompositingThread::addAnimation):
      (WebCore::LayerCompositingThread::setRunningAnimations):
      (WebCore::LayerCompositingThread::setSuspendedAnimations):
      (LayerCompositingThread):
      (WebCore::LayerCompositingThread::drawCustom):
      * platform/graphics/blackberry/LayerData.h:
      (LayerData):
      * platform/graphics/blackberry/LayerWebKitThread.cpp:
      (WebCore::LayerWebKitThread::LayerWebKitThread):
      (WebCore):
      (WebCore::LayerWebKitThread::~LayerWebKitThread):
      (WebCore::LayerWebKitThread::updateTextureContentsIfNeeded):
      (WebCore::LayerWebKitThread::startAnimations):
      (WebCore::LayerWebKitThread::commitOnCompositingThread):
      (WebCore::LayerWebKitThread::setNeedsDisplayInRect):
      (WebCore::LayerWebKitThread::setNeedsDisplay):
      (WebCore::LayerWebKitThread::setIsMask):
      (WebCore::LayerWebKitThread::setRunningAnimations):
      (WebCore::LayerWebKitThread::setSuspendedAnimations):
      * platform/graphics/blackberry/LayerWebKitThread.h:
      (LayerWebKitThread):
      
      Source/WebKit/blackberry:
      
      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):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@118699 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e7381707
  11. 27 May, 2012 1 commit
    • commit-queue@webkit.org's avatar
      [BlackBerry] Crash when deleting WebPageCompositor · 645e22e6
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=87589
      
      Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-27
      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):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@118627 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      645e22e6
  12. 25 May, 2012 2 commits
  13. 24 May, 2012 3 commits
  14. 17 May, 2012 1 commit
    • zhajiang@rim.com's avatar
      [BlackBerry] www.thestar.com/iphone Viewport Weirdness · 8c59b30b
      zhajiang@rim.com authored
      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):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117511 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8c59b30b
  15. 15 May, 2012 2 commits
    • commit-queue@webkit.org's avatar
      [BlackBerry] Enable the Fullscreen API · 353beda2
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86129
      
      Patch by Max Feil <mfeil@rim.com> on 2012-05-15
      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):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117148 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      353beda2
    • commit-queue@webkit.org's avatar
      [BlackBerry] adding a functionality for web inspector to inspect current selected element · b961ea40
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86394
      
      Patch by Hanna Ma <Hanma@rim.com> on 2012-05-15
      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:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@117078 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b961ea40
  16. 09 May, 2012 2 commits
    • commit-queue@webkit.org's avatar
      [BlackBerry] Autofill feature implementation for BlackBerry porting · 3ee218d0
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85577
      
      Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-05-09
      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.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116603 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3ee218d0
    • commit-queue@webkit.org's avatar
      [BlackBerry] Enable PAGE_POPUP in make file, and implement required methods · a671fc10
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85907
      
      .:
      
      Patch by Crystal Zhang <haizhang@rim.com> on 2012-05-09
      Reviewed by Rob Buis.
      
      Enable PAGE_POPUP option in make files.
      
      Internal reviewed by Yong Li.
      
      * Source/cmake/OptionsBlackBerry.cmake:
      * Source/cmakeconfig.h.cmake:
      
      Source/WebKit/blackberry:
      
      Patch by Crystal Zhang <haizhang@rim.com> on 2012-05-09
      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):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116536 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a671fc10
  17. 08 May, 2012 1 commit
    • commit-queue@webkit.org's avatar
      [BlackBerry] Auth credentials set in private mode are reused in public mode. · 3fd89347
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=84697
      
      Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-05-08
      Reviewed by Rob Buis.
      
      Add setPrivateMode function for CredentialStorage.
      
      Source/WebCore:
      
      Now, we only save credentials in memory and CredentialBackingStore isn't enabled.
      When we set private mode from on to off, we clear all these temporary credentials.
      
      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
      
      * network/CredentialStorage.cpp:
      (WebCore::CredentialStorage::setPrivateMode):
      (WebCore):
      * platform/network/CredentialStorage.h:
      (CredentialStorage):
      
      Source/WebKit/blackberry:
      
      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):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116488 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3fd89347
  18. 06 May, 2012 1 commit
    • mary.wu@torchmobile.com.cn's avatar
      [BlackBerry] Support html5 download attribute. · c216b0d1
      mary.wu@torchmobile.com.cn authored
      https://bugs.webkit.org/show_bug.cgi?id=85044
      
      Reviewed by Antonio Gomes.
      
      Source/WebCore:
      
      Pass download attribute filename to networkJob and it could be
      overridden by the Content-Disposition HTTP header's filename parameter.
      
      * platform/network/blackberry/NetworkJob.cpp:
      (WebCore::NetworkJob::initialize):
      * platform/network/blackberry/ResourceRequest.h:
      (WebCore::ResourceRequest::setSuggestSaveName):
      (WebCore::ResourceRequest::suggestSaveName):
      (ResourceRequest):
      * platform/network/blackberry/ResourceRequestBlackBerry.cpp:
      (WebCore::ResourceRequest::initializePlatformRequest):
      
      Source/WebKit/blackberry:
      
      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):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116265 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c216b0d1
  19. 02 May, 2012 1 commit
    • commit-queue@webkit.org's avatar
      [BlackBerry] Double tap zooming does nothing on small size table · 679bd780
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85383
      
      Patch by Jacky Jiang <zhajiang@rim.com> on 2012-05-02
      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):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@115883 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      679bd780
  20. 27 Apr, 2012 2 commits