[Libreoffice-ux-advise] [PATCH] Mouse centered zooming concept

Tim Hardeck thardeck at suse.de
Thu Mar 22 08:49:29 PDT 2012


I just wanted to specify some issues I would like to get feedback on:

- My implementation just determines how far the mouse is away from the
center of the window on the X and Y scale. If it is further away then
20% (25% in case of Calc) from the center on at least one side the
document focus is shifted into this direction during mouse wheel zooming.

I need advise how big this tolerance area should be.

- I would also like to know how big the shifts should be during each
zoom step in relation to my current implementation.

- Than there is a problem in Writer that if the zoom is below a certain
value the document is not centered anymore to make place for other
pages. But the calculation of the mouse position depends on the window
and not the document which feels unintuitive in this case.
Probably just something the user would get used to and it only effects
up and down scrolling but I wanted to point it out.

Because this changes might be not liked by everybody I thought
integrating an option to turn it off might be a good idea but I got the
advise not to because there already more than enough.
So what do you think about this subject?

And what is your oppinion about cursor centered zooming as a fallback in
case of Writer? I could create a separate patch since atm it has to be
manually activated in my implementation by disabling
bMouseCenteredZooming in sw/source/ui/uiview/viewmdi.cxx .

If you need any additional information or a little video to demonstrate
the behavior let me know.


On 03/16/2012 08:28 PM, Tim Hardeck wrote:
> Hi,
> this patch integrates mouse centered zooming. There is a tolerance
> area in the center where the direction isn't changed during zooming.
> Outside of it the position of the mouse is used to zoom in this
> direction.
> This is a just a concept patch for review by ux-advise not for submit.
> By default the direction during zoom out is reversed to get back near
> the starting point.
> I have also added cursor centered zooming for Writer because it was the
> only LO application with an unintuitive zooming behavior.
> So if mouse centered zooming is disabled (in the concept just set
> bMouseCenteredZooming to false) the cursor is used as the center
> instead of the upper left corner.
> Mouse centered zooming should work in Calc, Draw, Impress and Writer but
> the code is still messy.
> If it is Ok this way I try to clean it up and reduce redundancy.
> We should also discuss how big the center area is supposed to be, if it
> should be different for some LO application and how fast the location
> should be shifted during zooming.
> Regards
> Tim

SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix
Imendörffer, HRB 16746 (AG Nürnberg)
Maxfeldstr. 5, 90409 Nürnberg, Germany
T: +49 (0) 911 74053-0  F: +49 (0) 911 74053-483

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freedesktop.org/archives/libreoffice-ux-advise/attachments/20120322/eb34a560/attachment.pgp>

More information about the Libreoffice-ux-advise mailing list