In Seamly2D on my Mac, the standard “Command +” shortcut does not zoom in. If the contents of the window are smaller than the window, “Command +” will cause the window contents to fit the window, otherwise "Command + will just cause the content to redraw, but at the same zoom. The Zoom In button works, but not the shortcut. I am using 2024.8.5.155 on an Intel Mac running Sonoma 14.5
Hello and welcome to the Seamly2D Forum, @TonyJ
I’m sorry that I don’t have a Mac to test this with, it works perfectly on my Windows. Perhaps @csett86 will come by and check this?
You need to press Command + Shift + Equal… you’re just pressing Command + Equal which is the Zoom to Fit. In other words the Plus key is Shift + Equal.
If you have a Numpad, you should be able to just Press Command + “+”.
Thank you for your report, @TonyJ !
I just tested the same current Seamly2D version 2028.8.5.155 with an older macOS version, 12.7.5 (macOS Monterey) and there its still working as you expected , @TonyJ: Command + “+” zooms in, Command + “-” zooms out. I will retest on macOS Sonoma 14.5.
So my theory at the moment is that its an issue with newer macOS releases… but I will double-check.
Again… my theory is he didn’t press Command + Shift + Equal… the plus sign is the upper case equal… which if you press just Command + Equal it Zooms to Fit - as expected.
I tried Command + Shift + = and it does zoom in, however, the standard zoom in shortcut on a Mac is “Command =” It is often (incorrectly) called “Command +” by lot of people (including me and apparently csett86) because it is intuitive and it is the + key, even though it is not really + without SHIFT. I aplogise to Douglas for any confusion I have caused. As far as I know there is no standard shortcut for zoom to fit, some apps use Command 0, which makes sense. Can Seamly please implement the standard Mac zoom in shortcut “Command =”
@TonyJ Maybe its a keyboard layout thing?
On my German mac keyboard layout, the keys “+” and “-” are directly accessible, so zooming in is CMD + “+” and zooming out is CMD + “-”.
I also just tested it with macOS Sonoma 14.5, so zooming in and out works on Seamly with the for me normal zoom in and zoom out shortcuts.
Firefox for example uses the same shortcuts here to zoom in (CMD + “+”) and out (CMD + “-”):
So does “Preview”
So which keyboard layout and language setting do you use, @TonyJ ? Can you maybe send a screenshot of Seamlys “View” menu, as the used shortcuts are shown there as well…
That already is used for Zoom 1:1… or basically 100%
I can, but it raises a few other questions.
- What shortcut do we then use for Zoom to Fit? Command + Shift + “=” ?
- Can I assume that the zoom out is Command + Minus… Meaning no need to change.?
- I would also have to update the Shortcuts dialog to display the correct Mac shortcuts.
l
- How does this affect current Mac users who may be used to Command + Shift + '=" ? If the majority of Mac users are for the change I can’t argue. For that matter what’s the opinion of current Windows / Linux users? Would they find it easier to just use Ctrl + Minus and Ctrl + Equal and skip the SHIFT for the zoom in / out? It would be way easier for me to just swap the the 2 shortcuts for all OS’s. I strictly use the mouse wheel to zoom, so I’m not the one to ask. BTW… in any case this would not affect the num pad ± shortcuts.
Ideally the solution is to implement user defined shortcuts where you can configure your own shortcuts, but it’t not a simple feature to implement, and pretty much defeats the purpose of easily defining and maintaining the shortcuts in Creator.
Me too, in graphics applications. In Firefox I use <ctrl =>
Here’s the inkscape zoom menu in linux:
Note that that “+” is an unmodified “=” key.
I am using a keyboard layout compatible with the markings on a typical American keyboard.
1 - probably not Command + Shift + “=” as this is essentially equivalent to Command + “+” and is going to get confusing. Seeing zoom 1:1 is Command + 0, then making zoom to fit Command + 9 makes sense. This approach allows for the addition of other zoom variants (not that I can think of any) by using Command + 8 etc 2 - Yes 3 - Yes 4 - I can’t see how Mac users can complain as this is the standard that they would be using for every other app and it saves an extra keystroke. It appears that the European keyboard gets around the issue as the + key is the default, so they will not be affected. I can’t speak for windows and linux users
I just checked… the old Inkscape didn’t have shortcuts… the Newer version uses MINUS and EQUAL to Zoom out and Zoom In… the Menu shortcut is INCORRECT… it should be =. Personally I would stick with Ctrl / Command + MINUS and EQUAL as that seems to be more the standard - which Inkscape does not always do.
I checked MS VS and it uses:
Which I’m sure is the standard for Windows.
How so… one is Command + =, and the other is Command + +
If I change the Zoom in shortcut, I have to also change the Zoom to Fit shortcut… all I’m saying is the logical thing to do is just swap the two… so Zoom in is Command + EQUAL and Zoom to Fit is Command + SHIFT + EQUAL. I’m not going to come up another new shortcut for Zoom to Fit, and really throw off existing users.
Thats fine just swap them then
Please dont swap them lightly @Douglas
The US layout may have them on the same key (and = easier to reach without shift than +), but eg for German keyboard layout, the + is easy, while the = is somewhere else and behind a shift modifier.
@TonyJ can you please share the shortcuts from preview for the US just like I did for the german version above?
But what could help is using the following Standard Key-Sequences from Qt that are meant to be cross-platform, and hopefully also layout-dependent: QKeySequence Class | Qt GUI 5.15.17
If we are not doing that anyway already (did not check the code before…)
That’s what it is now. Unless the shortcut in the form is generating the key seq Ctrl+ Shift + Equal
I can probably just add this to the list of sequences for the zoomIn action:
zoomInShortcuts.append(QKeySequence(Qt::ControlModifier + Qt::Key_Plus));
And if I understand correctly, on the Mac builds it will actually translate it to Qt::ControlModifier + Qt::Key_Equal ?
Which is the easiest solution to me.
I should have checked the code first, sorry! Was on my mobile…
As we already have the standard key sequences, I dont think that adding anything will help, but quite the contrary, it might break it further:
QList<QKeySequence> zoomInShortcuts;
zoomInShortcuts.append(QKeySequence(QKeySequence::ZoomIn));
QList<QKeySequence> zoomOutShortcuts;
zoomOutShortcuts.append(QKeySequence(QKeySequence::ZoomOut));
QList<QKeySequence> zoomToFitShortcuts;
zoomToFitShortcuts.append(QKeySequence(Qt::ControlModifier + Qt::Key_Equal));
But my suspicion is that if “zoom in” for some locales/keyboard layouts really is “Ctrl + =”, then our zoomToFit assignment overwrites that and thats why “zoom in” then no longer works.
I checked for “default” zoom to fit, and on mac in the Preview app that is “Cmd + 9”, and zoom to 100% is “Cmd + 0”:
What I will check later is whats behind the standard keybindings, via QKeySequence Class | Qt GUI 5.15.17
Ah… you may be correct. The zoomin / zoomout shortcuts should be removed from the ui for the actions… and then the code will use the correct key sequence for OS and locale.
zoomToFitShortcuts.append(QKeySequence(Qt::ControlModifier + Qt::Key_Equal));
This is redundant… the shortcut is already defined in the UI, but like you said, it’s interfereing with the zoomin / zoomout. I can just cut this line and change it to Ctrl + 9 to the UI and remove the C++ and C+= from the UI and we should be good.
Thanks @csett86
I quickly made those changes and it all seems to work on my end correctly… on a US keyboard with windows.
Tomorrow I’ll finish it off by fixing all the menu, toolbar, and Shortcuts dialog text. When I make a PR I’ll have you review so you can check to make sure it works correctly with a German keyboard on a Mac… which I assume is what we’re going for.