[haiku-development] Re: ShowImage patch

I've looked at the ShowImage zoom routines, and a clean implementation of better zooming isn't as easy as it seemed at first glance. Not that hard, but I don't have the time for it right now. I'll look into this later, but probably only after I implemented a SSE2 version of the ScaleBilinear function, which is far too unrealtime for my taste.


I will implement the interface changes, though. Before we go to the changes, a list of the current behavior (I omitted File and Edit operations) just for reference:

         Direct key commands
Enter: next image
Backspace: previous image
+, =: zoom in
-: zoom out
Space: toggle slideshow
Esc: stop slideshow + exit fullscreen + cancel selection
Del: delete image
Cursor: move image

         Shortcuts
Alt f: fullscreen mode
Alt +: zoom in
Alt -: zoom out
Alt Up/Down: next/previous image
Alt Left/Right: multi-image navigation: prev/next page (for TIFF?)
Shift Alt Left/Right: multi-image navigation: first/last page
Alt [: rotate counterclockwise
Alt ]: rotate clockwise

        Mouse
LMB: select region
MMB: move image
RMB: popup menu / move selected region
Wheel: scroll image vertically



The planned changes are:

         Direct key commands
Down/Right: next image
Up/Left: previous image

New behavior I would recommend:
Shift+Cursor: move image
Alt+Return: toggle fullscreen (learned behavior from some Windows programs - maybe other platforms, too?)

        Shortcuts
I strongly recommend changing the Rotate shortcuts; on German keyboards Alt+[ and Alt+] are unselectable (unless I'm doing something wrong here or it's VMWare). This also goes for Alt+{, Alt+} and Alt+\; all these keys are accessed with the right Alt key, but this prevents selection with the left Alt key. This information should go into a UI style guide, I think.
Anyway, my proposal:
Alt r: rotate clockwise
Alt Shift r: rotate counter-cw
(If there's disagreement about the proper direction for plain rotation with "Alt r", please just the votes - I'll count 'em & the majority has it.)

        Mouse
LMB, MMB, RMB: unchanged
Wheel: zoom image; wheel up zooms in, down zooms out
+Shift: scroll vertical
+Alt or Ctrl: scroll horizontal


I hope I didn't miss anything. I'll implement the changes when the votes are in and any possible discussions have quieted down.

Christian

Other related posts: