Basic functionality should be available to embedders via stable APIs, rather than needing to use method channels that don't have the same stability guarantees. Currently, that's not the case. We should work to make the desktop embeddings channel-free, and then in the future whenever we add an important channel (as we did recently with mouse cursors) we should wrap it as a precondition for adopting it in the desktop embeddings, to hold the line.
This will have the added benefit of embedders not necessarily needing to implement the JSON message codec; currently the use of it by these internal channels force embedders to implement it even though plugins all use the standard codec.
Basic functionality should be available to embedders via stable APIs, rather than needing to use method channels that don't have the same stability guarantees. Currently, that's not the case. We should work to make the desktop embeddings channel-free, and then in the future whenever we add an important channel (as we did recently with mouse cursors) we should wrap it as a precondition for adopting it in the desktop embeddings, to hold the line.
This will have the added benefit of embedders not necessarily needing to implement the JSON message codec; currently the use of it by these internal channels force embedders to implement it even though plugins all use the standard codec.