Add mode_sigh and release to framebuffer::Session
The 'mode_sigh' function allows the client to receive notifications about server-side display-mode changes. To respond to such a signal, the client can use the new 'release' function, which acknowledges the mode change at the server and frees the original framebuffer dataspace. Via a subsequent call of 'dataspace', a framebuffer dataspace corresponding to the new mode can be obtained. Related to issue #11.
This commit is contained in:
@@ -196,7 +196,10 @@ namespace Framebuffer
|
||||
{
|
||||
public:
|
||||
|
||||
Genode::Dataspace_capability dataspace() { return _window_content->fb_ds_cap(); }
|
||||
Genode::Dataspace_capability dataspace() {
|
||||
return _window_content->fb_ds_cap(); }
|
||||
|
||||
void release() { }
|
||||
|
||||
Mode mode()
|
||||
{
|
||||
@@ -204,6 +207,8 @@ namespace Framebuffer
|
||||
Mode::RGB565);
|
||||
}
|
||||
|
||||
void mode_sigh(Genode::Signal_context_capability) { }
|
||||
|
||||
void refresh(int x, int y, int w, int h) {
|
||||
window_content()->redraw_area(x, y, w, h); }
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user