Closed gedw99 closed 7 months ago
Will you take a PR if the existing behaviour is still present ?
The latest version implements mouse-wheel for scrolling forward and back. (along with reload on file change).
Thanks for update @ajstarks and this huge effort on this code base.
i will try it out to see if it helps my use case and then report back in this issue.
Much appreciated
@ajstarks I tried out this
The scrolling with trackpad works very well on MAC.
About Use case 1 and the canvas zooming, I thought the scrolling might create the ability to zoom in and out using the trackpad too but it does not. This is often called "pinch to zoom".
In relation to use case 2 ( responsive layout), I tried my code and your code and made a video. It's the only way to discuss it :)
The first screen is running your latest gcdeck with test.dsh. The second screen is running some old code i had with test.dsh
The good news is that my old code is not needed anymore thanks to your and @andybalholm changes. thanks
Ideas of how to move forward:
I am not sure because UC 1 and 2 are either mutually exclusive or actually overlap.
Originally i imagined an Editor using the system like UC 1, where they want to have a canvas with zooming and scroll bars and no responsive aspects. Users would then be the UC 2 where they want Responsive without zooming.
But now i am starting to realise that it's not that clear cut.
I am NOT saying that the current changes are BAD. Not at all. Even in that video you can see that the shapes are getting squished up and out of proportion. Maybe we need to treat text versus shapes differently - don't know. Its maddening because a web browser has all these different ways to layout things that is a large permutation matrix. I feel that we need to avoid that.
So i feel like it is best to make these features able to be toggled. A simple toolbar or something. It will make it easier also for user and us to experiment without recompiling, until things settle down. We closing out the permutation matrix of options and what should happen.
For me i am working on the ability to show all the slides as a big canvas with lines between them to show compositional aspects. I want to create the ability to show the reuse of elements and also actions like a hyperlink from one to the other so you can do non linear slides etc. This calls for Use Case 1, where you want a big canvas you can zoom and if you zoom in to the point where some slides are off the visible screen you get scroll bars. I started o this code but never had time to get it working yet. I can put this up on github if you want.
Then you have where your more of a User, and you just want to view the slide(s) and have them responsive. You do NOT want to zoom but more flick up and down between the slides in the deck. BUT when you resize, you get for example the shapes maintaining their proportion.
Interesting to hear what you think about all this. If you don't fully know either i can certainly understand because like i am realising it depend on your use case. This is why i am suggesting the first thing to do it to make the behaviour able to be toggled on a toolbar on the top or left...
I also want to put up my experiments on github so you can see them, It might help.
I believe what you are seeing is the "normal" behavior of the %-based canvas. However, image scaling is not working correctly at the moment. To test this try out running test.xml with different canvas sizes using another deck client like pdfdeck.
That being said, the rendering of gcdeck is not up to the standard of pdfdeck, and needs to be improved.
here is an illustration of pdfdeck (left) and gcdeck (right) showing an extreme canvas:
Thank you @ajstarks
That helps me understand things more.
I will also try that here as you suggested.
been ages so closing this.
The new resize works well. Been experimenting with it and it works fine.
I would like to see discus 2 further options:
It never resizes, but instead allows zoom and scroll bars.
Use cases are many. My use case is needing to CAD like layouts.
When you make the window smaller it pushes things over and does not rescale things. It's more like how GIOUI layout itself works. The bottom scroll and right scroll bars appear appear as needed.
Uses cases are when you want App like behaviour