Jump to content
You must now use your email address to sign in [click for more info] ×

Allow objects to snap to their “ghost”, initial position during drag operations


Recommended Posts

  • Staff
21 hours ago, JGD said:

Designer always makes things more complicated than they are in Illustrator, and even if ghosts and self-snapping are added, it will remain so until this modifier+click+drag situation is solved. Serif does have some deep-seated issues when it comes to modifier keys, with a lot of functionality duplication and [conscious?] trampling on Apple's HIG going on.

 

Can someone refer me to the part of the OSX HIG that states that Option/Alt is only to be used for duplication.  The only reference I can find relates to drag-drop between standard UI containers (list boxes, and alike). Can't find any statement that Option/Alt should never be used in any other way.

 

The HIG also only covers modifier key combinations in relation to shortcuts and menu items.  It does not make restrictive comment about modifiers in the way that we use them, to augment mouse tool interactions.  For example, it makes no comment on widely accepted conventions that extend beyond common UI components - such as Shift to constrain aspect ratio.  These concepts are specific to certain types of application, but are still commonplace.

 

So, unless someone can refer to the specific comments on this, just waving around the term "Apple's HIG" is a bit pointless.  Bear in mind Apple has passed our application submission (many times) with no issues on us abusing or contravening any of their standards - and believe me, they can be quite pedantic.

SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB
Link to comment
Share on other sites

@Ben I must admit I'm not familiar with the nitty gritty of apples HIG but is it not as much about convention? When we press the keyboard key with an 'A' you expect to get an 'A' or 'a'.

When basically every app does something a certain way it is jarring to go contrary to it.

I've just gone through every app I have in my dock. Apart from apps like Toggl, address book, sonos and WhatsApp, they all conform to the standard behaviour for option.

Maybe you can explain it, but what I don't understand is why the disable snapping behaviour was not given to CMD which typically does not have a modifier function when dragging, rather than making them both kind of do the something similar in terms of copying, but awkwardly doubling up the disable snaps with Option. I'm sure there must be a really watertight logic as to why this confusing outcome was arrived at?

Link to comment
Share on other sites

Many folks could live with the Ctrl + Alt + Z to undo in Photoshop and with Alt + Mouse Wheel for Zoom In/Out, in said Application on Windows, so I don’t see the problem.

Best regards!

Link to comment
Share on other sites

  • Staff

We started with our fundamental tools in Designer - the Pen and Node tools.  We chose keys on how easy they are to use in combination.  The Cmd key rests under the thumb so is easier to use in isolation - we chose that to temporarily switch to Node tool while in Pen tool.  That opens up a lot of control in Pen tool without having to switch tools.

 

The other three key then sit under your other fingers, which cognitively work independently of your thumb.

 

Shift is always used for constraining - aspect ratio or direction.  So that is a fixed convention for us.

 

That leaves the other two keys.  We looked into snapping in general, and decided that a way of temporarily cancelling snapping was very useful (note that snapping is not just alignment snapping, but anywhere that a tool snaps to some position).  We chose Option/Alt because it worked better with other key combinations while using the Pen/Node tool.  Your index finger is easier to operate independently while other fingers are in a static position - so fast toggling of a key under the index finger is easiest. That's a product of musculature and cognitive process.  Put all four fingers down flat, and try raise each in turn - you'll see they get progressively harder from index to little finger.

 

Following these conventions we've provided a lot of additional functionality in the Pen and Node tools.  The balancing of the use of modifier keys gives capabilities that other vector apps don't offer.  We'd also rather follow a single convention across all of our tools, rather than use different modifiers in different tools to provide the same control.

 

Of course, the Apple HIG makes no reference at all to any of these considerations...

 

The Cmd or Option to clone during drag issue came about because we started with Cmd to clone, but a small number of users claimed the Apple convention was infallible and that they couldn't cope - so we had to compromise and enable Option to clone (even though many users already expected it to cancel snapping), against all our intentions.

SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB
Link to comment
Share on other sites

1 minute ago, Mithferion said:

Many folks could live with the Ctrl + Alt + Z to undo in Photoshop and with Alt + Mouse Wheel for Zoom In/Out, in said Application on Windows, so I don’t see the problem.

Best regards!

Reading between the lines here, I take it that the behaviour was settled upon because of standardisation with Windows?

If so, I'm sorry but that's really dumb. People tend to use either Mac or Windows. It is much more important that the app is consistent with other apps on a given platform.

Link to comment
Share on other sites

  • Staff
6 minutes ago, robinp said:

Reading between the lines here, I take it that the behaviour was settled upon because of standardisation with Windows?

If so, I'm sorry but that's really dumb. People tend to use either Mac or Windows. It is much more important that the app is consistent with other apps on a given platform.

No - we developed on Mac first.

SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB
Link to comment
Share on other sites

3 minutes ago, Ben said:

We started with our fundamental tools in Designer - the Pen and Node tools.  We chose keys on how easy they are to use in combination.  The Cmd key rests under the thumb so is easier to use in isolation - we chose that to temporarily switch to Node tool while in Pen tool.  That opens up a lot of control in Pen tool without having to switch tools.

But if you're dragging an object around you aren't using the Pen tool and vice versa. Why not use Option for this? The history of the Option key is that it provides alternative functionality within a given tool, hence the name of Option or Alt.

3 minutes ago, Ben said:

Shift is always used for constraining - aspect ratio or direction.  So that is a fixed convention for us.

To me, it is less fixed than Option is for copy. Look at Rhino, they use tab to toggle this. Microstation uses return to toggle constraints. So actually, in the apps that I (and many others) use, the majority of the creative time I spend in apps is using other keys for this.

Personally, I actually really like the rhino solution of using tab and that it toggles on and off rather than having to hold the key down.

 

Link to comment
Share on other sites

  • Staff
20 minutes ago, robinp said:

But if you're dragging an object around you aren't using the Pen tool and vice versa. Why not use Option for this? The history of the Option key is that it provides alternative functionality within a given tool, hence the name of Option or Alt.

To me, it is less fixed than Option is for copy. Look at Rhino, they use tab to toggle this. Microstation uses return to toggle constraints. So actually, in the apps that I (and many others) use, the majority of the creative time I spend in apps is using other keys for this.

Personally, I actually really like the rhino solution of using tab and that it toggles on and off rather than having to hold the key down.

 

You can't change the states of the tab or return during a mouse drag process, while also in combination with other keys, such as Cmd. Cmd plus tab or return generate internal command messages.  The modifier keys are the only ones that work independently, and can be toggled during a mouse drag operation.  Also, if you can circumvent the internal command generation - the key positions are not good if you want to be able to toggle behaviour during your mouse drag.  I can't reach the return key unless I abandon any other modifier keys.

 

Having those four keys in close proximity opens up a lot of potential.  It's actually one of the limitations in Windows that we only have three keys - we've had to balance what feature we offer across both platforms such that the fourth modifier key is only used for the least common functions in tools.

 

SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB
Link to comment
Share on other sites

Just now, Ben said:

You can't change the states of the tab or return during a mouse drag process, while also in combination with other keys, such as Cmd. Cmd plus tab or return generate internal command messages.  The modifier keys are the only ones that work independently, and can be toggled during a mouse drag operation.

 

Sure, OK, I guess Rhino and Microstation have a different model of interaction where you click to select and move is an explicit command. My point still stands though, that Shift is not 'always' controlling constraints.

However, it still doesn't make sense to me why CMD wasn't given the snap control and Option/Alt left alone as a copy modifier.

Link to comment
Share on other sites

30 minutes ago, robinp said:

Reading between the lines here, I take it that the behaviour was settled upon because of standardisation with Windows?

If so, I'm sorry but that's really dumb. People tend to use either Mac or Windows. It is much more important that the app is consistent with other apps on a given platform.

On All other Apps that I've seen:

  • Undo: Ctrl + Z
  • Zoom In/Out: Ctrl + Mouse Wheel

Adobe, for some reason, decided to make changes, adding a Key to the Undo operation, and changing the key for the Zoom operation.

Best regards!

Link to comment
Share on other sites

  • Staff
Just now, robinp said:

However, it still doesn't make sense to me why CMD wasn't given the snap control and Option/Alt left alone as a copy modifier.

Didn't I just give you a VERY long explanation of how we chose the keys?????  7 posts back.

 

SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB
Link to comment
Share on other sites

1 minute ago, Mithferion said:

On All other Apps that I've seen:

  • Undo: Ctrl + Z
  • Zoom In/Out: Ctrl + Mouse Wheel

Adobe, for some reason, decided to make changes, adding a Key to the Undo operation, and changing the key for the Zoom operation.

I see. Now I understand. I guess it comes back to Windows having 1 less modifier key.

Link to comment
Share on other sites

  • Staff

....and Shift has always been for constraining in any creative app I've used that applies such conventions.  I think it's definitely an Adobe standard.

 

SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB
Link to comment
Share on other sites

34 minutes ago, Ben said:

Shift is always used for constraining - aspect ratio or direction.  So that is a fixed convention for us.

Excepto for the Artistic Text Tool and when talking about Groups:

  • Shift is not used to maintain aspect ratio.
  • Pressing Shift will change as desired, without maintining the aspect ratio.

Best regards!

Link to comment
Share on other sites

  • Staff
Just now, Mithferion said:

Excepto for the Artistic Text Tool and when talking about Groups:

  • Shift is not used to maintain aspect ratio.
  • Pressing Shift will change as desired, without maintining the aspect ratio.

Best regards!

Ok - I'll rephrase - Shift always affects Constraining - either enabling or cancelling.  Incidentally, that behaviour has an option in our preferences - you can opt to have object preferred constraining or always on or off.

SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB
Link to comment
Share on other sites

  • Staff
3 minutes ago, robinp said:

Yes, and I'm saying it doesn't make sense.

Then I'm not sure how I can explain it to you.... I tried.

 

How about you just accept that we did this all for a reason, in view of how all our tools work, and that it wasn't an accident.  Whether you agree with it or not is another matter.

SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB
Link to comment
Share on other sites

2 minutes ago, robinp said:

I see. Now I understand. I guess it comes back to Windows having 1 less modifier key.

On Adobe CS6, there was a mixe of things, because in Fireworks, Ctrl + Mouse Wheel did the Zoom operation, while in Photoshop, it's done with Alt + Mouse Wheel... So, even with their own Applications (Fireworks being acquired from Macromedia), they had this chaos, but it's easy to get used to it.

Best regards!

Link to comment
Share on other sites

1 minute ago, Ben said:

....and Shift has always been for constraining in any creative app I've used that applies such conventions.  I think it's definitely an Adobe standard.

 

Yes, but you said 'always' in the context of comparing with Option for copy. As in you were implying that Shift is always a standard where as Option is less so. To which I disagree and provided examples.

Rhino and Microstation are definitely creative apps.

Option always copies in Adobe apps.

It seems a bit of a muddled logic here.

Link to comment
Share on other sites

1 minute ago, Ben said:

Ok - I'll rephrase - Shift always affects Constraining - either enabling or cancelling.  Incidentally, that behaviour has an option in our preferences - you can opt to have object preferred constraining or always on or off.

The rephrase now says it all. And thanks, I never paid attention to that option. :$

Best regards!

Link to comment
Share on other sites

  • Staff
1 minute ago, robinp said:

Yes, but you said 'always' in the context of comparing with Option for copy. As in you were implying that Shift is always a standard where as Option is less so. To which I disagree and provided examples.

Rhino and Microstation are definitely creative apps.

Option always copies in Adobe apps.

It seems a bit of a muddled logic here.

...and as I explained, there is a bigger picture that we thought through at some length.  I think I've explained it enough now.

SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB
Link to comment
Share on other sites

2 minutes ago, robinp said:

Yes, but you said 'always' in the context of comparing with Option for copy. As in you were implying that Shift is always a standard where as Option is less so. To which I disagree and provided examples.

Rhino and Microstation are definitely creative apps.

Option always copies in Adobe apps.

It seems a bit of a muddled logic here.

When comparing with other Applications, there are going to be differences, but the way Affinity Apps work is comfortable for me.

Best regards!

Link to comment
Share on other sites

  • Staff
Just now, robinp said:

Or perhaps the decision making was illogical / flawed? It certainly seems that way.

Ok - like I said - you don't agree with it.  To say something is illogical implies that we didn't apply logic - when logic is exactly what we applied.  The logic we applied extended way beyond the very prescriptive and limiting standard that you are claiming is infallible.

SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.