friction2d / friction

Friction Graphics
https://friction.graphics
GNU General Public License v3.0
183 stars 10 forks source link

About some behavior of the timeline, panning the canvas, and others #122

Open PsychoTAL opened 4 months ago

PsychoTAL commented 4 months ago

Hello! It's me again.

This time, I want to focus on some behavior, which may not be exactly bugs. (I can't provide video/animation to show them yet, but it is fairly simple to replicate, except behavior 7) I use Windows 10 VRAM : 1GB RAM: 8GB

-Behavior 1 : When the number of frames is below 20, the "scrolling horizontal bar" at the bottom of the timeline jitters (and the timeline with it) when dragged with the mouse left button (LMB). When the number of frames is exactly 20, the "scrolling horizontal bar" does not move when dragged with the LMB. And when the number of frames is over 20, it works perfectly fine when dragged with LMB (no jittering). You still can "pan" and "move" the timeline normally with the mouse middle button, though.

-Behavior 2 : When opening an existing file, the timeline is centered on "zero". "zero" should be on the far left of the timeline, in my opinion. Screenshot 2024-02-25 125851

-Behavior 3 : When adding the "Visibility range", it is centered on the active frame. The active frame should be the start of the "visibility range", in my opinion. vr

-Behavior 4 : In the "list of shortcut" in the "About" window, "panning" the canvas was said to be with "LMB + move mouse/touchpad", however it is achieved the Right Mouse Button. And regarding that, when you first right-click on the canvas to show the menu (Link scene, settings, etc.), then right-click outside the menu to hide it, the canvas moves to a different position. Shortcut

-Behavior 5 : You can also "pan" with "Alt + LMB", however (and this could be a bug) when an object is selected (its yellow pivot is showing) or a node is selected in "Point" mode, using "Alt + LMB" shortcut moves the object/node. Panning with the middle mouse won't cause any of those.

-Behavior 6 : When in the graph editor, pressing "A" change the focus (red rectangle on the border) to the canvas instead. What I would expect: selecting all the nodes in the graph. Also, when moving a node or its handle in the graph, you can constrain its moves with "x" and "y", but doing so will make the node/its handle jitters when the mouse isn't perfectly aligned with the axis it was constrained with.

-Behavior 7 : This one is very random, I'm not sure how to replicate it, but I'll say it anyway. When you have a group, randomly when making a new path, it is immediately inserted inside a group.

That is all I could find for now. I know it's quite a list, and fixing them won't be easy. I'll be patient, so don't sweat it. Friction2D in its actual state is enough to get the job done. Many thanks to anyone involved with Enve2D and Friction2D development.

Wish you all the best!

rodlie commented 4 months ago

Hi,

Just wanted to say that I have read this issue, but I have not had the time to look into anything yet, or give any feedback. But I will as soon as I get the spare time.

Expect delayed responses from me, it does not mean anything, I'm usually just busy with work.

PsychoTAL commented 3 months ago

Hello!

Take all the time you need, @rodlie, and thanks for considering all my feedbacks.

I just wanted to add MORE INFO about some of the behavior so that it may become less difficult for you to fix them (I hope).

So about Behavior 2, I found out it only happens when the number of frames is below 20 (maybe related to Behavior 1) And strangely, the leftmost appearing frame happens to be "the actual max frame minus 20", as you can see in the images. The starting frame doesn't affect anything. Time1 Time

About Behavior 7, I'm still unable to consistently replicate it, but with a lot of trial, I was able to find something:

To "trigger" the behavior,

  1. First, select a group in "Object" mode (very important, make sure that nothing else is selected, ALT+A sometimes doesn't work, you need to "Double Left click" in a blank space, and all "selection" I refer henceforth are WITHIN THE CANVAS, not the timeline),
  2. With the group selected, go to "Point" mode and edit an object/path (move a node, etc.) that is inside it,
  3. After editing something, while the object/path is still selected, either in "Point" or "Object" mode, anything you create via "Add Path/Rect/Circle/Text" or even duplicating something will be created inside that group,
  4. If you are still in "Point" mode and select something else (object/path) that is inside another group, that one will become the "target group" (I will call it that for now) where everything will be added, IF you edited the object/path previously selected, of course.
  5. If you deselected everything (all the object/group bounding box are hidden) and haven't yet triggered the "target group", everything created will be always outside all the groups (the "root location", I may call).

Doing those may not always cause the "target group" effect, though. May need more testing.

My thought: Yes, I agree, that would seem to be somewhat NORMAL, however, and here is why I got confused, the KEY to trigger the "target group" is to "edit" something inside it first.

What should be expected, IN MY HUMBLE OPINION:

Hope that long and boring explanation helps, at least a bit.

Wish you the best!

PsychoTAL commented 2 months ago

So, 0.9.6 beta1 kinda fixes "half" behavior 4: