Scrollbar arrows not working in pcbnew GAL

Bug #1690780 reported by der.ule
24
This bug affects 4 people
Affects Status Importance Assigned to Milestone
KiCad
Fix Released
Medium
Unassigned

Bug Description

Application: kicad
Version: 4.0.6 release build
wxWidgets: Version 3.0.2 (debug,wchar_t,compiler with C++ ABI 1010,GCC 6.3.0,wx containers,compatible with 2.8)
Platform: Windows 7 (build 7601, Service Pack 1), 64-bit edition, 64 bit, Little endian, wxMSW
Boost version: 1.60.0
Curl version: libcurl/7.52.1 OpenSSL/1.0.2k zlib/1.2.11 libssh2/1.8.0 nghttp2/1.19.0 librtmp/2.3
         USE_WX_GRAPHICS_CONTEXT=OFF
         USE_WX_OVERLAY=OFF
         KICAD_SCRIPTING=ON
         KICAD_SCRIPTING_MODULES=ON
         KICAD_SCRIPTING_WXPYTHON=ON
         USE_FP_LIB_TABLE=HARD_CODED_ON
         BUILD_GITHUB_PLUGIN=ON

Stepwise scrolling using the scrollbar's arrows of the GUI is not working, clicking them has not effect.

Tags: cern gal pcbnew
Revision history for this message
Nick Østergaard (nickoe) wrote :

Works fine for me on windows 7 64-bit just starting pcbnew.

Application: pcbnew
Version: 4.0.6 release build
wxWidgets: Version 3.0.2 (debug,wchar_t,compiler with C++ ABI 1010,GCC 6.3.0,wx containers,compatible with 2.8)
Platform: Windows 7 (build 7601, Service Pack 1), 64-bit edition, 64 bit, Little endian, wxMSW
Boost version: 1.60.0
Curl version: libcurl/7.52.1 OpenSSL/1.0.2k zlib/1.2.11 libssh2/1.8.0 nghttp2/1.19.0 librtmp/2.3
         USE_WX_GRAPHICS_CONTEXT=OFF
         USE_WX_OVERLAY=OFF
         KICAD_SCRIPTING=ON
         KICAD_SCRIPTING_MODULES=ON
         KICAD_SCRIPTING_WXPYTHON=ON
         USE_FP_LIB_TABLE=HARD_CODED_ON
         BUILD_GITHUB_PLUGIN=ON

tags: removed: gui scroll scrollbar scrolling
Changed in kicad:
status: New → Incomplete
Revision history for this message
Nick Østergaard (nickoe) wrote :

(but #1 is tested with the legacy canvas)

Revision history for this message
Nick Østergaard (nickoe) wrote :

I can confirm that it does not work in GAL.

Revision history for this message
Nick Østergaard (nickoe) wrote :

Also not working in GAL (cairo) in

Application: pcbnew
Version: (2017-05-10 revision 747583606)-makepkg, release build
Libraries: wxWidgets 3.0.2
           libcurl/7.52.1 OpenSSL/1.0.2k zlib/1.2.11 libssh2/1.8.0 nghttp2/1.19.0 librtmp/2.3
Platform: Windows 7 (build 7601, Service Pack 1), 64-bit edition, 64 bit, Little endian, wxMSW
- Build Info -
wxWidgets: 3.0.2 (wchar_t,wx containers,compatible with 2.8)
Boost: 1.60.0
Curl: 7.52.1
KiCad - Compiler: GCC 6.3.0 with C++ ABI 1010
        Settings: USE_WX_GRAPHICS_CONTEXT=OFF
                  USE_WX_OVERLAY=OFF
                  KICAD_SCRIPTING=ON
                  KICAD_SCRIPTING_MODULES=ON
                  KICAD_SCRIPTING_WXPYTHON=ON
                  KICAD_SCRIPTING_ACTION_MENU=ON
                  BUILD_GITHUB_PLUGIN=ON
                  KICAD_USE_OCE=ON

Changed in kicad:
status: Incomplete → New
Revision history for this message
der.ule (u-estrada) wrote :

sorry, I forgot to mention the GAL mode, I can confirm that in legacy canvas it works as expected.

tags: added: cern gal
Revision history for this message
Maciej Suminski (orsonmmz) wrote :

I have just tested scrollbars in GAL on Linux and Windows 7, works as expected. Setting as 'Incomplete' to receive feedback or let the report expire.

Changed in kicad:
status: New → Incomplete
Revision history for this message
der.ule (u-estrada) wrote :

Hello Maciej,

I'm not sure about the nomenclature, but if I open Pcbnew and press F9 (Legacy), the arrows works as expected, F11 (OpenGL) the arrows do not work, F12 (Cairo) the arrows do not work.

Application: kicad
Version: 4.0.6 release build
wxWidgets: Version 3.0.2 (debug,wchar_t,compiler with C++ ABI 1010,GCC 6.3.0,wx containers,compatible with 2.8)
Platform: Windows 7 (build 7601, Service Pack 1), 64-bit edition, 64 bit, Little endian, wxMSW
Boost version: 1.60.0
Curl version: libcurl/7.52.1 OpenSSL/1.0.2k zlib/1.2.11 libssh2/1.8.0 nghttp2/1.19.0 librtmp/2.3
         USE_WX_GRAPHICS_CONTEXT=OFF
         USE_WX_OVERLAY=OFF
         KICAD_SCRIPTING=ON
         KICAD_SCRIPTING_MODULES=ON
         KICAD_SCRIPTING_WXPYTHON=ON
         USE_FP_LIB_TABLE=HARD_CODED_ON
         BUILD_GITHUB_PLUGIN=ON

Revision history for this message
Maciej Suminski (orsonmmz) wrote :

Sorry, I should have mentioned that I mean the nightly builds, not the 4.x release.

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

In GAL canvas the arrow keys move one grid step the cursor.
If the grid is too small (< 1 pixel) the cursor does not move.
(In legacy canvas, the cursor is moved by n*grid steps when happens)

This is fixed in V5 version.

Revision history for this message
Maciej Suminski (orsonmmz) wrote :

How about the buttons on the window scrollbars? Do they work for you in nightlies under Windows?

Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for KiCad because there has been no activity for 60 days.]

Changed in kicad:
status: Incomplete → Expired
Revision history for this message
Laurent Haas (efcis) wrote :

The scrollbar arrows still don't work under GAL canvas (Accelerated or Fallback) with the current v5 RC3 nightly.

I'm talking about the graphical arrows located on the extremities of the scrollbars, not the arrow keys which are a different topic.

Application: kicad
Version: (5.0.0-rc3-dev), release build
Libraries:
    wxWidgets 3.0.3
    libcurl/7.54.1 OpenSSL/1.0.2l zlib/1.2.11 libssh2/1.8.0 nghttp2/1.23.1 librtmp/2.3
Platform: Windows 7 (build 7601, Service Pack 1), 32 bit, Little endian, wxMSW
Build Info:
    wxWidgets: 3.0.3 (wchar_t,wx containers,compatible with 2.8)
    Boost: 1.60.0
    OpenCASCADE Community Edition: 6.8.0
    Curl: 7.54.1
    Compiler: GCC 7.1.0 with C++ ABI 1011

Build settings:
    USE_WX_GRAPHICS_CONTEXT=OFF
    USE_WX_OVERLAY=OFF
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_WXPYTHON=ON
    KICAD_SCRIPTING_ACTION_MENU=ON
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_USE_OCC=OFF
    KICAD_SPICE=ON

Revision history for this message
Seth Hillbrand (sethh) wrote :

Confirmed under Linux. Clicking on the arrows in the scroll bars has no effect when using GAL.

Maybe related to lp:1562173

Changed in kicad:
importance: Undecided → Medium
milestone: none → 5.0.1
status: Expired → Confirmed
Jeff Young (jeyjey)
summary: - Scrollbar arrows not working in pcbnew 4.0.6
+ Scrollbar arrows not working in pcbnew GAL
Revision history for this message
Seth Hillbrand (sethh) wrote :

@Orson- if memory serves, the lines required for this caused bouncing on one/more platforms when scrolling. Do you remember the exact issue?

Revision history for this message
Seth Hillbrand (sethh) wrote :

ping @Orson - This probably got lost in the vacation-buildup of e-mail. Let me know if you can take a look at this.

Revision history for this message
Maciej Suminski (orsonmmz) wrote :

Seth, I think you mean lp:#1562173. The bounce effect was due to WX_VIEW_CONTROLS::onScroll() being invoked too many times, both for wxEVT_SCROLLWIN_PAGEUP/DOWN and wxEVT_SCROLLWIN_LINEUP/DOWN.
Git log for common/view/wx_view_controls.cpp shows that it is not easy to get the event handlers right. Perhaps we need some #ifdefs there, as the bounce occurred only on Windows.

Revision history for this message
Seth Hillbrand (sethh) wrote :

Hmm... That's right. Thanks for the refresher.

Since this bug was originally reported on MSW, I don't think that just re-enabling the lines for non-MSW will be the solution. We may need to add a StopPropagation() specifically for MSW. But I don't have a MSW machine to test this theory.

Revision history for this message
Seth Hillbrand (sethh) wrote :

Any windows devs have time to test/address this one for 5.0.1?

Revision history for this message
Wayne Stambaugh (stambaughw) wrote :

Unfortunately I don't have time in the immediate future and I suspect this will not be trivial to fix given how difficult it was to get scroll bars to work correctly with the legacy canvas. It may make sense to kick the can down the road to 5.1 since the scroll bars do work in Eeschema with the current Eeschema gal work.

Revision history for this message
Seth Hillbrand (sethh) wrote :

In that case, I may just re-enable the events for all platforms except MSW to minimize the bug surface and we can look at windows during 5.1

Changed in kicad:
milestone: 5.0.1 → 5.1.0
Changed in kicad:
status: Confirmed → Fix Committed
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.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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