Quantcast

Update to window rotation.

classic Classic list List threaded Threaded
24 messages Options
12
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Update to window rotation.

Tavmjong Bah

Hi,

I've been reworking Jabier's window rotation code to use the desktop to
window affine rather than messing with the SVG viewbox. This is to keep
the GUI code out of the SVG handling code (also viewbox doesn't have
the concept of rotation so it was a real hack to put it in there). This
also unifies how zoom and rotation are handled (and eventually could
include flip).

With trunk r15603 most of the work is done so I would like to ask that
people try it out.

There are currently two ways to rotate the canvas.

1. Use the rotate spin entry box at the lower right corner of the
screen to input an arbitrary rotation value (right click to open a pop-
up with preset values). In this case, the rotation is around the center
of the window.

2. Use Shift-Ctrl-Scroll wheel to rotate around the current cursor
position. Currently the rotation is set to be in increments of 2
degrees. (We can make this a user defined preference.)

Note, this is a work in progress. Axiometric grids are not handled
correctly and resize/skew/rotate handles are not rotated with the
canvas.

Work is being tracked at http://wiki.inkscape.org/wiki/index.php/Rotati
ng_Canvas

Sorry there is no video. I don't have the video creating skill Jabier
has...

It would be interesting to know how people use a rotated canvas. Is it
with a separate tablet (e.g. Wacom) or with a touch sensitive screen?
Yale Zhang has a branch with gestures support. It would be interesting
to get this into trunk but it looks like it needs a good review.

Tav





------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
C R
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

C R

Thanks Tav! I had stopped using the rotate view because of some rather unfortunate bugs that would affect on export of the wrong canvas size. It will be awesome to have it on the GUI side of things, and will likely make bugs like this disappear. Can't wait to use it!
-C

On Mar 20, 2017 9:20 PM, "Tavmjong Bah" <[hidden email]> wrote:

Hi,

I've been reworking Jabier's window rotation code to use the desktop to
window affine rather than messing with the SVG viewbox. This is to keep
the GUI code out of the SVG handling code (also viewbox doesn't have
the concept of rotation so it was a real hack to put it in there). This
also unifies how zoom and rotation are handled (and eventually could
include flip).

With trunk r15603 most of the work is done so I would like to ask that
people try it out.

There are currently two ways to rotate the canvas.

1. Use the rotate spin entry box at the lower right corner of the
screen to input an arbitrary rotation value (right click to open a pop-
up with preset values). In this case, the rotation is around the center
of the window.

2. Use Shift-Ctrl-Scroll wheel to rotate around the current cursor
position. Currently the rotation is set to be in increments of 2
degrees. (We can make this a user defined preference.)

Note, this is a work in progress. Axiometric grids are not handled
correctly and resize/skew/rotate handles are not rotated with the
canvas.

Work is being tracked at http://wiki.inkscape.org/wiki/index.php/Rotati
ng_Canvas

Sorry there is no video. I don't have the video creating skill Jabier
has...

It would be interesting to know how people use a rotated canvas. Is it
with a separate tablet (e.g. Wacom) or with a touch sensitive screen?
Yale Zhang has a branch with gestures support. It would be interesting
to get this into trunk but it looks like it needs a good review.

Tav





------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Raghavendra kamath
In reply to this post by Tavmjong Bah
On Tue, Mar 21, 2017 at 2:49 AM, Tavmjong Bah <[hidden email]> wrote:

Hi,

I've been reworking Jabier's window rotation code to use the desktop to
window affine rather than messing with the SVG viewbox. This is to keep
the GUI code out of the SVG handling code (also viewbox doesn't have
the concept of rotation so it was a real hack to put it in there). This
also unifies how zoom and rotation are handled (and eventually could
include flip).

Thank you very much for the work Tav and Jabier,
 
With trunk r15603 most of the work is done so I would like to ask that
people try it out.

There are currently two ways to rotate the canvas.

1. Use the rotate spin entry box at the lower right corner of the
screen to input an arbitrary rotation value (right click to open a pop-
up with preset values). In this case, the rotation is around the center
of the window.

2. Use Shift-Ctrl-Scroll wheel to rotate around the current cursor
position. Currently the rotation is set to be in increments of 2
degrees. (We can make this a user defined preference.)

I believe this shortcut is a bit cumbersome for people using graphic tablet (e.g. wacom).
Due to scroll wheel, I know there are some scroll buttons in tablets but they are not on the pen and pressing Ctrl + shift and then the scroll buttons on tablet is going to be cumbersome.
Can it be Shift (or Ctrl) + middle click & drag, or ctrl + shift + left click & drag, or anything that can be easily triggered with pen and keyboard too without the need to keep the pen down for rotating.

There can also be some single key keyboard shortcuts in addition to these, which will rotate the canvas in certain degrees (e.g. 15°).
They can be numpad numbers like 4 - rotate left , 6 rotate -right and 5 for resetting rotation.

I also had one doubt, Will there be a 'Rotate' sub-menu in the 'View' menu, like there is one for 'Zoom'. The menu may have some common rotate options such as rotate canvas view to 90° clockwise, anti-clockwise , reset rotation etc.

What do you think?

Thanks

--
Raghavendra Kamath
Illustrator

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Tavmjong Bah
On Tue, 2017-03-21 at 09:16 +0530, Raghavendra kamath wrote:
On Tue, Mar 21, 2017 at 2:49 AM, Tavmjong Bah <[hidden email]> wrote:

Hi,

I've been reworking Jabier's window rotation code to use the desktop to
window affine rather than messing with the SVG viewbox. This is to keep
the GUI code out of the SVG handling code (also viewbox doesn't have
the concept of rotation so it was a real hack to put it in there). This
also unifies how zoom and rotation are handled (and eventually could
include flip).

Thank you very much for the work Tav and Jabier,
 
With trunk r15603 most of the work is done so I would like to ask that
people try it out.

There are currently two ways to rotate the canvas.

1. Use the rotate spin entry box at the lower right corner of the
screen to input an arbitrary rotation value (right click to open a pop-
up with preset values). In this case, the rotation is around the center
of the window.

2. Use Shift-Ctrl-Scroll wheel to rotate around the current cursor
position. Currently the rotation is set to be in increments of 2
degrees. (We can make this a user defined preference.)

I believe this shortcut is a bit cumbersome for people using graphic tablet (e.g. wacom).
Due to scroll wheel, I know there are some scroll buttons in tablets but they are not on the pen and pressing Ctrl + shift and then the scroll buttons on tablet is going to be cumbersome.
Can it be Shift (or Ctrl) + middle click & drag, or ctrl + shift + left click & drag, or anything that can be easily triggered with pen and keyboard too without the need to keep the pen down for rotating.


I've added three verbs for canvas rotation (SP_VERB_ROTATE_CW, SP_VERB_ROTATE_CCW, SP_VERB_ROTATE_ZERO). These can be assigned to keys in the preferences dialog. I would assign them by default to '(',  ')', '0' but these are already taken by inset/outset. (Imagine an arrow on the top end of the parentheses.)

There can also be some single key keyboard shortcuts in addition to these, which will rotate the canvas in certain degrees (e.g. 15°).
They can be numpad numbers like 4 - rotate left , 6 rotate -right and 5 for resetting rotation.

Rotation will now use the value of '/options/rotateincrement/value' in the preferences.xml file (matching '/options/zoomincrement/value' for zoom) to determine the rotation step.

I also had one doubt, Will there be a 'Rotate' sub-menu in the 'View' menu, like there is one for 'Zoom'. The menu may have some common rotate options such as rotate canvas view to 90° clockwise, anti-clockwise , reset rotation etc.

That could be added.

BTW, does anybody use the Zoom Tool? I think that would be a good candidate for removal. (There is the Zoom menu, keyboard shortcuts, and the Zoom spin box.)

Tav



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Vladimir Savic-3
In reply to this post by Tavmjong Bah

On Mon, Mar 20, 2017 at 10:19 PM, Tavmjong Bah <[hidden email]> wrote:

Hi,

I've been reworking Jabier's window rotation code to use the desktop to
window affine rather than messing with the SVG viewbox. This is to keep
the GUI code out of the SVG handling code (also viewbox doesn't have
the concept of rotation so it was a real hack to put it in there). This
also unifies how zoom and rotation are handled (and eventually could
include flip).

With trunk r15603 most of the work is done so I would like to ask that
people try it out.

Hi, Tav. Thanks for you work on making this behave correctly on code level.
 
There are currently two ways to rotate the canvas.

1. Use the rotate spin entry box at the lower right corner of the
screen to input an arbitrary rotation value (right click to open a pop-
up with preset values). In this case, the rotation is around the center
of the window.

So far so good.
 
2. Use Shift-Ctrl-Scroll wheel to rotate around the current cursor
position. Currently the rotation is set to be in increments of 2
degrees. (We can make this a user defined preference.)

Can we bring Jabier's on-screen controls? I really liked that widget. It was fast to choose desired rotation angle that way. I liked how it brought "speed" to Inkscape. We need such clever GUI decisions since everything already feels too slow. The new method with complex drawing is something I'd never use. Even worse, we have made shortcuts work perfectly for every workflow. Even with a tablet it was a breeze to rotate canvas without finger acrobatics. Just to remind you how it used to work:

Following logic behind panning (using middle mouse button - MMB), Jabier added _entering_ rotation mode by clicking CTRL+MMB. CTRL was also used to constraint rotation to a angle value defined in preferences. It is the same value used for every rotation in Inkscape. If user releases CTRL while still holding MMB down, snapping of rotation values was "lost", which is consistent with how rotation tool in general works.Pressing CTRL with MMB still down brings back rotation angle snapping. Another one added was SHIFT. With SHIFT keyboard button pressed down, rotation angle was brought back to 0 degrees, practically resetting rotation, no matter where user is currently.

I think that implemented this way, the tool would be way more useful, with extended meaning to general UX, since it brings speed of preview (everyone loves it!) and speed of acting in general. One can go to 180 degrees angle in a 1/10 of a second. Right now I have to wait seconds until my complex drawing appears and/or constantly looking at status bar to read exact value of rotation at which I am currently.

Please consider bringing back some part of previous implementation. Especially GUI part, which was one of the most polished canvas interactions Inkscape used to have.


Note, this is a work in progress. Axiometric grids are not handled
correctly and resize/skew/rotate handles are not rotated with the
canvas.

Work is being tracked at http://wiki.inkscape.org/wiki/index.php/Rotati
ng_Canvas

Sorry there is no video. I don't have the video creating skill Jabier
has...

It would be interesting to know how people use a rotated canvas. Is it
with a separate tablet (e.g. Wacom) or with a touch sensitive screen?
Yale Zhang has a branch with gestures support. It would be interesting
to get this into trunk but it looks like it needs a good review.

As a reminder, Yale Zhang has done some more improvements, namely multi-threaded rendering and vectorized Gaussian Blur filter which work fantastically. It is many times faster then current Inkscape trunk on high-end computers.

Vlada
 

Tav



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Tavmjong Bah
On Tue, 2017-03-21 at 10:36 +0100, Vladimir Savic wrote:

On Mon, Mar 20, 2017 at 10:19 PM, Tavmjong Bah <[hidden email]> wrote:

...

There are currently two ways to rotate the canvas.
1. Use the rotate spin entry box at the lower right corner of the
screen to input an arbitrary rotation value (right click to open a pop-
up with preset values). In this case, the rotation is around the center
of the window.

So far so good.
 
2. Use Shift-Ctrl-Scroll wheel to rotate around the current cursor
position. Currently the rotation is set to be in increments of 2
degrees. (We can make this a user defined preference.)

Can we bring Jabier's on-screen controls? I really liked that widget. It was fast to choose desired rotation angle that way. I liked how it brought "speed" to Inkscape. We need such clever GUI decisions since everything already feels too slow. The new method with complex drawing is something I'd never use. Even worse, we have made shortcuts work perfectly for every workflow. Even with a tablet it was a breeze to rotate canvas without finger acrobatics. Just to remind you how it used to work:

Following logic behind panning (using middle mouse button - MMB), Jabier added _entering_ rotation mode by clicking CTRL+MMB. CTRL was also used to constraint rotation to a angle value defined in preferences. It is the same value used for every rotation in Inkscape. If user releases CTRL while still holding MMB down, snapping of rotation values was "lost", which is consistent with how rotation tool in general works.Pressing CTRL with MMB still down brings back rotation angle snapping. Another one added was SHIFT. With SHIFT keyboard button pressed down, rotation angle was brought back to 0 degrees, practically resetting rotation, no matter where user is currently.

I think that implemented this way, the tool would be way more useful, with extended meaning to general UX, since it brings speed of preview (everyone loves it!) and speed of acting in general. One can go to 180 degrees angle in a 1/10 of a second. Right now I have to wait seconds until my complex drawing appears and/or constantly looking at status bar to read exact value of rotation at which I am currently.

Please consider bringing back some part of previous implementation. Especially GUI part, which was one of the most polished canvas interactions Inkscape used to have.

Yes, we can bring this back... but it needs to be implemented differently (similar user experience, different code wise). It's on the list of things to do.

Tav


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Raghavendra kamath
In reply to this post by Vladimir Savic-3
On 2017 Mar 21 10:36:57, Vladimir Savic wrote:

> > Can we bring Jabier's on-screen controls? I really liked that widget. It
> was fast to choose desired rotation angle that way. I liked how it brought
> "speed" to Inkscape. We need such clever GUI decisions since everything
> already feels too slow. The new method with complex drawing is something
> I'd never use. Even worse, we have made shortcuts work perfectly for every
> workflow. Even with a tablet it was a breeze to rotate canvas without
> finger acrobatics. Just to remind you how it used to work:
>
> Following logic behind panning (using middle mouse button - MMB), Jabier
> added _entering_ rotation mode by clicking CTRL+MMB. CTRL was also used to
> constraint rotation to a angle value defined in preferences. It is the same
> value used for every rotation in Inkscape. If user releases CTRL while
> still holding MMB down, snapping of rotation values was "lost", which is
> consistent with how rotation tool in general works.Pressing CTRL with MMB
> still down brings back rotation angle snapping. Another one added was
> SHIFT. With SHIFT keyboard button pressed down, rotation angle was brought
> back to 0 degrees, practically resetting rotation, no matter where user is
> currently.
+1 for these controls, as middle mouse button click and drag is tablet friendlier than scroll wheel

>
> I think that implemented this way, the tool would be way more useful, with
> extended meaning to general UX, since it brings speed of preview (everyone
> loves it!) and speed of acting in general. One can go to 180 degrees angle
> in a 1/10 of a second. Right now I have to wait seconds until my complex
> drawing appears and/or constantly looking at status bar to read exact value
> of rotation at which I am currently.
>
> Please consider bringing back some part of previous implementation.
> Especially GUI part, which was one of the most polished canvas interactions
> Inkscape used to have.
Regarding the GUI part, I had tested Jabier's branch, and one thing that hindered the drawing process was heavy onscreen display while rotating.
In my opinion there is no need to show the circular disc and clipping the canvas into that disc while rotating. a simple on-screen notification showing the degree of rotation is enough.
May be a small rectangle notification box with degrees. This is just my opinion. The previous rotation HUD kind of display was a bit distracting.

+1 for GUI notifications for rotation but with subtlety.

Thank you
--
Raghavendra Kamath
Illustrator
raghukamath.com

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Vladimir Savic-3
In reply to this post by Tavmjong Bah
Thank you. Thanks you!

And one more thing... It is very important, but seems to be seriously misunderstood by every single FOSS app I've tried (GIMP, Krita...). You probably thought of it already, but it is better to mention it that earlier that later. Rotating canvas is just about rotating paper that you have in front of yourself on a table, not rotating table with paper and all the tools you have on that table. Even though paper is rotated, everyone's reference line is the imagined line drawn by our two eyes. Or reference system is still the plane of our sight. Otherwise we could simply rotate our monitors or tilt our heads. In terms of dragging nodes with axis locked, that means that user wants to keep _sight_ horizontal as absolute horizontal. Otherwise user wouldn't rotate canvas at all. Drawing selection rectangle must happen in monitor's plane, not canvas plane. No matter that canvas is rotated, bounding box must be drawn horizontally.

Regards,
Vlada
 
Yes, we can bring this back... but it needs to be implemented differently (similar user experience, different code wise). It's on the list of things to do.

Tav



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Vladimir Savic-3
In reply to this post by Raghavendra kamath

Regarding the GUI part, I had tested Jabier's branch, and one thing that hindered the drawing process was heavy onscreen display while rotating.
In my opinion there is no need to show the circular disc and clipping the canvas into that disc while rotating. a simple on-screen notification showing the degree of rotation is enough.
May be a small rectangle notification box with degrees. This is just my opinion. The previous rotation HUD kind of display was a bit distracting.

+1 for GUI notifications for rotation but with subtlety.

I get what you say and I tend to agree. The problem is that Inkscape falls behind with redrawing on such intensive calculations such as this one. Jabier did a clever thing. He copied bitmap of what's currently on canvas and rotated just that image, which is fairly cheap operation when done once. That was precisely the reason why it was so fast. Only after user released MMB the whole canvas was redrawn. If we can grab bigger rectangle, I guess we can rotate that one instead and ensure that there are no gaps drawn on screen, since no panning, or any other operation for that matter, can occur while rotating (while MMB is down and we are in rotation mode, that is).

Vlada
 

Thank you
--
Raghavendra Kamath
Illustrator
raghukamath.com


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Jabier Arraiza
In reply to this post by Tavmjong Bah
I always use zoom tool :(

On Tue, 2017-03-21 at 10:34 +0100, Tavmjong Bah wrote:

> On Tue, 2017-03-21 at 09:16 +0530, Raghavendra kamath wrote:
> > On Tue, Mar 21, 2017 at 2:49 AM, Tavmjong Bah <[hidden email]>
> > wrote:
> > > Hi,
> > >
> > >
> > >
> > > I've been reworking Jabier's window rotation code to use the
> > > desktop to
> > >
> > > window affine rather than messing with the SVG viewbox. This is
> > > to
> > > keep
> > >
> > > the GUI code out of the SVG handling code (also viewbox doesn't
> > > have
> > >
> > > the concept of rotation so it was a real hack to put it in
> > > there).
> > > This
> > >
> > > also unifies how zoom and rotation are handled (and eventually
> > > could
> > >
> > > include flip).
> >
> > Thank you very much for the work Tav and Jabier,
> >  
> > > With trunk r15603 most of the work is done so I would like to ask
> > > that
> > >
> > > people try it out.
> > >
> > >
> > >
> > > There are currently two ways to rotate the canvas.
> > >
> > >
> > >
> > > 1. Use the rotate spin entry box at the lower right corner of the
> > >
> > > screen to input an arbitrary rotation value (right click to open
> > > a
> > > pop-
> > >
> > > up with preset values). In this case, the rotation is around the
> > > center
> > >
> > > of the window.
> > >
> > >
> > >
> > > 2. Use Shift-Ctrl-Scroll wheel to rotate around the current
> > > cursor
> > >
> > > position. Currently the rotation is set to be in increments of 2
> > >
> > > degrees. (We can make this a user defined preference.)
> >
> > I believe this shortcut is a bit cumbersome for people using
> > graphic
> > tablet (e.g. wacom).
> >
> > Due to scroll wheel, I know there are some scroll buttons in
> > tablets
> > but 
> > they are not on the pen and pressing Ctrl + shift and then the
> > scroll 
> > buttons on tablet is going to be cumbersome.
> >
> > Can it be Shift (or Ctrl) + middle click & drag, or ctrl + shift + 
> > left click & drag, or anything that can be easily triggered with
> > pen
> >  and keyboard too without the need to keep the pen down for
> > rotating.
> >
> >
> >
>
> I've added three verbs for canvas rotation (SP_VERB_ROTATE_CW,
> SP_VERB_ROTATE_CCW, SP_VERB_ROTATE_ZERO). These can be assigned to
> keys
> in the preferences dialog. I would assign them by default to
> '(',  ')',
> '0' but these are already taken by inset/outset. (Imagine an arrow on
> the top end of the parentheses.)
>
> > There can also be some single key keyboard shortcuts in addition
> > to 
> > these, which will rotate the canvas in certain degrees (e.g. 15°).
> >
> > They can be numpad numbers like 4 - rotate left , 6 rotate -right
> > and
> > 5 for resetting rotation.
>
> Rotation will now use the value of '/options/rotateincrement/value'
> in
> the preferences.xml file (matching '/options/zoomincrement/value' for
> zoom) to determine the rotation step.
>
>
> > I also had one doubt, Will there be a 'Rotate' sub-menu in the
> > 'View' 
> > menu, like there is one for 'Zoom'. The menu may have some common
> > rotate
> >  options such as rotate canvas view to 90° clockwise, anti-
> > clockwise
> > , 
> > reset rotation etc.
>
> That could be added.
>
> BTW, does anybody use the Zoom Tool? I think that would be a good
> candidate for removal. (There is the Zoom menu, keyboard shortcuts,
> and
> the Zoom spin box.)
>
> Tav
>
>
> -------------------------------------------------------------------
> -----------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Inkscape-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/inkscape-devel
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Jabier Arraiza
In reply to this post by Tavmjong Bah
I do yesterday a refactor of this UX and when going to commit get it
removed. I do a new branch with preremove rotate code to test the new
ui proposal for fast rotation. I share it I hope tonight.

Cheers, Jabier.


On Tue, 2017-03-21 at 10:48 +0100, Tavmjong Bah wrote:

> On Tue, 2017-03-21 at 10:36 +0100, Vladimir Savic wrote:
> > On Mon, Mar 20, 2017 at 10:19 PM, Tavmjong Bah <[hidden email]>
> > wrote:
>
> ...
>
> > > There are currently two ways to rotate the canvas.
> > >
> > >
> > > 1. Use the rotate spin entry box at the lower right corner of the
> > >
> > > screen to input an arbitrary rotation value (right click to open
> > > a
> > > pop-
> > >
> > > up with preset values). In this case, the rotation is around the
> > > center
> > >
> > > of the window.
> > >
> > >
> >
> > So far so good.
> >  
> > > 2. Use Shift-Ctrl-Scroll wheel to rotate around the current
> > > cursor
> > >
> > > position. Currently the rotation is set to be in increments of 2
> > >
> > > degrees. (We can make this a user defined preference.)
> > >
> > >
> >
> > Can we bring Jabier's on-screen controls? I really liked that
> > widget.
> > It was fast to choose desired rotation angle that way. I liked how
> > it
> > brought "speed" to Inkscape. We need such clever GUI decisions
> > since
> > everything already feels too slow. The new method with complex
> > drawing is something I'd never use. Even worse, we have made
> > shortcuts work perfectly for every workflow. Even with a tablet it
> > was a breeze to rotate canvas without finger acrobatics. Just to
> > remind you how it used to work:
> >
> > Following logic behind panning (using middle mouse button - MMB),
> > Jabier added _entering_ rotation mode by clicking CTRL+MMB. CTRL
> > was
> > also used to constraint rotation to a angle value defined in
> > preferences. It is the same value used for every rotation in
> > Inkscape. If user releases CTRL while still holding MMB down,
> > snapping of rotation values was "lost", which is consistent with
> > how
> > rotation tool in general works.Pressing CTRL with MMB still down
> > brings back rotation angle snapping. Another one added was SHIFT.
> > With SHIFT keyboard button pressed down, rotation angle was brought
> > back to 0 degrees, practically resetting rotation, no matter where
> > user is currently.
> >
> > I think that implemented this way, the tool would be way more
> > useful,
> > with extended meaning to general UX, since it brings speed of
> > preview
> > (everyone loves it!) and speed of acting in general. One can go to
> > 180 degrees angle in a 1/10 of a second. Right now I have to wait
> > seconds until my complex drawing appears and/or constantly looking
> > at
> > status bar to read exact value of rotation at which I am currently.
> >
> > Please consider bringing back some part of previous implementation.
> > Especially GUI part, which was one of the most polished canvas
> > interactions Inkscape used to have. 
>
> Yes, we can bring this back... but it needs to be implemented
> differently (similar user experience, different code wise). It's on
> the
> list of things to do.
>
> Tav
>
> -------------------------------------------------------------------
> -----------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Inkscape-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/inkscape-devel
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Jabier Arraiza
In reply to this post by Raghavendra kamath
Hi Raghavendra .

On Tue, 2017-03-21 at 15:19 +0530, Raghavendra Kamath wrote:

> On 2017 Mar 21 10:36:57, Vladimir Savic wrote:
>
> > > Can we bring Jabier's on-screen controls? I really liked that
> > > widget. It
> >
> > was fast to choose desired rotation angle that way. I liked how it
> > brought
> > "speed" to Inkscape. We need such clever GUI decisions since
> > everything
> > already feels too slow. The new method with complex drawing is
> > something
> > I'd never use. Even worse, we have made shortcuts work perfectly
> > for every
> > workflow. Even with a tablet it was a breeze to rotate canvas
> > without
> > finger acrobatics. Just to remind you how it used to work:
> >
> > Following logic behind panning (using middle mouse button - MMB),
> > Jabier
> > added _entering_ rotation mode by clicking CTRL+MMB. CTRL was also
> > used to
> > constraint rotation to a angle value defined in preferences. It is
> > the same
> > value used for every rotation in Inkscape. If user releases CTRL
> > while
> > still holding MMB down, snapping of rotation values was "lost",
> > which is
> > consistent with how rotation tool in general works.Pressing CTRL
> > with MMB
> > still down brings back rotation angle snapping. Another one added
> > was
> > SHIFT. With SHIFT keyboard button pressed down, rotation angle was
> > brought
> > back to 0 degrees, practically resetting rotation, no matter where
> > user is
> > currently.
>
> +1 for these controls, as middle mouse button click and drag is
> tablet friendlier than scroll wheel


> >
> > I think that implemented this way, the tool would be way more
> > useful, with
> > extended meaning to general UX, since it brings speed of preview
> > (everyone
> > loves it!) and speed of acting in general. One can go to 180
> > degrees angle
> > in a 1/10 of a second. Right now I have to wait seconds until my
> > complex
> > drawing appears and/or constantly looking at status bar to read
> > exact value
> > of rotation at which I am currently.
> >
> > Please consider bringing back some part of previous implementation.
> > Especially GUI part, which was one of the most polished canvas
> > interactions
> > Inkscape used to have.
>
> Regarding the GUI part, I had tested Jabier's branch, and one thing
> that hindered the drawing process was heavy onscreen display while
> rotating.
> In my opinion there is no need to show the circular disc and clipping
> the canvas into that disc while rotating. a simple on-screen
> notification showing the degree of rotation is enough.
> May be a small rectangle notification box with degrees. This is just
> my opinion. The previous rotation HUD kind of display was a bit
> distracting.
I share soon the new UI done yesterday, based on your ideas you send me
time ago.
Cheers, Jabier.

> +1 for GUI notifications for rotation but with subtlety.
>
> Thank you
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

signature.asc (849 bytes) Download Attachment
C R
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

C R
In reply to this post by Vladimir Savic-3
> Otherwise we could simply rotate our
> monitors or tilt our heads.

Wha? Correct if wrong, but the entire point of canvas rotation is so
we don't have to rotate our monitors or tilt our heads.
In package design, it helps to be able to see the upside-down panels
of your unfolded box. The point of rotating the canvas is precisely so
one does not have to stand on one's head, or try to turn the monitor
upside down.

>In terms of dragging nodes with axis locked,
> that means that user wants to keep _sight_ horizontal as absolute
> horizontal.

Yes, agree with this.

> Drawing selection
> rectangle must happen in monitor's plane, not canvas plane. No matter that
> canvas is rotated, bounding box must be drawn horizontally.

In general, yes, this is more useful I think.
-C

> Regards,
> Vlada
>
>>
>> Yes, we can bring this back... but it needs to be implemented differently
>> (similar user experience, different code wise). It's on the list of things
>> to do.
>>
>> Tav
>>
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Inkscape-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/inkscape-devel
>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Vladimir Savic-3
On Tue, Mar 21, 2017 at 1:14 PM, C R <[hidden email]> wrote:
> Otherwise we could simply rotate our
> monitors or tilt our heads.

Wha? Correct if wrong, but the entire point of canvas rotation is so
we don't have to rotate our monitors or tilt our heads.
In package design, it helps to be able to see the upside-down panels
of your unfolded box. The point of rotating the canvas is precisely so
one does not have to stand on one's head, or try to turn the monitor
upside down.

That is precisely what I've said. Or what I've tried to say, at least. ;)
 
>In terms of dragging nodes with axis locked,
> that means that user wants to keep _sight_ horizontal as absolute
> horizontal.

Yes, agree with this.

> Drawing selection
> rectangle must happen in monitor's plane, not canvas plane. No matter that
> canvas is rotated, bounding box must be drawn horizontally.

In general, yes, this is more useful I think.
-C

> Regards,
> Vlada
>
>>
>> Yes, we can bring this back... but it needs to be implemented differently
>> (similar user experience, different code wise). It's on the list of things
>> to do.
>>
>> Tav
>>
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Inkscape-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/inkscape-devel
>


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
C R
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

C R
Just tried, and works well!

Someone mentioned changing to a more tablet-friendly hotkey combo,
however it might be noted that most of the tablets currently on the
market support multitouch, and therefore support two-finger dragging
as a scrollwheel action by default. I have confirmed this on my Lenovo
X220T, and I think it works reasonably well as-is... much better than
using the third mouse button, which may or may not be present at all,
or cluttering the ctrl+alt key combinations with what's essentially a
nice-to-have feature that's not mission critical in most
circumstances.

That said, when Inkscape gets more brushes, and Ubuntu supports
mutli-touch rotation actions, this should be a great drawing feature
that will definitely allow users to "Draw Freely". ;)

One minor problem is that when using the mouse wheel for rotation, it
skips over 45 degrees. I recommend the default increment to 15 degree
angles rather than 2 degree increments for the following reasons:
1. It corresponds to the default snap-to angles of holding the alt key
while drawing lines etc, so the problem mentioned earlier about the
tools "not rotating" with the canvas is masked (will still work as
expected/wanted by the user at 15 degree angles)
2. Covers all the most useful angles for constructing things.
3. Keeps the user from having to flick the mouse wheel more than a few
times to get the desired angle.
5. Can be overridden easily in a variety of ways for the edge cases
that need a slight rotation.

Great work Tav!

Would you like me to do a video for the feature that you can post?
I'd be glad to help. :)

-C



On Tue, Mar 21, 2017 at 1:42 PM, Vladimir Savic
<[hidden email]> wrote:

> On Tue, Mar 21, 2017 at 1:14 PM, C R <[hidden email]> wrote:
>>
>> > Otherwise we could simply rotate our
>> > monitors or tilt our heads.
>>
>> Wha? Correct if wrong, but the entire point of canvas rotation is so
>> we don't have to rotate our monitors or tilt our heads.
>> In package design, it helps to be able to see the upside-down panels
>> of your unfolded box. The point of rotating the canvas is precisely so
>> one does not have to stand on one's head, or try to turn the monitor
>> upside down.
>>
> That is precisely what I've said. Or what I've tried to say, at least. ;)
>
>>
>> >In terms of dragging nodes with axis locked,
>> > that means that user wants to keep _sight_ horizontal as absolute
>> > horizontal.
>>
>> Yes, agree with this.
>>
>> > Drawing selection
>> > rectangle must happen in monitor's plane, not canvas plane. No matter
>> > that
>> > canvas is rotated, bounding box must be drawn horizontally.
>>
>> In general, yes, this is more useful I think.
>> -C
>>
>> > Regards,
>> > Vlada
>> >
>> >>
>> >> Yes, we can bring this back... but it needs to be implemented
>> >> differently
>> >> (similar user experience, different code wise). It's on the list of
>> >> things
>> >> to do.
>> >>
>> >> Tav
>> >>
>> >
>> >
>> >
>> > ------------------------------------------------------------------------------
>> > Check out the vibrant tech community on one of the world's most
>> > engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>> > _______________________________________________
>> > Inkscape-devel mailing list
>> > [hidden email]
>> > https://lists.sourceforge.net/lists/listinfo/inkscape-devel
>> >
>
>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Vladimir Savic-3
Hi C,

Can you tell me how do you pan the canvas using multitouch gestures on Lenovo X220T? I have some objections to your proposal, but first I would like to know more about other multitouch devices. It might be that I am missing something obvious. 

Vlada

On Tue, Mar 21, 2017, 16:35 C R <[hidden email]> wrote:
Just tried, and works well!

Someone mentioned changing to a more tablet-friendly hotkey combo,
however it might be noted that most of the tablets currently on the
market support multitouch, and therefore support two-finger dragging
as a scrollwheel action by default. I have confirmed this on my Lenovo
X220T, and I think it works reasonably well as-is... much better than
using the third mouse button, which may or may not be present at all,
or cluttering the ctrl+alt key combinations with what's essentially a
nice-to-have feature that's not mission critical in most
circumstances.



That said, when Inkscape gets more brushes, and Ubuntu supports
mutli-touch rotation actions, this should be a great drawing feature
that will definitely allow users to "Draw Freely". ;)

One minor problem is that when using the mouse wheel for rotation, it
skips over 45 degrees. I recommend the default increment to 15 degree
angles rather than 2 degree increments for the following reasons:
1. It corresponds to the default snap-to angles of holding the alt key
while drawing lines etc, so the problem mentioned earlier about the
tools "not rotating" with the canvas is masked (will still work as
expected/wanted by the user at 15 degree angles)
2. Covers all the most useful angles for constructing things.
3. Keeps the user from having to flick the mouse wheel more than a few
times to get the desired angle.
5. Can be overridden easily in a variety of ways for the edge cases
that need a slight rotation.

Great work Tav!

Would you like me to do a video for the feature that you can post?
I'd be glad to help. :)

-C



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
C R
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

C R

I pan with space plus single touch drag, but I could pan with two fingers up/down and left/right. This works too. Object away, I'm all ears! :D
-C

On Mar 21, 2017 6:15 PM, "Vladimir Savic" <[hidden email]> wrote:
Hi C,

Can you tell me how do you pan the canvas using multitouch gestures on Lenovo X220T? I have some objections to your proposal, but first I would like to know more about other multitouch devices. It might be that I am missing something obvious. 

Vlada

On Tue, Mar 21, 2017, 16:35 C R <[hidden email]> wrote:
Just tried, and works well!

Someone mentioned changing to a more tablet-friendly hotkey combo,
however it might be noted that most of the tablets currently on the
market support multitouch, and therefore support two-finger dragging
as a scrollwheel action by default. I have confirmed this on my Lenovo
X220T, and I think it works reasonably well as-is... much better than
using the third mouse button, which may or may not be present at all,
or cluttering the ctrl+alt key combinations with what's essentially a
nice-to-have feature that's not mission critical in most
circumstances.



That said, when Inkscape gets more brushes, and Ubuntu supports
mutli-touch rotation actions, this should be a great drawing feature
that will definitely allow users to "Draw Freely". ;)

One minor problem is that when using the mouse wheel for rotation, it
skips over 45 degrees. I recommend the default increment to 15 degree
angles rather than 2 degree increments for the following reasons:
1. It corresponds to the default snap-to angles of holding the alt key
while drawing lines etc, so the problem mentioned earlier about the
tools "not rotating" with the canvas is masked (will still work as
expected/wanted by the user at 15 degree angles)
2. Covers all the most useful angles for constructing things.
3. Keeps the user from having to flick the mouse wheel more than a few
times to get the desired angle.
5. Can be overridden easily in a variety of ways for the edge cases
that need a slight rotation.

Great work Tav!

Would you like me to do a video for the feature that you can post?
I'd be glad to help. :)

-C



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
C R
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

C R

My external wacom tablets work the same way, too, if it helps. :)

On Mar 21, 2017 6:28 PM, "C R" <[hidden email]> wrote:

I pan with space plus single touch drag, but I could pan with two fingers up/down and left/right. This works too. Object away, I'm all ears! :D
-C

On Mar 21, 2017 6:15 PM, "Vladimir Savic" <[hidden email]> wrote:
Hi C,

Can you tell me how do you pan the canvas using multitouch gestures on Lenovo X220T? I have some objections to your proposal, but first I would like to know more about other multitouch devices. It might be that I am missing something obvious. 

Vlada

On Tue, Mar 21, 2017, 16:35 C R <[hidden email]> wrote:
Just tried, and works well!

Someone mentioned changing to a more tablet-friendly hotkey combo,
however it might be noted that most of the tablets currently on the
market support multitouch, and therefore support two-finger dragging
as a scrollwheel action by default. I have confirmed this on my Lenovo
X220T, and I think it works reasonably well as-is... much better than
using the third mouse button, which may or may not be present at all,
or cluttering the ctrl+alt key combinations with what's essentially a
nice-to-have feature that's not mission critical in most
circumstances.



That said, when Inkscape gets more brushes, and Ubuntu supports
mutli-touch rotation actions, this should be a great drawing feature
that will definitely allow users to "Draw Freely". ;)

One minor problem is that when using the mouse wheel for rotation, it
skips over 45 degrees. I recommend the default increment to 15 degree
angles rather than 2 degree increments for the following reasons:
1. It corresponds to the default snap-to angles of holding the alt key
while drawing lines etc, so the problem mentioned earlier about the
tools "not rotating" with the canvas is masked (will still work as
expected/wanted by the user at 15 degree angles)
2. Covers all the most useful angles for constructing things.
3. Keeps the user from having to flick the mouse wheel more than a few
times to get the desired angle.
5. Can be overridden easily in a variety of ways for the edge cases
that need a slight rotation.

Great work Tav!

Would you like me to do a video for the feature that you can post?
I'd be glad to help. :)

-C



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Vladimir Savic-3
Everything helps! Do you use Cintiq or Intuos Touch? We need to do this right. ;-) Unfortunately, I don't have access to my computer right now. Tomorrow is a new day...


On Tue, Mar 21, 2017, 20:16 C R <[hidden email]> wrote:

My external wacom tablets work the same way, too, if it helps. :)

On Mar 21, 2017 6:28 PM, "C R" <[hidden email]> wrote:

I pan with space plus single touch drag, but I could pan with two fingers up/down and left/right. This works too. Object away, I'm all ears! :D
-C

On Mar 21, 2017 6:15 PM, "Vladimir Savic" <[hidden email]> wrote:
Hi C,

Can you tell me how do you pan the canvas using multitouch gestures on Lenovo X220T? I have some objections to your proposal, but first I would like to know more about other multitouch devices. It might be that I am missing something obvious. 

Vlada

On Tue, Mar 21, 2017, 16:35 C R <[hidden email]> wrote:
Just tried, and works well!

Someone mentioned changing to a more tablet-friendly hotkey combo,
however it might be noted that most of the tablets currently on the
market support multitouch, and therefore support two-finger dragging
as a scrollwheel action by default. I have confirmed this on my Lenovo
X220T, and I think it works reasonably well as-is... much better than
using the third mouse button, which may or may not be present at all,
or cluttering the ctrl+alt key combinations with what's essentially a
nice-to-have feature that's not mission critical in most
circumstances.



That said, when Inkscape gets more brushes, and Ubuntu supports
mutli-touch rotation actions, this should be a great drawing feature
that will definitely allow users to "Draw Freely". ;)

One minor problem is that when using the mouse wheel for rotation, it
skips over 45 degrees. I recommend the default increment to 15 degree
angles rather than 2 degree increments for the following reasons:
1. It corresponds to the default snap-to angles of holding the alt key
while drawing lines etc, so the problem mentioned earlier about the
tools "not rotating" with the canvas is masked (will still work as
expected/wanted by the user at 15 degree angles)
2. Covers all the most useful angles for constructing things.
3. Keeps the user from having to flick the mouse wheel more than a few
times to get the desired angle.
5. Can be overridden easily in a variety of ways for the edge cases
that need a slight rotation.

Great work Tav!

Would you like me to do a video for the feature that you can post?
I'd be glad to help. :)

-C



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Update to window rotation.

Jean-Francois Lemaire
In reply to this post by Tavmjong Bah
I too use an Intuos tablet but I disabled the touch feature because I hate it. I hope modest stylus users like myself won't be forgotten.

Cheers,
JFL
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
12
Loading...