gtk2 intf: write warning if liboverlay scrollbar is active

git-svn-id: trunk@36895 -
This commit is contained in:
mattias 2012-04-18 16:29:21 +00:00
parent 6dd2c82a02
commit 284bdd4cec
3 changed files with 18 additions and 3 deletions

View File

@ -4513,7 +4513,9 @@ var
pt: TPoint; pt: TPoint;
ScrollHint: THintWindow; ScrollHint: THintWindow;
begin begin
//debugln('TCustomSynEdit.WMVScroll A ',DbgSName(Self),' Msg.ScrollCode=',dbgs(Msg.ScrollCode),' SB_PAGEDOWN=',dbgs(SB_PAGEDOWN),' SB_PAGEUP=',dbgs(SB_PAGEUP)); {$IFDEF SYNSCROLLDEBUG}
debugln('TCustomSynEdit.WMVScroll A ',DbgSName(Self),' Msg.ScrollCode=',dbgs(Msg.ScrollCode),' SB_PAGEDOWN=',dbgs(SB_PAGEDOWN),' SB_PAGEUP=',dbgs(SB_PAGEUP));
{$ENDIF}
case Msg.ScrollCode of case Msg.ScrollCode of
// Scrolls to start / end of the text // Scrolls to start / end of the text
SB_TOP: TopView := 1; SB_TOP: TopView := 1;

View File

@ -2924,7 +2924,9 @@ begin
//TODO: implement SB_THUMBPOSITION message after track is finished //TODO: implement SB_THUMBPOSITION message after track is finished
Result := CallBackDefaultReturn; Result := CallBackDefaultReturn;
//DebugLn(Format('Trace:[GTKVScrollCB] Value: %d', [RoundToInt(Adjustment^.Value)])); {$IFDEF SYNSCROLLDEBUG}
DebugLn(Format('Trace:[GTKVScrollCB] Value: %d', [RoundToInt(Adjustment^.Value)]));
{$ENDIF}
Scroll := PgtkRange(gtk_object_get_data(PGTKObject(Adjustment), odnScrollBar)); Scroll := PgtkRange(gtk_object_get_data(PGTKObject(Adjustment), odnScrollBar));
if Scroll<>nil then begin if Scroll<>nil then begin
Msg.Msg := LM_VSCROLL; Msg.Msg := LM_VSCROLL;
@ -2955,7 +2957,9 @@ begin
Result := CallBackDefaultReturn; Result := CallBackDefaultReturn;
Widget:=PGTKWidget(ARange); Widget:=PGTKWidget(ARange);
//DebugLn(Format('Trace:[Gtk2RangeScrollCB] Value: %d', [RoundToInt(AValue)])); {$IFDEF SYNSCROLLDEBUG}
DebugLn(Format('Trace:[Gtk2RangeScrollCB] Value: %d', [RoundToInt(AValue)]));
{$ENDIF}
if G_OBJECT_TYPE(ARange) = gtk_hscrollbar_get_type then if G_OBJECT_TYPE(ARange) = gtk_hscrollbar_get_type then
Msg.Msg := LM_HSCROLL Msg.Msg := LM_HSCROLL
else else
@ -3027,6 +3031,9 @@ var
AValue: Double; AValue: Double;
Range: PGtkRange; Range: PGtkRange;
begin begin
{$IFDEF SYNSCROLLDEBUG}
debugln(['Gtk2ScrolledWindowScrollCB ']);
{$ENDIF}
case AEvent^.direction of case AEvent^.direction of
GDK_SCROLL_UP, GDK_SCROLL_UP,
GDK_SCROLL_DOWN: Msg.Msg := LM_VSCROLL; GDK_SCROLL_DOWN: Msg.Msg := LM_VSCROLL;

View File

@ -186,6 +186,12 @@ begin
TGtk2WSWinControl.SetCallbacks(GTK_OBJECT(Widget), AWinControl); TGtk2WSWinControl.SetCallbacks(GTK_OBJECT(Widget), AWinControl);
if (GetWidgetClassName(GTK_SCROLLED_WINDOW(Widget)^.vscrollbar)='OsScrollbar')
or (GetWidgetClassName(GTK_SCROLLED_WINDOW(Widget)^.hscrollbar)='OsScrollbar')
then begin
// ubuntu liboverlay scrollbar is active
debugln(['WARNING: liboverlay_scrollbar is active for control=',AWinControl,'. Set environment option LIBOVERLAY_SCROLLBAR=0 before starting this application, otherwise scrollbars will not work properly.']);
end;
g_signal_connect_after(GTK_SCROLLED_WINDOW(Widget)^.hscrollbar, 'change-value', g_signal_connect_after(GTK_SCROLLED_WINDOW(Widget)^.hscrollbar, 'change-value',
TGCallback(@Gtk2RangeScrollCB), WidgetInfo); TGCallback(@Gtk2RangeScrollCB), WidgetInfo);
g_signal_connect_after(GTK_SCROLLED_WINDOW(Widget)^.vscrollbar, 'change-value', g_signal_connect_after(GTK_SCROLLED_WINDOW(Widget)^.vscrollbar, 'change-value',