<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Oct 1, 2015 at 12:00 PM, Nils Chr. Brause <span dir="ltr"><<a href="mailto:nilschrbrause@gmail.com" target="_blank">nilschrbrause@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
</span>There are some enum attributes missing, namely:<br>
- wl_shm_pool::create_buffer::format (it's wl_shm::format)<br>
- wl_shell_surface::set_fullscreen::method (it's<br>
wl_shell_surface::fullscreen_method)<br>
- wl_surface::set_buffer_transform::transform (it's wl_output::transform)<br>
<br>
I would prefer, if the enum attributes would also name the interface,<br>
where the enum can be found, e.g.:<br>
    <arg name="format" type="uint" enum="wl_shm.format"/><br>
If two enums in different interfaces happen to have the same name (if<br>
that's possible?), this would lead to ambiguities otherwise. Also a<br>
scanner wouldn't have to look up the interface name that way.<br></blockquote><div><br></div><div>Oh rats, it does look like you are right, and the current patch just skipped all the cross-object enums. There will have to be changes to the xml translators to handle these.<br><br></div><div>I'm not sure how hard it is to make xml translators change behaviour depending on whether there is a period in the string. If so then the current protocol file patches could continue to work, by making "no period" mean "in the current object". But it might be easier to just add the object name to all enum attributes, like you propose. That could also leave open the possibility that "no period" means some future "global" namespace for the enum.<br><br></div></div></div></div>