Opened 13 years ago
Closed 13 years ago
#2426 closed defect (fixed)
Can drag blocks off pallette
Reported by: | tonyforster | Owned by: | walter |
---|---|---|---|
Priority: | Unspecified by Maintainer | Milestone: | Unspecified |
Component: | Turtleart | Version: | Unspecified |
Severity: | Unspecified | Keywords: | |
Cc: | rgs | Distribution/OS: | Unspecified |
Bug Status: | Unconfirmed |
Description
OS15 XO1 TA99
Click a block on the pallette (do not drag) then press the cursor keys or H J K L, can drag the blocks off the pallette.
Presumably this is a buggy side effect of intentional block and stack keyboard shortcuts? If so, it should be documented in the wiki? Why also H J K L? Is it a useful shortcut if you still need the mouse to select them?
Also in the process managed to create some phantom blocks on the canvas (real blocks not pallette creators) which give errors if you try to drag them:
Traceback (most recent call last):
File "/home/olpc/Activities/TurtleArt.activity/TurtleArt/tawindow.py", line 743, in _buttonpress_cb
self.button_press(event.get_state()>k.gdk.CONTROL_MASK, x, y)
File "/home/olpc/Activities/TurtleArt.activity/TurtleArt/tawindow.py", line 771, in button_press
self._block_pressed(x, y, blk)
File "/home/olpc/Activities/TurtleArt.activity/TurtleArt/tawindow.py", line 965, in _block_pressed
self._disconnect(blk)
File "/home/olpc/Activities/TurtleArt.activity/TurtleArt/tawindow.py", line 1693, in _disconnect
c = blk2.connections.index(blk)
AttributeError: 'NoneType' object has no attribute 'index'
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/gtk-2.0/gobject/init.py", line 101, in obj_set_property
prop.setter(self, value)
File "/usr/lib/python2.7/site-packages/sugar/activity/activity.py", line 412, in set_active
self.save()
File "/usr/lib/python2.7/site-packages/sugar/activity/activity.py", line 657, in save
self.write_file(file_path)
File "/home/olpc/Activities/TurtleArt.activity/TurtleArtActivity.py", line 1019, in write_file
data_to_file(self.tw.assemble_data_to_save(), file_path)
File "/home/olpc/Activities/TurtleArt.activity/TurtleArt/tawindow.py", line 2306, in assemble_data_to_save
connections = [get_id(_cblk) for _cblk in _blk.connections]
File "/home/olpc/Activities/TurtleArt.activity/TurtleArt/tautils.py", line 116, in get_id
return connection.id
AttributeError: Block instance has no attribute 'id'
Attachments (1)
Change History (8)
Changed 13 years ago by tonyforster
comment:1 in reply to: ↑ description Changed 13 years ago by tonyforster
comment:2 Changed 13 years ago by walter
Ouch. Will investigate.
comment:3 Changed 13 years ago by walter
- Cc rgs added
This patch excludes the proto blocks on the palette from being moved using the keyboard commands.
Why also H J K L? Is it a useful shortcut if you still need the mouse to select them?
To be implemented is to select a block by tabbing through all visible blocks. But regardless, it is sometimes more convenient to fine-tune the position of a block using the keyboard, especially when using a jumpy touchpad.
This patch will be included in v100. Meanwhile, testing would be appreciated.
comment:4 Changed 13 years ago by tonyforster
Is the full list of keyboard shortcuts:
Alt+ palette; blocks; run; walk; stop; erase; e.g., Alt+e will erase the screen.
Esc will return from full-screen mode
ctrl c ctrl v
cursor keys H J K L
tab (when implemented)
?
comment:5 Changed 13 years ago by tonyforster
comment:6 Changed 13 years ago by tonyforster
Seems you need to have done a query keyboard block to get the bug?
comment:7 Changed 13 years ago by walter
- Resolution set to fixed
- Status changed from new to closed
I did a bit more updating of the documentation in the wiki and made the behavior more consistent. For example, you can move any turtle, not just turtle 1, and the selected block that is being moved is highlighted and undocked before moving.
Replying to tonyforster:
thats right off the pallette, dont forget to look at screenshot