Move selected parts

Hello!
I don’t know if I’m the only one in this case, but there is a feature that I absolutely don’t like and
that looses me (re)routing time.
For example: I’m placing a part on the PCB, and for some reason it’s selected. Now I want to move
another part to make space for the new one. I point the part I want to move (hover only), I press M,
but the last part was still selected, and I end up moving the wrong part. Similarily for rotate, if I hover
on some part and press rotate, then if there is a selected part somewhere, that part will be rotated,
and I may not notice what happens because the screen position is not changed. So I may end up
rotating a part outside of the displayed field without even be aware of it.
Ideally (at least from my point of view), priority should be given to the part at the mouse pointer.
Whether that part is selected or not should be irrelevant. And for group moves it would be rather
simple. If the currently pointed part belongs to a selected group, then move the group (same
behavior for rotate). If a group is selected and I try to move a part that doesn’t belong to the group,
then leave the group selected but move the pointed part only.
But I’m just thinking it may be a matter of configuration, so first, is there a configuration to do that?
Thanks

Addendum:

Application: KiCad PCB Editor x86_64 on x86_64

Version: 7.0.5-7.0.5~ubuntu23.04.1, release build

Libraries:
wxWidgets 3.2.2
FreeType 2.12.1
HarfBuzz 6.0.0
FontConfig 2.14.1
libcurl/7.88.1 OpenSSL/3.0.8 zlib/1.2.13 brotli/1.0.9 zstd/1.5.4 libidn2/2.3.3 libpsl/0.21.2 (+libidn2/2.3.3) libssh/0.10.4/openssl/zlib nghttp2/1.52.0 librtmp/2.3

Platform: Ubuntu 23.04, 64 bit, Little endian, wxGTK, ubuntu, wayland

Build Info:
Date: May 31 2023 23:54:48
wxWidgets: 3.2.2 (wchar_t,wx containers) GTK+ 3.24
Boost: 1.74.0
OCC: 7.6.3
Curl: 7.88.1
ngspice: 38
Compiler: GCC 12.2.0 with C++ ABI 1017

Build settings:
KICAD_SPICE=ON

1 Like

I’ve never found one.

I either press Esc > Hover > Move or Left mouse click > Hold left mouse button down and move (without using hotkey). Usually it is the latter.

For schematic, a long left click with button continued to be held down both changes the selection and allows Move.

1 Like

I personally also find this a small pita

I would prefer that pressing a hotkey like M, R, E or whatever would be inclined to apply to the currently poined part instead of the currently selected part.

Kind regards,

Bas :coffee:

.

1 Like

But M etc. will apply to more than just parts and if there are overlapping things that can be Moved, Rotated etc. which one should be acted upon ?

I would prefer that pressing a hotkey like M, R, E or whatever would be inclined to apply to the currently poined part instead of the currently selected part.

If I recall correctly this was the legacy kicad behaviour (v5 and older) and many users complaint about that. I think with v6 this changed. (For me the best change ever - otherwise I would still use the abandoned eagle)
Interestingly together with this change the kicad user base increased very much.

Well simple really. If you have a group of footprints (and tracks and whatever) selected, pressing M should apply to the group. But only when more than one item is selected.

It would be a bigger pita, if you carefully made a group selection and you lose your selection by accident. That would suck.

@roboya
The easiest thing you can do now, is first left click on some empty space next your footprint. This will deselect any other thing. You can also left click on your new component. But that will select that one ofcourse. And that could migrate the problem to a different moment.

I always try to prevent from selecting stuff in the first place. If you hover over a thing and press M you can move and place the thing and leave it unselected afterwards.

What I would like to see is that you can commit a place by pressing M a 2nd time instead/as addition to a simple mouse click. That somehow feels more intuitive, but just my 2 cents.

Bas

I have noticed the same problem since V6 or V7. I had never had that problem working with V5.
Till now I always (many times a day) noticed it and pressed Esc before solid damage takes place.

Not the same but similar:

When I select a group at schematic then point with mouse at PCB and want to move (by M hotkey) the selection at PCB then selection at schematic is moved.

1 Like

But you said . . .

When you have overlapping vias, tracks parts and potentially text how is the software to know what you mean to be currently pointing at ? is it the via ? is it the track ? is it the part ?

how is the software to know what you mean to be currently pointing at ?

This is not relevant as it would not need to be different than it is now. Kicad always prompts you if it does not know what you want. This can just stay the same with the suggested proposals.
afbeelding

So that is no different to what we have already . . . forgive me if I am misunderstanding, but what you are really talking about is not the selection of the part to be moved/rotated/etc. but the deselection of the last part that was moved/rotated/etc ?

1 Like

but what you are really talking about is not the selection of the part to be moved/rotated/etc. but the deselection of the last part that was moved/rotated/etc ?

This is a spot on conclusion. You see… deselecting the currently selected footprint solves the OP’s problem, despite it is workaround.

Keep in mind what the actual problem is, or the discussion will derail fo’ sur’ :policeman:t2:

For example: I’m placing a part on the PCB, and for some reason it’s selected. Now I want to move
another part to make space for the new one. I point the part I want to move (hover only), I press M,
but the last part was still selected, and I end up moving the wrong part.

Here the left footprint is currently selected. That sucks because I want to move the right one.

Out of convenience I want to do so by pressing M. This is how you move things, you hover the mouse over a thing and you hit M. It is the order of things.

However if I do so now, if I hover above the right footprint and hit M, I will move the left one by accident because it is currently selected. This is what this thread is about. This is what OP and I both consider annoying.

To go back to the order of things, you need to deselect the left footprint first if you want to move the right one with M. In order to deselect you can press escape. Like piotr mentioned. I often to this as well. I press escape alot, more than I like.

Till now I always (many times a day) noticed it and pressed Esc before solid damage takes place

Than I said: You can just left click on empty space, that will also deselect the left footprint. And will allow you to use M again like you it is supposed to.

I often experience this problem. I hover above a footprint, completely unaware that an other footprint is selected. I hit M and all the sudden there is yet again a completely different footprint in front of me. Blast!! It happend to me again? :cry:

So now I either wack the escape key or I click on empty space to let the problem go away. But I’d prefer that M would deselect the left footprint and move the right footprint like I wanted to in the first place.

Bas

1 Like

In V7 I can verify that the selection does change. This also works the same in pcb new.

But mine won’t go to move mode at all. So a short press does the exact same thing as a long press.

Hello!

That’s why I would suggest

if something is under the mouse pointer when pressing M, R, etc... {
    if this element is selected (whatever it is, part, trace, via, text) {
        Move all the selected elements.
    }
    else if another element is selected (but not under the mouse pointer) {
        Move the element under the pointer only, and don't deselect the other elements, maybe some
        other action is on the way.
    }
    else } // if nothing is selected
       Move the pointed element.
    }
}
else { // If there is nothing under the mouse
    Don't move, rotate anything.
}

Overlap is yet another issue. There is already a popup menu asking which one you want to
select. That’s just fine, there is nothing to be change, I think.

Sorry, I incorrectly wrote the description above. I have corrected it.

For schematic, a long left click with button continued to be held down both changes the selection and allows Move.

As mentioned above, I stopped bothering with the Move function, instead now I use Left Mouse Click followed by Left Mouse Hold-down.
I no longer have to remember to Esc first. :slightly_smiling_face:
Unless I use the G key which means I need to remember the Esc key. :frowning_face:
But there is no G key in PCB :open_mouth:
Instead there is a D key which requires an Esc key first :upside_down_face:

Ah well, the joys of CAD programmes. :+1:

I suppose life was not meant to be too easy. :smiley:

We all need to make the occasional compromise.

1 Like

I want to re-emphasize what @mf_ibfeew mentioned earlier:
KiCad 5.x.x and earlier worked on a pointing-first basis and it confused a lot of people who were coming to eCAD for the first time. This is not a bug, this was a decision made after a lot of discussion by the core development team in order to make most of the shortcuts operate in a coherent way with other modern software user interfaces. The compromise was the result we have now, where if nothing is selected the move/copy/drag shortcuts still operate on a pointing system. Sometimes I still get tripped up trying to use the pointing first system and move a previously selected part, but undo’s are cheap so it hasn’t bothered me much. In fact, I’ve come to really appreciate the change after trying to teach KiCad to many summer interns from v5 to v7.

4 Likes

The problem is that both the ‘hover move’ and the ‘selected move’ are executed by the same key - this is an inconsistent behavior, as the same key does two slightly different things without clear context differentiation to the user.
I was trying to recall why I don’t have this issue with Altium, and its because Altium only does hover moves on single parts or selections ( technically its a right-click, ‘M’). If you want to move a group of selected parts, you have to hover on the selection to move it. This neatly avoids unintentional moving of a selection that’s off-screen.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.