spyder-ide / ux-improvements

Discussion about UX improvements for Spyder 5 and beyond
4 stars 2 forks source link

Spyder 2 icon set incomplete in Spyder 5.0.1 #43

Closed gb119 closed 1 year ago

gb119 commented 3 years ago

Issue Report Checklist

Problem Description

Some icons are missing when using the Spyder 2 icon set in preferences - in particular I noticed in the find window: image

cf. Spyder 3 Icon set: image

(5.0.1 is a great improvement on 5.0.0 though btw - great to have it released now!)

What steps reproduce the problem?

  1. Switch Icon set to Spyder 2 in appearance preferences tab and restart
  2. Observe missing/unhelpful icons in find pane
  3. Switch Icon set to Spyder 3 in appearance preferences tab and restart
  4. Observe icons are back.

What is the expected output? What do you see instead?

Would expect Spyder 2 icon set to be complete or not to be an option. (I find that Spyder 5 doesn't look as nice in light mode as Spyder 4 did as a result of the switch to Material Design, in dark mode it looks ok, but then I find the contrast in the Spyder 3 icons (darkish blue on black) to be difficult to see (due to a minor visual impairment), Spyder 2 icons are a little better.)

Versions

Dependencies


# Mandatory:
atomicwrites >=1.2.0          :  1.4.0 (OK)
chardet >=2.0.0               :  4.0.0 (OK)
cloudpickle >=0.5.0           :  1.6.0 (OK)
cookiecutter >=1.6.0          :  1.7.2 (OK)
diff_match_patch >=20181111   :  20200713 (OK)
intervaltree >=3.0.2          :  3.1.0 (OK)
IPython >=7.6.0               :  7.19.0 (OK)
jedi =0.17.2                  :  0.17.2 (OK)
jsonschema >=3.2.0            :  3.2.0 (OK)
keyring >=17.0.0              :  21.8.0 (OK)
nbconvert >=4.0               :  6.0.7 (OK)
numpydoc >=0.6.0              :  1.1.0 (OK)
paramiko >=2.4.0              :  2.7.2 (OK)
parso =0.7.0                  :  0.7.0 (OK)
pexpect >=4.4.0               :  4.8.0 (OK)
pickleshare >=0.4             :  0.7.5 (OK)
psutil >=5.3                  :  5.7.2 (OK)
pygments >=2.0                :  2.7.3 (OK)
pylint >=1.0                  :  2.6.0 (OK)
pyls >=0.36.2;<1.0.0          :  0.36.2 (OK)
pyls_black >=0.4.6            :  0.4.6 (OK)
pyls_spyder >=0.3.2           :  0.3.2 (OK)
qdarkstyle =3.0.2             :  3.0.2 (OK)
qstylizer >=0.1.10            :  0.1.10 (OK)
qtawesome >=1.0.2             :  1.0.2 (OK)
qtconsole >=5.0.3             :  5.0.3 (OK)
qtpy >=1.5.0                  :  1.9.0 (OK)
rtree >=0.8.3                 :  0.9.4 (OK)
setuptools >=39.0.0           :  51.0.0.post20201207 (OK)
sphinx >=0.6.6                :  3.4.2 (OK)
spyder_kernels >=2.0.1;<2.1.0 :  2.0.1 (OK)
textdistance >=4.2.0          :  4.2.1 (OK)
three_merge >=0.1.1           :  0.1.1 (OK)
watchdog >=0.10.3;<2.0.0      :  0.10.4 (OK)
zmq >=17                      :  20.0.0 (OK)

# Optional:
cython >=0.21                 :  0.29.21 (OK)
matplotlib >=2.0.0            :  3.3.2 (OK)
numpy >=1.7                   :  1.19.2 (OK)
pandas >=1.1.1                :  1.2.0 (OK)
scipy >=0.17.0                :  1.5.2 (OK)
sympy >=0.7.3                 :  1.7.1 (OK)
steff456 commented 3 years ago

Hi @gb119,

For Spyder 5 we did a refactoring in the icon manager of Spyder and we noticed that in fact the set of icons from Spyder 2 is incomplete, what was happening is that there was a bug in the old code that did not load the red x, so probably you can recall that were the x is present we previously didn't show any image. After a lot of debate we decided to leave it as it is the fallback in case qtawesome is not installed, so we cannot import material design icons, or an error is present in windows.

Can you please explain to me why you want to set Spyder 2 icon theme instead of using the default one? We didn't knew any user that was using this option so it will help us to take decisions regarding this topic.

(I find that Spyder 5 doesn't look as nice in light mode as Spyder 4 did as a result of the switch to Material Design, in dark mode it looks ok, but then I find the contrast in the Spyder 3 icons (darkish blue on black) to be difficult to see (due to a minor visual impairment), Spyder 2 icons are a little better.)

Also, can you please upload screenshots with some examples of the icons that are not working for you?

Thanks for reporting!

gb119 commented 3 years ago

Can you please explain to me why you want to set Spyder 2 icon theme instead of using the default one? We didn't knew any user that was using this option so it will help us to take decisions regarding this topic.

Also, can you please upload screenshots with some examples of the icons that are not working for you?

Well the trivial answer is because the option is there in the preferences!

So my problem is that I struggle with low contrast - I'm not so blind to need the official high contrast colour schemes, but I notice when the contrast gets a bit low. The Spyder 2 icon set has slightly bigger glyphs and they have highlight hints with a lighter colour - both of which makes it slightly less eye-strain inducing to see them. The Spyder 3 sets are just a little lower in contrast and a bit smaller.

It's worse in the light mode in Spyder 5 because the main toolbar background grey is that little bit darker than in Spyder 4 which has dropped the contrast a bit.

The screenshots here and in [#15326 illustrate the difference in contrast between Spyder 2 iand 3 icon sets and between Spyder 4 and 5.

Although Spyder is not a webpage (! :-) ), the WCAG 2.0 guidenlines for contrast levels are, I think, a good thing to aim for.

ccordoba12 commented 3 years ago

Moving to UX improvements because this is related to accessibility.

isabela-pf commented 3 years ago

Thanks for pointing this out!

My limited understanding of why this is happening is a combination of what @steff456 said—that some icons were already missing in that set—and that we also intentionally replaced some of them with new custom icons that were not a part of any icon font since this would take advantage of the existing path and ensure they no longer needed a fallback. (Someone who knows more please correct me if I’m wrong about this.)

So I think it should definitely be possible to put back the Spyder 2 icons we intentionally replaced (we’d have to change the way we call the custom icons to make this work), but I would have to check what other icons were missing from the Spyder 2 set in the first case to figure out what state that was in. You make a good point; if we are going to have the option for using those icons we should probably know more clearly what we are offering.

ccordoba12 commented 3 years ago

You make a good point; if we are going to have the option for using those icons we should probably know more clearly what we are offering.

The option is really a fallback when we're unable to load icons using QtAwesome, which seems to happen still on Windows because it doesn't allow to read fonts not properly installed in the system.

Once we're confident that's no longer the case or we find a workaround for it, my plan is to remove the Spyder 2 set because we don't have the time to maintain two icon sets.

ccordoba12 commented 3 years ago

we find a workaround for it

Useful link about this: https://github.com/matplotlib/matplotlib/issues/12954

mpeters2 commented 1 year ago

I'm having this issue with Spyder 5.4.2, MacOS 12.4.

ccordoba12 commented 1 year ago

@mpeters2, the Spyder 2 icon set is only a fallback in case we're unable to load the current one, so that at least some icons are displayed on the interface (instead of almost none). So, please don't use it if the Spyder 3 set is working fine for you (it should be on Mac).