- 20 Nov, 2019 1 commit
-
-
chunhtai authored
-
- 16 Nov, 2019 1 commit
-
-
Ian Hickson authored
-
- 11 Nov, 2019 1 commit
-
-
Sam Rawlins authored
-
- 06 Nov, 2019 1 commit
-
-
Taufiq Rahman authored
-
- 29 Oct, 2019 1 commit
-
-
Pieter van Loon authored
Drag from the right is no more Longpress is now only 100ms instead of 500 Added optional duration field to longpressgesturerecognizer Added controller field to material scrollbar api Haptic feedback only triggers when scrollbar is fully expanded Added haptic feedback when releasing the scrollbar after dragging it
-
- 18 Oct, 2019 1 commit
-
-
Tong Mu authored
* Replace hard break of Layer.find/All with findAllAnnotations * Deprecate findAll
-
- 14 Oct, 2019 1 commit
-
-
Alexey Ivanov authored
-
- 11 Oct, 2019 1 commit
-
- 10 Oct, 2019 4 commits
-
-
Jonah Williams authored
-
Tong Mu authored
* Redesigns the algorithm with which MouseTracker keeps track of states and dispatches events.
-
Tong Mu authored
* Adds a new parameter bool opaque to MouseRegion * The same to RenderMouseRegion and AnnotatedRegionLayer * Add findAnnotations to Layer
-
Tong Mu authored
* Make sendMouseNotifications private
-
- 02 Oct, 2019 1 commit
-
-
Tong Mu authored
* Extracts the logic of TapGestureRecognizer into an abstract class BaseTapGestureRecognizer * Fixes ModalBarrier unable to dismiss when competing
-
- 26 Sep, 2019 2 commits
-
-
Kristin Ho authored
* MouseRegion documentation claimed that onEnter and onExit would track entry and exit regardless of whether the pointer was down or up * It did such, but when grabbing the value of `event.down` from the passed event, the value was always `false` * PointerEnterEvent and PointerExitEvent were overriding the value passed from PointerEvent in constructors, even if the value was true e.g. in invocations of .fromMouseEvent((PointerMoveEvent...)) * This change now passes the value along to PointerEnter/ExitEvents while providing it a default of false, and updates documentation Fixes #40637
-
Greg Spencer authored
This fixes the mouse hover code to not schedule frames with every mouse move. Before this, it would schedule a post frame callback, and then schedule a frame immediately, even if there was nothing that needed to be updated. Now it will schedule checks for mouse position updates synchronously, unless there's a new annotation, and skip scheduling a new frame in all cases. It has to be async in the case of a new annotation (i.e. a new MouseRegion is added), since when the annotation is added, it hasn't yet painted, and it can't hit test against the new layer until after the paint, so in that case it schedules a post frame callback, but since it's already building a frame when it does that, it doesn't need to schedule a frame. The code also used to do mouse position checks for all mice if only one mouse changed position. I fixed this part too, so that it will only check position for the mouse that changed.
-
- 24 Sep, 2019 2 commits
-
-
Alexandre Ardhuin authored
-
Alexandre Ardhuin authored
-
- 27 Aug, 2019 1 commit
-
-
Tong Mu authored
Add "OneSequenceRecognizer.resolvePointer". Fix DragGestureRecognizer crash on multiple pointers (#39017) * Add drag tests * Add resolvePointer * Correct monodrag implementation * Fix some addTearDown
-
- 16 Aug, 2019 1 commit
-
-
brandondiamond authored
-
- 01 Aug, 2019 1 commit
-
-
Yegor authored
* Sync the value kMaxUnsignedSMI for the Web * update events.dart docs
-
- 31 Jul, 2019 1 commit
-
-
Justin McCandless authored
You can drag the cupertinoscrollbar if you pass an active scrollcontroller to the scrollbar.
-
- 13 Jul, 2019 1 commit
-
-
Hey24sheep authored
-
- 06 Jun, 2019 1 commit
-
-
Michael Goderbauer authored
-
- 04 Jun, 2019 1 commit
-
- 03 Jun, 2019 1 commit
-
-
Tong Mu authored
- A refactor that moves the semantics declaration from detectors to recognizers to allow custom recognizers to respond to semantic gectures. - Renames all handlers related to semantics from Gesture* to Semantics*.
-
- 31 May, 2019 1 commit
-
-
Michael Goderbauer authored
-
- 30 May, 2019 2 commits
-
-
Greg Spencer authored
This PR solves two problems: currently, the onExit is called for a mouse pointer the moment the removal message is received, except that by the time it actually calls it, there is no _lastEvent for it in the mouse tracker (it's already been removed), resulting in an event being passed to the onExit that contains nulls for the position. Also, removePointer events don't actually get created with a position, although they easily could be, so that even the the _lastEvent in the mouse tracker were still populated, it would still give a null position and delta. This PR adds support for the position and delta in a PointerRemovedEvent, and populates them. In addition, when a remove event is received, it doesn't actually remove the pointer until the mouse position check that gets scheduled actually happens.
-
Todd Volkert authored
-
- 25 May, 2019 1 commit
-
-
Chris Bracken authored
Updates documentation and non-public API to use American spellings for consistency with the rest of the codebase. No changes to behaviour... other than how it's spelt.
-
- 20 May, 2019 1 commit
-
- 14 May, 2019 3 commits
-
-
Mouad Debbar authored
-
Mouad Debbar authored
This reverts commit 18ca3754.
-
Mouad Debbar authored
-
- 10 May, 2019 1 commit
-
-
Dan Field authored
-
- 09 May, 2019 2 commits
-
-
Michael Goderbauer authored
-
Greg Spencer authored
This changes Listener to trigger enter/move/exit in all Listeners below the pointer, not just the leaf region (the first region hit). This is because we need to allow listeners to be nested so that, say, a widget that handles changing color on hover, but also is wrapped in a Tooltip (that handles hover) can trigger both actions, not just one. To that end, I added a findAll to Layer, similar to the existing find method that was previously used. It returns an iterator over annotated layers which match the given data type. Since the findAll is implemented as returning an Iterable (and is sync*), I re-implemented the find routines as just returning the first result from findAll, since that should be just as efficient, and would then prevent duplication in the implementation.
-
- 08 May, 2019 1 commit
-
-
Greg Spencer authored
I recently added some code to keep hover events from being propagated when a mouse wasn't attached. While that works, there are times when it can fire callbacks during the building of other components, since they can now be called from detach/attach. This is not ideal, since it will assert then. This changes the code so that it won't update the annotations during attach/detach, but also won't push the annotation layer unless a mouse is connected, achieving the same result as before, but with better semantics. The basic problem is that in the detach for RenderPointerListener, it would detach the annotation, which could cause onExit to be called on the annotation, since the widget was disappearing under the mouse, and thus needs to receive an onExit, but that onExit might be (and probably will be) calling setState, which marks the owning widget as needing to be built, sometimes when it already has been. The fix creates a new _ListenerElement that overrides activate and deactivate in order to tell the render object ahead of the detach that it might be detached, and so the onExit gets called before the detach instead of during it. In addition, I now avoid scheduling more than one check for mouse positions per frame.
-
- 03 May, 2019 2 commits
-
-
Greg Spencer authored
This is a re-land of #31561, after fixing performance regressions. Added change listening to the MouseTracker so that the Listener and tooltip can react to whether or not a mouse is connected at all. Added a change check to make sure Listener only repaints when something changed. Fixes #22817
-
- 01 May, 2019 1 commit
-
-
Jacob Richman authored
Make FlutterError objects more structured so they can be displayed better in debugging tools such as Dart DevTools.
-