Commit Graph

89 Commits

Author SHA1 Message Date
Masatoshi Kimura
fd136e7327 Bug 1358758 - Use CSSIntRect for nsIFrame::GetScreenRect. r=kats
MozReview-Commit-ID: KXPL1ERbFDa
2017-04-25 07:33:13 +09:00
Ryan Hunt
6d1911760b Bug 1355570 - Update bindings and WebRender display list building for gradient tiling r=jrmuizel
MozReview-Commit-ID: KwhCBc8XxCN
2017-04-12 14:20:52 -05:00
Botond Ballo
4d2a056505 Bug 1321885 - Add CSSPixel::FromAppUnits(nscoord) and CSSPixel::ToAppUnits(CSSCoord). r=kats
MozReview-Commit-ID: 8V9gjVf35bC
2016-08-24 13:42:57 -04:00
Matt Woodrow
71dfeb349f Bug 1317862 - Part 3: Build TextLayers if enabled. r=mstange 2016-11-24 18:11:29 +13:00
Markus Stange
b0028594c4 Bug 1315113 - Fix coordinate space confusion in gradient rendering code. r=mattwoodrow
MozReview-Commit-ID: 38Zk9qWNyoX
2016-11-09 13:53:33 -05:00
Botond Ballo
cb84948804 Bug 1219296 - Scroll snap directly in APZ instead of going through the main thread. r=kats
MozReview-Commit-ID: 3qAdSWXwOsu
2016-03-28 18:36:02 -04:00
Jonathan Kew
657b233fdc 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
3e2d1d9edc 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
22e5c77983 Bug 1236750 - Introduce a new unit type CSSTransformedLayerPixel. r=kats 2016-01-06 18:52:45 -05:00
Botond Ballo
8a5f7c05e3 Bug 1069417 - Add typedefs for commonly used typed matrices. r=kats 2015-11-30 19:52:33 -05:00
Nicholas Nethercote
b3312ed385 Bug 1228125 (part 1) - Remove nsIWidget::GetBoundsUntyped(). r=botond.
This requires adding a new overloading of LayoutDevicePixel::ToAppUnits and a
new PixelCastJustification: LayoutDeviceIsParentLayerForRCDRSF.
2015-11-25 20:32:47 -08:00
Botond Ballo
0b673c5e79 Bug 1222661 - Replace ToUnknown(obj) and FromUnknown(obj) with obj.ToUnknown*() and FromUnknown*(obj). r=nical 2015-11-09 17:49:46 -05:00
Botond Ballo
60a5318264 Bug 1222661 - Replace FromUntyped(obj) calls with FromUnknown*(obj). r=nical 2015-11-09 18:22:25 -05:00
Botond Ballo
db5d15db66 Bug 1222661 - Replace ToUntyped(obj) calls with obj.ToUnknown*(). r=nical 2015-11-06 22:13:40 -05:00
Randall Barker
8a7604804e 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.
2015-11-10 11:32:40 -05:00
Botond Ballo
abbcf770b6 Bug 1220923 - Make nsIntRegion a typedef for IntRegionTyped<UnknownUnits>. r=nical 2015-11-04 11:49:49 -05:00
Botond Ballo
e027f4b5e9 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.
2015-09-28 20:13:16 -04:00
Kartikaya Gupta
23f4f22ded Bug 1189837 - Subtract scrollbars in LD pixels rather than CSS pixels. r=mstange 2015-08-05 14:39:42 -04:00
Botond Ballo
cd15cec315 Bug 1131359 - Port the double-tap-to-zoom functionality of BrowserElementPanning.js to C++. r=kats 2015-07-27 14:07:58 -04:00
Seth Fowler
d8ebf7a220 Bug 1151359 (Part 1) - Predict the size of nsImageFrame images before drawing. r=tn 2015-07-19 19:30:35 -07:00
Birunthan Mohanathas
a29151dc87 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
a645864613 Bug 1167882 - Add utility functions MaxScaleRatio() and MinScaleRatio() to Units.h. r=kats 2015-05-27 16:53:01 -04:00
Seth Fowler
192e98ad2e 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
c42671bca1 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
76c9d4c6d0 Bug 1149215 - Remove nsLayoutUtils::GetWholeImageDestination that use unitless nsIntSize. r=dholbert 2015-04-03 19:48:12 +00:00
Botond Ballo
1928a93feb Bug 1043013 - Introduce IntRegionTyped. r=jrmuizel 2015-03-16 13:42:15 -04:00
Botond Ballo
4b543c41d0 Bug 1036967 - Introduce ScaleFactors2D. r=kats,Bas 2015-03-06 13:53:47 -05:00
Daniel Holbert
dbec237c7c (no bug) fix typo ('decleration') in a comment in Units.h. comment-only, DONTBUILD 2014-12-05 11:00:43 -08:00
David Anderson
01023f9453 Add APZ handling for desktop scroll wheel events. (bug 1086162 part 1, r=kats) 2014-11-17 20:56:18 -08:00
Kartikaya Gupta
838d1e49cb Bug 1090398 - Small refactoring that adds ParentLayerPixel::ToUntyped. r=botond 2014-11-14 07:40:14 -05:00
Botond Ballo
8e10bf2d87 Bug 1055741 - Unify the 'local Screen' and 'ParentLayer' coordinate systems. r=kats 2014-11-10 14:35:11 -05:00
Botond Ballo
4eddb9ef90 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
5ab7b878a7 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
52d5b03991 Backed out changeset a96930f1e26b (bug 1055741) 2014-11-13 11:47:31 +01:00
Botond Ballo
031c8b1c39 Bug 1055741 - Unify the 'local Screen' and 'ParentLayer' coordinate systems. r=kats 2014-11-10 14:35:11 -05:00
Botond Ballo
9b6d326e37 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
06951da292 bug 1096131 clarify docs for LayoutDevicePixels and LayerPixels r=kats f=tn 2014-11-08 12:39:42 +13:00
Botond Ballo
14f53e2065 Bug 1066259 - Fix operators for multiplying/dividing a Coord by a Scale. r=kats 2014-09-12 17:46:05 -04:00
Botond Ballo
72cc1ef7f3 Bug 1057528 - Allow multiplying/dividing CoordTyped by ScaleFactor. r=kats 2014-08-22 17:26:46 -04:00
Benoit Girard
1acbaee0d2 Bug 1010584 - Part 1: Introduce RenderTargetPixel. r=mwoodrow 2014-07-30 14:36:15 -04:00
Botond Ballo
29e678a8e8 Bug 923512 - Introduce strongly-typed coordinate classes. r=kats,Bas 2014-08-19 13:08:16 -04:00
Kartikaya Gupta
094f2ddc1c Bug 1043644 - Use the content viewer bounds instead of the view bounds if available. r=tn 2014-07-29 14:50:48 -04:00
Botond Ballo
e225a7b1a9 Bug 1022381 - Enforce that strongly-typed geometric classes are used with a proper coordinate system tag type. r=kats 2014-06-10 12:43:52 -04:00
Kartikaya Gupta
7ec4e4cf22 Bug 1018387 - Update various variables and comments to reflect the fact that the values are in layer pixels and not layout device pixels. r=Cwiiis 2014-06-09 14:02:39 -04:00
Markus Stange
3ebf283c83 Bug 944938 - Pass scroll events to the APZC tree manager on the async event thread. r=smichaud 2014-06-07 00:49:59 +02:00
Kartikaya Gupta
9870c2a6d0 Bug 948377 - Remove unwanted rounding in CalculateCompositedRectInCssPixels; add a CalculateCompositedSizeInCssPixels also. r=botond 2014-03-28 10:36:47 -04:00
Botond Ballo
1d877f8d82 Bug 935219 - Fix composition bounds calculation and APZC hit testing (again). r=kats,tn 2014-03-10 17:56:59 -04:00
Chris Lord
0231f47b50 Bug 931823 - Fix calculation of tiled update data and convert to typed units. r=kats,botond
Various changes to FrameMetrics and such have causes the tile coherency checks
to end up with nonsense values, meaning updates are always happening a tile at
a time.

This fixes the calculation of those values, adds some documentation and
converts a large part of it to using typed units, to make it easier to
understand what's happening.
2013-11-27 17:33:27 +00:00
Kartikaya Gupta
d0e4c28f1f Bug 923431 - Kill ScreenToScreenScale. r=botond 2013-10-10 12:21:55 -04:00
Ehsan Akhgari
30faed685a Bug 919355 - Part 2: Don't #include nsDeviceContext.h in Units.h; r=roc 2013-09-23 07:55:35 -04:00