atuq: el 117x70 lo pide el CLIENTE, no el compositor
Ordenando el protocolo numerado en los dos sentidos: cosmic-comp manda configure_bounds(0,0)+configure(0,0) («elegi vos»), el cliente contesta set_min_size(117,37), set_max_size(348,16332) y set_window_geometry(117,70), y RECIEN ahi el compositor devuelve configure(117,70) teniendo 1280x692 para dar. No hay nada que arreglar en COSMIC. El MOZ_LOG dice como: «Initial resize to 1 x 1» — Gecko crea la ventana de 1x1 y nunca la agranda; 117x70 es lo que queda cuando el chrome se mide a si mismo. El frente se mueve a Gecko.
This commit is contained in:
@@ -383,6 +383,18 @@ def main():
|
||||
# por `->` es leer otra vez al cliente, que es justo la mitad que ya sabemos que
|
||||
# miente. Y los nombres llevan `@id` en el medio, así que `wl_surface.commit` no
|
||||
# engancha: hay que anclar en el método.
|
||||
# QUIÉN ELIGE EL TAMAÑO. `attach` no lo dice: el tamaño del buffer está en
|
||||
# `create_buffer(…, W, H, stride, fmt)`, y lo que el cliente DECLARA querer está en
|
||||
# `set_window_geometry`. Puestos en orden y en los DOS sentidos, se ve si el 117×70
|
||||
# lo propone el cliente (y el compositor lo repite) o lo impone el compositor.
|
||||
print("---- protocolo: el tamaño, en orden (→ = pedido del cliente) ----")
|
||||
# Va `wl_output` en la MISMA lista y numerada: la pregunta es si la geometría de
|
||||
# la salida (`mode`) llega ANTES o DESPUÉS de que el cliente fije su tamaño. Con dos
|
||||
# greps separados eso no se puede ordenar.
|
||||
print(ser.cmd("grep -a -n -E 'create_buffer|set_window_geometry|configure|ack_configure|"
|
||||
"get_toplevel|set_min_size|set_max_size|\\.attach|wl_output|\\.mode\\(|"
|
||||
"\\.geometry\\(|\\.done\\(\\)' "
|
||||
"/var/log/cosmic/atuq.log | head -70", 240))
|
||||
print("---- protocolo: EVENTOS del compositor (sin flecha) ----")
|
||||
print(ser.cmd("grep -av ' -> ' /var/log/cosmic/atuq.log | "
|
||||
"grep -a -E 'xdg_surface|xdg_toplevel|wl_callback|wl_output|wl_surface' | "
|
||||
|
||||
Reference in New Issue
Block a user