Граф коммитов

44 Коммитов

Автор SHA1 Сообщение Дата
Botond Ballo 2c1a3530e6 Bug 1340415 - Ensure main-thread and async autoscrolling do not happen at the same time. r=kats
The two happening at the same time can lead to the APZ autoscroll being
cancelled due to APZ receiving a main-thread scroll offset update.

To achieve this:

  - The content process assumes APZ is handling the autoscroll until
    told otherwise.

  - If the parent process knows APZ won't handle an autoscroll, it
    tells the content process via its response to the Autoscroll:Start
    message. This covers all cases where APZ doesn't handle the
    autoscroll, except the case where APZCTreeManager itself rejects
    the autoscroll and it lives in the compositor process rather than
    the parent process.

  - If APZCTreeManager rejects an autoscroll and it lives in the
    compositor process, it sends an 'autoscroll-rejected-by-apz' message
    to the content process.

MozReview-Commit-ID: L62v4COai6W

--HG--
extra : rebase_source : bc4c6417e77461634263defb88e67ed5036c454e
2017-10-18 18:18:13 -04:00
Botond Ballo a69196a7bc Bug 1385468 - Notify browser.xml when APZ cancels an AutoscrollAnimation. r=kats
The notification is sent via GeckoContentController, PAPZCTreeManager if
necessary (to go from the GPU process to the parent process), and the
observer service.

Naturally, the notification is not sent in the case where it's browser.xml
that initiates the shutdown.

MozReview-Commit-ID: IAaSf4HiDF4

--HG--
extra : rebase_source : 80855ac7d3ae44c393dde96650b330cc737f69d6
2017-07-31 19:15:26 -04:00
Botond Ballo e0c06e98b6 Bug 1105109 - Notify content when APZ is handling an autoscroll. r=kats
MozReview-Commit-ID: BeuZt30fMpn

--HG--
extra : rebase_source : 0d96639d873d12e63d981b3bc50b08360fb10d59
2017-07-26 19:32:57 -04:00
Botond Ballo a98321305e Bug 1328658 - Notify main thread of a failed attempt to start an APZ scrollbar drag. r=kats,tnikkel
MozReview-Commit-ID: ERm1sVNfoKL

--HG--
extra : rebase_source : 0b57987a2a15533fad577dd2d363ec386f6bfeae
2017-01-27 18:02:22 -05:00
Kartikaya Gupta 30133fa012 Bug 1298886 - Fire magnify gesture events in the parent process if APZ is enabled but APZ zooming is disabled. r=botond,dvander
MozReview-Commit-ID: 1yhJW7OhI0A
2016-09-24 09:46:02 -04:00
Ryan Hunt a624f81f28 Bug 1298246 - Update documentation for APZ IPDL protocols. r=kats
MozReview-Commit-ID: 6IYNycFmu7z

--HG--
extra : rebase_source : 917aecd0b7dafc09db21c6993eb6eca0f01a8eba
2016-08-25 16:42:55 -07:00
Ryan Hunt 76cbe77abe Bug 1289650 - Move PAPZ from PContent to PCompositorBridge. r=kats
MozReview-Commit-ID: GzU1iEVqSx6
2016-08-01 23:59:00 -07:00
Sebastian Hengst 0def5edaa6 Backed out changeset 1c7162137f66 (bug 1289650) 2016-08-24 23:15:44 +02:00
Ryan Hunt 20ed2e2fd0 Bug 1289650 - Move PAPZ from PContent to PCompositorBridge. r=kats
MozReview-Commit-ID: GzU1iEVqSx6
2016-08-01 23:59:00 -07:00
Kartikaya Gupta 85fd233d34 Bug 1250024 - Fix touch-tap event coordinate transformations when a fullzoom is applied. r=botond
There were a couple of problems when delivering tap gestures to content with
full zoom applied. One was that the ConverToGecko function converted the coords
into "CSS pixel" space by using the web content's CSS-to-LD scale, but also
applied that on the translation from the chrome area. Moving that conversion
to later in the process (after the coords got passed through TabParent::
AdjustTapToChildWidget) corrected that issue.

The other problem was that bits of code in APZEventState and APZCCallbackHelper
were using the widget->GetDefaultScale() value as the CSS-to-LD scale, but that
omitted the full zoom value. Getting the CSS-to-LD scale from the presShell and
propagating that through corrected that issue.

MozReview-Commit-ID: KdrkdEZslHo
2016-07-29 14:44:29 -04:00
Ryan Hunt 5c1e3a17b8 Bug 1281575 - Extract interface of APZCTreeManager for moving to GPUProcess. r=kats
MozReview-Commit-ID: 7tO2kkTNFk2
2016-07-20 13:37:00 +02:00
Carsten "Tomcat" Book 5b86ab83e3 Backed out changeset 3119db384fcc (bug 1281575) for bustage 2016-07-21 06:26:58 +02:00
Ryan Hunt de1e16b8e9 Bug 1281575 - Extract interface of APZCTreeManager for moving to GPUProcess. r=kats 2016-07-20 13:37:00 +02:00
Kartikaya Gupta 4152d69a8e Bug 1256339 - Collapse the different Handle*Tap functions in GeckoContentController into a single API. r=botond
This is just a refactoring, no functional changes intended.

MozReview-Commit-ID: GRJxVpNAlHC
2016-07-05 13:24:54 -04:00
Kyle Huey 7579799b01 Bug 1266595: Replace Chromium Task with Runnable. r=froydnj 2016-04-27 17:06:05 -07:00
Kartikaya Gupta 6afa98a3ea Bug 1248078 - Remove the dedicated scroll acknowledgement message. r=botond
MozReview-Commit-ID: L6MuRX4oT3y
2016-04-18 12:31:54 -04:00
Kartikaya Gupta 5d81a44cf8 Back out bug 1248078 (cset 1fd853200c99) for talos regressions. r=backout
MozReview-Commit-ID: 3qV2wKQOtAL
2016-04-22 12:07:36 -04:00
Kartikaya Gupta 6897e7e090 Bug 1248078 - Remove the dedicated scroll acknowledgement message. r=botond
MozReview-Commit-ID: 6QGFiZ8QGl7
2016-04-18 12:31:54 -04:00
Botond Ballo 5753e3da83 Bug 1259301 - Remove GeckoContentController::RequestFlingSnap(). r=kats
MozReview-Commit-ID: DRntzo1hohv

--HG--
extra : rebase_source : 5e9c5c43202fb48c5cad5ab95b05fd0bc1be021e
2016-03-30 21:11:00 -04:00
Kartikaya Gupta 6b4995e92f Bug 1223296 - Fire a Gesture:SingleTap message to browser.js even on the C++ APZ codepath. r=rbarker
--HG--
extra : commitid : GvuSYOt7CxQ
2015-11-13 15:10:52 -05:00
Kartikaya Gupta 8531f6e36c Bug 898075 - Remove the mozbrowserasyncscroll event from Gecko. r=botond,kanru,sicking
--HG--
extra : commitid : 2hGYJD6eHff
2015-11-11 10:17:47 -05:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Randall Barker cba97f4dd0 Bug 1188225 - Implement ChromeProcessController::HandleDoubleTap. r=botond
--HG--
extra : rebase_source : 305df059dcdaa23962a0864036e7fd8b179c1c42
2015-08-13 18:26:00 -04:00
Bobby Holley 97b9240b34 Bug 1188696 - Hoist nsRefPtr.h into MFBT. r=froydnj 2015-07-29 10:44:59 -07:00
Kartikaya Gupta 1d81392d69 Bug 1163832 - Add an API to flush pending APZ repaint requests and dispatch a notification upon completion. r=botond 2015-06-19 08:25:41 -04:00
Kartikaya Gupta d216c84c8b Bug 1055557 - Ensure the right presShell resolution is used in ApplyCallbackTransform for fennec-apz scenarios. r=botond 2015-06-17 12:34:42 -04:00
Botond Ballo 4958aa7c1b Bug 1158424 - Rename FrameMetrics::mIsRoot to mIsRootContent. r=kats
--HG--
extra : rebase_source : a082680d842dd182d899f637200ce911cc3c480d
extra : source : 8b67f0b8dc96cebe9a58356708b23bebd8532134
2015-06-08 16:01:26 -04:00
Kartikaya Gupta b54dc47f24 Back out 2 csets for bug 1163832 for emulator crashtest failures. r=me
CLOSED TREE
2015-05-22 07:51:55 -04:00
Kartikaya Gupta 86ed888daa Bug 1163832 - Add an API to flush pending APZ repaint requests and dispatch a notification upon completion. r=botond 2015-05-22 06:42:08 -04:00
Andrea Marchesini ade2831035 Bug 1156632 - Remove unused forward class declarations - patch 6 - the rest of the tree, r=ehsan 2015-04-22 08:29:24 +02:00
David Anderson fba0c47c1f Add APZ support for test.mousescroll callbacks. (bug 1142866 part 3, r=kats) 2015-03-22 00:42:26 -07:00
Ehsan Akhgari 883849ee32 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Kartikaya Gupta bd98be2c55 Bug 1144831 - Remove the HandleLongTapUp callback and just use HandleSingleTap instead. r=botond 2015-03-20 14:26:52 -04:00
David Anderson 56b490ea76 Bug 1139845 - Avoid crashing in ChromeProcessController if the view is null. r=mats 2015-03-06 13:06:25 -05:00
Kearwood (Kip) Gilbert 8d1fcc4892 Bug 945584: Part 6 - Implementation of scroll snapping (v10 Patch), r=roc, r=kats
- Implemented CSS scroll snapping (http://dev.w3.org/csswg/css-snappoints/)

--HG--
extra : rebase_source : e100b6a2cbc00321d6d1083d12a99213e34d5f9d
2015-02-19 15:53:30 -08:00
Botond Ballo 6f8bf1747c Bug 943537 - In the GeckoContentController interface, take the modifiers for tap events in 'widget modifier' format rather than 'DOM modifier' format. r=kats,mbrubeck
--HG--
extra : rebase_source : f931503087e1a13725c9a3a398d49111e060e76e
2015-03-02 16:38:07 -05:00
Botond Ballo 3d67dfb02e Bug 1127066 - Implement ChromeProcessController::HandleLongTapUp(). r=kats
--HG--
extra : source : 5857a51daa23da0090b92467cc7fe5c23354b981
2015-02-09 18:20:15 -05:00
Botond Ballo 65a2a78c03 Bug 1127066 - Use (nsBaseWidget's) APZEventState in ChromeProcessController. r=kats
--HG--
extra : source : 65d5458b6f6af13ebaf424ccef87d4a0654646c4
2015-02-09 19:06:06 -05:00
Botond Ballo 5560fcf705 Bug 1005815 - Basic implementation of ChromeProcessController::HandleSingleTap. r=kats 2015-01-21 19:47:05 -05:00
Kartikaya Gupta 842ba52546 Bug 1124452 - Ensure the widget continues to be destroyed on the main thread. r=BenWa
--HG--
extra : rebase_source : 012cfddceefea66299e3476d2a4ae831a586ad1c
2015-01-29 12:57:55 -05:00
Botond Ballo 88c75539b0 Bug 1124452 - Set a displayport for the root scroll frame of the root document in the chrome process. r=kats,tn
--HG--
extra : rebase_source : 08f10c1c81888d1ce4164f8609aa86fd3c93a4f8
2015-01-28 13:25:53 -05:00
Botond Ballo 0bbcf4d17c Bug 1124452 - Store the main thread's MessageLoop in ChromeProcessController. r=kats
--HG--
extra : rebase_source : 9c163795564dbe2fae1fd3a6e371b6455277d811
2015-01-14 18:03:43 -05:00
Botond Ballo 2c43a0247a Bug 1124452 - Store the widget in ChromeProcessController. r=kats
--HG--
extra : rebase_source : 007affed79a563eee52b25c21f8c1f8eda980542
2015-01-14 18:46:37 -05:00
David Anderson 8226f0cd2e Create a common chrome-process GeckoContentController. (bug 1110540 part 2, r=kats) 2014-12-15 01:49:48 -08:00