Open kenz-gelsoft opened 23 hours ago
Testing with WAYLAND_DEBUG=1 may help. Let's try.
I expected at least one log of above contains (xdg_)popup related log, but not found.
In this scenario, whole popup placed inside parent window. So it is possible that no native (gtk/wayland level) popup window created.
If so, this may be invaldating or subsurface initialization problem.
Actually subsurface created after button click.
There are two subsurfaces.
I guess one is for gtk popup thing and another is GL surface that gecko painting in.
No it seems the former is covering parent window and prevents events passed through. The latter is for the popup. Because we set position of popup to the latter.
1071756.839] -> wl_pointer@8.button(4, 992004, 272, 1)
[1071756.885] -> wl_pointer@8.frame()
[1071756.895] wl_pointer@8.button(4, 992004, 272, 1)
[1071756.942] wl_pointer@8.frame()
[1071757.968] -> wl_surface@29.frame(new id wl_callback@39)
[1071757.996] -> wl_surface@29.commit()
[1071758.003] wl_surface@29.frame(new id wl_callback@39)
[1071758.037] wl_surface@29.commit()
[1071759.756] -> wl_compositor@5.create_surface(new id wl_surface@42)
[1071761.828] wl_compositor@5.create_surface(new id wl_surface@42)
[1071762.663] -> wl_callback@39.done(992010)
[1071762.689] -> wl_display@1.delete_id(39)
[1071766.825] wl_display@1.delete_id(39)
[1071766.846] wl_callback@39.done(992010)
[1071766.858] -> wl_surface@29.frame(new id wl_callback@39)
[1071766.879] -> wl_surface@29.commit()
[1071766.882] wl_surface@29.frame(new id wl_callback@39)
[1071766.907] wl_surface@29.commit()
[1071766.948] -> wl_surface@29.commit()
[1071769.360] -> wl_surface@29.damage_buffer(1024, 0, 293, 113)
[1071769.410] -> wl_surface@29.attach(wl_buffer@38, 0, 0)
[1071769.436] -> wl_surface@29.commit()
[1071770.064] wl_surface@29.commit()
[1071770.903] -> wl_callback@39.done(992018)
[1071770.926] -> wl_display@1.delete_id(39)
[1071770.942] wl_surface@29.damage_buffer(1024, 0, 293, 113)
[1071770.971] wl_surface@29.attach(wl_buffer@38, 0, 0)
[1071770.989] wl_surface@29.commit()
[1071770.995] -> wl_buffer@34.release()
[1071771.023] wl_display@1.delete_id(39)
[1071771.042] wl_callback@39.done(992018)
[1071771.053] -> wl_surface@29.frame(new id wl_callback@39)
[1071771.073] -> wl_surface@29.commit([1071771.076] wl_surface@29.frame()
new id wl_callback@39)
[1071771.130] wl_surface@29.commit()
[1071771.160] wl_buffer@34.release()
[1071772.988] -> wl_surface@42.set_buffer_scale(1)
[1071773.031] -> wl_compositor@20.create_surface(new id wl_surface@43)
[1071773.048] -> wl_subcompositor@21.get_subsurface(new id wl_subsurface@44, wl_surface@43, wl_surface@42)
[1071773.073] -> wl_subsurface@44.set_desync()
[1071773.081] -> wl_surface@42.frame(new id wl_callback@45)
[1071773.094] -> wl_surface@43.commit()
[1071773.106] -> wl_compositor@20.create_region(new id wl_region@46)
[1071773.120] -> wl_surface@43.set_input_region(wl_region@46)
[1071773.130] -> wl_region@46.destroy()
[1071773.152] -> wl_subcompositor@6.get_subsurface(new id wl_subsurface@47, wl_surface@42, wl_surface@25)
[1071773.181] -> wl_subsurface@47.set_position(1003, 76)
[1071774.878] wl_surface@42.set_buffer_scale(1)
[1071775.682] -> wl_callback@39.done(992023)
[1071775.705] -> wl_display@1.delete_id(39)
[1071775.719] wl_compositor@20.create_surface(new id wl_surface@43)
[1071775.762] wl_subcompositor@21.get_subsurface(new id wl_subsurface@44, wl_surface@43, wl_surface@42)
[!] HaikuSurface::AttachView(): view == NULL
[1071775.820] wl_subsurface@44.set_desync()
[1071775.830] wl_surface@42.frame(new id wl_callback@45)
[1071775.844] wl_surface@43.commit()
[1071775.851] wl_compositor@20.create_region(new id wl_region@46)
[1071775.866] wl_surface@43.set_input_region(wl_region@46)
[1071775.878] wl_region@46.destroy()
[1071775.890] -> wl_display@1.delete_id(46)
[1071775.902] wl_subcompositor@6.get_subsurface(new id wl_subsurface@47, wl_surface@42, wl_surface@25)
[1071776.000] wl_subsurface@47.set_position(1003, 76)
[1071780.656] -> wl_shm@16.create_pool(new id wl_shm_pool@48, fd 120, 863040)
[1071780.697] -> wl_shm_pool@48.create_buffer([1071780.700] wl_shm@16.create_pool(new id wl_buffer@new id wl_shm_pool@4948, , 0fd 120, , 310863040, )
696, 1240, 0)
[1071780.847] wl_shm_pool@48.create_buffer(new id wl_buffer@49, 0, 310, 696, 1240, 0)
[1071784.938] wl_display@1.delete_id(39)
[1071784.961] wl_display@1.delete_id(46)
[1071784.973] wl_callback@39.done(992023)
[1071784.987] -> wl_surface@29.frame(new id wl_callback@39)
[1071785.010] -> wl_surface@29.commit()
[1071785.014] wl_surface@29.frame(new id wl_callback@39)
[1071785.067] wl_surface@29.commit()
[1071785.144] -> wl_compositor@20.create_region(new id wl_region@46)
[1071785.174] -> wl_surface@43.set_input_region(wl_region@46)
[1071785.189] -> wl_region@46.destroy()
[1071785.352] -> wl_shm@4.create_pool(new id wl_shm_pool@50, fd 121, 863040)
[1071785.409] -> wl_shm_pool@50.create_buffer(new id wl_buffer@51, 0, 310, 696, 1240, 0)
[1071785.936] -> wl_surface@42.attach(wl_buffer@51, 0, 0)
[1071785.964] -> wl_surface@42.set_buffer_scale(1)
[1071785.975] -> wl_surface@42.damage(0, 0, 310, 696)
[1071786.004] -> wl_surface@42.set_opaque_region(nil)
[1071786.015] -> wl_compositor@5.create_region(new id wl_region@52)
[1071786.029] -> wl_surface@42.set_input_region(wl_region@52)
[1071786.040] -> wl_region@52.destroy()
[1071786.060] -> wl_surface@42.frame(new id wl_callback@53)
[1071786.074] -> wl_surface@43.frame(new id wl_callback@54)
[1071786.089] -> wl_surface@42.commit()
[1071786.109] -> wl_surface@29.damage_buffer(0, 0, 1317, 877)
[1071786.155] -> wl_surface@29.attach(wl_buffer@34, 0, 0)
[1071786.183] -> wl_surface@29.commit()
[1071787.909] -> wl_surface@25.frame(new id wl_callback@55)
[1071787.936] -> wl_surface@29.frame(new id wl_callback@56)
[1071787.950] -> wl_surface@25.commit()
[1071787.959] -> wl_subsurface@47.set_desync()
[1071787.968] -> wl_surface@29.commit()
[1071788.493] wl_compositor@20.create_region(new id wl_region@46)
[1071789.398] -> wl_callback@39.done(992036)
[1071789.423] -> wl_display@1.delete_id(39)
[1071789.441] wl_surface@43.set_input_region(wl_region@46)
[1071789.478] wl_region@46.destroy()
[1071789.488] -> wl_display@1.delete_id(46)
[1071789.503] wl_shm@4.create_pool(new id wl_shm_pool@50, fd 121, 863040)
[1071789.604] wl_shm_pool@50.create_buffer(new id wl_buffer@51, 0, 310, 696, 1240, 0)
[1071789.692] wl_surface@42.attach(wl_buffer@51, 0, 0)
[1071789.731] wl_surface@42.set_buffer_scale(1)
[1071789.750] wl_surface@42.damage(0, 0, 310, 696)
(from menu1.txt)