The Trunk: Morphic-dtl.1680.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Morphic-dtl.1680.mcz

commits-2
David T. Lewis uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-dtl.1680.mcz

==================== Summary ====================

Name: Morphic-dtl.1680
Author: dtl
Time: 15 September 2020, 4:04:29.45022 pm
UUID: ecb7a7fd-061d-44e0-802f-b08ac8ae9778
Ancestors: Morphic-mt.1679

For MouseEvent>>asMouseMove retain the original event timeStamp. Removes an unnecessary dependency on eventMillisecondClock.

=============== Diff against Morphic-mt.1679 ===============

Item was changed:
  ----- Method: MouseEvent>>asMouseMove (in category 'converting') -----
  asMouseMove
  "Convert the receiver into a mouse move"
+ ^MouseMoveEvent new setType: #mouseMove startPoint: position endPoint: position trail: {position. position} buttons: buttons hand: source stamp: timeStamp!
- ^MouseMoveEvent new setType: #mouseMove startPoint: position endPoint: position trail: {position. position} buttons: buttons hand: source stamp: Time eventMillisecondClock!


Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Morphic-dtl.1680.mcz

David T. Lewis
This was the first issue that popped up when I put a halt in eventMillisecondClock.

I see a number of other senders of eventMillisecondClock that handle the case
of an event buffer with time stamp of 0. Is that even possible?

Dave

On Tue, Sep 15, 2020 at 08:04:34PM +0000, [hidden email] wrote:

> David T. Lewis uploaded a new version of Morphic to project The Trunk:
> http://source.squeak.org/trunk/Morphic-dtl.1680.mcz
>
> ==================== Summary ====================
>
> Name: Morphic-dtl.1680
> Author: dtl
> Time: 15 September 2020, 4:04:29.45022 pm
> UUID: ecb7a7fd-061d-44e0-802f-b08ac8ae9778
> Ancestors: Morphic-mt.1679
>
> For MouseEvent>>asMouseMove retain the original event timeStamp. Removes an unnecessary dependency on eventMillisecondClock.
>
> =============== Diff against Morphic-mt.1679 ===============
>
> Item was changed:
>   ----- Method: MouseEvent>>asMouseMove (in category 'converting') -----
>   asMouseMove
>   "Convert the receiver into a mouse move"
> + ^MouseMoveEvent new setType: #mouseMove startPoint: position endPoint: position trail: {position. position} buttons: buttons hand: source stamp: timeStamp!
> - ^MouseMoveEvent new setType: #mouseMove startPoint: position endPoint: position trail: {position. position} buttons: buttons hand: source stamp: Time eventMillisecondClock!
>
>

Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Morphic-dtl.1680.mcz

timrowledge


> On 2020-09-15, at 1:12 PM, David T. Lewis <[hidden email]> wrote:
>
> This was the first issue that popped up when I put a halt in eventMillisecondClock.
>
> I see a number of other senders of eventMillisecondClock that handle the case
> of an event buffer with time stamp of 0. Is that even possible?

I wrote about some of those last week; I suspect that the idiom was there because some very early VM stuff couldn't provide the time stamp. Certainly shouldn't be the case any longer and I'd be inclined to remove them all.


tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
I haven't lost my mind; it's backed up on tape somewhere.



Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Morphic-dtl.1680.mcz

David T. Lewis
On Tue, Sep 15, 2020 at 01:17:41PM -0700, tim Rowledge wrote:

>
>
> > On 2020-09-15, at 1:12 PM, David T. Lewis <[hidden email]> wrote:
> >
> > This was the first issue that popped up when I put a halt in eventMillisecondClock.
> >
> > I see a number of other senders of eventMillisecondClock that handle the case
> > of an event buffer with time stamp of 0. Is that even possible?
>
> I wrote about some of those last week; I suspect that the idiom was there because some very early VM stuff couldn't provide the time stamp. Certainly shouldn't be the case any longer and I'd be inclined to remove them all.
>

Yes thanks, sounds right.

This one was kind of a trivial change, but it seemed to be the most common use
of eventMillisecondClock in practice, so it seemed worth a commit to make it
go away.

Dave
 

Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Morphic-dtl.1680.mcz

David T. Lewis
On Tue, Sep 15, 2020 at 04:48:33PM -0400, David T. Lewis wrote:

> On Tue, Sep 15, 2020 at 01:17:41PM -0700, tim Rowledge wrote:
> >
> >
> > > On 2020-09-15, at 1:12 PM, David T. Lewis <[hidden email]> wrote:
> > >
> > > This was the first issue that popped up when I put a halt in eventMillisecondClock.
> > >
> > > I see a number of other senders of eventMillisecondClock that handle the case
> > > of an event buffer with time stamp of 0. Is that even possible?
> >
> > I wrote about some of those last week; I suspect that the idiom was there because some very early VM stuff couldn't provide the time stamp. Certainly shouldn't be the case any longer and I'd be inclined to remove them all.
> >
>
> Yes thanks, sounds right.
>
> This one was kind of a trivial change, but it seemed to be the most common use
> of eventMillisecondClock in practice, so it seemed worth a commit to make it
> go away.
>

Tim,

And as you also said in your earlier message:

> EventSensor>>#createMouseEvent is only used in a couple of places to do
> with rectangle transforming interactively, and probably ought to be improved.
> EventSensor>>#nextEventSynthesized is only used if the EventSensor has
> no event queue and that is ... a bit complex but probably should
> never happen since we removed the old InputSensor years and years ago.
> EventSensor>>#primGetNextEvent: - since we declare the prim essential maybe
> we should drop the fake-it code and really insist on the prim being there?


These three seem to be at the heart of the matter. If we can sort these out,
then the the millisecond clock may become a moot point.

Dave
 

Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Morphic-dtl.1680.mcz

David T. Lewis
On Tue, Sep 15, 2020 at 07:29:32PM -0400, David T. Lewis wrote:

> On Tue, Sep 15, 2020 at 04:48:33PM -0400, David T. Lewis wrote:
> > On Tue, Sep 15, 2020 at 01:17:41PM -0700, tim Rowledge wrote:
> > >
> > >
> > > > On 2020-09-15, at 1:12 PM, David T. Lewis <[hidden email]> wrote:
> > > >
> > > > This was the first issue that popped up when I put a halt in eventMillisecondClock.
> > > >
> > > > I see a number of other senders of eventMillisecondClock that handle the case
> > > > of an event buffer with time stamp of 0. Is that even possible?
> > >
> > > I wrote about some of those last week; I suspect that the idiom was there because some very early VM stuff couldn't provide the time stamp. Certainly shouldn't be the case any longer and I'd be inclined to remove them all.
> > >
> >
> > Yes thanks, sounds right.
> >
> > This one was kind of a trivial change, but it seemed to be the most common use
> > of eventMillisecondClock in practice, so it seemed worth a commit to make it
> > go away.
> >
>
> Tim,
>
> And as you also said in your earlier message:
>
> > EventSensor>>#createMouseEvent is only used in a couple of places to do
> > with rectangle transforming interactively, and probably ought to be improved.
> > EventSensor>>#nextEventSynthesized is only used if the EventSensor has
> > no event queue and that is ... a bit complex but probably should
> > never happen since we removed the old InputSensor years and years ago.
> > EventSensor>>#primGetNextEvent: - since we declare the prim essential maybe
> > we should drop the fake-it code and really insist on the prim being there?
>
>
> These three seem to be at the heart of the matter. If we can sort these out,
> then the the millisecond clock may become a moot point.
>

Hmmm... it couldn't possibly be this simple?!? Maybe I am overlooking something.

In any case, I put these in the inbox:

   Name: Kernel-dtl.1340
   Implement Sensor eventTimeNow for support of synthesized events. Eliminates
   the sometimes incorrect assumption that event time stamps must match the
   obsolete VM millisecond clock, and allows the Windows VM to consistently
   use native Windows event time stamps in the event queue.
   
   Name: Morphic-dtl.1681
   Use Sensor eventTimeNow for synthesized event times.

Dave