Eeschema: actions disabled during move operation can be accessed via hotkeys

Bug #1092837 reported by Jacobo Aragunde Pérez
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
KiCad
Fix Released
Low
Unassigned

Bug Description

Application: Eeschema
Version: (2012-12-20 BZR 3860)-testing
Build: wxWidgets 2.8.12 (no debug,Unicode,compiler with C++ ABI 1002,GCC 4.7.2,wx containers,compatible with 2.4,compatible with 2.6)
Platform: Linux 3.6.10-2.fc17.x86_64 x86_64, 64 bit, Little endian, wxGTK
Distro: Fedora 17
Boost version: 1.49.0
Options: USE_PCBNEW_NANOMETRES=ON
         KICAD_GOST=OFF
         USE_WX_GRAPHICS_CONTEXT=OFF
         USE_WX_OVERLAY=OFF
         USE_BOOST_POLYGON_LIBRARY=OFF
         KICAD_SCRIPTING=OFF
         KICAD_SCRIPTING_MODULES=OFF
         KICAD_SCRIPTING_WXPYTHON=OFF

Steps to reproduce:
* Open a new or existing document, create a new hierarchical sheet in it.
* Right click on it. You will see that option "Edit Sheet" is associated to the hotkey "E".
* Start a move operation on the hierarchical sheet (pressing "M" or "right click -> Move Sheet").
* Right click while performing the move operation. You will notice that the option "Edit Sheet" is not present.
* Close the right click dialog ("Close" option) and press "E". The edition dialog will open even though it is not listed among the allowed operations in the context menu.

Revision history for this message
Jacobo Aragunde Pérez (jaragunde) wrote :

This bug can be reproduced with other component types, for example images.

Changed in kicad:
status: New → Fix Committed
Revision history for this message
Jacobo Aragunde Pérez (jaragunde) wrote :

I would like to take a look at the patch, I cannot find it in the testing branch. Would you mind pointing to the specific revision number?

Revision history for this message
jean-pierre charras (jp-charras) wrote :

main rev is 3870.
A related fix was made in rev 3881.

Revision history for this message
Jacobo Aragunde Pérez (jaragunde) wrote :

Hi again.

I've detected some regressions related with your fix, in particular:
* X and Y hotkeys don't work any more with groups, but they should.
* E, F, U, V hotkeys should work while dragging since patch https://lists.launchpad.net/kicad-developers/msg09267.html
* Not derived from your patch, but related:
  * Rotate operation is available for groups, should have a hotkey.
  * Mirror operations for images should have hotkeys too.
  * It's safe performing an edit operation while moving an image but it's not available from context menu.

I'm attaching a patch to fix this list of items. Thanks in advance for reviewing ;)

Changed in kicad:
status: Fix Committed → In Progress
Revision history for this message
jean-pierre charras (jp-charras) wrote :

Edit image: works OK.
E, F, U, V hotkeys should work while dragging:
the undo function does not work (the block drag in undone, but not the component changes while dragging).
X, Y, R hotkeys while moving with groups:
Does not work as expected: the block is mirrored or rotated, but the move command is cancelled, and the block mirror or rotate is made to the block back to its initial position: this is not expected, I think.

For complex block operations: be prudent with undo/redo commands.

Revision history for this message
jean-pierre charras (jp-charras) wrote :

After more test:
When dragging a component, only edition by E hotkey is not undoable. Changes by F, U, V are undoable.
X, Y, R hotkeys while moving block: I was thinking you want to do the corresponding block command and still keep the block moving
(like when moving a component). Currently this is the same command as the pop-up menu. This is OK for me.

So just fix the undoable edition by E hotkey.
(Just be careful when modifying the undo code)

Revision history for this message
Antia Puentes (apuentes) wrote :

Hi! I've been working as well on this. I'm attaching 3 patches that fix the following issues:
 1. "E, F, U, V hotkeys are not working anymore while dragging" (01-Fix-hotkeys.patch)
 2. "Hotkey 'E' works while moving an image, but the Edit submenu doesn't appear in the contextual menu" (02-Edit-image.patch)
 3. "Editing operations while dragging can not be undone" (03-Fix-undo.patch)

Revision history for this message
Antia Puentes (apuentes) wrote :

The patch activates the hotkeys to edit an item that constitutes a block and adds the missing hotkey messages in the contextual menu.

Revision history for this message
Antia Puentes (apuentes) wrote :

The patch add the missing option in the image context menu and also allows to edit images constituting a block, as it is now possible for other types of elements.

Revision history for this message
Antia Puentes (apuentes) wrote :

When editing an item in a block, the item is now added to the items undo list.

Revision history for this message
jean-pierre charras (jp-charras) wrote :

I am not able to apply these patches: I get errors.
Please, rebuild them from the trunk.
Thanks.

Revision history for this message
Antia Puentes (apuentes) wrote :

Wonder if the problem was that the patches weren't applied in order. I forgot to mention that the second patch ( 02-Edit-image.patch) should be applied after the first one (01-Fix-hotkeys.patch) as both patches are related and make changes in the same file.

Revision history for this message
jean-pierre charras (jp-charras) wrote :

Committed. Thanks

Changed in kicad:
status: In Progress → Fix Committed
Revision history for this message
Antia Puentes (apuentes) wrote :

Looking at the repository log, I saw that there is a mistake in the author field of the commit. I should be the author, not Jacobo.

Revision history for this message
jean-pierre charras (jp-charras) wrote :

Sorry!
But I have no idea about how to change a repository log.

Revision history for this message
Antia Puentes (apuentes) wrote :

You can't. The revisions in Bazaar are immutable. Don't worry ;-)

Martin Errenst (imp-d)
tags: added: hotkey
removed: hotkeys
Jon Neal (reportingsjr)
Changed in kicad:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.