diff --git a/bindings/interface/GridView.cpp b/bindings/interface/GridView.cpp index 7027f56..86c226f 100644 --- a/bindings/interface/GridView.cpp +++ b/bindings/interface/GridView.cpp @@ -23,7 +23,7 @@ class PyBGridView : public BGridView{ PYBIND11_MODULE(GridView,m) { -py::class_(m, "BGridView") +py::class_>(m, "BGridView") .def(py::init(), "", py::arg("horizontal")=B_USE_DEFAULT_SPACING, py::arg("vertical")=B_USE_DEFAULT_SPACING) //.def(py::init(), "", py::arg("horizontal")=-1002, py::arg("vertical")=-1002) .def(py::init(), "", py::arg("name"), py::arg("horizontal")=B_USE_DEFAULT_SPACING, py::arg("vertical")=B_USE_DEFAULT_SPACING) diff --git a/tests/gridViewHolderOwnership.py b/tests/gridViewHolderOwnership.py new file mode 100644 index 0000000..9566de3 --- /dev/null +++ b/tests/gridViewHolderOwnership.py @@ -0,0 +1,45 @@ +import gc +import faulthandler + +faulthandler.enable() + +try: + import resource + resource.setrlimit(resource.RLIMIT_CORE, (0, 0)) +except Exception: + pass + +from Be import ( + BApplication, + BGridView, + BRect, + BWindow, + B_NOT_RESIZABLE, + window_type, +) + + +application = BApplication( + "application/x-vnd.haiku-pyapi-bgridview-holder-test" +) + +window = BWindow( + BRect(100.0, 100.0, 360.0, 260.0), + "BGridView holder test", + window_type.B_TITLED_WINDOW, + B_NOT_RESIZABLE, +) + +grid = BGridView() + +window.AddChild(grid, None) +window.Quit() + +del grid +gc.collect() + +del window +del application +gc.collect() + +print("BGRIDVIEW HOLDER OWNERSHIP REGRESSION TEST: PASS")