83 Commits

Author SHA1 Message Date
Tae Hyung Kim
1a0b03cb25
Sliver Cross Axis Group (#123862)
This widget implements the ability to place slivers side by side in a single ScrollView so that they scroll together. The design document for `SliverCrossAxisGroup` can be found [here](https://docs.google.com/document/d/1e2bdLSYV_Dq2h8aHpF8mda67aOmZocPiMyjCcTTZhTg/edit?resourcekey=0-Xj2X2XA3CAFae22Sv3hAiA).

Fixes #56756.
2023-04-28 23:41:58 +00:00
Kenzie Davisson
fe309e3415
Create service extension consts for rendering lib (#111149) 2022-09-07 17:54:54 -07:00
Alexandre Ardhuin
ccd33631e3
enable combinators_ordering (#107847) 2022-07-18 22:04:07 +00:00
chunhtai
efb9368573
Supports global selection for all devices (#95226)
* Support global selection

* addressing comments

* add new test

* Addressing review comments

* update

* addressing comments

* addressing comments

* Addressing comments

* fix build
2022-05-24 13:53:55 -07:00
Tong Mu
fa06b34024
Refactor: Move mouse cursor classes to "services" package (#77751) 2021-03-11 19:45:04 -08:00
Michael Goderbauer
7a3a29e71f
Fixes Intrinsics for RenderParagraph and RenderWrap (#70656) 2020-11-20 17:24:58 -08:00
Ian Hickson
8a6a76a334
migrate rendering to nullsafety (#64621) 2020-08-27 16:38:10 -07:00
Alexandre Ardhuin
4d7525f05c
Opt out nnbd in packages/flutter (#59186)
* add language version 2.8 in packages/flutter

* enable non-nullable analyzer flag
2020-06-11 14:11:30 +02:00
Tong Mu
7f8cb7f830
System mouse cursors (#54171)
Adds the basic framework for the mouse cursor system. 

* Adds MouseRegion.cursor
* Adds SystemMouseCursors
* Adds mouseCursor to some widgets
2020-05-11 13:34:20 -07:00
Tong Mu
bbc0cc07f6
Move mouse_tracking.dart to rendering (#52781)
* Move mouse_tracking to rendering

* Move test
2020-03-20 11:22:02 -07:00
Kate Lovett
b0b8b91b97
RenderProxySliver (#45942) 2019-12-16 12:37:57 -08:00
Ian Hickson
449f4a6673
License update (#45373)
* Update project.pbxproj files to say Flutter rather than Chromium

Also, the templates now have an empty organization so that we don't cause people to give their apps a Flutter copyright.

* Update the copyright notice checker to require a standard notice on all files

* Update copyrights on Dart files. (This was a mechanical commit.)

* Fix weird license headers on Dart files that deviate from our conventions; relicense Shrine.

Some were already marked "The Flutter Authors", not clear why. Their
dates have been normalized. Some were missing the blank line after the
license. Some were randomly different in trivial ways for no apparent
reason (e.g. missing the trailing period).

* Clean up the copyrights in non-Dart files. (Manual edits.)

Also, make sure templates don't have copyrights.

* Fix some more ORGANIZATIONNAMEs
2019-11-27 15:04:02 -08:00
amirh
debd50158e
Introduce an AndroidView widget and a RenderAndroidView render object. (#19565)
RenderAndroidView is responsible for sizing and displaying an embedded
Android view.
AndroidView is responsible for creating and disposing the Android view
and is using RenderAndroidView to display it.
2018-07-20 15:58:55 -07:00
xster
e64d44ca78
CupertinoPicker part 1 - create a generic ListWheelScrollView (#13783)
* Create ListWheelScrollView

* fix missing doc

* tweak docs a bit

* fix imports

* Add some tests

* review

* review and transform tests

* fix test

* repatch lost 977701cf69

* review

* Review
2018-01-22 12:02:32 -08:00
Ian Hickson
44e228eb9e
Move image logic from services/ to painting/. (#13409)
This allows the scheduler library to depend on the services library
and the painting library to depend on the scheduler library without
the services library having to depend on the scheduler library.

While I was at it I also cleaned up some of the binding logic: the
licenses logic can now be overridden (and the test library does so),
and the image cache can now be overridden as well.
2017-12-07 14:53:08 -08:00
Yegor
ffb24eda56
Accessibility API for CustomPainter (#13313)
Summary:

- Add `key` field to `SemanticsNode`, while moving key into `foundation` library so it can be used by the render layer.
- Introduce `SemanticsProperties` and move many of the `Semantics` fields into it.
- Introduce `CustomPaintSemantics` - a `SemanticsNode` prototype created by `CustomPainter`.
- Introduce `semanticsBuilder` and `shouldRebuildSemantics` in `CustomerPainter`

**Breaking change**

The default `Semantics` constructor becomes non-const (due to https://github.com/dart-lang/sdk/issues/20962). However, a new `const Semantics.fromProperties` is added that still allowed creating constant `Semantics` widgets ([mailing list announcement](https://groups.google.com/forum/#!topic/flutter-dev/KQXBl2_1sws)).

Fixes https://github.com/flutter/flutter/issues/11791
Fixes https://github.com/flutter/flutter/issues/1666
2017-12-04 19:49:14 -08:00
Greg Spencer
3541ad0a64
Add an UnconstrainedBox and factor out debug overflow indicator. (#12856)
UnconstrainedBox will allow its child to size itself as if it had no constraints, and then attempt to fit around that object, until its own constraints are exceeded, in which case it will clip and display an overflow warning.

I also factored out DebugOverflowIndicator, which will draw overflow indicators on containers which overflow but aren't expected to.
2017-11-08 20:15:06 -08:00
amirh
616a2ad6da
Move semantics stuff from rendering to a top-level semantics/ library (#12793) 2017-11-02 17:38:28 -07:00
Mikkel Nygaard Ravn
005a8e4c8e
Add backend texture support (eg video, camera) (#12525) 2017-11-02 14:23:28 +01:00
amirh
6161d54eb6
Move AbstractNode to lib/foundation. (#12789)
(in preparation for moving the semantics stuff out of rendering)
2017-11-01 09:24:30 -07:00
Adam Barth
a30b109c9e Add RTL support to ListBody (#12414)
Fixes #11930
2017-10-05 09:45:41 -07:00
Ian Hickson
9d59fb0c30 Split TableBorder from Border (#12104)
This will enable both to be RTL'ed.

Also, factor out common border painting code into paintBorder.
Also, make Border paint uniform non-rounded borders using drawRect.
Also, add some documentation about an issue that wasted an hour of my life.
Also, factor out all the border painting code into TableBorder.paint.
2017-09-15 14:08:44 -07:00
Jacob Richman
f2ab841ac4 Add DiagnosticLevel used to filter how verbose toStringDeep output for (#11995)
Diagnostics object is.
2017-09-11 19:01:05 -07:00
Alexandre Ardhuin
610955f81d upgrade to linter-0.1.30 (#9297)
* upgrade to linter-0.1.30

* add prefer_is_empty lint
* add directives_ordering lint
* add no_adjacent_strings_in_list lint
* add no_duplicate_case_values lint
* add prefer_collection_literals lint
* add prefer_const_constructors lint
* add prefer_contains lint
* add prefer_initializing_formals lint
* add unnecessary_null_aware_assignments lint
* add unnecessary_null_in_if_null_operators lint
2017-04-08 08:43:19 +02:00
Adam Barth
882c992b17 Add Wrap (#9225)
The Wrap widget is a layout that places children in a run in order along its
main axis until it runs out of space. At that point, starts placing children in
a new run that is adjacent in the cross axis.

Fixes #8831
2017-04-05 16:22:32 -07:00
Ian Hickson
1b948cbb85 Rename SliverFill to SliverFillViewport and add SliverFillRemaining (#9194) 2017-04-05 12:27:59 -07:00
Alexandre Ardhuin
8c043d06de fix lints for directives_ordering rule (#8382) 2017-02-23 13:37:26 -08:00
Adam Barth
addcb1f7af Move RenderViewport to its own file (#8310)
It doesn't need to be in the same file as RenderSliver.
2017-02-21 13:13:02 -08:00
Adam Barth
90574b0478 Remove Scrollable1 (#8225)
All the clients have migrated to Scrollable2.
2017-02-16 16:41:24 -08:00
Adam Barth
527fddc63f Port EditableText to Scrollable2 (#8167) 2017-02-16 13:23:56 -08:00
Adam Barth
1773e47b03 Remove a number of old scrolling widgets: (#8212)
- ScrollableList
 - ScrollableLazyList
 - LazyBlock
 - MaterialList

Clients should use ListView instead.
2017-02-15 21:30:51 -08:00
Adam Barth
3ca921610c Remove ScrollableGrid (#8020)
All the clients have migrated to GridView.  Also, remove RenderGrid,
which isn't needed by GridView.
2017-02-08 22:08:56 -08:00
Ian Hickson
b6aec82e1b AppBar -> PersistentHeader (#7899) 2017-02-06 10:29:26 -08:00
Ian Hickson
471e91d46f SliverBlock->SliverList (#7872) 2017-02-03 17:14:00 -08:00
Adam Barth
f56c5a3651 Move ViewportOffset to its own file (#7840)
There aren't any interdependencies with the rest of sliver.dart, and that file
is already quite complex.
2017-02-02 17:02:29 -08:00
Adam Barth
695302029f Revert "Revert "Add SliverGrid and ScrollGrid"" (#7780) 2017-02-01 10:18:48 -08:00
Ian Hickson
32784d35f9 Revert "Add SliverGrid and ScrollGrid" (#7769) 2017-01-31 17:34:02 -08:00
Adam Barth
9119969ad2 Add SliverGrid and ScrollGrid (#7745)
This patch adds grid supports to slivers and introduces a ScrollGrid
convenience class for making the common types of scrollable grids.

This patch also deploys ScrollGrid in an example in the Flutter Gallery.
2017-01-30 17:27:51 -08:00
Adam Barth
098af18393 Add SliverList (#7727)
Add SliverList

A SliverList is a linear layout of box children in a viewport that all
have a common, fixed extent along the scroll axis. The layout is similar
to a SliverBlock but more efficient.
2017-01-30 00:40:50 -08:00
Ian Hickson
9ff2e978cd Sliver Padding (#7628) 2017-01-25 15:00:57 -08:00
Ian Hickson
1426ef9944 Appbar slivers. (#7631) 2017-01-25 13:18:57 -08:00
Ian Hickson
f683abd757 Sliver Block (#7618) 2017-01-24 15:06:53 -08:00
Ian Hickson
e82b18d47b The core RenderSliver protocol. (#7370)
This implements a new RenderViewport2 class to replace the existing
RenderViewport class.
2017-01-09 14:49:14 -08:00
Adam Barth
27970bd82d Remove package:flutter/cassowary.dart (#7350)
We didn't end up using this mechanism.
2017-01-05 13:08:43 -08:00
Ian Hickson
9c1a24fa72 Reexport meta from foundation. (#6938) 2016-11-18 21:22:32 -08:00
Adam Barth
67f97b455d Remove ChildView widget (#6195)
This widget now lives in Mozart:

https://fuchsia.googlesource.com/mozart/+/master/lib/flutter/child_view.dart
2016-10-03 23:35:43 -07:00
Dragoș Tiselice
6e9bbca401 Added AnimatedSize. (#5260)
Added a widget that implicitly animates the size of it child.
2016-08-18 11:03:21 -07:00
Adam Barth
c27a9e8292 Add offstage attribute to OffStage (#5059)
Also, add a few more debugging flags.
2016-07-27 12:26:07 -07:00
Adam Barth
14f42a6a48 Improve test coverage in rendering.dart (#4775) 2016-06-27 17:38:53 -07:00
Seth Ladd
f373617a76 add import guidance to library-level docs (#3530)
* add import guidance to library-level docs

* add import docs to other packages

* fix review comment

* clarify which libraries aren't meant to be directly imported
2016-04-27 11:33:00 -07:00