GTK3: Force scrollbars visible
GTK3 does a fade in/fade out routine for scrollbars by default. This
was problematic as it caused a cascade of full-screen repaint events on
each mouse event. Instead of disabling scrollbars (which only helped
the full canvas), we force the old scrollbar behavior is environmental
variables.
Revert "gtk3: Remove scrollbars"
This reverts commit db43bd82a7
.
This commit is contained in:
parent
d1c9dd67ac
commit
69c1263c02
|
@ -72,13 +72,7 @@ EDA_DRAW_PANEL_GAL::EDA_DRAW_PANEL_GAL( wxWindow* aParentWindow, wxWindowID aWin
|
||||||
SwitchBackend( aGalType );
|
SwitchBackend( aGalType );
|
||||||
SetBackgroundStyle( wxBG_STYLE_CUSTOM );
|
SetBackgroundStyle( wxBG_STYLE_CUSTOM );
|
||||||
|
|
||||||
#ifdef __WXGTK3__
|
|
||||||
// Until we can handle the repaint events from scroll bar hide/show
|
|
||||||
// todo: Implement area mapping for re-painting scrollbars
|
|
||||||
ShowScrollbars( wxSHOW_SB_NEVER, wxSHOW_SB_NEVER );
|
|
||||||
#else
|
|
||||||
ShowScrollbars( wxSHOW_SB_ALWAYS, wxSHOW_SB_ALWAYS );
|
ShowScrollbars( wxSHOW_SB_ALWAYS, wxSHOW_SB_ALWAYS );
|
||||||
#endif
|
|
||||||
EnableScrolling( false, false ); // otherwise Zoom Auto disables GAL canvas
|
EnableScrolling( false, false ); // otherwise Zoom Auto disables GAL canvas
|
||||||
|
|
||||||
Connect( wxEVT_SIZE, wxSizeEventHandler( EDA_DRAW_PANEL_GAL::onSize ), NULL, this );
|
Connect( wxEVT_SIZE, wxSizeEventHandler( EDA_DRAW_PANEL_GAL::onSize ), NULL, this );
|
||||||
|
|
|
@ -134,6 +134,10 @@ struct APP_SINGLE_TOP : public wxApp
|
||||||
{
|
{
|
||||||
wxSetEnv ( wxT("UBUNTU_MENUPROXY" ), wxT( "0" ) );
|
wxSetEnv ( wxT("UBUNTU_MENUPROXY" ), wxT( "0" ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Disable overlay scrollbars as they mess up wxWidgets window sizing and cause excessive redraw requests
|
||||||
|
wxSetEnv( wxT( "GTK_OVERLAY_SCROLLING" ), wxT( "0" ) );
|
||||||
|
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -646,12 +646,6 @@ wxPoint WX_VIEW_CONTROLS::getMouseScreenPosition() const
|
||||||
|
|
||||||
void WX_VIEW_CONTROLS::UpdateScrollbars()
|
void WX_VIEW_CONTROLS::UpdateScrollbars()
|
||||||
{
|
{
|
||||||
#ifdef __WXGTK3__
|
|
||||||
// Until we can handle the repaint events from scroll bar hide/show
|
|
||||||
// todo: Implement area mapping for re-painting scrollbars
|
|
||||||
return;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
const BOX2D viewport = m_view->GetViewport();
|
const BOX2D viewport = m_view->GetViewport();
|
||||||
const BOX2D& boundary = m_view->GetBoundary();
|
const BOX2D& boundary = m_view->GetBoundary();
|
||||||
|
|
||||||
|
|
|
@ -229,6 +229,9 @@ struct APP_KICAD : public wxApp
|
||||||
{
|
{
|
||||||
wxSetEnv ( wxT("UBUNTU_MENUPROXY" ), wxT( "0" ) );
|
wxSetEnv ( wxT("UBUNTU_MENUPROXY" ), wxT( "0" ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Disable overlay scrollbars as they mess up wxWidgets window sizing and cause excessive redraw requests
|
||||||
|
wxSetEnv( wxT( "GTK_OVERLAY_SCROLLING" ), wxT( "0" ) );
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue