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

100 Коммитов

Автор SHA1 Сообщение Дата
Henri Sivonen decc78f432 Bug 1530661 - Make APZ report the per LayersId layer-to-screen transform matrices to the chrome process. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D22082

--HG--
extra : moz-landing-system : lando
2019-03-09 20:33:17 +00:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Botond Ballo 59adc89262 Bug 1467873 - Fix FrameMetrics::CalculateCompositedRectInCssPixels(). r=kats
- Fix the implementation to return a numerically correct result
  - Change call sites that should have instead been using
    CalculateCompositedSizeInCssPixels(), to do so
  - Rename and document to emphasize that the returned rect is in the
    CSS pixels of the content surrounding the scroll frame

MozReview-Commit-ID: GCPbA1k88rz

--HG--
extra : rebase_source : f5b937936fb84b3ae414d6cf0250add4078a9d53
2018-06-09 16:33:26 -04:00
Mats Palmgren bae2d6f225 Bug 1461222 part 1 - Make GetWidgetBorder return LayoutDeviceIntMargin. r=emilio 2018-05-17 17:30:35 +02:00
Botond Ballo b4385a3fda Bug 1442767 - Rename Box to RectAbsolute (Gecko changes). r=kats
MozReview-Commit-ID: 1wrzwQw8bdx

--HG--
rename : gfx/src/nsCoordBox.h => gfx/src/nsRectAbsolute.h
extra : rebase_source : ec71a9add57c07887cb37f2d105390072e13d98d
2018-03-05 18:08:18 -05:00
Botond Ballo 82e944293f Bug 1434250 - Infrastructure for working with Box types in Gecko code. r=kats
MozReview-Commit-ID: 5fbTj6vwOwu

--HG--
extra : rebase_source : d9ed5a4c1e75426b612290050f4863b9bb7adc37
2018-02-07 12:52:37 -05:00
Jeff Muizelaar faa4cd1783 Bug 1410550. Allow updating a dirty rect of a blob image. r=kats 2017-10-24 18:11:04 -04:00
Milan Sreckovic 650410a90c Bug 1387514: Upgrade BaseRect (derived classes) width and height direct member variable use to instead use Width()/SetWidth() and Height()/SetHeight() in layout/*. r=dholbert
MozReview-Commit-ID: AfAbr74e1Yh

--HG--
extra : rebase_source : d684d4f8126fbe47eb31eba9923fdd37a35246bf
2017-08-14 08:30:04 -04:00
Kartikaya Gupta 1c54bb2347 Bug 1377090 - Make the Matrix class templated so we can instantiate it with a double type. r=bas
This extracts a BaseMatrix template of which Matrix is now a particular
specialization. The BaseMatrix allows us to reuse the same code for
floats and doubles, much like the other "base" classes (BasePoint,
BaseRect, etc.).

MozReview-Commit-ID: HO7bA83S9E0

--HG--
extra : rebase_source : dcd84d9a978cdea00bb54eb11eefcca9c6635901
2017-07-05 11:18:48 -04:00
Matt Woodrow eafc8e49e9 Bug 1373335 - Make sure we clip the opaque region in render target coordinate space, since complex transforms mean that we can't always have a rectangular representation of clips in layer space. r=mstange 2017-06-22 12:41:16 +12:00
Botond Ballo ae4b8838b4 Bug 1352863 - Add a CoordOf metafunction that maps point and rect types to their coordinate type. r=kats
The approach taken is to implement the metafunction by specialization as usual,
and then wrap it into an alias template. This avoids having to write "typename"
and "::Type" at the use site.

MozReview-Commit-ID: VLOxb4Gu0z

--HG--
extra : rebase_source : 65e4c255eeb5646e351692e6d4f91d3e6c8e5789
2017-05-19 19:54:25 -04:00
Masatoshi Kimura a4c9e326d4 Bug 1358758 - Use CSSIntRect for nsIFrame::GetScreenRect. r=kats
MozReview-Commit-ID: KXPL1ERbFDa

--HG--
extra : rebase_source : 263b18d1736b09bb62d914f066481281966b288c
2017-04-25 07:33:13 +09:00
Ryan Hunt bfa4ee5cb2 Bug 1355570 - Update bindings and WebRender display list building for gradient tiling r=jrmuizel
MozReview-Commit-ID: KwhCBc8XxCN

--HG--
extra : rebase_source : a5608b3388528ae1bd39be5f2fd9b2094193d46c
extra : source : c244293944bc163a742ef1b6f4225a751db5f796
extra : histedit_source : 860c2dc0fd3f8a5f35aea9b1ca15218d64208b65%2C803c9c5d3e85ee73fda2e3ccf504426b4798aecb
2017-04-12 14:20:52 -05:00
Botond Ballo 6aa36c0f99 Bug 1321885 - Add CSSPixel::FromAppUnits(nscoord) and CSSPixel::ToAppUnits(CSSCoord). r=kats
MozReview-Commit-ID: 8V9gjVf35bC

--HG--
extra : rebase_source : 7fc17e00fddbdbe4856c08a78729e8467a1f9571
2016-08-24 13:42:57 -04:00
Matt Woodrow 3de8001441 Bug 1317862 - Part 3: Build TextLayers if enabled. r=mstange 2016-11-24 18:11:29 +13:00
Markus Stange 163908bf5a Bug 1315113 - Fix coordinate space confusion in gradient rendering code. r=mattwoodrow
MozReview-Commit-ID: 38Zk9qWNyoX

--HG--
extra : rebase_source : b62a8af0c774846043f7a819debfdb5340402600
2016-11-09 13:53:33 -05:00
Botond Ballo a2ee8407e4 Bug 1219296 - Scroll snap directly in APZ instead of going through the main thread. r=kats
MozReview-Commit-ID: 3qAdSWXwOsu

--HG--
extra : rebase_source : 1c746af11c620e4bc27d1163980db361c239ae5e
2016-03-28 18:36:02 -04:00
Jonathan Kew 46b5136c09 Bug 890156 - patch 6 - Update window placement code to work with desktop pixels, for per-monitor DPI support on Windows. r=emk 2015-12-03 13:19:50 +00:00
Jonathan Kew 33dd940e87 Bug 890156 - patch 0.0 - Declare a DesktopPixel type in Units.h, to be used for the coordinate system used by the host system to manage the desktop space. r=kats 2015-11-25 19:11:54 +00:00
Botond Ballo b6ced4a261 Bug 1236750 - Introduce a new unit type CSSTransformedLayerPixel. r=kats
--HG--
extra : source : 9bd0997f6f348d4955cc7e0b476aed30f7a06948
2016-01-06 18:52:45 -05:00
Botond Ballo 62ee05c5f0 Bug 1069417 - Add typedefs for commonly used typed matrices. r=kats
--HG--
extra : rebase_source : 03dbc8c1ef79d105768bd083992ff14b21e5087f
extra : source : 7006935e03533321513fe5aa64dc00040117f4d1
2015-11-30 19:52:33 -05:00
Nicholas Nethercote e60696c015 Bug 1228125 (part 1) - Remove nsIWidget::GetBoundsUntyped(). r=botond.
This requires adding a new overloading of LayoutDevicePixel::ToAppUnits and a
new PixelCastJustification: LayoutDeviceIsParentLayerForRCDRSF.

--HG--
extra : rebase_source : b6d044619918818815b40c1173aa4e0551db28a1
2015-11-25 20:32:47 -08:00
Botond Ballo a224f7b777 Bug 1222661 - Replace ToUnknown(obj) and FromUnknown(obj) with obj.ToUnknown*() and FromUnknown*(obj). r=nical
--HG--
extra : rebase_source : db0f7cfb9ce17492e9d13ee2681e98767ae861a6
extra : source : 2265b5592e39033d22d902d44ba73cba719b8cd0
2015-11-09 17:49:46 -05:00
Botond Ballo 6a70e1aa18 Bug 1222661 - Replace FromUntyped(obj) calls with FromUnknown*(obj). r=nical
--HG--
extra : rebase_source : c1afe8560b838e1a3be0ce50847861b1815d3dc9
extra : source : d649f163c825736efaf3ac3ad73040beeb48a6ef
2015-11-09 18:22:25 -05:00
Botond Ballo a592a77364 Bug 1222661 - Replace ToUntyped(obj) calls with obj.ToUnknown*(). r=nical
--HG--
extra : rebase_source : 1cab46638599d8c4e6183c42a6fa9d41702392cb
extra : source : cabc28a2200b9b4e5e137d331ee5b86b3c09f065
2015-11-06 22:13:40 -05:00
Randall Barker 658205dc3e Bug 1220925 - Event::GetScreenCoords should return CSSIntPoint instead of LayoutDevicePoint. r=botond
This patch converts Event::GetScreenCoords to return the same type as Event::GetClientCoords
and Event::GetPageCoords which is a CSSIntPoint. When the function was originally updated it
was switched to returning LayoutDevicePoint. Additionally the redundant functions
UIEvent::CalculateClientPoint and UIEvent::CalculateScreenPoint were removed.

--HG--
extra : commitid : 9BNUzLVMIZ6
2015-11-10 11:32:40 -05:00
Botond Ballo 5bf85e9f9d Bug 1220923 - Make nsIntRegion a typedef for IntRegionTyped<UnknownUnits>. r=nical
--HG--
extra : source : 1f371f014048ed4c3c25095233fea927311a7e23
2015-11-04 11:49:49 -05:00
Botond Ballo ea3c8de6e0 Bug 1205511 - Add overloaded operators for multiplying and dividing an IntPointTyped by a ScaleFactor[2D]. r=kats
The overloads return PointTyped, leaving it to the caller to round or truncate
if desired, much like the existing Rect counterparts.

--HG--
extra : source : 4cbb1eaa1e94777049ce83c24ea1d46aeb731ab1
2015-09-28 20:13:16 -04:00
Kartikaya Gupta db02ba5a05 Bug 1189837 - Subtract scrollbars in LD pixels rather than CSS pixels. r=mstange
--HG--
extra : commitid : 2bn2Ieqd1LP
2015-08-05 14:39:42 -04:00
Botond Ballo fac300df40 Bug 1131359 - Port the double-tap-to-zoom functionality of BrowserElementPanning.js to C++. r=kats
--HG--
extra : rebase_source : d897a9ececcae556805fbe68e8a3b6cf6d8fbbab
2015-07-27 14:07:58 -04:00
Seth Fowler faeeebcacd Bug 1151359 (Part 1) - Predict the size of nsImageFrame images before drawing. r=tn 2015-07-19 19:30:35 -07:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Botond Ballo 9f96d5973b Bug 1167882 - Add utility functions MaxScaleRatio() and MinScaleRatio() to Units.h. r=kats
--HG--
extra : source : 17698f57d1cf14958e1ce3006abe5d9671cd18a7
2015-05-27 16:53:01 -04:00
Seth Fowler d1dffb1a14 Bug 1150774 (Part 1) - Add helpers to simplify using typed units in ConfigureLayer. r=botond 2015-04-07 18:55:28 -07:00
Daniel Holbert 9713645c88 Bug 1149222 part 2 - Make nsSVGImageFrame::PaintSVG use LayoutDeviceSize & LayoutDevicePixel::ToAppUnits, when setting up its dest-rect. r=mats 2015-04-03 19:48:12 +00:00
Mats Palmgren 035bf0bc77 Bug 1149215 - Remove nsLayoutUtils::GetWholeImageDestination that use unitless nsIntSize. r=dholbert 2015-04-03 19:48:12 +00:00
Botond Ballo d70b1ea0e6 Bug 1043013 - Introduce IntRegionTyped. r=jrmuizel
--HG--
extra : rebase_source : 109fe53588254256b5575e082f709a0cb71fe877
extra : source : d7db1f0cb75b689316da6671bed37d496d17e90c
2015-03-16 13:42:15 -04:00
Botond Ballo 4f5da1dd25 Bug 1036967 - Introduce ScaleFactors2D. r=kats,Bas
--HG--
extra : rebase_source : e137820f9992c23f65aab1e40fb7390c9125b04a
extra : source : 1f79257b3df7fb146a1d4f7248905e0ac88f89d0
2015-03-06 13:53:47 -05:00
Daniel Holbert 743e01cc0c (no bug) fix typo ('decleration') in a comment in Units.h. comment-only, DONTBUILD 2014-12-05 11:00:43 -08:00
David Anderson 028b163679 Add APZ handling for desktop scroll wheel events. (bug 1086162 part 1, r=kats) 2014-11-17 20:56:18 -08:00
Kartikaya Gupta aa17d0e26d Bug 1090398 - Small refactoring that adds ParentLayerPixel::ToUntyped. r=botond 2014-11-14 07:40:14 -05:00
Botond Ballo 1c1e4448a5 Bug 1055741 - Unify the 'local Screen' and 'ParentLayer' coordinate systems. r=kats 2014-11-10 14:35:11 -05:00
Botond Ballo c854025367 Bug 1076163 - Basic APZ support for css-driven resolution. r=kats,tn
This makes APZ behave nicely with most uses of a css transform:scale.

Summary of changes:
  - FrameMetrics::mCumulativeResolution now includes the css-driven resolution
    in addition to the pres-shell resolution.
  - Displayports are now stored in Screen pixels rather than Layer pixels.
    This is what we want anyways (as we'd like the displayport size to remain
    constant as a fraction of the screen size), but it was necessary to make
    this change as part of this patch because continuing to store them in
    Layer pixels in the presence of a css-driven resolution would have
    required a bunch of infrastructure to implement correctly.

Remaining work:
  - Layout painting a scrollable layer at a resolution different from the
    scale induced by the css transform causes problems. These will go away
    with bug 1076192.
  - Different resolutions on the x and y axes are not supported. This is
    tracked by bug 1039967.
2014-10-24 15:49:38 -04:00
Carsten "Tomcat" Book 8894f4319e Backed out changeset fbb9dc943109 (bug 1076163) for Android 4.0 Crashes on a CLOSED TREE 2014-11-13 11:47:57 +01:00
Carsten "Tomcat" Book 4b4108a4a9 Backed out changeset a96930f1e26b (bug 1055741) 2014-11-13 11:47:31 +01:00
Botond Ballo d766d4ca14 Bug 1055741 - Unify the 'local Screen' and 'ParentLayer' coordinate systems. r=kats
--HG--
extra : rebase_source : af7323668fb54079e121755660da2121bec3d76b
2014-11-10 14:35:11 -05:00
Botond Ballo 57adf459d4 Bug 1076163 - Basic APZ support for css-driven resolution. r=kats,tn
This makes APZ behave nicely with most uses of a css transform:scale.

Summary of changes:
  - FrameMetrics::mCumulativeResolution now includes the css-driven resolution
    in addition to the pres-shell resolution.
  - Displayports are now stored in Screen pixels rather than Layer pixels.
    This is what we want anyways (as we'd like the displayport size to remain
    constant as a fraction of the screen size), but it was necessary to make
    this change as part of this patch because continuing to store them in
    Layer pixels in the presence of a css-driven resolution would have
    required a bunch of infrastructure to implement correctly.

Remaining work:
  - Layout painting a scrollable layer at a resolution different from the
    scale induced by the css transform causes problems. These will go away
    with bug 1076192.
  - Different resolutions on the x and y axes are not supported. This is
    tracked by bug 1039967.
2014-10-24 15:49:38 -04:00
Karl Tomlinson e74a26e05e bug 1096131 clarify docs for LayoutDevicePixels and LayerPixels r=kats f=tn
--HG--
extra : rebase_source : c2e854a7af06abbfcd9bb95fef3ac241472b88b5
2014-11-08 12:39:42 +13:00
Botond Ballo 69bfa032a3 Bug 1066259 - Fix operators for multiplying/dividing a Coord by a Scale. r=kats
--HG--
extra : rebase_source : e6efebeac8b6628b24e1596fb5dc78187c64e325
2014-09-12 17:46:05 -04:00
Botond Ballo 2d925240e4 Bug 1057528 - Allow multiplying/dividing CoordTyped by ScaleFactor. r=kats 2014-08-22 17:26:46 -04:00