Discussion:
wxFrame doesn't close in 3.0 unless menu clicked
John Labenski
2013-11-21 05:32:36 UTC
Permalink
When I try to close my app using either the title-bar X close button or a
File->Close menu item the frame doesn't close. In fact, you can type into
the wxStyledTextCtrl, move splitters, show dialogs, but as soon as a menu
bar item is clicked it closes. The same effect occurs if the app is exited
using the menu accelerator and closing can be made to happen by pressing
Alt-F to pop-down the File menu..

This does not happen with the minimal, stc, or exec sample in wx 3.0, nor
does it happen with my app compiled against 2.8.

I do catch EVT_CLOSE() and I explicitly call event.Skip(true) just like the
samples. Even calling Destroy() on the frame in the EVT_CLOSE handler
doesn't help nor does remming out my handler altogether. It seems like the
event loop needs to be run to finish exiting.

Before I rip my app apart to find why it doesn't exit, has anyone else had
this problem?

Thanks,
John



Here's the backtrace after having pressed the title-bar close button when
it's sorta' hung and uses about 60% cpu.

#0 0x00007ff18255ff7d in poll () at ../sysdeps/unix/syscall-template.S:81
#1 0x00007ff17c4f2982 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2 0x00007ff17c4f3dbf in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3 0x00007ff17c4f3ed2 in xcb_wait_for_reply () from
/usr/lib/x86_64-linux-gnu/libxcb.so.1
#4 0x00007ff18028f4e7 in _XReply () from
/usr/lib/x86_64-linux-gnu/libX11.so.6
#5 0x00007ff180274f85 in XGetGeometry () from
/usr/lib/x86_64-linux-gnu/libX11.so.6
#6 0x00007ff1814c6f00 in gdk_window_get_frame_extents () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#7 0x00007ff17652fb37 in
Oxygen::Gtk::gdk_toplevel_get_frame_size(_GdkDrawable*, int*, int*) () from
/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
#8 0x00007ff17652fe23 in
Oxygen::Gtk::gdk_window_map_to_toplevel(_GdkDrawable*, int*, int*, int*,
int*, bool) () from
/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
#9 0x00007ff176560c5e in Oxygen::Style::renderWindowBackground(_cairo*,
_GdkDrawable*, _GtkWidget*, _GdkRectangle*, int, int, int, int,
Oxygen::StyleOptions const&, Oxygen::Flags<Oxygen::TileSet::Tile>, bool)
() from
/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
#10 0x00007ff1765631e9 in
Oxygen::Style::renderHoleBackground(_GdkDrawable*, _GtkWidget*,
_GdkRectangle*, int, int, int, int, Oxygen::StyleOptions const&,
Oxygen::Flags<Oxygen::TileSet::Tile>, int) ()
from /usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
#11 0x00007ff1764ea923 in ?? () from
/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
#12 0x00007ff176591134 in ?? () from
/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
#13 0x00007ff183453d8e in draw_border (widget=0x1d43300,
gdk_event=0x1fd9410, win=0x1e5db00) at
wxWidgets-trunk/src/gtk/window.cpp:346
#14 0x00007ff18183b645 in ?? () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#15 0x00007ff180899188 in g_closure_invoke () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#16 0x00007ff1808aadb1 in ?? () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#17 0x00007ff1808b24f9 in g_signal_emit_valist () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#18 0x00007ff1808b2ae2 in g_signal_emit () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#19 0x00007ff18194b5f4 in ?? () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#20 0x00007ff1817c4678 in gtk_container_propagate_expose () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#21 0x00007ff1817fabc8 in ?? () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#22 0x00007ff1817c3204 in ?? () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#23 0x00007ff18183b645 in ?? () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#24 0x00007ff180899188 in g_closure_invoke () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#25 0x00007ff1808aa8db in ?? () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#26 0x00007ff1808b24f9 in g_signal_emit_valist () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#27 0x00007ff1808b2ae2 in g_signal_emit () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#28 0x00007ff18194b5f4 in ?? () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#29 0x00007ff18183a440 in gtk_main_do_event () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#30 0x00007ff18149cf2f in ?? () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#31 0x00007ff18149ced5 in ?? () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#32 0x00007ff18149ced5 in ?? () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#33 0x00007ff181499b6e in ?? () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#34 0x00007ff18149a458 in gdk_window_process_all_updates () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#35 0x00007ff18149a4b9 in ?? () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#36 0x00007ff181479cf7 in ?? () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#37 0x00007ff1805d03b6 in g_main_context_dispatch () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007ff1805d0708 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007ff1805d0b0a in g_main_loop_run () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#40 0x00007ff181839277 in gtk_main () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#41 0x00007ff18343b6cb in wxGUIEventLoop::DoRun (this=0x1fd7cb0) at
wxWidgets-trunk/src/gtk/evtloop.cpp:65
#42 0x00007ff182e0c67e in wxEventLoopBase::Run (this=0x1fd7cb0) at
wxWidgets-trunk/src/common/evtloopcmn.cpp:78
#43 0x00007ff182dd095d in wxAppConsoleBase::MainLoop (this=0x1a96290) at
wxWidgets-trunk/src/common/appbase.cpp:334
#44 0x00007ff182dd0693 in wxAppConsoleBase::OnRun (this=0x1a96290) at
wxWidgets-trunk/src/common/appbase.cpp:259
#45 0x00007ff1834ee42d in wxAppBase::OnRun (this=0x1a96290) at
wxWidgets-trunk/src/common/appcmn.cpp:304
#46 0x00007ff182e3f50e in wxEntry (argc=@0x7ff1831b2170: 1, argv=0x1a96100)
at wxWidgets-trunk/src/common/init.cpp:495
#47 0x00007ff182e3f5d4 in wxEntry (argc=@0x7fff37ba601c: 1,
argv=0x7fff37ba6108) at wxWidgets-trunk/src/common/init.cpp:507
#48 0x0000000000418510 in main (argc=1, argv=0x7fff37ba6108) at
wxstedit/samples/stedit/wxstedit.cpp:120
--
Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.

To unsubscribe, send email to wx-users+***@googlegroups.com
or visit http://groups.google.com/group/wx-users
Stefano Mtangoo
2013-11-21 11:26:25 UTC
Permalink
do the samples work?
Post by John Labenski
When I try to close my app using either the title-bar X close button or a
File->Close menu item the frame doesn't close. In fact, you can type into
the wxStyledTextCtrl, move splitters, show dialogs, but as soon as a menu
bar item is clicked it closes. The same effect occurs if the app is exited
using the menu accelerator and closing can be made to happen by pressing
Alt-F to pop-down the File menu..
This does not happen with the minimal, stc, or exec sample in wx 3.0, nor
does it happen with my app compiled against 2.8.
I do catch EVT_CLOSE() and I explicitly call event.Skip(true) just like
the samples. Even calling Destroy() on the frame in the EVT_CLOSE handler
doesn't help nor does remming out my handler altogether. It seems like the
event loop needs to be run to finish exiting.
Before I rip my app apart to find why it doesn't exit, has anyone else had
this problem?
Thanks,
John
Here's the backtrace after having pressed the title-bar close button when
it's sorta' hung and uses about 60% cpu.
#0 0x00007ff18255ff7d in poll () at ../sysdeps/unix/syscall-template.S:81
#1 0x00007ff17c4f2982 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2 0x00007ff17c4f3dbf in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3 0x00007ff17c4f3ed2 in xcb_wait_for_reply () from
/usr/lib/x86_64-linux-gnu/libxcb.so.1
#4 0x00007ff18028f4e7 in _XReply () from
/usr/lib/x86_64-linux-gnu/libX11.so.6
#5 0x00007ff180274f85 in XGetGeometry () from
/usr/lib/x86_64-linux-gnu/libX11.so.6
#6 0x00007ff1814c6f00 in gdk_window_get_frame_extents () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#7 0x00007ff17652fb37 in
Oxygen::Gtk::gdk_toplevel_get_frame_size(_GdkDrawable*, int*, int*) () from
/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
#8 0x00007ff17652fe23 in
Oxygen::Gtk::gdk_window_map_to_toplevel(_GdkDrawable*, int*, int*, int*,
int*, bool) () from
/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
#9 0x00007ff176560c5e in Oxygen::Style::renderWindowBackground(_cairo*,
_GdkDrawable*, _GtkWidget*, _GdkRectangle*, int, int, int, int,
Oxygen::StyleOptions const&, Oxygen::Flags<Oxygen::TileSet::Tile>, bool)
() from
/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
#10 0x00007ff1765631e9 in
Oxygen::Style::renderHoleBackground(_GdkDrawable*, _GtkWidget*,
_GdkRectangle*, int, int, int, int, Oxygen::StyleOptions const&,
Oxygen::Flags<Oxygen::TileSet::Tile>, int) ()
from /usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
#11 0x00007ff1764ea923 in ?? () from
/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
#12 0x00007ff176591134 in ?? () from
/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
#13 0x00007ff183453d8e in draw_border (widget=0x1d43300,
gdk_event=0x1fd9410, win=0x1e5db00) at
wxWidgets-trunk/src/gtk/window.cpp:346
#14 0x00007ff18183b645 in ?? () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#15 0x00007ff180899188 in g_closure_invoke () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#16 0x00007ff1808aadb1 in ?? () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#17 0x00007ff1808b24f9 in g_signal_emit_valist () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#18 0x00007ff1808b2ae2 in g_signal_emit () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#19 0x00007ff18194b5f4 in ?? () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#20 0x00007ff1817c4678 in gtk_container_propagate_expose () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#21 0x00007ff1817fabc8 in ?? () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#22 0x00007ff1817c3204 in ?? () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#23 0x00007ff18183b645 in ?? () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#24 0x00007ff180899188 in g_closure_invoke () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#25 0x00007ff1808aa8db in ?? () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#26 0x00007ff1808b24f9 in g_signal_emit_valist () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#27 0x00007ff1808b2ae2 in g_signal_emit () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#28 0x00007ff18194b5f4 in ?? () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#29 0x00007ff18183a440 in gtk_main_do_event () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#30 0x00007ff18149cf2f in ?? () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#31 0x00007ff18149ced5 in ?? () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#32 0x00007ff18149ced5 in ?? () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#33 0x00007ff181499b6e in ?? () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#34 0x00007ff18149a458 in gdk_window_process_all_updates () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#35 0x00007ff18149a4b9 in ?? () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#36 0x00007ff181479cf7 in ?? () from
/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#37 0x00007ff1805d03b6 in g_main_context_dispatch () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007ff1805d0708 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007ff1805d0b0a in g_main_loop_run () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#40 0x00007ff181839277 in gtk_main () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#41 0x00007ff18343b6cb in wxGUIEventLoop::DoRun (this=0x1fd7cb0) at
wxWidgets-trunk/src/gtk/evtloop.cpp:65
#42 0x00007ff182e0c67e in wxEventLoopBase::Run (this=0x1fd7cb0) at
wxWidgets-trunk/src/common/evtloopcmn.cpp:78
#43 0x00007ff182dd095d in wxAppConsoleBase::MainLoop (this=0x1a96290) at
wxWidgets-trunk/src/common/appbase.cpp:334
#44 0x00007ff182dd0693 in wxAppConsoleBase::OnRun (this=0x1a96290) at
wxWidgets-trunk/src/common/appbase.cpp:259
#45 0x00007ff1834ee42d in wxAppBase::OnRun (this=0x1a96290) at
wxWidgets-trunk/src/common/appcmn.cpp:304
argv=0x1a96100) at wxWidgets-trunk/src/common/init.cpp:495
argv=0x7fff37ba6108) at wxWidgets-trunk/src/common/init.cpp:507
#48 0x0000000000418510 in main (argc=1, argv=0x7fff37ba6108) at
wxstedit/samples/stedit/wxstedit.cpp:120
--
Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.

To unsubscribe, send email to wx-users+***@googlegroups.com
or visit http://groups.google.com/group/wx-users
Vadim Zeitlin
2013-11-21 13:00:42 UTC
Permalink
On Thu, 21 Nov 2013 00:32:36 -0500 John Labenski wrote:

JL> When I try to close my app using either the title-bar X close button or a
JL> File->Close menu item the frame doesn't close. In fact, you can type into
JL> the wxStyledTextCtrl, move splitters, show dialogs, but as soon as a menu
JL> bar item is clicked it closes. The same effect occurs if the app is exited
JL> using the menu accelerator and closing can be made to happen by pressing
JL> Alt-F to pop-down the File menu..
JL>
JL> This does not happen with the minimal, stc, or exec sample in wx 3.0, nor
JL> does it happen with my app compiled against 2.8.

I don't know what's going on here but if it doesn't happen in the sample,
the usual advice of trying to bisect the differences between your programs
and them applies.

Otherwise you can always try debugging it yourself by checking whether
your wxEVT_CLOSE is being called, if the (last?) TLW really destroyed and
whether you get a subsequent idle event.

Regards,
VZ
--
TT-Solutions: wxWidgets consultancy and technical support
http://www.tt-solutions.com/
John Labenski
2014-02-10 16:13:18 UTC
Permalink
Post by Vadim Zeitlin
JL> When I try to close my app using either the title-bar X close button or a
JL> File->Close menu item the frame doesn't close. In fact, you can type into
JL> the wxStyledTextCtrl, move splitters, show dialogs, but as soon as a menu
JL> bar item is clicked it closes. The same effect occurs if the app is exited
JL> using the menu accelerator and closing can be made to happen by pressing
JL> Alt-F to pop-down the File menu..
JL>
JL> This does not happen with the minimal, stc, or exec sample in wx 3.0, nor
JL> does it happen with my app compiled against 2.8.
I don't know what's going on here but if it doesn't happen in the sample,
the usual advice of trying to bisect the differences between your programs
and them applies.
Otherwise you can always try debugging it yourself by checking whether
your wxEVT_CLOSE is being called, if the (last?) TLW really destroyed and
whether you get a subsequent idle event.
Ok, it took some time, but I managed to duplicate the problem in the
treectrl sample. I simply make a notebook as a child of the frame and add
an empty treectrl to it.

The problem boils down to this;

1) A wxTreeCtrl added directly to a wxNotebook blocks the program from
exiting with the backtrace as I showed earlier and the program uses ~ 50%
CPU usage redrawing something.
2) If you create an intermediary wxPanel as a child of the notebook and the
parent of the treectrl the program exits normally.
3) The program will also exit normally if you select the a different page
of the notebook, hiding the new treectrl.


I don't see any recent commit to src/generic/treectlg.cpp nor
src/gtk/notebook.cpp that look like candidates.

Below is a diff to samples/treectrl/treetest.cpp made in the treetest.cpp
directory.

Any ideas before I go through the painful task of bisecting commits? It
believe that it worked with 2.9.5 or so.

Thanks,
John



Index: treectrl/treetest.cpp
===================================================================
--- treectrl/treetest.cpp (revision 75781)
+++ treectrl/treetest.cpp (working copy)
@@ -20,6 +20,8 @@
#include "wx/log.h"
#endif

+#include "wx/notebook.h"
+
#include "wx/colordlg.h"
#include "wx/numdlg.h"

@@ -333,8 +335,16 @@
SetMenuBar(menu_bar);
#endif // wxUSE_MENUS

- m_panel = new wxPanel(this);
+ wxNotebook* notebook = new wxNotebook(this, wxID_ANY);

+ //wxPanel* p = new wxPanel(notebook, wxID_ANY); // make 't' a child of
this panel and add 'p' to notebook and the program exits normally.
+ wxTreeCtrl* t = new wxTreeCtrl(notebook, wxID_ANY);
+
+ m_panel = new wxPanel(notebook);
+
+ notebook->AddPage(t, "Tree1");
+ notebook->AddPage(m_panel, "Page1"); // can add to notebook or not,
select this page and program exits normally.
+
#if wxUSE_LOG
// create the controls
m_textCtrl = new wxTextCtrl(m_panel, wxID_ANY, wxT(""),
--
Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.

To unsubscribe, send email to wx-users+***@googlegroups.com
or visit http://groups.google.com/group/wx-users
Vadim Zeitlin
2014-02-11 21:10:31 UTC
Permalink
On Mon, 10 Feb 2014 11:13:18 -0500 John Labenski wrote:

JL> Ok, it took some time, but I managed to duplicate the problem in the
JL> treectrl sample. I simply make a notebook as a child of the frame and add
JL> an empty treectrl to it.

Unfortunately I can't reproduce it here. If I apply the included patch to
the sample, it works just fine (with the current trunk and not 3.0 though).

JL> The problem boils down to this;
JL>
JL> 1) A wxTreeCtrl added directly to a wxNotebook blocks the program from
JL> exiting with the backtrace as I showed earlier and the program uses ~ 50%
JL> CPU usage redrawing something.

Have you tried breaking on wxWindow::Refresh() and checking if it's called
in a loop/recursively from somewhere?

Sorry but I don't have any idea what could be causing this...
VZ
--
TT-Solutions: wxWidgets consultancy and technical support
http://www.tt-solutions.com/
John Labenski
2014-02-14 17:03:34 UTC
Permalink
svn up -r 63774 good

svn up -r 63775 bad
Post by Vadim Zeitlin
JL> The problem boils down to this;
JL>
JL> 1) A wxTreeCtrl added directly to a wxNotebook blocks the program from
JL> exiting with the backtrace as I showed earlier and the program uses ~ 50%
JL> CPU usage redrawing something.
Have you tried breaking on wxWindow::Refresh() and checking if it's called
in a loop/recursively from somewhere?
wxWindow::Refresh() is not called while the program is hanging while
exiting.

-------------------------

The wx revision that causes my problem is r63775 which is between 2.9.0 and
2.9.1. r63774 and earlier works fine.

http://svn.wxwidgets.org/viewvc/wx?view=revision&revision=63775

There's a lot going on in that commit, maybe Paul could shed some light on
this problem.

This is the ticket the commit fixed:
http://trac.wxwidgets.org/ticket/11834


I know that my previous wx checkout was svn trunk, but probably around the
2.9.5 or later version. Since it closes for you I'd guess that maybe it is
more of a problem with a newer/different gtk since I did update the OS and
my wx checkout around the time I first noticed the problem, which was last
November. Of course, switching to an older gtk to test it is a lot harder.

Here's my current system info:
Ubuntu 13.10 amd64.
libgtk2.0-0:amd64 2.24.20-1ubuntu1

The previous version of my OS was Ubuntu 12.10 (IIRC) and that supposedly
had 2.24.13-0ubuntu2 which is only a few minor revisions earlier.

http://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=libgtk2.0&searchon=names


Regards,
John
--
Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.

To unsubscribe, send email to wx-users+***@googlegroups.com
or visit http://groups.google.com/group/wx-users
Vadim Zeitlin
2014-02-14 23:09:35 UTC
Permalink
On Fri, 14 Feb 2014 12:03:34 -0500 John Labenski wrote:

JL> The wx revision that causes my problem is r63775 which is between 2.9.0 and
JL> 2.9.1. r63774 and earlier works fine.
JL>
JL> http://svn.wxwidgets.org/viewvc/wx?view=revision&revision=63775
JL>
JL> There's a lot going on in that commit, maybe Paul could shed some light on
JL> this problem.

Yes, I'm afraid I don't fully understand everything going on here neither.
Could you please create a ticket with your example reproducing the bug and
a pointer to that revision so that it doesn't get lost?

JL> I know that my previous wx checkout was svn trunk, but probably around the
JL> 2.9.5 or later version. Since it closes for you I'd guess that maybe it is
JL> more of a problem with a newer/different gtk

I'll try to test (and debug if I manage to reproduce the bug) with a newer
GTK+ version.

Regards,
VZ
--
TT-Solutions: wxWidgets consultancy and technical support
http://www.tt-solutions.com/
John Labenski
2014-02-17 05:46:58 UTC
Permalink
Post by Vadim Zeitlin
JL> The wx revision that causes my problem is r63775 which is between 2.9.0 and
JL> 2.9.1. r63774 and earlier works fine.
JL>
JL> http://svn.wxwidgets.org/viewvc/wx?view=revision&revision=63775
JL>
JL> There's a lot going on in that commit, maybe Paul could shed some light on
JL> this problem.
Yes, I'm afraid I don't fully understand everything going on here neither.
Could you please create a ticket with your example reproducing the bug and
a pointer to that revision so that it doesn't get lost?
Created: http://trac.wxwidgets.org/ticket/15994
Post by Vadim Zeitlin
JL> I know that my previous wx checkout was svn trunk, but probably around the
JL> 2.9.5 or later version. Since it closes for you I'd guess that maybe it is
JL> more of a problem with a newer/different gtk
I'll try to test (and debug if I manage to reproduce the bug) with a newer
GTK+ version.
I believe that it is simply a theme problem. The Ubuntu 13.10
gtk2-engines-oxygen.1.3.4-0ubuntu1 theme has the refresh problem, but
different gtk themes work fine.

Why wx < r63775 works ok I don't know, I went through the r63775 commit and
while it changes quite a few things, didn't see anything obviously wrong.

Regards,
John
--
Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.

To unsubscribe, send email to wx-users+***@googlegroups.com
or visit http://groups.google.com/group/wx-users
Loading...