Skip to content

Commit e8a44d3

Browse files
Fix blank squares in Tree and avoid crashing when execution is too rapid (#2947)
1 parent d00bbab commit e8a44d3

File tree

5 files changed

+18
-15
lines changed

5 files changed

+18
-15
lines changed

CHANGELOG.adoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ when selecting in Tree shows the filename in StatusBar.
3838
- Improved colorization for multiple Gherkin words, for example in the French language.
3939

4040
=== Fixed
41+
- Fixed white blocks on Tree due to failed animation when test execution is too rapid, causing crash on Windows.
4142
- Fixed not set text color on row labels in Grid Editor. Now the General ``secondary foreground`` is applied.
4243
- Fixed multiple scroll bars in Grid Editor when editing Test Cases or Keywords. This caused bad navigation on cells.
4344
- Regression fix from v2.1b1 - Fix wrong item selection, like Test Suite, when doing right-click actions in Project Explorer.

README.adoc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,14 @@ See the https://github.com/robotframework/RIDE/blob/master/doc/releasenotes/ride
3434
**The current development version is based on 2.1.3, supports Python from 3.8 up to 3.13 (24th March 2025).**
3535

3636
Currently, the unit tests are tested on Python 3.10, 3.11 and 3.13 (3.13 is the recommended version).
37-
Likewise, the current version of wxPython, is 4.2.2, but RIDE is known to work with 4.0.7 and 4.1.1 versions.
37+
We now have an experimental workflow on Fedora Linux 41, with wxPython 4.2.3 and Python 3.14.a7.
38+
Likewise, the current version of wxPython, is 4.2.3, but RIDE is known to work with 4.0.7, 4.1.1 and 4.2.2 versions.
3839

3940
(3.8 <= python <= 3.13) Install current released version (*2.1.3*) with:
4041

4142
`pip install -U robotframework-ride`
4243

43-
(3.8 <= python <= 3.13) Install current development version (**2.2dev23**) with:
44+
(3.8 <= python <= 3.13) Install current development version (**2.2dev24**) with:
4445

4546
`pip install -U https://github.com/robotframework/RIDE/archive/develop.zip`
4647

src/robotide/application/releasenotes.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ def set_content(self, html_win, content):
159159
<li>🐞 - When upgrading RIDE and activate Restart, some errors are visible about missing /language file, and behaviour
160160
is not normal. Better to close RIDE and start a new instance.</li>
161161
<li>🐞 - Problems with COPY/PASTE in Text Editor have been reported when using wxPython 4.2.0, but not with
162-
version 4.2.1 and 4.2.2, which we now <em>recommend</em>.</li>
162+
version 4.2.1, 4.2.2 and 4.2.3, which we now <em>recommend</em>.</li>
163163
-->
164164
<li>🐞 - Rename Keywords, Find Usages/Find where used are not finding all occurrences. Please, double-check findings and changes.</li>
165165
<li>🐞 - Some argument types detection (and colorization) is not correct in Grid Editor.</li>
@@ -172,6 +172,7 @@ def set_content(self, html_win, content):
172172
</ul>
173173
<p><strong>New Features and Fixes Highlights</strong></p>
174174
<ul class="simple">
175+
<li>Fixed white blocks on Tree due to failed animation when test execution is too rapid, causing crash on Windows.</li>
175176
<li>Added Settings Editor button to Preferences dialog, to edit settings.cfg.</li>
176177
<li>Created backup of settings.cfg to allow recovering some settings when broken upgrades.</li>
177178
<li>Changed some informative dialogs and JSON Editor to use the customized colors.</li>
@@ -185,7 +186,7 @@ def set_content(self, html_win, content):
185186
</ul>
186187
<!-- <p>We hope to implement or complete features and make fixes on next major version 2.1 (in mid Autumm of 2024).</p>
187188
-->
188-
<p><strong>The minimal wxPython version is, 4.0.7, and RIDE supports the current version, 4.2.2, which we recommend.
189+
<p><strong>The minimal wxPython version is, 4.0.7, and RIDE supports the current version, 4.2.3, which we recommend.
189190
</strong></p>
190191
<p><em>Linux users are advised to install first wxPython from .whl package at</em> <a class="reference external"
191192
href="https://extras.wxpython.org/wxPython4/extras/linux/gtk3/">wxPython.org</a>, or by using the system package
@@ -236,7 +237,7 @@ def set_content(self, html_win, content):
236237
<pre class="literal-block">python -m robotide.postinstall -install</pre>
237238
<p>or</p>
238239
<pre class="literal-block">ride_postinstall.py -install</pre>
239-
<p>RIDE {VERSION} was released on 21/April/2025.</p>
240+
<p>RIDE {VERSION} was released on 03/May/2025.</p>
240241
<!-- <br/>
241242
<h3>May The Fourth Be With You!</h3>
242243
<h3>Celebrate the bank holiday, 10th June, Day of Portugal, Portuguese Communities and Camões!!</h3>

src/robotide/ui/treeplugin.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
import os
1818

1919
import wx
20-
from wx import Colour
20+
from wx import Colour, Point
2121
from wx.lib.agw import customtreectrl
2222
from wx.lib.agw.aui import GetManager
2323
from wx.lib.agw.customtreectrl import GenericTreeItem
@@ -425,14 +425,14 @@ def _set_icon_from_execution_results(self, controller):
425425
img = os.path.join(_BASE, 'robot-pause.gif')
426426
ani = Animation(img)
427427
obj = self
428-
rect = (node.GetX()+20, node.GetY()) # Overlaps robot icon
429-
self._animctrl = AnimationCtrl(obj, -1, ani, rect)
430-
"""
431-
self._animctrl.SetBackgroundColour(obj.GetBackgroundColour())
432-
"""
433-
self._animctrl.SetBackgroundColour('white')
434-
self.SetItemWindow(node, self._animctrl, False)
435-
self._animctrl.Play()
428+
rect = Point(node.GetX()+20, node.GetY()) # Overlaps robot icon
429+
try:
430+
self._animctrl = AnimationCtrl(obj, -1, ani, rect)
431+
self._animctrl.SetBackgroundColour('white')
432+
self.SetItemWindow(node, self._animctrl, False)
433+
self._animctrl.Play()
434+
except AttributeError: # In fast executions the element self._animctrl.Play() does not exists
435+
pass
436436
# Make visible the running or paused test
437437
parent = node.GetParent()
438438
self.EnsureVisible(parent) # DEBUG add animation to parent if suite setup/teardown started

src/robotide/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,4 @@
1515
#
1616
# Automatically generated by `tasks.py`.
1717

18-
VERSION = 'v2.2dev23'
18+
VERSION = 'v2.2dev24'

0 commit comments

Comments
 (0)