mirror of
https://github.com/genodelabs/genode.git
synced 2025-06-02 07:30:58 +00:00
parent
e8f5706382
commit
5d40c0c1ce
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Nitpicker-based graphics backend for scout
|
* \brief Graphics backend based on the GUI session interface
|
||||||
* \date 2013-12-30
|
* \date 2013-12-30
|
||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
*/
|
*/
|
||||||
@ -11,8 +11,8 @@
|
|||||||
* under the terms of the GNU Affero General Public License version 3.
|
* under the terms of the GNU Affero General Public License version 3.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _INCLUDE__SCOUT__NITPICKER_GRAPHICS_BACKEND_H_
|
#ifndef _INCLUDE__SCOUT__GRAPHICS_BACKEND_IMPL_H_
|
||||||
#define _INCLUDE__SCOUT__NITPICKER_GRAPHICS_BACKEND_H_
|
#define _INCLUDE__SCOUT__GRAPHICS_BACKEND_IMPL_H_
|
||||||
|
|
||||||
/* Genode includes */
|
/* Genode includes */
|
||||||
#include <gui_session/connection.h>
|
#include <gui_session/connection.h>
|
||||||
@ -25,61 +25,61 @@
|
|||||||
|
|
||||||
namespace Scout {
|
namespace Scout {
|
||||||
using Genode::Pixel_rgb565;
|
using Genode::Pixel_rgb565;
|
||||||
class Nitpicker_graphics_backend;
|
class Graphics_backend_impl;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class Scout::Nitpicker_graphics_backend : public Graphics_backend
|
class Scout::Graphics_backend_impl : public Graphics_backend
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Noncopyable
|
* Noncopyable
|
||||||
*/
|
*/
|
||||||
Nitpicker_graphics_backend(Nitpicker_graphics_backend const &);
|
Graphics_backend_impl(Graphics_backend_impl const &);
|
||||||
Nitpicker_graphics_backend &operator = (Nitpicker_graphics_backend const &);
|
Graphics_backend_impl &operator = (Graphics_backend_impl const &);
|
||||||
|
|
||||||
Genode::Region_map &_local_rm;
|
Genode::Region_map &_local_rm;
|
||||||
|
|
||||||
Nitpicker::Connection &_nitpicker;
|
Gui::Connection &_gui;
|
||||||
|
|
||||||
Genode::Dataspace_capability _init_fb_ds(Area max_size)
|
Genode::Dataspace_capability _init_fb_ds(Area max_size)
|
||||||
{
|
{
|
||||||
_nitpicker.buffer(Framebuffer::Mode(max_size.w(), max_size.h()*2,
|
_gui.buffer(Framebuffer::Mode(max_size.w(), max_size.h()*2,
|
||||||
Framebuffer::Mode::RGB565), false);
|
Framebuffer::Mode::RGB565), false);
|
||||||
return _nitpicker.framebuffer()->dataspace();
|
return _gui.framebuffer()->dataspace();
|
||||||
}
|
}
|
||||||
|
|
||||||
Area _max_size;
|
Area _max_size;
|
||||||
|
|
||||||
Genode::Attached_dataspace _fb_ds { _local_rm, _init_fb_ds(_max_size) };
|
Genode::Attached_dataspace _fb_ds { _local_rm, _init_fb_ds(_max_size) };
|
||||||
|
|
||||||
typedef Nitpicker::Session::View_handle View_handle;
|
typedef Gui::Session::View_handle View_handle;
|
||||||
|
|
||||||
Point _position;
|
Point _position;
|
||||||
Area _view_size;
|
Area _view_size;
|
||||||
View_handle _view { _nitpicker.create_view() };
|
View_handle _view { _gui.create_view() };
|
||||||
Canvas_base *_canvas[2];
|
Canvas_base *_canvas[2];
|
||||||
bool _flip_state = { false };
|
bool _flip_state = { false };
|
||||||
|
|
||||||
void _update_viewport()
|
void _update_viewport()
|
||||||
{
|
{
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
|
|
||||||
Nitpicker::Rect rect(_position, _view_size);
|
Gui::Rect rect(_position, _view_size);
|
||||||
_nitpicker.enqueue<Command::Geometry>(_view, rect);
|
_gui.enqueue<Command::Geometry>(_view, rect);
|
||||||
|
|
||||||
Nitpicker::Point offset(0, _flip_state ? -_max_size.h() : 0);
|
Gui::Point offset(0, _flip_state ? -_max_size.h() : 0);
|
||||||
_nitpicker.enqueue<Command::Offset>(_view, offset);
|
_gui.enqueue<Command::Offset>(_view, offset);
|
||||||
|
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
void _refresh_view(Rect rect)
|
void _refresh_view(Rect rect)
|
||||||
{
|
{
|
||||||
int const y_offset = _flip_state ? _max_size.h() : 0;
|
int const y_offset = _flip_state ? _max_size.h() : 0;
|
||||||
_nitpicker.framebuffer()->refresh(rect.x1(), rect.y1() + y_offset,
|
_gui.framebuffer()->refresh(rect.x1(), rect.y1() + y_offset,
|
||||||
rect.w(), rect.h());
|
rect.w(), rect.h());
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename PT>
|
template <typename PT>
|
||||||
@ -98,13 +98,13 @@ class Scout::Nitpicker_graphics_backend : public Graphics_backend
|
|||||||
*
|
*
|
||||||
* \param alloc allocator used for allocating textures
|
* \param alloc allocator used for allocating textures
|
||||||
*/
|
*/
|
||||||
Nitpicker_graphics_backend(Genode::Region_map &local_rm,
|
Graphics_backend_impl(Genode::Region_map &local_rm,
|
||||||
Nitpicker::Connection &nitpicker,
|
Gui::Connection &gui,
|
||||||
Genode::Allocator &alloc,
|
Genode::Allocator &alloc,
|
||||||
Area max_size, Point position, Area view_size)
|
Area max_size, Point position, Area view_size)
|
||||||
:
|
:
|
||||||
_local_rm(local_rm),
|
_local_rm(local_rm),
|
||||||
_nitpicker(nitpicker),
|
_gui(gui),
|
||||||
_max_size(max_size),
|
_max_size(max_size),
|
||||||
_position(position),
|
_position(position),
|
||||||
_view_size(view_size)
|
_view_size(view_size)
|
||||||
@ -160,10 +160,10 @@ class Scout::Nitpicker_graphics_backend : public Graphics_backend
|
|||||||
|
|
||||||
void bring_to_front() override
|
void bring_to_front() override
|
||||||
{
|
{
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
typedef Nitpicker::Session::View_handle View_handle;
|
typedef Gui::Session::View_handle View_handle;
|
||||||
_nitpicker.enqueue<Command::To_front>(_view, View_handle());
|
_gui.enqueue<Command::To_front>(_view, View_handle());
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
void view_area(Area area) override
|
void view_area(Area area) override
|
||||||
@ -172,4 +172,4 @@ class Scout::Nitpicker_graphics_backend : public Graphics_backend
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* _INCLUDE__SCOUT__NITPICKER_GRAPHICS_BACKEND_H_ */
|
#endif /* _INCLUDE__SCOUT__GRAPHICS_BACKEND_IMPL_H_ */
|
@ -18,7 +18,7 @@
|
|||||||
#include <scout/platform.h>
|
#include <scout/platform.h>
|
||||||
#include <scout/tick.h>
|
#include <scout/tick.h>
|
||||||
#include <scout/user_state.h>
|
#include <scout/user_state.h>
|
||||||
#include <scout/nitpicker_graphics_backend.h>
|
#include <scout/graphics_backend_impl.h>
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
#include "elements.h"
|
#include "elements.h"
|
||||||
@ -84,9 +84,9 @@ struct Main : Scout::Event_handler
|
|||||||
|
|
||||||
bool const _global_new_initialized = (_alloc_ptr = &_heap, true);
|
bool const _global_new_initialized = (_alloc_ptr = &_heap, true);
|
||||||
|
|
||||||
Nitpicker::Connection _nitpicker { _env };
|
Gui::Connection _gui { _env };
|
||||||
|
|
||||||
Platform _platform { _env, *_nitpicker.input() };
|
Platform _platform { _env, *_gui.input() };
|
||||||
|
|
||||||
bool const _event_handler_registered = (_platform.event_handler(*this), true);
|
bool const _event_handler_registered = (_platform.event_handler(*this), true);
|
||||||
|
|
||||||
@ -101,8 +101,8 @@ struct Main : Scout::Event_handler
|
|||||||
Scout::Point const _initial_position { _initial_x, _initial_y };
|
Scout::Point const _initial_position { _initial_x, _initial_y };
|
||||||
Scout::Area const _initial_size { _initial_w, _initial_h };
|
Scout::Area const _initial_size { _initial_w, _initial_h };
|
||||||
|
|
||||||
Nitpicker_graphics_backend
|
Graphics_backend_impl
|
||||||
_graphics_backend { _env.rm(), _nitpicker, _heap, _max_size,
|
_graphics_backend { _env.rm(), _gui, _heap, _max_size,
|
||||||
_initial_position, _initial_size };
|
_initial_position, _initial_size };
|
||||||
|
|
||||||
Launchpad_window<Pixel_rgb565>
|
Launchpad_window<Pixel_rgb565>
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
#include <scout/platform.h>
|
#include <scout/platform.h>
|
||||||
#include <scout/tick.h>
|
#include <scout/tick.h>
|
||||||
#include <scout/user_state.h>
|
#include <scout/user_state.h>
|
||||||
#include <scout/nitpicker_graphics_backend.h>
|
#include <scout/graphics_backend_impl.h>
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
#include "elements.h"
|
#include "elements.h"
|
||||||
@ -63,9 +63,9 @@ struct Scout::Main : Scout::Event_handler
|
|||||||
bool const _launcher_initialized = (Launcher::init(_env, _heap), true);
|
bool const _launcher_initialized = (Launcher::init(_env, _heap), true);
|
||||||
bool const _png_image_initialized = (Png_image::init(_heap), true);
|
bool const _png_image_initialized = (Png_image::init(_heap), true);
|
||||||
|
|
||||||
Nitpicker::Connection _nitpicker { _env };
|
Gui::Connection _gui { _env };
|
||||||
|
|
||||||
Platform _platform { _env, *_nitpicker.input() };
|
Platform _platform { _env, *_gui.input() };
|
||||||
|
|
||||||
bool const _event_handler_registered = (_platform.event_handler(*this), true);
|
bool const _event_handler_registered = (_platform.event_handler(*this), true);
|
||||||
|
|
||||||
@ -75,8 +75,8 @@ struct Scout::Main : Scout::Event_handler
|
|||||||
|
|
||||||
Config const _config { };
|
Config const _config { };
|
||||||
|
|
||||||
Nitpicker_graphics_backend
|
Graphics_backend_impl
|
||||||
_graphics_backend { _env.rm(), _nitpicker, _heap, _max_size,
|
_graphics_backend { _env.rm(), _gui, _heap, _max_size,
|
||||||
_initial_position, _initial_size };
|
_initial_position, _initial_size };
|
||||||
|
|
||||||
void _init_navicons()
|
void _init_navicons()
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Nitpicker-based virtual framebuffer
|
* \brief Virtual framebuffer
|
||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
* \date 2006-09-21
|
* \date 2006-09-21
|
||||||
*/
|
*/
|
||||||
@ -17,7 +17,7 @@
|
|||||||
#include <base/attached_rom_dataspace.h>
|
#include <base/attached_rom_dataspace.h>
|
||||||
#include <input/component.h>
|
#include <input/component.h>
|
||||||
#include <scout/user_state.h>
|
#include <scout/user_state.h>
|
||||||
#include <scout/nitpicker_graphics_backend.h>
|
#include <scout/graphics_backend_impl.h>
|
||||||
|
|
||||||
#include "framebuffer_window.h"
|
#include "framebuffer_window.h"
|
||||||
#include "services.h"
|
#include "services.h"
|
||||||
@ -148,9 +148,9 @@ class Liquid_fb::Main : public Scout::Event_handler
|
|||||||
/* heuristic for allocating the double-buffer backing store */
|
/* heuristic for allocating the double-buffer backing store */
|
||||||
enum { WINBORDER_WIDTH = 10, WINBORDER_HEIGHT = 40 };
|
enum { WINBORDER_WIDTH = 10, WINBORDER_HEIGHT = 40 };
|
||||||
|
|
||||||
Nitpicker::Connection _nitpicker { _env };
|
Gui::Connection _gui { _env };
|
||||||
|
|
||||||
Platform _platform { _env, *_nitpicker.input() };
|
Platform _platform { _env, *_gui.input() };
|
||||||
|
|
||||||
bool const _event_handler_registered = (_platform.event_handler(*this), true);
|
bool const _event_handler_registered = (_platform.event_handler(*this), true);
|
||||||
|
|
||||||
@ -159,8 +159,8 @@ class Liquid_fb::Main : public Scout::Event_handler
|
|||||||
Scout::Point const _initial_position { (int)config_fb_x, (int)config_fb_y };
|
Scout::Point const _initial_position { (int)config_fb_x, (int)config_fb_y };
|
||||||
Scout::Area const _initial_size = _max_size;
|
Scout::Area const _initial_size = _max_size;
|
||||||
|
|
||||||
Nitpicker_graphics_backend
|
Graphics_backend_impl
|
||||||
_graphics_backend { _env.rm(), _nitpicker, _heap, _max_size,
|
_graphics_backend { _env.rm(), _gui, _heap, _max_size,
|
||||||
_initial_position, _initial_size };
|
_initial_position, _initial_size };
|
||||||
|
|
||||||
Input::Session_component _input_session_component { _env, _env.ram() };
|
Input::Session_component _input_session_component { _env, _env.ram() };
|
||||||
|
@ -351,22 +351,22 @@ class Log_view
|
|||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
Nitpicker::Session_client &_nitpicker;
|
Gui::Session_client &_gui;
|
||||||
Nitpicker::Point _pos;
|
Gui::Point _pos;
|
||||||
Nitpicker::Area _size;
|
Gui::Area _size;
|
||||||
Nitpicker::Session::View_handle _handle;
|
Gui::Session::View_handle _handle;
|
||||||
|
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
typedef Nitpicker::Session::View_handle View_handle;
|
typedef Gui::Session::View_handle View_handle;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
Log_view(Nitpicker::Session_client &nitpicker, Nitpicker::Rect geometry)
|
Log_view(Gui::Session_client &gui, Gui::Rect geometry)
|
||||||
:
|
:
|
||||||
_nitpicker(nitpicker),
|
_gui(gui),
|
||||||
_pos(geometry.p1()),
|
_pos(geometry.p1()),
|
||||||
_size(geometry.area()),
|
_size(geometry.area()),
|
||||||
_handle(nitpicker.create_view())
|
_handle(gui.create_view())
|
||||||
{
|
{
|
||||||
move(_pos);
|
move(_pos);
|
||||||
top();
|
top();
|
||||||
@ -374,20 +374,20 @@ class Log_view
|
|||||||
|
|
||||||
void top()
|
void top()
|
||||||
{
|
{
|
||||||
_nitpicker.enqueue<Command::To_front>(_handle, View_handle());
|
_gui.enqueue<Command::To_front>(_handle, View_handle());
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
void move(Nitpicker::Point pos)
|
void move(Gui::Point pos)
|
||||||
{
|
{
|
||||||
_pos = pos;
|
_pos = pos;
|
||||||
|
|
||||||
Nitpicker::Rect rect(_pos, _size);
|
Gui::Rect rect(_pos, _size);
|
||||||
_nitpicker.enqueue<Command::Geometry>(_handle, rect);
|
_gui.enqueue<Command::Geometry>(_handle, rect);
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
Nitpicker::Point pos() const { return _pos; }
|
Gui::Point pos() const { return _pos; }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -404,21 +404,21 @@ struct Nitlog::Main
|
|||||||
unsigned const _win_h = _font.bounding_box().h() * LOG_H + 2;
|
unsigned const _win_h = _font.bounding_box().h() * LOG_H + 2;
|
||||||
|
|
||||||
/* init sessions to the required external services */
|
/* init sessions to the required external services */
|
||||||
Nitpicker::Connection _nitpicker { _env };
|
Gui::Connection _gui { _env };
|
||||||
Timer::Connection _timer { _env };
|
Timer::Connection _timer { _env };
|
||||||
|
|
||||||
void _init_nitpicker_buffer()
|
void _init_gui_buffer()
|
||||||
{
|
{
|
||||||
_nitpicker.buffer(Framebuffer::Mode(_win_w, _win_h,
|
_gui.buffer(Framebuffer::Mode(_win_w, _win_h,
|
||||||
Framebuffer::Mode::RGB565), false);
|
Framebuffer::Mode::RGB565), false);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool const _nitpicker_buffer_initialized = (_init_nitpicker_buffer(), true);
|
bool const _gui_buffer_initialized = (_init_gui_buffer(), true);
|
||||||
|
|
||||||
Sliced_heap _sliced_heap { _env.ram(), _env.rm() };
|
Sliced_heap _sliced_heap { _env.ram(), _env.rm() };
|
||||||
|
|
||||||
/* create log window */
|
/* create log window */
|
||||||
Attached_dataspace _fb_ds { _env.rm(), _nitpicker.framebuffer()->dataspace() };
|
Attached_dataspace _fb_ds { _env.rm(), _gui.framebuffer()->dataspace() };
|
||||||
|
|
||||||
Canvas<Pixel_rgb565> _canvas { _fb_ds.local_addr<Pixel_rgb565>(),
|
Canvas<Pixel_rgb565> _canvas { _fb_ds.local_addr<Pixel_rgb565>(),
|
||||||
::Area(_win_w, _win_h) };
|
::Area(_win_w, _win_h) };
|
||||||
@ -438,18 +438,18 @@ struct Nitlog::Main
|
|||||||
bool const _canvas_initialized = (_init_canvas(), true);
|
bool const _canvas_initialized = (_init_canvas(), true);
|
||||||
|
|
||||||
/* create view for log window */
|
/* create view for log window */
|
||||||
Nitpicker::Rect const _view_geometry { Nitpicker::Point(20, 20),
|
Gui::Rect const _view_geometry { Gui::Point(20, 20),
|
||||||
Nitpicker::Area(_win_w, _win_h) };
|
Gui::Area(_win_w, _win_h) };
|
||||||
Log_view _view { _nitpicker, _view_geometry };
|
Log_view _view { _gui, _view_geometry };
|
||||||
|
|
||||||
/* create root interface for service */
|
/* create root interface for service */
|
||||||
Root _root { _env.ep(), _sliced_heap, _log_window };
|
Root _root { _env.ep(), _sliced_heap, _log_window };
|
||||||
|
|
||||||
Attached_dataspace _ev_ds { _env.rm(), _nitpicker.input()->dataspace() };
|
Attached_dataspace _ev_ds { _env.rm(), _gui.input()->dataspace() };
|
||||||
|
|
||||||
Nitpicker::Point const _initial_mouse_pos { -1, -1 };
|
Gui::Point const _initial_mouse_pos { -1, -1 };
|
||||||
|
|
||||||
Nitpicker::Point _old_mouse_pos = _initial_mouse_pos;
|
Gui::Point _old_mouse_pos = _initial_mouse_pos;
|
||||||
|
|
||||||
unsigned _key_cnt = 0;
|
unsigned _key_cnt = 0;
|
||||||
|
|
||||||
@ -460,7 +460,7 @@ struct Nitlog::Main
|
|||||||
{
|
{
|
||||||
Input::Event const *ev_buf = _ev_ds.local_addr<Input::Event const>();
|
Input::Event const *ev_buf = _ev_ds.local_addr<Input::Event const>();
|
||||||
|
|
||||||
for (int i = 0, num_ev = _nitpicker.input()->flush(); i < num_ev; i++) {
|
for (int i = 0, num_ev = _gui.input()->flush(); i < num_ev; i++) {
|
||||||
|
|
||||||
Input::Event const &ev = ev_buf[i];
|
Input::Event const &ev = ev_buf[i];
|
||||||
|
|
||||||
@ -470,7 +470,7 @@ struct Nitlog::Main
|
|||||||
/* move view */
|
/* move view */
|
||||||
ev.handle_absolute_motion([&] (int x, int y) {
|
ev.handle_absolute_motion([&] (int x, int y) {
|
||||||
|
|
||||||
Nitpicker::Point const mouse_pos(x, y);
|
Gui::Point const mouse_pos(x, y);
|
||||||
|
|
||||||
if (_key_cnt && _old_mouse_pos != _initial_mouse_pos)
|
if (_key_cnt && _old_mouse_pos != _initial_mouse_pos)
|
||||||
_view.move(_view.pos() + mouse_pos - _old_mouse_pos);
|
_view.move(_view.pos() + mouse_pos - _old_mouse_pos);
|
||||||
@ -491,7 +491,7 @@ struct Nitlog::Main
|
|||||||
void _handle_timer()
|
void _handle_timer()
|
||||||
{
|
{
|
||||||
if (_log_window.draw())
|
if (_log_window.draw())
|
||||||
_nitpicker.framebuffer()->refresh(0, 0, _win_w, _win_h);
|
_gui.framebuffer()->refresh(0, 0, _win_w, _win_h);
|
||||||
}
|
}
|
||||||
|
|
||||||
Main(Env &env) : _env(env)
|
Main(Env &env) : _env(env)
|
||||||
@ -502,7 +502,7 @@ struct Nitlog::Main
|
|||||||
_timer.sigh(_timer_handler);
|
_timer.sigh(_timer_handler);
|
||||||
_timer.trigger_periodic(20*1000);
|
_timer.trigger_periodic(20*1000);
|
||||||
|
|
||||||
_nitpicker.input()->sigh(_input_handler);
|
_gui.input()->sigh(_input_handler);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Utility for the buffered pixel output via nitpicker
|
* \brief Utility for the buffered pixel output via the GUI server interface
|
||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
* \date 2014-08-22
|
* \date 2014-08-22
|
||||||
*/
|
*/
|
||||||
@ -11,8 +11,8 @@
|
|||||||
* under the terms of the GNU Affero General Public License version 3.
|
* under the terms of the GNU Affero General Public License version 3.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _INCLUDE__GEMS__NITPICKER_BUFFER_H_
|
#ifndef _INCLUDE__GEMS__GUI_BUFFER_H_
|
||||||
#define _INCLUDE__GEMS__NITPICKER_BUFFER_H_
|
#define _INCLUDE__GEMS__GUI_BUFFER_H_
|
||||||
|
|
||||||
/* Genode includes */
|
/* Genode includes */
|
||||||
#include <base/ram_allocator.h>
|
#include <base/ram_allocator.h>
|
||||||
@ -28,7 +28,7 @@
|
|||||||
#include <gems/dither_painter.h>
|
#include <gems/dither_painter.h>
|
||||||
|
|
||||||
|
|
||||||
struct Nitpicker_buffer
|
struct Gui_buffer
|
||||||
{
|
{
|
||||||
typedef Genode::Pixel_rgb888 Pixel_rgb888;
|
typedef Genode::Pixel_rgb888 Pixel_rgb888;
|
||||||
typedef Genode::Pixel_rgb565 Pixel_rgb565;
|
typedef Genode::Pixel_rgb565 Pixel_rgb565;
|
||||||
@ -46,27 +46,27 @@ struct Nitpicker_buffer
|
|||||||
Genode::Ram_allocator &ram;
|
Genode::Ram_allocator &ram;
|
||||||
Genode::Region_map &rm;
|
Genode::Region_map &rm;
|
||||||
|
|
||||||
Nitpicker::Connection &nitpicker;
|
Gui::Connection &gui;
|
||||||
|
|
||||||
Framebuffer::Mode const mode;
|
Framebuffer::Mode const mode;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return dataspace capability for virtual framebuffer
|
* Return dataspace capability for virtual framebuffer
|
||||||
*/
|
*/
|
||||||
Genode::Dataspace_capability _ds_cap(Nitpicker::Connection &nitpicker)
|
Genode::Dataspace_capability _ds_cap(Gui::Connection &gui)
|
||||||
{
|
{
|
||||||
/* setup virtual framebuffer mode */
|
/* setup virtual framebuffer mode */
|
||||||
nitpicker.buffer(mode, true);
|
gui.buffer(mode, true);
|
||||||
|
|
||||||
if (mode.format() != Framebuffer::Mode::RGB565) {
|
if (mode.format() != Framebuffer::Mode::RGB565) {
|
||||||
Genode::warning("color mode ", mode, " not supported");
|
Genode::warning("color mode ", mode, " not supported");
|
||||||
return Genode::Dataspace_capability();
|
return Genode::Dataspace_capability();
|
||||||
}
|
}
|
||||||
|
|
||||||
return nitpicker.framebuffer()->dataspace();
|
return gui.framebuffer()->dataspace();
|
||||||
}
|
}
|
||||||
|
|
||||||
Genode::Attached_dataspace fb_ds { rm, _ds_cap(nitpicker) };
|
Genode::Attached_dataspace fb_ds { rm, _ds_cap(gui) };
|
||||||
|
|
||||||
Genode::size_t pixel_surface_num_bytes() const
|
Genode::size_t pixel_surface_num_bytes() const
|
||||||
{
|
{
|
||||||
@ -84,12 +84,12 @@ struct Nitpicker_buffer
|
|||||||
/**
|
/**
|
||||||
* Constructor
|
* Constructor
|
||||||
*/
|
*/
|
||||||
Nitpicker_buffer(Nitpicker::Connection &nitpicker, Area size,
|
Gui_buffer(Gui::Connection &gui, Area size,
|
||||||
Genode::Ram_allocator &ram, Genode::Region_map &rm)
|
Genode::Ram_allocator &ram, Genode::Region_map &rm)
|
||||||
:
|
:
|
||||||
ram(ram), rm(rm), nitpicker(nitpicker),
|
ram(ram), rm(rm), gui(gui),
|
||||||
mode(Genode::max(1UL, size.w()), Genode::max(1UL, size.h()),
|
mode(Genode::max(1UL, size.w()), Genode::max(1UL, size.h()),
|
||||||
nitpicker.mode().format())
|
gui.mode().format())
|
||||||
{
|
{
|
||||||
reset_surface();
|
reset_surface();
|
||||||
}
|
}
|
||||||
@ -186,4 +186,4 @@ struct Nitpicker_buffer
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* _INCLUDE__GEMS__NITPICKER_BUFFER_H_ */
|
#endif /* _INCLUDE__GEMS__GUI_BUFFER_H_ */
|
@ -3,7 +3,7 @@
|
|||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
* \date 2015-06-22
|
* \date 2015-06-22
|
||||||
*
|
*
|
||||||
* The 'Scene' class template contains the code for setting up a nitpicker
|
* The 'Scene' class template contains the code for setting up a GUI
|
||||||
* view with a triple-buffer for rendering tearing-free animations.
|
* view with a triple-buffer for rendering tearing-free animations.
|
||||||
* A derrived class implements the to-be-displayed content in the virtual
|
* A derrived class implements the to-be-displayed content in the virtual
|
||||||
* 'render' method.
|
* 'render' method.
|
||||||
@ -64,12 +64,12 @@ class Nano3d::Scene
|
|||||||
Genode::Env &_env;
|
Genode::Env &_env;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Position and size of nitpicker view
|
* Position and size of GUI view
|
||||||
*/
|
*/
|
||||||
Nitpicker::Point const _pos;
|
Gui::Point const _pos;
|
||||||
Nitpicker::Area const _size;
|
Gui::Area const _size;
|
||||||
|
|
||||||
Nitpicker::Connection _nitpicker { _env };
|
Gui::Connection _gui { _env };
|
||||||
|
|
||||||
struct Mapped_framebuffer
|
struct Mapped_framebuffer
|
||||||
{
|
{
|
||||||
@ -78,10 +78,10 @@ class Nano3d::Scene
|
|||||||
Genode::Region_map &rm;
|
Genode::Region_map &rm;
|
||||||
|
|
||||||
static Framebuffer::Session &
|
static Framebuffer::Session &
|
||||||
_init_framebuffer(Nitpicker::Connection &nitpicker,
|
_init_framebuffer(Gui::Connection &gui,
|
||||||
Nitpicker::Area const size)
|
Gui::Area const size)
|
||||||
{
|
{
|
||||||
Framebuffer::Mode::Format const format = nitpicker.mode().format();
|
Framebuffer::Mode::Format const format = gui.mode().format();
|
||||||
if (format != Framebuffer::Mode::RGB565) {
|
if (format != Framebuffer::Mode::RGB565) {
|
||||||
Genode::error("framebuffer mode ", (int)format, " is not supported");
|
Genode::error("framebuffer mode ", (int)format, " is not supported");
|
||||||
throw Unsupported_color_depth();
|
throw Unsupported_color_depth();
|
||||||
@ -94,10 +94,10 @@ class Nano3d::Scene
|
|||||||
*/
|
*/
|
||||||
bool const use_alpha = true;
|
bool const use_alpha = true;
|
||||||
unsigned const height = size.h()*NUM_BUFFERS;
|
unsigned const height = size.h()*NUM_BUFFERS;
|
||||||
nitpicker.buffer(Framebuffer::Mode(size.w(), height, format),
|
gui.buffer(Framebuffer::Mode(size.w(), height, format),
|
||||||
use_alpha);
|
use_alpha);
|
||||||
|
|
||||||
return *nitpicker.framebuffer();
|
return *gui.framebuffer();
|
||||||
}
|
}
|
||||||
|
|
||||||
Framebuffer::Session &framebuffer;
|
Framebuffer::Session &framebuffer;
|
||||||
@ -107,9 +107,9 @@ class Nano3d::Scene
|
|||||||
/**
|
/**
|
||||||
* Return visible size
|
* Return visible size
|
||||||
*/
|
*/
|
||||||
Nitpicker::Area size() const
|
Gui::Area size() const
|
||||||
{
|
{
|
||||||
return Nitpicker::Area(mode.width(), mode.height()/NUM_BUFFERS);
|
return Gui::Area(mode.width(), mode.height()/NUM_BUFFERS);
|
||||||
}
|
}
|
||||||
|
|
||||||
Genode::Attached_dataspace ds { rm, framebuffer.dataspace() };
|
Genode::Attached_dataspace ds { rm, framebuffer.dataspace() };
|
||||||
@ -142,15 +142,15 @@ class Nano3d::Scene
|
|||||||
NUM_BUFFERS*size().count());
|
NUM_BUFFERS*size().count());
|
||||||
}
|
}
|
||||||
|
|
||||||
Mapped_framebuffer(Nitpicker::Connection &nitpicker, Nitpicker::Area size,
|
Mapped_framebuffer(Gui::Connection &gui, Gui::Area size,
|
||||||
Genode::Region_map &rm)
|
Genode::Region_map &rm)
|
||||||
:
|
:
|
||||||
rm(rm), framebuffer(_init_framebuffer(nitpicker, size))
|
rm(rm), framebuffer(_init_framebuffer(gui, size))
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
} _framebuffer { _nitpicker, _size, _env.rm() };
|
} _framebuffer { _gui, _size, _env.rm() };
|
||||||
|
|
||||||
Nitpicker::Session::View_handle _view_handle = _nitpicker.create_view();
|
Gui::Session::View_handle _view_handle = _gui.create_view();
|
||||||
|
|
||||||
typedef Genode::Surface<PT> Pixel_surface;
|
typedef Genode::Surface<PT> Pixel_surface;
|
||||||
typedef Genode::Surface<Genode::Pixel_alpha8> Alpha_surface;
|
typedef Genode::Surface<Genode::Pixel_alpha8> Alpha_surface;
|
||||||
@ -198,7 +198,7 @@ class Nano3d::Scene
|
|||||||
|
|
||||||
Timer::Connection _timer { _env };
|
Timer::Connection _timer { _env };
|
||||||
|
|
||||||
Genode::Attached_dataspace _input_ds { _env.rm(), _nitpicker.input()->dataspace() };
|
Genode::Attached_dataspace _input_ds { _env.rm(), _gui.input()->dataspace() };
|
||||||
|
|
||||||
Input_handler *_input_handler_callback = nullptr;
|
Input_handler *_input_handler_callback = nullptr;
|
||||||
|
|
||||||
@ -207,7 +207,7 @@ class Nano3d::Scene
|
|||||||
if (!_input_handler_callback)
|
if (!_input_handler_callback)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
while (int num = _nitpicker.input()->flush()) {
|
while (int num = _gui.input()->flush()) {
|
||||||
|
|
||||||
auto const *ev_buf = _input_ds.local_addr<Input::Event>();
|
auto const *ev_buf = _input_ds.local_addr<Input::Event>();
|
||||||
|
|
||||||
@ -266,9 +266,9 @@ class Nano3d::Scene
|
|||||||
: (_surface_visible == &_surface_1) ? -h
|
: (_surface_visible == &_surface_1) ? -h
|
||||||
: -2*h;
|
: -2*h;
|
||||||
|
|
||||||
Nitpicker::Point const offset(0, buf_y);
|
Gui::Point const offset(0, buf_y);
|
||||||
_nitpicker.enqueue<Command::Offset>(_view_handle, offset);
|
_gui.enqueue<Command::Offset>(_view_handle, offset);
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
|
|
||||||
_do_sync = false;
|
_do_sync = false;
|
||||||
}
|
}
|
||||||
@ -276,23 +276,23 @@ class Nano3d::Scene
|
|||||||
Genode::Signal_handler<Scene> _sync_handler {
|
Genode::Signal_handler<Scene> _sync_handler {
|
||||||
_env.ep(), *this, &Scene::_handle_sync };
|
_env.ep(), *this, &Scene::_handle_sync };
|
||||||
|
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
Scene(Genode::Env &env, Genode::uint64_t update_rate_ms,
|
Scene(Genode::Env &env, Genode::uint64_t update_rate_ms,
|
||||||
Nitpicker::Point pos, Nitpicker::Area size)
|
Gui::Point pos, Gui::Area size)
|
||||||
:
|
:
|
||||||
_env(env), _pos(pos), _size(size)
|
_env(env), _pos(pos), _size(size)
|
||||||
{
|
{
|
||||||
typedef Nitpicker::Session::View_handle View_handle;
|
typedef Gui::Session::View_handle View_handle;
|
||||||
|
|
||||||
Nitpicker::Rect rect(_pos, _size);
|
Gui::Rect rect(_pos, _size);
|
||||||
_nitpicker.enqueue<Command::Geometry>(_view_handle, rect);
|
_gui.enqueue<Command::Geometry>(_view_handle, rect);
|
||||||
_nitpicker.enqueue<Command::To_front>(_view_handle, View_handle());
|
_gui.enqueue<Command::To_front>(_view_handle, View_handle());
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
|
|
||||||
_nitpicker.input()->sigh(_input_handler);
|
_gui.input()->sigh(_input_handler);
|
||||||
|
|
||||||
_timer.sigh(_periodic_handler);
|
_timer.sigh(_periodic_handler);
|
||||||
_timer.trigger_periodic(1000*update_rate_ms);
|
_timer.trigger_periodic(1000*update_rate_ms);
|
||||||
|
@ -5,7 +5,7 @@ qoost
|
|||||||
qt5_core
|
qt5_core
|
||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_qjpeg
|
qt5_qjpeg
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_widgets
|
qt5_widgets
|
||||||
report_session
|
report_session
|
||||||
stdcxx
|
stdcxx
|
||||||
|
@ -5,7 +5,7 @@ qoost
|
|||||||
qt5_core
|
qt5_core
|
||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_qjpeg
|
qt5_qjpeg
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_widgets
|
qt5_widgets
|
||||||
report_session
|
report_session
|
||||||
stdcxx
|
stdcxx
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Backdrop for Nitpicker
|
* \brief Backdrop
|
||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
* \date 2009-08-28
|
* \date 2009-08-28
|
||||||
*/
|
*/
|
||||||
@ -47,28 +47,28 @@ struct Backdrop::Main
|
|||||||
|
|
||||||
Genode::Attached_rom_dataspace _config { _env, "config" };
|
Genode::Attached_rom_dataspace _config { _env, "config" };
|
||||||
|
|
||||||
Nitpicker::Connection _nitpicker { _env, "backdrop" };
|
Gui::Connection _gui { _env, "backdrop" };
|
||||||
|
|
||||||
struct Buffer
|
struct Buffer
|
||||||
{
|
{
|
||||||
Nitpicker::Connection &nitpicker;
|
Gui::Connection &gui;
|
||||||
|
|
||||||
Framebuffer::Mode const mode;
|
Framebuffer::Mode const mode;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return dataspace capability for virtual framebuffer
|
* Return dataspace capability for virtual framebuffer
|
||||||
*/
|
*/
|
||||||
Dataspace_capability _ds_cap(Nitpicker::Connection &nitpicker)
|
Dataspace_capability _ds_cap(Gui::Connection &gui)
|
||||||
{
|
{
|
||||||
/* setup virtual framebuffer mode */
|
/* setup virtual framebuffer mode */
|
||||||
nitpicker.buffer(mode, false);
|
gui.buffer(mode, false);
|
||||||
|
|
||||||
if (mode.format() != Framebuffer::Mode::RGB565) {
|
if (mode.format() != Framebuffer::Mode::RGB565) {
|
||||||
Genode::warning("Color mode %d not supported\n", (int)mode.format());
|
Genode::warning("Color mode %d not supported\n", (int)mode.format());
|
||||||
return Dataspace_capability();
|
return Dataspace_capability();
|
||||||
}
|
}
|
||||||
|
|
||||||
return nitpicker.framebuffer()->dataspace();
|
return gui.framebuffer()->dataspace();
|
||||||
}
|
}
|
||||||
|
|
||||||
Attached_dataspace fb_ds;
|
Attached_dataspace fb_ds;
|
||||||
@ -83,9 +83,9 @@ struct Backdrop::Main
|
|||||||
/**
|
/**
|
||||||
* Constructor
|
* Constructor
|
||||||
*/
|
*/
|
||||||
Buffer(Genode::Env &env, Nitpicker::Connection &nitpicker, Framebuffer::Mode mode)
|
Buffer(Genode::Env &env, Gui::Connection &gui, Framebuffer::Mode mode)
|
||||||
: nitpicker(nitpicker), mode(mode),
|
: gui(gui), mode(mode),
|
||||||
fb_ds(env.rm(), _ds_cap(nitpicker)),
|
fb_ds(env.rm(), _ds_cap(gui)),
|
||||||
surface_ds(env.ram(), env.rm(), surface_num_bytes())
|
surface_ds(env.ram(), env.rm(), surface_num_bytes())
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
@ -117,19 +117,19 @@ struct Backdrop::Main
|
|||||||
|
|
||||||
Constructible<Buffer> _buffer { };
|
Constructible<Buffer> _buffer { };
|
||||||
|
|
||||||
Nitpicker::Session::View_handle _view_handle = _nitpicker.create_view();
|
Gui::Session::View_handle _view_handle = _gui.create_view();
|
||||||
|
|
||||||
void _update_view()
|
void _update_view()
|
||||||
{
|
{
|
||||||
/* display view behind all others */
|
/* display view behind all others */
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
typedef Nitpicker::Session::View_handle View_handle;
|
typedef Gui::Session::View_handle View_handle;
|
||||||
|
|
||||||
_nitpicker.enqueue<Command::Background>(_view_handle);
|
_gui.enqueue<Command::Background>(_view_handle);
|
||||||
Nitpicker::Rect rect(Nitpicker::Point(), _buffer->size());
|
Gui::Rect rect(Gui::Point(), _buffer->size());
|
||||||
_nitpicker.enqueue<Command::Geometry>(_view_handle, rect);
|
_gui.enqueue<Command::Geometry>(_view_handle, rect);
|
||||||
_nitpicker.enqueue<Command::To_back>(_view_handle, View_handle());
|
_gui.enqueue<Command::To_back>(_view_handle, View_handle());
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -156,7 +156,7 @@ struct Backdrop::Main
|
|||||||
|
|
||||||
Main(Genode::Env &env) : _env(env)
|
Main(Genode::Env &env) : _env(env)
|
||||||
{
|
{
|
||||||
_nitpicker.mode_sigh(_config_handler);
|
_gui.mode_sigh(_config_handler);
|
||||||
|
|
||||||
_config.sigh(_config_handler);
|
_config.sigh(_config_handler);
|
||||||
|
|
||||||
@ -324,13 +324,13 @@ void Backdrop::Main::_handle_config()
|
|||||||
{
|
{
|
||||||
_config.update();
|
_config.update();
|
||||||
|
|
||||||
Framebuffer::Mode const phys_mode = _nitpicker.mode();
|
Framebuffer::Mode const phys_mode = _gui.mode();
|
||||||
Framebuffer::Mode const
|
Framebuffer::Mode const
|
||||||
mode(_config.xml().attribute_value("width", (unsigned)phys_mode.width()),
|
mode(_config.xml().attribute_value("width", (unsigned)phys_mode.width()),
|
||||||
_config.xml().attribute_value("height", (unsigned)phys_mode.height()),
|
_config.xml().attribute_value("height", (unsigned)phys_mode.height()),
|
||||||
phys_mode.format());
|
phys_mode.format());
|
||||||
|
|
||||||
_buffer.construct(_env, _nitpicker, mode);
|
_buffer.construct(_env, _gui, mode);
|
||||||
|
|
||||||
/* clear surface */
|
/* clear surface */
|
||||||
_apply_fill(Xml_node("<fill color=\"#000000\"/>"));
|
_apply_fill(Xml_node("<fill color=\"#000000\"/>"));
|
||||||
@ -353,7 +353,7 @@ void Backdrop::Main::_handle_config()
|
|||||||
});
|
});
|
||||||
|
|
||||||
/* schedule buffer refresh */
|
/* schedule buffer refresh */
|
||||||
_nitpicker.framebuffer()->sync_sigh(_sync_handler);
|
_gui.framebuffer()->sync_sigh(_sync_handler);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -365,7 +365,7 @@ void Backdrop::Main::_handle_sync()
|
|||||||
});
|
});
|
||||||
|
|
||||||
/* disable sync signal until the next call of 'handle_config' */
|
/* disable sync signal until the next call of 'handle_config' */
|
||||||
_nitpicker.framebuffer()->sync_sigh(Signal_context_capability());
|
_gui.framebuffer()->sync_sigh(Signal_context_capability());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -282,7 +282,7 @@ class Cpu_load_display::Scene : public Nano3d::Scene<PT>
|
|||||||
|
|
||||||
Genode::Env &_env;
|
Genode::Env &_env;
|
||||||
|
|
||||||
Nitpicker::Area const _size;
|
Gui::Area const _size;
|
||||||
|
|
||||||
Genode::Attached_rom_dataspace _config { _env, "config" };
|
Genode::Attached_rom_dataspace _config { _env, "config" };
|
||||||
|
|
||||||
@ -318,7 +318,7 @@ class Cpu_load_display::Scene : public Nano3d::Scene<PT>
|
|||||||
public:
|
public:
|
||||||
|
|
||||||
Scene(Genode::Env &env, Genode::uint64_t update_rate_ms,
|
Scene(Genode::Env &env, Genode::uint64_t update_rate_ms,
|
||||||
Nitpicker::Point pos, Nitpicker::Area size)
|
Gui::Point pos, Gui::Area size)
|
||||||
:
|
:
|
||||||
Nano3d::Scene<PT>(env, update_rate_ms, pos, size),
|
Nano3d::Scene<PT>(env, update_rate_ms, pos, size),
|
||||||
_env(env), _size(size),
|
_env(env), _size(size),
|
||||||
@ -341,7 +341,7 @@ class Cpu_load_display::Scene : public Nano3d::Scene<PT>
|
|||||||
|
|
||||||
void _plot_cpu(Genode::Surface<PT> &pixel,
|
void _plot_cpu(Genode::Surface<PT> &pixel,
|
||||||
Genode::Surface<Genode::Pixel_alpha8> &alpha,
|
Genode::Surface<Genode::Pixel_alpha8> &alpha,
|
||||||
Cpu const &cpu, Nitpicker::Rect rect)
|
Cpu const &cpu, Gui::Rect rect)
|
||||||
{
|
{
|
||||||
enum { HISTORY_LEN = Timeline::HISTORY_LEN };
|
enum { HISTORY_LEN = Timeline::HISTORY_LEN };
|
||||||
|
|
||||||
@ -453,12 +453,12 @@ class Cpu_load_display::Scene : public Nano3d::Scene<PT>
|
|||||||
|
|
||||||
/* plot graphs for the CPUs below each other */
|
/* plot graphs for the CPUs below each other */
|
||||||
enum { GAP = 8 };
|
enum { GAP = 8 };
|
||||||
Nitpicker::Point const step(0, _size.h()/num_cpus);
|
Gui::Point const step(0, _size.h()/num_cpus);
|
||||||
Nitpicker::Area const size(_size.w(), step.y() - GAP);
|
Gui::Area const size(_size.w(), step.y() - GAP);
|
||||||
Nitpicker::Point point(0, GAP/2);
|
Gui::Point point(0, GAP/2);
|
||||||
|
|
||||||
_cpu_registry.for_each_cpu([&] (Cpu const &cpu) {
|
_cpu_registry.for_each_cpu([&] (Cpu const &cpu) {
|
||||||
_plot_cpu(pixel, alpha, cpu, Nitpicker::Rect(point, size));
|
_plot_cpu(pixel, alpha, cpu, Gui::Rect(point, size));
|
||||||
point = point + step;
|
point = point + step;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -471,5 +471,5 @@ void Component::construct(Genode::Env &env)
|
|||||||
|
|
||||||
static Cpu_load_display::Scene<Genode::Pixel_rgb565>
|
static Cpu_load_display::Scene<Genode::Pixel_rgb565>
|
||||||
scene(env, UPDATE_RATE_MS,
|
scene(env, UPDATE_RATE_MS,
|
||||||
Nitpicker::Point(0, 0), Nitpicker::Area(400, 400));
|
Gui::Point(0, 0), Gui::Area(400, 400));
|
||||||
}
|
}
|
||||||
|
@ -39,7 +39,7 @@ struct Decorator::Main : Window_factory_base
|
|||||||
{
|
{
|
||||||
Env &_env;
|
Env &_env;
|
||||||
|
|
||||||
Nitpicker::Connection _nitpicker { _env };
|
Gui::Connection _nitpicker { _env };
|
||||||
|
|
||||||
struct Canvas
|
struct Canvas
|
||||||
{
|
{
|
||||||
@ -47,7 +47,7 @@ struct Decorator::Main : Window_factory_base
|
|||||||
Attached_dataspace fb_ds;
|
Attached_dataspace fb_ds;
|
||||||
Decorator::Canvas<Pixel_rgb565> canvas;
|
Decorator::Canvas<Pixel_rgb565> canvas;
|
||||||
|
|
||||||
Canvas(Env &env, Nitpicker::Connection &nitpicker)
|
Canvas(Env &env, Gui::Connection &nitpicker)
|
||||||
:
|
:
|
||||||
mode(nitpicker.mode()),
|
mode(nitpicker.mode()),
|
||||||
fb_ds(env.rm(),
|
fb_ds(env.rm(),
|
||||||
@ -339,7 +339,7 @@ void Decorator::Main::_handle_nitpicker_sync()
|
|||||||
|
|
||||||
Dirty_rect dirty = _window_stack.draw(_canvas->canvas);
|
Dirty_rect dirty = _window_stack.draw(_canvas->canvas);
|
||||||
|
|
||||||
_window_stack.update_nitpicker_views();
|
_window_stack.update_gui_views();
|
||||||
|
|
||||||
_nitpicker.execute();
|
_nitpicker.execute();
|
||||||
|
|
||||||
|
@ -208,7 +208,7 @@ bool Decorator::Window::update(Genode::Xml_node window_node)
|
|||||||
|
|
||||||
geometry(new_geometry);
|
geometry(new_geometry);
|
||||||
|
|
||||||
_nitpicker_views_up_to_date = false;
|
_gui_views_up_to_date = false;
|
||||||
|
|
||||||
updated |= true;
|
updated |= true;
|
||||||
}
|
}
|
||||||
|
@ -29,25 +29,25 @@ class Decorator::Window : public Window_base
|
|||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
Nitpicker::Session_client &_nitpicker;
|
Gui::Session_client &_gui;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Flag indicating that the current window position has been propagated
|
* Flag indicating that the current window position has been propagated
|
||||||
* to the window's corresponding nitpicker views.
|
* to the window's corresponding GUI views.
|
||||||
*/
|
*/
|
||||||
bool _nitpicker_views_up_to_date = false;
|
bool _gui_views_up_to_date = false;
|
||||||
|
|
||||||
struct Nitpicker_view
|
struct Gui_view
|
||||||
{
|
{
|
||||||
Nitpicker::Session_client &_nitpicker;
|
Gui::Session_client &_gui;
|
||||||
|
|
||||||
View_handle _handle { _nitpicker.create_view() };
|
View_handle _handle { _gui.create_view() };
|
||||||
|
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
|
|
||||||
Nitpicker_view(Nitpicker::Session_client &nitpicker, unsigned id = 0)
|
Gui_view(Gui::Session_client &gui, unsigned id = 0)
|
||||||
:
|
:
|
||||||
_nitpicker(nitpicker)
|
_gui(gui)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* We supply the window ID as label for the anchor view.
|
* We supply the window ID as label for the anchor view.
|
||||||
@ -56,41 +56,41 @@ class Decorator::Window : public Window_base
|
|||||||
char buf[128];
|
char buf[128];
|
||||||
Genode::snprintf(buf, sizeof(buf), "%d", id);
|
Genode::snprintf(buf, sizeof(buf), "%d", id);
|
||||||
|
|
||||||
_nitpicker.enqueue<Command::Title>(_handle, Genode::Cstring(buf));
|
_gui.enqueue<Command::Title>(_handle, Genode::Cstring(buf));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
~Nitpicker_view()
|
~Gui_view()
|
||||||
{
|
{
|
||||||
_nitpicker.destroy_view(_handle);
|
_gui.destroy_view(_handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
View_handle handle() const { return _handle; }
|
View_handle handle() const { return _handle; }
|
||||||
|
|
||||||
void stack(View_handle neighbor)
|
void stack(View_handle neighbor)
|
||||||
{
|
{
|
||||||
_nitpicker.enqueue<Command::To_front>(_handle, neighbor);
|
_gui.enqueue<Command::To_front>(_handle, neighbor);
|
||||||
}
|
}
|
||||||
|
|
||||||
void stack_back_most()
|
void stack_back_most()
|
||||||
{
|
{
|
||||||
_nitpicker.enqueue<Command::To_back>(_handle, View_handle());
|
_gui.enqueue<Command::To_back>(_handle, View_handle());
|
||||||
}
|
}
|
||||||
|
|
||||||
void place(Rect rect)
|
void place(Rect rect)
|
||||||
{
|
{
|
||||||
_nitpicker.enqueue<Command::Geometry>(_handle, rect);
|
_gui.enqueue<Command::Geometry>(_handle, rect);
|
||||||
Point offset = Point(0, 0) - rect.p1();
|
Point offset = Point(0, 0) - rect.p1();
|
||||||
_nitpicker.enqueue<Command::Offset>(_handle, offset);
|
_gui.enqueue<Command::Offset>(_handle, offset);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
Nitpicker_view _bottom_view { _nitpicker },
|
Gui_view _bottom_view { _gui },
|
||||||
_right_view { _nitpicker },
|
_right_view { _gui },
|
||||||
_left_view { _nitpicker },
|
_left_view { _gui },
|
||||||
_top_view { _nitpicker };
|
_top_view { _gui };
|
||||||
|
|
||||||
Nitpicker_view _content_view { _nitpicker, (unsigned)id() };
|
Gui_view _content_view { _gui, (unsigned)id() };
|
||||||
|
|
||||||
static Border _init_border() {
|
static Border _init_border() {
|
||||||
return Border(_border_size + _title_height,
|
return Border(_border_size + _title_height,
|
||||||
@ -419,11 +419,11 @@ class Decorator::Window : public Window_base
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
Window(unsigned id, Nitpicker::Session_client &nitpicker,
|
Window(unsigned id, Gui::Session_client &gui,
|
||||||
Animator &animator, Config const &config)
|
Animator &animator, Config const &config)
|
||||||
:
|
:
|
||||||
Window_base(id),
|
Window_base(id),
|
||||||
_nitpicker(nitpicker),
|
_gui(gui),
|
||||||
_animator(animator), _config(config)
|
_animator(animator), _config(config)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
@ -470,9 +470,9 @@ class Decorator::Window : public Window_base
|
|||||||
outer_geometry().cut(geometry(), top, left, right, bottom);
|
outer_geometry().cut(geometry(), top, left, right, bottom);
|
||||||
}
|
}
|
||||||
|
|
||||||
void update_nitpicker_views() override
|
void update_gui_views() override
|
||||||
{
|
{
|
||||||
if (!_nitpicker_views_up_to_date) {
|
if (!_gui_views_up_to_date) {
|
||||||
|
|
||||||
/* update view positions */
|
/* update view positions */
|
||||||
Rect top, left, right, bottom;
|
Rect top, left, right, bottom;
|
||||||
@ -484,7 +484,7 @@ class Decorator::Window : public Window_base
|
|||||||
_right_view .place(right);
|
_right_view .place(right);
|
||||||
_bottom_view .place(bottom);
|
_bottom_view .place(bottom);
|
||||||
|
|
||||||
_nitpicker_views_up_to_date = true;
|
_gui_views_up_to_date = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@
|
|||||||
#include <os/vfs.h>
|
#include <os/vfs.h>
|
||||||
|
|
||||||
/* gems includes */
|
/* gems includes */
|
||||||
#include <gems/nitpicker_buffer.h>
|
#include <gems/gui_buffer.h>
|
||||||
|
|
||||||
namespace Menu_view { struct Main; }
|
namespace Menu_view { struct Main; }
|
||||||
|
|
||||||
@ -37,11 +37,11 @@ struct Menu_view::Main
|
|||||||
{
|
{
|
||||||
Env &_env;
|
Env &_env;
|
||||||
|
|
||||||
Nitpicker::Connection _nitpicker { _env };
|
Gui::Connection _gui { _env };
|
||||||
|
|
||||||
Constructible<Nitpicker_buffer> _buffer { };
|
Constructible<Gui_buffer> _buffer { };
|
||||||
|
|
||||||
Nitpicker::Session::View_handle _view_handle = _nitpicker.create_view();
|
Gui::Session::View_handle _view_handle = _gui.create_view();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Dialog position in screen coordinate space
|
* Dialog position in screen coordinate space
|
||||||
@ -75,13 +75,13 @@ struct Menu_view::Main
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
/* display view behind all others */
|
/* display view behind all others */
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
typedef Nitpicker::Session::View_handle View_handle;
|
typedef Gui::Session::View_handle View_handle;
|
||||||
|
|
||||||
_view_geometry = geometry;
|
_view_geometry = geometry;
|
||||||
_nitpicker.enqueue<Command::Geometry>(_view_handle, _view_geometry);
|
_gui.enqueue<Command::Geometry>(_view_handle, _view_geometry);
|
||||||
_nitpicker.enqueue<Command::To_front>(_view_handle, View_handle());
|
_gui.enqueue<Command::To_front>(_view_handle, View_handle());
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -125,7 +125,7 @@ struct Menu_view::Main
|
|||||||
|
|
||||||
Attached_rom_dataspace _dialog_rom { _env, "dialog" };
|
Attached_rom_dataspace _dialog_rom { _env, "dialog" };
|
||||||
|
|
||||||
Attached_dataspace _input_ds { _env.rm(), _nitpicker.input()->dataspace() };
|
Attached_dataspace _input_ds { _env.rm(), _gui.input()->dataspace() };
|
||||||
|
|
||||||
Widget::Hovered _last_reported_hovered { };
|
Widget::Hovered _last_reported_hovered { };
|
||||||
|
|
||||||
@ -189,7 +189,7 @@ struct Menu_view::Main
|
|||||||
_dialog_rom.sigh(_dialog_update_handler);
|
_dialog_rom.sigh(_dialog_update_handler);
|
||||||
_config.sigh(_config_handler);
|
_config.sigh(_config_handler);
|
||||||
|
|
||||||
_nitpicker.input()->sigh(_input_handler);
|
_gui.input()->sigh(_input_handler);
|
||||||
|
|
||||||
_timer.sigh(_frame_timer_handler);
|
_timer.sigh(_frame_timer_handler);
|
||||||
|
|
||||||
@ -284,7 +284,7 @@ void Menu_view::Main::_handle_input()
|
|||||||
Point const orig_hovered_position = _hovered_position;
|
Point const orig_hovered_position = _hovered_position;
|
||||||
bool const orig_dialog_hovered = _dialog_hovered;
|
bool const orig_dialog_hovered = _dialog_hovered;
|
||||||
|
|
||||||
_nitpicker.input()->for_each_event([&] (Input::Event const &ev) {
|
_gui.input()->for_each_event([&] (Input::Event const &ev) {
|
||||||
ev.handle_absolute_motion([&] (int x, int y) {
|
ev.handle_absolute_motion([&] (int x, int y) {
|
||||||
_dialog_hovered = true;
|
_dialog_hovered = true;
|
||||||
_hovered_position = Point(x, y) - _position;
|
_hovered_position = Point(x, y) - _position;
|
||||||
@ -343,7 +343,7 @@ void Menu_view::Main::_handle_frame_timer()
|
|||||||
|| (max_size.h() > buffer_h);
|
|| (max_size.h() > buffer_h);
|
||||||
|
|
||||||
if (!_buffer.constructed() || size_increased)
|
if (!_buffer.constructed() || size_increased)
|
||||||
_buffer.construct(_nitpicker, max_size, _env.ram(), _env.rm());
|
_buffer.construct(_gui, max_size, _env.ram(), _env.rm());
|
||||||
else
|
else
|
||||||
_buffer->reset_surface();
|
_buffer->reset_surface();
|
||||||
|
|
||||||
@ -357,7 +357,7 @@ void Menu_view::Main::_handle_frame_timer()
|
|||||||
});
|
});
|
||||||
|
|
||||||
_buffer->flush_surface();
|
_buffer->flush_surface();
|
||||||
_nitpicker.framebuffer()->refresh(0, 0, _buffer->size().w(), _buffer->size().h());
|
_gui.framebuffer()->refresh(0, 0, _buffer->size().w(), _buffer->size().h());
|
||||||
_update_view(Rect(_position, size));
|
_update_view(Rect(_position, size));
|
||||||
|
|
||||||
_schedule_redraw = false;
|
_schedule_redraw = false;
|
||||||
|
@ -37,7 +37,7 @@ class Scene : public Nano3d::Scene<PT>
|
|||||||
Genode::Env &_env;
|
Genode::Env &_env;
|
||||||
Genode::Heap _heap { _env.ram(), _env.rm() };
|
Genode::Heap _heap { _env.ram(), _env.rm() };
|
||||||
|
|
||||||
Nitpicker::Area const _size;
|
Gui::Area const _size;
|
||||||
|
|
||||||
struct Radial_texture
|
struct Radial_texture
|
||||||
{
|
{
|
||||||
@ -104,7 +104,7 @@ class Scene : public Nano3d::Scene<PT>
|
|||||||
public:
|
public:
|
||||||
|
|
||||||
Scene(Genode::Env &env, Genode::uint64_t update_rate_ms,
|
Scene(Genode::Env &env, Genode::uint64_t update_rate_ms,
|
||||||
Nitpicker::Point pos, Nitpicker::Area size)
|
Gui::Point pos, Gui::Area size)
|
||||||
:
|
:
|
||||||
Nano3d::Scene<PT>(env, update_rate_ms, pos, size),
|
Nano3d::Scene<PT>(env, update_rate_ms, pos, size),
|
||||||
_env(env), _size(size),
|
_env(env), _size(size),
|
||||||
@ -231,5 +231,5 @@ void Component::construct(Genode::Env &env)
|
|||||||
|
|
||||||
static Scene<Genode::Pixel_rgb565>
|
static Scene<Genode::Pixel_rgb565>
|
||||||
scene(env, UPDATE_RATE_MS,
|
scene(env, UPDATE_RATE_MS,
|
||||||
Nitpicker::Point(-200, -200), Nitpicker::Area(400, 400));
|
Gui::Point(-200, -200), Gui::Area(400, 400));
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Nitpicker wrapper for monitoring the user input of GUI components
|
* \brief GUI wrapper for monitoring the user input of GUI components
|
||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
* \date 2018-04-30
|
* \date 2018-04-30
|
||||||
*/
|
*/
|
||||||
@ -11,20 +11,20 @@
|
|||||||
* under the terms of the GNU Affero General Public License version 3.
|
* under the terms of the GNU Affero General Public License version 3.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "nitpicker.h"
|
#include "gui.h"
|
||||||
|
|
||||||
/* Genode includes */
|
/* Genode includes */
|
||||||
#include <input/component.h>
|
#include <input/component.h>
|
||||||
#include <gui_session/connection.h>
|
#include <gui_session/connection.h>
|
||||||
#include <base/heap.h>
|
#include <base/heap.h>
|
||||||
|
|
||||||
struct Nitpicker::Session_component : Rpc_object<Nitpicker::Session>
|
struct Gui::Session_component : Rpc_object<Gui::Session>
|
||||||
{
|
{
|
||||||
Env &_env;
|
Env &_env;
|
||||||
|
|
||||||
Input_event_handler &_event_handler;
|
Input_event_handler &_event_handler;
|
||||||
|
|
||||||
Nitpicker::Connection _connection;
|
Gui::Connection _connection;
|
||||||
|
|
||||||
Input::Session_component _input_component { _env, _env.ram() };
|
Input::Session_component _input_component { _env, _env.ram() };
|
||||||
|
|
||||||
@ -101,30 +101,30 @@ struct Nitpicker::Session_component : Rpc_object<Nitpicker::Session>
|
|||||||
_connection.Client::buffer(mode, use_alpha);
|
_connection.Client::buffer(mode, use_alpha);
|
||||||
}
|
}
|
||||||
|
|
||||||
void focus(Capability<Nitpicker::Session> session) override {
|
void focus(Capability<Gui::Session> session) override {
|
||||||
_connection.focus(session); }
|
_connection.focus(session); }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
Nitpicker::Session_component *Nitpicker::Root::_create_session(const char *args)
|
Gui::Session_component *Gui::Root::_create_session(const char *args)
|
||||||
{
|
{
|
||||||
return new (md_alloc()) Session_component(_env, args, _event_handler);
|
return new (md_alloc()) Session_component(_env, args, _event_handler);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Nitpicker::Root::_upgrade_session(Session_component *session, const char *args)
|
void Gui::Root::_upgrade_session(Session_component *session, const char *args)
|
||||||
{
|
{
|
||||||
session->upgrade(session_resources_from_args(args));
|
session->upgrade(session_resources_from_args(args));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Nitpicker::Root::_destroy_session(Session_component *session)
|
void Gui::Root::_destroy_session(Session_component *session)
|
||||||
{
|
{
|
||||||
Genode::destroy(md_alloc(), session);
|
Genode::destroy(md_alloc(), session);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Nitpicker::Root::Root(Env &env, Allocator &md_alloc, Input_event_handler &event_handler)
|
Gui::Root::Root(Env &env, Allocator &md_alloc, Input_event_handler &event_handler)
|
||||||
:
|
:
|
||||||
Root_component<Session_component>(env.ep(), md_alloc),
|
Root_component<Session_component>(env.ep(), md_alloc),
|
||||||
_env(env), _event_handler(event_handler)
|
_env(env), _event_handler(event_handler)
|
||||||
@ -133,5 +133,5 @@ Nitpicker::Root::Root(Env &env, Allocator &md_alloc, Input_event_handler &event_
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Nitpicker::Root::~Root() { _env.ep().dissolve(*this); }
|
Gui::Root::~Root() { _env.ep().dissolve(*this); }
|
||||||
|
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Nitpicker wrapper for monitoring the user input of GUI components
|
* \brief GUI wrapper for monitoring the user input of GUI components
|
||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
* \date 2018-04-30
|
* \date 2018-04-30
|
||||||
*/
|
*/
|
||||||
@ -22,7 +22,7 @@
|
|||||||
/* local includes */
|
/* local includes */
|
||||||
#include "input_event_handler.h"
|
#include "input_event_handler.h"
|
||||||
|
|
||||||
namespace Nitpicker {
|
namespace Gui {
|
||||||
|
|
||||||
using namespace Genode;
|
using namespace Genode;
|
||||||
using Sculpt::Input_event_handler;
|
using Sculpt::Input_event_handler;
|
||||||
@ -32,7 +32,7 @@ namespace Nitpicker {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
struct Nitpicker::Root : Genode::Root_component<Session_component>
|
struct Gui::Root : Genode::Root_component<Session_component>
|
||||||
{
|
{
|
||||||
Env &_env;
|
Env &_env;
|
||||||
Input_event_handler &_event_handler;
|
Input_event_handler &_event_handler;
|
@ -35,7 +35,7 @@
|
|||||||
#include <view/settings_dialog.h>
|
#include <view/settings_dialog.h>
|
||||||
#include <view/file_browser_dialog.h>
|
#include <view/file_browser_dialog.h>
|
||||||
#include <menu_view.h>
|
#include <menu_view.h>
|
||||||
#include <nitpicker.h>
|
#include <gui.h>
|
||||||
#include <keyboard_focus.h>
|
#include <keyboard_focus.h>
|
||||||
#include <network.h>
|
#include <network.h>
|
||||||
#include <storage.h>
|
#include <storage.h>
|
||||||
@ -68,21 +68,21 @@ struct Sculpt::Main : Input_event_handler,
|
|||||||
|
|
||||||
Registry<Child_state> _child_states { };
|
Registry<Child_state> _child_states { };
|
||||||
|
|
||||||
Constructible<Nitpicker::Connection> _nitpicker { };
|
Constructible<Gui::Connection> _gui { };
|
||||||
|
|
||||||
Signal_handler<Main> _input_handler {
|
Signal_handler<Main> _input_handler {
|
||||||
_env.ep(), *this, &Main::_handle_input };
|
_env.ep(), *this, &Main::_handle_input };
|
||||||
|
|
||||||
void _handle_input()
|
void _handle_input()
|
||||||
{
|
{
|
||||||
_nitpicker->input()->for_each_event([&] (Input::Event const &ev) {
|
_gui->input()->for_each_event([&] (Input::Event const &ev) {
|
||||||
handle_input_event(ev); });
|
handle_input_event(ev); });
|
||||||
}
|
}
|
||||||
|
|
||||||
Signal_handler<Main> _nitpicker_mode_handler {
|
Signal_handler<Main> _gui_mode_handler {
|
||||||
_env.ep(), *this, &Main::_handle_nitpicker_mode };
|
_env.ep(), *this, &Main::_handle_gui_mode };
|
||||||
|
|
||||||
void _handle_nitpicker_mode();
|
void _handle_gui_mode();
|
||||||
|
|
||||||
Managed_config<Main> _fonts_config {
|
Managed_config<Main> _fonts_config {
|
||||||
_env, "config", "fonts", *this, &Main::_handle_fonts_config };
|
_env, "config", "fonts", *this, &Main::_handle_fonts_config };
|
||||||
@ -103,7 +103,7 @@ struct Sculpt::Main : Input_event_handler,
|
|||||||
if (px > 0.0)
|
if (px > 0.0)
|
||||||
_font_size_px = px; }); } }); } }); });
|
_font_size_px = px; }); } }); } }); });
|
||||||
|
|
||||||
_handle_nitpicker_mode();
|
_handle_gui_mode();
|
||||||
}
|
}
|
||||||
|
|
||||||
Managed_config<Main> _input_filter_config {
|
Managed_config<Main> _input_filter_config {
|
||||||
@ -114,12 +114,12 @@ struct Sculpt::Main : Input_event_handler,
|
|||||||
_input_filter_config.try_generate_manually_managed();
|
_input_filter_config.try_generate_manually_managed();
|
||||||
}
|
}
|
||||||
|
|
||||||
Attached_rom_dataspace _nitpicker_hover { _env, "nitpicker_hover" };
|
Attached_rom_dataspace _gui_hover { _env, "nitpicker_hover" };
|
||||||
|
|
||||||
Signal_handler<Main> _nitpicker_hover_handler {
|
Signal_handler<Main> _gui_hover_handler {
|
||||||
_env.ep(), *this, &Main::_handle_nitpicker_hover };
|
_env.ep(), *this, &Main::_handle_gui_hover };
|
||||||
|
|
||||||
void _handle_nitpicker_hover();
|
void _handle_gui_hover();
|
||||||
|
|
||||||
|
|
||||||
/**********************
|
/**********************
|
||||||
@ -710,7 +710,7 @@ struct Sculpt::Main : Input_event_handler,
|
|||||||
void select_font_size(Font_size font_size) override
|
void select_font_size(Font_size font_size) override
|
||||||
{
|
{
|
||||||
_font_size = font_size;
|
_font_size = font_size;
|
||||||
_handle_nitpicker_mode();
|
_handle_gui_mode();
|
||||||
}
|
}
|
||||||
|
|
||||||
Signal_handler<Main> _fs_query_result_handler {
|
Signal_handler<Main> _fs_query_result_handler {
|
||||||
@ -983,40 +983,40 @@ struct Sculpt::Main : Input_event_handler,
|
|||||||
_fb_drv_config.try_generate_manually_managed();
|
_fb_drv_config.try_generate_manually_managed();
|
||||||
}
|
}
|
||||||
|
|
||||||
Attached_rom_dataspace _nitpicker_displays { _env, "displays" };
|
Attached_rom_dataspace _gui_displays { _env, "displays" };
|
||||||
|
|
||||||
Signal_handler<Main> _nitpicker_displays_handler {
|
Signal_handler<Main> _gui_displays_handler {
|
||||||
_env.ep(), *this, &Main::_handle_nitpicker_displays };
|
_env.ep(), *this, &Main::_handle_gui_displays };
|
||||||
|
|
||||||
void _handle_nitpicker_displays()
|
void _handle_gui_displays()
|
||||||
{
|
{
|
||||||
_nitpicker_displays.update();
|
_gui_displays.update();
|
||||||
|
|
||||||
if (!_nitpicker_displays.xml().has_sub_node("display"))
|
if (!_gui_displays.xml().has_sub_node("display"))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (_nitpicker.constructed())
|
if (_gui.constructed())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Since nitpicker has successfully issued the first 'displays' report,
|
* Since the nitpicker GUI server has successfully issued the first
|
||||||
* there is a good chance that the framebuffer driver is running. This
|
* 'displays' report, there is a good chance that the framebuffer
|
||||||
* is a good time to activate the GUI.
|
* driver is running. This is a good time to activate the GUI.
|
||||||
*/
|
*/
|
||||||
_nitpicker.construct(_env, "input");
|
_gui.construct(_env, "input");
|
||||||
_nitpicker->input()->sigh(_input_handler);
|
_gui->input()->sigh(_input_handler);
|
||||||
_nitpicker->mode_sigh(_nitpicker_mode_handler);
|
_gui->mode_sigh(_gui_mode_handler);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Adjust GUI parameters to initial nitpicker mode
|
* Adjust GUI parameters to initial GUI mode
|
||||||
*/
|
*/
|
||||||
_handle_nitpicker_mode();
|
_handle_gui_mode();
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Avoid 'Constructible<Nitpicker::Root>' because it requires the
|
* Avoid 'Constructible<Gui::Root>' because it requires the definition
|
||||||
* definition of 'Nitpicker::Session_component'.
|
* of 'Gui::Session_component'.
|
||||||
*/
|
*/
|
||||||
static Nitpicker::Root gui_nitpicker(_env, _heap, *this);
|
static Gui::Root gui_nitpicker(_env, _heap, *this);
|
||||||
|
|
||||||
generate_runtime_config();
|
generate_runtime_config();
|
||||||
}
|
}
|
||||||
@ -1064,13 +1064,13 @@ struct Sculpt::Main : Input_event_handler,
|
|||||||
_manual_deploy_rom.sigh(_manual_deploy_handler);
|
_manual_deploy_rom.sigh(_manual_deploy_handler);
|
||||||
_runtime_state_rom.sigh(_runtime_state_handler);
|
_runtime_state_rom.sigh(_runtime_state_handler);
|
||||||
_runtime_config_rom.sigh(_runtime_config_handler);
|
_runtime_config_rom.sigh(_runtime_config_handler);
|
||||||
_nitpicker_displays.sigh(_nitpicker_displays_handler);
|
_gui_displays.sigh(_gui_displays_handler);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Subscribe to reports
|
* Subscribe to reports
|
||||||
*/
|
*/
|
||||||
_update_state_rom .sigh(_update_state_handler);
|
_update_state_rom .sigh(_update_state_handler);
|
||||||
_nitpicker_hover .sigh(_nitpicker_hover_handler);
|
_gui_hover .sigh(_gui_hover_handler);
|
||||||
_pci_devices .sigh(_pci_devices_handler);
|
_pci_devices .sigh(_pci_devices_handler);
|
||||||
_window_list .sigh(_window_list_handler);
|
_window_list .sigh(_window_list_handler);
|
||||||
_decorator_margins .sigh(_decorator_margins_handler);
|
_decorator_margins .sigh(_decorator_margins_handler);
|
||||||
@ -1128,7 +1128,7 @@ void Sculpt::Main::_handle_window_layout()
|
|||||||
|
|
||||||
unsigned const log_min_w = 400;
|
unsigned const log_min_w = 400;
|
||||||
|
|
||||||
if (!_nitpicker.constructed())
|
if (!_gui.constructed())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
typedef String<128> Label;
|
typedef String<128> Label;
|
||||||
@ -1159,7 +1159,7 @@ void Sculpt::Main::_handle_window_layout()
|
|||||||
if (panel_height == 0)
|
if (panel_height == 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
Framebuffer::Mode const mode = _nitpicker->mode();
|
Framebuffer::Mode const mode = _gui->mode();
|
||||||
|
|
||||||
/* area reserved for the panel */
|
/* area reserved for the panel */
|
||||||
Rect const panel(Point(0, 0), Area(mode.width(), panel_height));
|
Rect const panel(Point(0, 0), Area(mode.width(), panel_height));
|
||||||
@ -1323,12 +1323,12 @@ void Sculpt::Main::_handle_window_layout()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Sculpt::Main::_handle_nitpicker_mode()
|
void Sculpt::Main::_handle_gui_mode()
|
||||||
{
|
{
|
||||||
if (!_nitpicker.constructed())
|
if (!_gui.constructed())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
Framebuffer::Mode const mode = _nitpicker->mode();
|
Framebuffer::Mode const mode = _gui->mode();
|
||||||
|
|
||||||
_handle_window_layout();
|
_handle_window_layout();
|
||||||
|
|
||||||
@ -1409,7 +1409,7 @@ Sculpt::Dialog::Hover_result Sculpt::Main::hover(Xml_node hover)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Sculpt::Main::_handle_nitpicker_hover()
|
void Sculpt::Main::_handle_gui_hover()
|
||||||
{
|
{
|
||||||
if (!_storage._discovery_state.discovery_in_progress())
|
if (!_storage._discovery_state.discovery_in_progress())
|
||||||
return;
|
return;
|
||||||
@ -1418,8 +1418,8 @@ void Sculpt::Main::_handle_nitpicker_hover()
|
|||||||
if (_storage._discovery_state.user_state != Discovery_state::USER_UNKNOWN)
|
if (_storage._discovery_state.user_state != Discovery_state::USER_UNKNOWN)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
_nitpicker_hover.update();
|
_gui_hover.update();
|
||||||
Xml_node const hover = _nitpicker_hover.xml();
|
Xml_node const hover = _gui_hover.xml();
|
||||||
if (!hover.has_type("hover"))
|
if (!hover.has_type("hover"))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@ -1678,7 +1678,7 @@ void Sculpt::Main::_generate_runtime_config(Xml_generator &xml) const
|
|||||||
gen_parent_service<Block::Session>(xml);
|
gen_parent_service<Block::Session>(xml);
|
||||||
gen_parent_service<Usb::Session>(xml);
|
gen_parent_service<Usb::Session>(xml);
|
||||||
gen_parent_service<::File_system::Session>(xml);
|
gen_parent_service<::File_system::Session>(xml);
|
||||||
gen_parent_service<Nitpicker::Session>(xml);
|
gen_parent_service<Gui::Session>(xml);
|
||||||
gen_parent_service<Rtc::Session>(xml);
|
gen_parent_service<Rtc::Session>(xml);
|
||||||
gen_parent_service<Trace::Session>(xml);
|
gen_parent_service<Trace::Session>(xml);
|
||||||
gen_parent_service<Io_mem_session>(xml);
|
gen_parent_service<Io_mem_session>(xml);
|
||||||
|
@ -126,7 +126,7 @@ void Menu_view::_gen_start_node_content(Xml_generator &xml) const
|
|||||||
|
|
||||||
Label const label = _child_state.name();
|
Label const label = _child_state.name();
|
||||||
|
|
||||||
gen_service_node<Nitpicker::Session>(xml, [&] () {
|
gen_service_node<Gui::Session>(xml, [&] () {
|
||||||
xml.node("parent", [&] () {
|
xml.node("parent", [&] () {
|
||||||
xml.attribute("label", Label("leitzentrale -> ", label)); }); });
|
xml.attribute("label", Label("leitzentrale -> ", label)); }); });
|
||||||
|
|
||||||
|
@ -185,7 +185,7 @@ struct Sculpt::File_browser_state : Noncopyable
|
|||||||
xml.attribute("label", "clipboard");
|
xml.attribute("label", "clipboard");
|
||||||
xml.node("parent", [&] () { }); });
|
xml.node("parent", [&] () { }); });
|
||||||
|
|
||||||
gen_service_node<Nitpicker::Session>(xml, [&] () {
|
gen_service_node<Gui::Session>(xml, [&] () {
|
||||||
xml.node("parent", [&] () {
|
xml.node("parent", [&] () {
|
||||||
xml.attribute("label", Label("leitzentrale -> editor")); }); });
|
xml.attribute("label", Label("leitzentrale -> editor")); }); });
|
||||||
|
|
||||||
|
@ -40,10 +40,10 @@ static void gen_nit_fb_start(Xml_generator &xml)
|
|||||||
xml.node("route", [&] () {
|
xml.node("route", [&] () {
|
||||||
gen_parent_rom_route(xml, "nit_fb");
|
gen_parent_rom_route(xml, "nit_fb");
|
||||||
gen_parent_rom_route(xml, "ld.lib.so");
|
gen_parent_rom_route(xml, "ld.lib.so");
|
||||||
gen_parent_route<Cpu_session> (xml);
|
gen_parent_route<Cpu_session> (xml);
|
||||||
gen_parent_route<Pd_session> (xml);
|
gen_parent_route<Pd_session> (xml);
|
||||||
gen_parent_route<Log_session> (xml);
|
gen_parent_route<Log_session> (xml);
|
||||||
gen_parent_route<Nitpicker::Session> (xml);
|
gen_parent_route<Gui::Session> (xml);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -248,7 +248,7 @@ void Sculpt::gen_inspect_view(Xml_generator &xml,
|
|||||||
gen_parent_service<Timer::Session>(xml);
|
gen_parent_service<Timer::Session>(xml);
|
||||||
gen_parent_service<Report::Session>(xml);
|
gen_parent_service<Report::Session>(xml);
|
||||||
gen_parent_service<::File_system::Session>(xml);
|
gen_parent_service<::File_system::Session>(xml);
|
||||||
gen_parent_service<Nitpicker::Session>(xml);
|
gen_parent_service<Gui::Session>(xml);
|
||||||
});
|
});
|
||||||
|
|
||||||
xml.node("start", [&] () { gen_nit_fb_start(xml); });
|
xml.node("start", [&] () { gen_nit_fb_start(xml); });
|
||||||
@ -315,7 +315,7 @@ void Sculpt::gen_inspect_view(Xml_generator &xml,
|
|||||||
gen_named_node(xml, "child", "ram_fs");
|
gen_named_node(xml, "child", "ram_fs");
|
||||||
});
|
});
|
||||||
|
|
||||||
gen_service_node<Nitpicker::Session>(xml, [&] () {
|
gen_service_node<Gui::Session>(xml, [&] () {
|
||||||
xml.node("parent", [&] () {
|
xml.node("parent", [&] () {
|
||||||
xml.attribute("label", String<64>("leitzentrale -> inspect")); }); });
|
xml.attribute("label", String<64>("leitzentrale -> inspect")); }); });
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ void Sculpt::gen_runtime_view_start_content(Xml_generator &xml,
|
|||||||
|
|
||||||
xml.node("route", [&] () {
|
xml.node("route", [&] () {
|
||||||
|
|
||||||
gen_service_node<Nitpicker::Session>(xml, [&] () {
|
gen_service_node<Gui::Session>(xml, [&] () {
|
||||||
xml.node("parent", [&] () {
|
xml.node("parent", [&] () {
|
||||||
xml.attribute("label", "leitzentrale -> runtime_view"); }); });
|
xml.attribute("label", "leitzentrale -> runtime_view"); }); });
|
||||||
|
|
||||||
|
@ -42,9 +42,9 @@ namespace Sculpt {
|
|||||||
typedef String<36> Start_name;
|
typedef String<36> Start_name;
|
||||||
typedef String<64> Label;
|
typedef String<64> Label;
|
||||||
|
|
||||||
typedef Nitpicker::Point Point;
|
typedef Gui::Point Point;
|
||||||
typedef Nitpicker::Rect Rect;
|
typedef Gui::Rect Rect;
|
||||||
typedef Nitpicker::Area Area;
|
typedef Gui::Area Area;
|
||||||
|
|
||||||
enum Writeable { WRITEABLE, READ_ONLY };
|
enum Writeable { WRITEABLE, READ_ONLY };
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Nitpicker wrapper for monitoring the user input of GUI components
|
* \brief GUI wrapper for monitoring the user input of GUI components
|
||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
* \date 2020-01-12
|
* \date 2020-01-12
|
||||||
*/
|
*/
|
||||||
@ -11,8 +11,8 @@
|
|||||||
* under the terms of the GNU Affero General Public License version 3.
|
* under the terms of the GNU Affero General Public License version 3.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _NITPICKER_H_
|
#ifndef _GUI_H_
|
||||||
#define _NITPICKER_H_
|
#define _GUI_H_
|
||||||
|
|
||||||
/* Genode includes */
|
/* Genode includes */
|
||||||
#include <input/component.h>
|
#include <input/component.h>
|
||||||
@ -22,7 +22,7 @@
|
|||||||
/* local includes */
|
/* local includes */
|
||||||
#include <input_event_handler.h>
|
#include <input_event_handler.h>
|
||||||
|
|
||||||
namespace Nitpicker {
|
namespace Gui {
|
||||||
|
|
||||||
using namespace Genode;
|
using namespace Genode;
|
||||||
|
|
||||||
@ -30,13 +30,13 @@ namespace Nitpicker {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
struct Nitpicker::Session_component : Session_object<Nitpicker::Session>
|
struct Gui::Session_component : Session_object<Gui::Session>
|
||||||
{
|
{
|
||||||
Env &_env;
|
Env &_env;
|
||||||
|
|
||||||
Input_event_handler &_event_handler;
|
Input_event_handler &_event_handler;
|
||||||
|
|
||||||
Nitpicker::Connection _connection;
|
Gui::Connection _connection;
|
||||||
|
|
||||||
Input::Session_component _input_component { _env, _env.ram() };
|
Input::Session_component _input_component { _env, _env.ram() };
|
||||||
|
|
||||||
@ -115,8 +115,8 @@ struct Nitpicker::Session_component : Session_object<Nitpicker::Session>
|
|||||||
_connection.Client::buffer(mode, use_alpha);
|
_connection.Client::buffer(mode, use_alpha);
|
||||||
}
|
}
|
||||||
|
|
||||||
void focus(Capability<Nitpicker::Session> session) override {
|
void focus(Capability<Gui::Session> session) override {
|
||||||
_connection.focus(session); }
|
_connection.focus(session); }
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* _NITPICKER_H_ */
|
#endif /* _GUI_H_ */
|
@ -18,9 +18,9 @@
|
|||||||
#include <util/interface.h>
|
#include <util/interface.h>
|
||||||
#include <input/event.h>
|
#include <input/event.h>
|
||||||
|
|
||||||
namespace Nitpicker { struct Input_event_handler; }
|
namespace Gui { struct Input_event_handler; }
|
||||||
|
|
||||||
struct Nitpicker::Input_event_handler : Genode::Interface
|
struct Gui::Input_event_handler : Genode::Interface
|
||||||
{
|
{
|
||||||
virtual void handle_input_event(Input::Event const &) = 0;
|
virtual void handle_input_event(Input::Event const &) = 0;
|
||||||
};
|
};
|
||||||
|
@ -23,7 +23,7 @@
|
|||||||
#include <os/reporter.h>
|
#include <os/reporter.h>
|
||||||
|
|
||||||
/* local includes */
|
/* local includes */
|
||||||
#include <nitpicker.h>
|
#include <gui.h>
|
||||||
#include <report.h>
|
#include <report.h>
|
||||||
#include <dialog.h>
|
#include <dialog.h>
|
||||||
#include <new_file.h>
|
#include <new_file.h>
|
||||||
@ -33,7 +33,7 @@ namespace Text_area { struct Main; }
|
|||||||
|
|
||||||
struct Text_area::Main : Sandbox::Local_service_base::Wakeup,
|
struct Text_area::Main : Sandbox::Local_service_base::Wakeup,
|
||||||
Sandbox::State_handler,
|
Sandbox::State_handler,
|
||||||
Nitpicker::Input_event_handler,
|
Gui::Input_event_handler,
|
||||||
Dialog::Trigger_copy, Dialog::Trigger_paste,
|
Dialog::Trigger_copy, Dialog::Trigger_paste,
|
||||||
Dialog::Trigger_save
|
Dialog::Trigger_save
|
||||||
{
|
{
|
||||||
@ -76,9 +76,9 @@ struct Text_area::Main : Sandbox::Local_service_base::Wakeup,
|
|||||||
|
|
||||||
Sandbox _sandbox { _env, *this };
|
Sandbox _sandbox { _env, *this };
|
||||||
|
|
||||||
typedef Sandbox::Local_service<Nitpicker::Session_component> Nitpicker_service;
|
typedef Sandbox::Local_service<Gui::Session_component> Gui_service;
|
||||||
|
|
||||||
Nitpicker_service _nitpicker_service { _sandbox, *this };
|
Gui_service _gui_service { _sandbox, *this };
|
||||||
|
|
||||||
typedef Sandbox::Local_service<Dynamic_rom_session> Rom_service;
|
typedef Sandbox::Local_service<Dynamic_rom_session> Rom_service;
|
||||||
|
|
||||||
@ -245,30 +245,30 @@ struct Text_area::Main : Sandbox::Local_service_base::Wakeup,
|
|||||||
return Report_service::Close_response::CLOSED;
|
return Report_service::Close_response::CLOSED;
|
||||||
});
|
});
|
||||||
|
|
||||||
_nitpicker_service.for_each_requested_session([&] (Nitpicker_service::Request &request) {
|
_gui_service.for_each_requested_session([&] (Gui_service::Request &request) {
|
||||||
|
|
||||||
Nitpicker::Session_component &session = *new (_heap)
|
Gui::Session_component &session = *new (_heap)
|
||||||
Nitpicker::Session_component(_env, *this, _env.ep(),
|
Gui::Session_component(_env, *this, _env.ep(),
|
||||||
request.resources, "", request.diag);
|
request.resources, "", request.diag);
|
||||||
|
|
||||||
request.deliver_session(session);
|
request.deliver_session(session);
|
||||||
});
|
});
|
||||||
|
|
||||||
_nitpicker_service.for_each_upgraded_session([&] (Nitpicker::Session_component &session,
|
_gui_service.for_each_upgraded_session([&] (Gui::Session_component &session,
|
||||||
Session::Resources const &amount) {
|
Session::Resources const &amount) {
|
||||||
session.upgrade(amount);
|
session.upgrade(amount);
|
||||||
return Nitpicker_service::Upgrade_response::CONFIRMED;
|
return Gui_service::Upgrade_response::CONFIRMED;
|
||||||
});
|
});
|
||||||
|
|
||||||
_nitpicker_service.for_each_session_to_close([&] (Nitpicker::Session_component &session) {
|
_gui_service.for_each_session_to_close([&] (Gui::Session_component &session) {
|
||||||
|
|
||||||
destroy(_heap, &session);
|
destroy(_heap, &session);
|
||||||
return Nitpicker_service::Close_response::CLOSED;
|
return Gui_service::Close_response::CLOSED;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Nitpicker::Input_event_handler interface
|
* Gui::Input_event_handler interface
|
||||||
*/
|
*/
|
||||||
void handle_input_event(Input::Event const &event) override
|
void handle_input_event(Input::Event const &event) override
|
||||||
{
|
{
|
||||||
|
@ -63,9 +63,9 @@ struct Decorator::Main : Window_factory_base
|
|||||||
Reporter _hover_reporter = { _env, "hover" };
|
Reporter _hover_reporter = { _env, "hover" };
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Nitpicker connection used to sync animations
|
* GUI connection used to sync animations
|
||||||
*/
|
*/
|
||||||
Nitpicker::Connection _nitpicker { _env };
|
Gui::Connection _gui { _env };
|
||||||
|
|
||||||
bool _window_layout_update_needed = false;
|
bool _window_layout_update_needed = false;
|
||||||
|
|
||||||
@ -78,13 +78,13 @@ struct Decorator::Main : Window_factory_base
|
|||||||
Reporter _decorator_margins_reporter = { _env, "decorator_margins" };
|
Reporter _decorator_margins_reporter = { _env, "decorator_margins" };
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Process the update every 'frame_period' nitpicker sync signals. The
|
* Process the update every 'frame_period' GUI sync signals. The
|
||||||
* 'frame_cnt' holds the counter of the nitpicker sync signals.
|
* 'frame_cnt' holds the counter of the GUI sync signals.
|
||||||
*
|
*
|
||||||
* A lower 'frame_period' value makes the decorations more responsive
|
* A lower 'frame_period' value makes the decorations more responsive
|
||||||
* but it also puts more load on the system.
|
* but it also puts more load on the system.
|
||||||
*
|
*
|
||||||
* If the nitpicker sync signal fires every 10 milliseconds, a
|
* If the GUI sync signal fires every 10 milliseconds, a
|
||||||
* 'frame_period' of 2 results in an update rate of 1000/20 = 50 frames per
|
* 'frame_period' of 2 results in an update rate of 1000/20 = 50 frames per
|
||||||
* second.
|
* second.
|
||||||
*/
|
*/
|
||||||
@ -92,12 +92,12 @@ struct Decorator::Main : Window_factory_base
|
|||||||
unsigned _frame_period = 2;
|
unsigned _frame_period = 2;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Install handler for responding to nitpicker sync events
|
* Install handler for responding to GUI sync events
|
||||||
*/
|
*/
|
||||||
void _handle_nitpicker_sync();
|
void _handle_gui_sync();
|
||||||
|
|
||||||
Signal_handler<Main> _nitpicker_sync_handler = {
|
Signal_handler<Main> _gui_sync_handler = {
|
||||||
_env.ep(), *this, &Main::_handle_nitpicker_sync };
|
_env.ep(), *this, &Main::_handle_gui_sync };
|
||||||
|
|
||||||
Attached_rom_dataspace _config { _env, "config" };
|
Attached_rom_dataspace _config { _env, "config" };
|
||||||
|
|
||||||
@ -122,7 +122,7 @@ struct Decorator::Main : Window_factory_base
|
|||||||
* and view_handle operations. Currently, these exceptions will
|
* and view_handle operations. Currently, these exceptions will
|
||||||
* abort the decorator.
|
* abort the decorator.
|
||||||
*/
|
*/
|
||||||
_nitpicker.upgrade_ram(256*1024);
|
_gui.upgrade_ram(256*1024);
|
||||||
|
|
||||||
_config.sigh(_config_handler);
|
_config.sigh(_config_handler);
|
||||||
_handle_config();
|
_handle_config();
|
||||||
@ -136,7 +136,7 @@ struct Decorator::Main : Window_factory_base
|
|||||||
Genode::log("pointer information unavailable");
|
Genode::log("pointer information unavailable");
|
||||||
}
|
}
|
||||||
|
|
||||||
_nitpicker.framebuffer()->sync_sigh(_nitpicker_sync_handler);
|
_gui.framebuffer()->sync_sigh(_gui_sync_handler);
|
||||||
|
|
||||||
_hover_reporter.enabled(true);
|
_hover_reporter.enabled(true);
|
||||||
|
|
||||||
@ -167,7 +167,7 @@ struct Decorator::Main : Window_factory_base
|
|||||||
{
|
{
|
||||||
return new (_heap)
|
return new (_heap)
|
||||||
Window(_env, window_node.attribute_value("id", 0UL),
|
Window(_env, window_node.attribute_value("id", 0UL),
|
||||||
_nitpicker, _animator, _theme, _decorator_config);
|
_gui, _animator, _theme, _decorator_config);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -249,7 +249,7 @@ void Decorator::Main::_handle_window_layout_update()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Decorator::Main::_handle_nitpicker_sync()
|
void Decorator::Main::_handle_gui_sync()
|
||||||
{
|
{
|
||||||
if (_frame_cnt++ < _frame_period)
|
if (_frame_cnt++ < _frame_period)
|
||||||
return;
|
return;
|
||||||
@ -259,7 +259,7 @@ void Decorator::Main::_handle_nitpicker_sync()
|
|||||||
bool model_updated = false;
|
bool model_updated = false;
|
||||||
|
|
||||||
auto flush_window_stack_changes = [&] () {
|
auto flush_window_stack_changes = [&] () {
|
||||||
_window_stack.update_nitpicker_views(); };
|
_window_stack.update_gui_views(); };
|
||||||
|
|
||||||
if (_window_layout_update_needed) {
|
if (_window_layout_update_needed) {
|
||||||
|
|
||||||
@ -281,8 +281,8 @@ void Decorator::Main::_handle_nitpicker_sync()
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* To make the perceived animation speed independent from the setting of
|
* To make the perceived animation speed independent from the setting of
|
||||||
* 'frame_period', we update the animation as often as the nitpicker
|
* 'frame_period', we update the animation as often as the GUI sync signal
|
||||||
* sync signal occurs.
|
* occurs.
|
||||||
*/
|
*/
|
||||||
for (unsigned i = 0; i < _frame_period; i++)
|
for (unsigned i = 0; i < _frame_period; i++)
|
||||||
_animator.animate();
|
_animator.animate();
|
||||||
@ -290,8 +290,8 @@ void Decorator::Main::_handle_nitpicker_sync()
|
|||||||
if (!model_updated && !windows_animated)
|
if (!model_updated && !windows_animated)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
_window_stack.update_nitpicker_views();
|
_window_stack.update_gui_views();
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
#include <util/reconstructible.h>
|
#include <util/reconstructible.h>
|
||||||
|
|
||||||
/* gems includes */
|
/* gems includes */
|
||||||
#include <gems/nitpicker_buffer.h>
|
#include <gems/gui_buffer.h>
|
||||||
#include <gems/animated_geometry.h>
|
#include <gems/animated_geometry.h>
|
||||||
|
|
||||||
/* local includes */
|
/* local includes */
|
||||||
@ -48,9 +48,9 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Flag indicating that the current window position has been propagated
|
* Flag indicating that the current window position has been propagated
|
||||||
* to the window's corresponding nitpicker views.
|
* to the window's corresponding GUI views.
|
||||||
*/
|
*/
|
||||||
bool _nitpicker_views_up_to_date = false;
|
bool _gui_views_up_to_date = false;
|
||||||
|
|
||||||
unsigned _topped_cnt = 0;
|
unsigned _topped_cnt = 0;
|
||||||
|
|
||||||
@ -141,22 +141,21 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
func(_maximizer);
|
func(_maximizer);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct Nitpicker_view
|
struct Gui_view
|
||||||
{
|
{
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
|
|
||||||
bool const _view_is_remote;
|
bool const _view_is_remote;
|
||||||
|
|
||||||
Nitpicker::Session_client &_nitpicker;
|
Gui::Session_client &_gui;
|
||||||
|
|
||||||
View_handle _handle;
|
View_handle _handle;
|
||||||
|
|
||||||
Nitpicker_view(Nitpicker::Session_client &nitpicker,
|
Gui_view(Gui::Session_client &gui, unsigned id = 0)
|
||||||
unsigned id = 0)
|
|
||||||
:
|
:
|
||||||
_view_is_remote(false),
|
_view_is_remote(false),
|
||||||
_nitpicker(nitpicker),
|
_gui(gui),
|
||||||
_handle(_nitpicker.create_view())
|
_handle(_gui.create_view())
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* We supply the window ID as label for the anchor view.
|
* We supply the window ID as label for the anchor view.
|
||||||
@ -165,63 +164,63 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
char buf[128];
|
char buf[128];
|
||||||
Genode::snprintf(buf, sizeof(buf), "%d", id);
|
Genode::snprintf(buf, sizeof(buf), "%d", id);
|
||||||
|
|
||||||
_nitpicker.enqueue<Command::Title>(_handle, Genode::Cstring(buf));
|
_gui.enqueue<Command::Title>(_handle, Genode::Cstring(buf));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
View_handle _create_remote_view(Nitpicker::Session_client &remote_nitpicker)
|
View_handle _create_remote_view(Gui::Session_client &remote_gui)
|
||||||
{
|
{
|
||||||
/* create view at the remote nitpicker session */
|
/* create view at the remote GUI session */
|
||||||
View_handle handle = remote_nitpicker.create_view();
|
View_handle handle = remote_gui.create_view();
|
||||||
Nitpicker::View_capability view_cap = remote_nitpicker.view_capability(handle);
|
Gui::View_capability view_cap = remote_gui.view_capability(handle);
|
||||||
|
|
||||||
/* import remote view into local nitpicker session */
|
/* import remote view into local GUI session */
|
||||||
return _nitpicker.view_handle(view_cap);
|
return _gui.view_handle(view_cap);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor called for creating a view that refers to a buffer
|
* Constructor called for creating a view that refers to a buffer
|
||||||
* of another nitpicker session
|
* of another GUI session
|
||||||
*/
|
*/
|
||||||
Nitpicker_view(Nitpicker::Session_client &nitpicker,
|
Gui_view(Gui::Session_client &gui,
|
||||||
Nitpicker::Session_client &remote_nitpicker)
|
Gui::Session_client &remote_gui)
|
||||||
:
|
:
|
||||||
_view_is_remote(true),
|
_view_is_remote(true),
|
||||||
_nitpicker(nitpicker),
|
_gui(gui),
|
||||||
_handle(_create_remote_view(remote_nitpicker))
|
_handle(_create_remote_view(remote_gui))
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
~Nitpicker_view()
|
~Gui_view()
|
||||||
{
|
{
|
||||||
if (_view_is_remote)
|
if (_view_is_remote)
|
||||||
_nitpicker.release_view_handle(_handle);
|
_gui.release_view_handle(_handle);
|
||||||
else
|
else
|
||||||
_nitpicker.destroy_view(_handle);
|
_gui.destroy_view(_handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
View_handle handle() const { return _handle; }
|
View_handle handle() const { return _handle; }
|
||||||
|
|
||||||
void stack(View_handle neighbor)
|
void stack(View_handle neighbor)
|
||||||
{
|
{
|
||||||
_nitpicker.enqueue<Command::To_front>(_handle, neighbor);
|
_gui.enqueue<Command::To_front>(_handle, neighbor);
|
||||||
}
|
}
|
||||||
|
|
||||||
void stack_back_most()
|
void stack_back_most()
|
||||||
{
|
{
|
||||||
_nitpicker.enqueue<Command::To_back>(_handle, View_handle());
|
_gui.enqueue<Command::To_back>(_handle, View_handle());
|
||||||
}
|
}
|
||||||
|
|
||||||
void place(Rect rect, Point offset)
|
void place(Rect rect, Point offset)
|
||||||
{
|
{
|
||||||
_nitpicker.enqueue<Command::Geometry>(_handle, rect);
|
_gui.enqueue<Command::Geometry>(_handle, rect);
|
||||||
_nitpicker.enqueue<Command::Offset>(_handle, offset);
|
_gui.enqueue<Command::Offset>(_handle, offset);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Nitpicker used as a global namespace of view handles
|
* GUI session used as a global namespace of view handles
|
||||||
*/
|
*/
|
||||||
Nitpicker::Session_client &_nitpicker;
|
Gui::Session_client &_gui;
|
||||||
|
|
||||||
Config const &_config;
|
Config const &_config;
|
||||||
|
|
||||||
@ -243,25 +242,23 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
Genode::Animated_rect _animated_rect { _animator };
|
Genode::Animated_rect _animated_rect { _animator };
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Geometry most recently propagated to nitpicker
|
* Geometry most recently propagated to GUI server
|
||||||
*/
|
*/
|
||||||
Rect _nitpicker_view_rect { };
|
Rect _gui_view_rect { };
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Nitpicker session that contains the upper and lower window
|
* GUI session that contains the upper and lower window decorations
|
||||||
* decorations.
|
|
||||||
*/
|
*/
|
||||||
Nitpicker::Connection _nitpicker_top_bottom { _env };
|
Gui::Connection _gui_top_bottom { _env };
|
||||||
Genode::Constructible<Nitpicker_buffer> _buffer_top_bottom { };
|
Genode::Constructible<Gui_buffer> _buffer_top_bottom { };
|
||||||
Area _size_top_bottom { };
|
Area _size_top_bottom { };
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Nitpicker session that contains the left and right window
|
* GUI session that contains the left and right window decorations
|
||||||
* decorations.
|
|
||||||
*/
|
*/
|
||||||
Nitpicker::Connection _nitpicker_left_right { _env };
|
Gui::Connection _gui_left_right { _env };
|
||||||
Genode::Constructible<Nitpicker_buffer> _buffer_left_right { };
|
Genode::Constructible<Gui_buffer> _buffer_left_right { };
|
||||||
Area _size_left_right { };
|
Area _size_left_right { };
|
||||||
|
|
||||||
Area _visible_top_bottom_area(Area const inner_size) const
|
Area _visible_top_bottom_area(Area const inner_size) const
|
||||||
{
|
{
|
||||||
@ -277,14 +274,14 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
return Area(outer_size.w() - inner_size.w(), outer_size.h());
|
return Area(outer_size.w() - inner_size.w(), outer_size.h());
|
||||||
}
|
}
|
||||||
|
|
||||||
Nitpicker_view _bottom_view { _nitpicker, _nitpicker_top_bottom },
|
Gui_view _bottom_view { _gui, _gui_top_bottom },
|
||||||
_right_view { _nitpicker, _nitpicker_left_right },
|
_right_view { _gui, _gui_left_right },
|
||||||
_left_view { _nitpicker, _nitpicker_left_right },
|
_left_view { _gui, _gui_left_right },
|
||||||
_top_view { _nitpicker, _nitpicker_top_bottom };
|
_top_view { _gui, _gui_top_bottom };
|
||||||
|
|
||||||
Nitpicker_view _content_view { _nitpicker, (unsigned)id() };
|
Gui_view _content_view { _gui, (unsigned)id() };
|
||||||
|
|
||||||
void _repaint_decorations(Nitpicker_buffer &buffer, Area area)
|
void _repaint_decorations(Gui_buffer &buffer, Area area)
|
||||||
{
|
{
|
||||||
buffer.reset_surface();
|
buffer.reset_surface();
|
||||||
|
|
||||||
@ -306,7 +303,7 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
|
|
||||||
buffer.flush_surface();
|
buffer.flush_surface();
|
||||||
|
|
||||||
buffer.nitpicker.framebuffer()->refresh(0, 0, buffer.size().w(), buffer.size().h());
|
buffer.gui.framebuffer()->refresh(0, 0, buffer.size().w(), buffer.size().h());
|
||||||
}
|
}
|
||||||
|
|
||||||
void _repaint_decorations()
|
void _repaint_decorations()
|
||||||
@ -317,7 +314,7 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
_repaint_decorations(*_buffer_left_right, _visible_left_right_area(inner_size));
|
_repaint_decorations(*_buffer_left_right, _visible_left_right_area(inner_size));
|
||||||
}
|
}
|
||||||
|
|
||||||
void _reallocate_nitpicker_buffers()
|
void _reallocate_gui_buffers()
|
||||||
{
|
{
|
||||||
bool const use_alpha = true;
|
bool const use_alpha = true;
|
||||||
|
|
||||||
@ -327,12 +324,12 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
|| size_top_bottom.h() > _size_top_bottom.h()
|
|| size_top_bottom.h() > _size_top_bottom.h()
|
||||||
|| !_buffer_top_bottom.constructed()) {
|
|| !_buffer_top_bottom.constructed()) {
|
||||||
|
|
||||||
_nitpicker_top_bottom.buffer(Framebuffer::Mode(size_top_bottom.w(),
|
_gui_top_bottom.buffer(Framebuffer::Mode(size_top_bottom.w(),
|
||||||
size_top_bottom.h(),
|
size_top_bottom.h(),
|
||||||
Framebuffer::Mode::RGB565),
|
Framebuffer::Mode::RGB565),
|
||||||
use_alpha);
|
use_alpha);
|
||||||
|
|
||||||
_buffer_top_bottom.construct(_nitpicker_top_bottom, size_top_bottom,
|
_buffer_top_bottom.construct(_gui_top_bottom, size_top_bottom,
|
||||||
_env.ram(), _env.rm());
|
_env.ram(), _env.rm());
|
||||||
|
|
||||||
_size_top_bottom = size_top_bottom;
|
_size_top_bottom = size_top_bottom;
|
||||||
@ -344,12 +341,12 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
|| size_left_right.h() > _size_left_right.h()
|
|| size_left_right.h() > _size_left_right.h()
|
||||||
|| !_buffer_left_right.constructed()) {
|
|| !_buffer_left_right.constructed()) {
|
||||||
|
|
||||||
_nitpicker_left_right.buffer(Framebuffer::Mode(size_left_right.w(),
|
_gui_left_right.buffer(Framebuffer::Mode(size_left_right.w(),
|
||||||
size_left_right.h(),
|
size_left_right.h(),
|
||||||
Framebuffer::Mode::RGB565),
|
Framebuffer::Mode::RGB565),
|
||||||
use_alpha);
|
use_alpha);
|
||||||
|
|
||||||
_buffer_left_right.construct(_nitpicker_left_right, size_left_right,
|
_buffer_left_right.construct(_gui_left_right, size_left_right,
|
||||||
_env.ram(), _env.rm());
|
_env.ram(), _env.rm());
|
||||||
|
|
||||||
_size_left_right = size_left_right;
|
_size_left_right = size_left_right;
|
||||||
@ -377,15 +374,15 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
Window(Genode::Env &env, unsigned id, Nitpicker::Session_client &nitpicker,
|
Window(Genode::Env &env, unsigned id, Gui::Session_client &gui,
|
||||||
Animator &animator, Theme const &theme, Config const &config)
|
Animator &animator, Theme const &theme, Config const &config)
|
||||||
:
|
:
|
||||||
Window_base(id),
|
Window_base(id),
|
||||||
Animator::Item(animator),
|
Animator::Item(animator),
|
||||||
_env(env), _theme(theme), _animator(animator),
|
_env(env), _theme(theme), _animator(animator),
|
||||||
_nitpicker(nitpicker), _config(config)
|
_gui(gui), _config(config)
|
||||||
{
|
{
|
||||||
_reallocate_nitpicker_buffers();
|
_reallocate_gui_buffers();
|
||||||
_alpha.dst(_focused ? 256 : 200, 20);
|
_alpha.dst(_focused ? 256 : 200, 20);
|
||||||
animate();
|
animate();
|
||||||
}
|
}
|
||||||
@ -458,13 +455,13 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
return _outer_from_inner_geometry(geometry());
|
return _outer_from_inner_geometry(geometry());
|
||||||
}
|
}
|
||||||
|
|
||||||
void update_nitpicker_views() override
|
void update_gui_views() override
|
||||||
{
|
{
|
||||||
bool const nitpicker_view_rect_up_to_date =
|
bool const gui_view_rect_up_to_date =
|
||||||
_nitpicker_view_rect.p1() == geometry().p1() &&
|
_gui_view_rect.p1() == geometry().p1() &&
|
||||||
_nitpicker_view_rect.p2() == geometry().p2();
|
_gui_view_rect.p2() == geometry().p2();
|
||||||
|
|
||||||
if (!_nitpicker_views_up_to_date || !nitpicker_view_rect_up_to_date) {
|
if (!_gui_views_up_to_date || !gui_view_rect_up_to_date) {
|
||||||
|
|
||||||
Area const theme_size = _theme.background_size();
|
Area const theme_size = _theme.background_size();
|
||||||
Rect const inner = _curr_inner_geometry();
|
Rect const inner = _curr_inner_geometry();
|
||||||
@ -480,10 +477,10 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
_right_view .place(right, Point(-right.w(), -top.h()));
|
_right_view .place(right, Point(-right.w(), -top.h()));
|
||||||
_bottom_view .place(bottom, Point(0, -theme_size.h() + bottom.h()));
|
_bottom_view .place(bottom, Point(0, -theme_size.h() + bottom.h()));
|
||||||
|
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
|
|
||||||
_nitpicker_view_rect = inner;
|
_gui_view_rect = inner;
|
||||||
_nitpicker_views_up_to_date = true;
|
_gui_views_up_to_date = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -537,7 +534,7 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
* Detect position changes
|
* Detect position changes
|
||||||
*/
|
*/
|
||||||
if (geometry_changed || motion_triggered) {
|
if (geometry_changed || motion_triggered) {
|
||||||
_nitpicker_views_up_to_date = false;
|
_gui_views_up_to_date = false;
|
||||||
updated = true;
|
updated = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -546,7 +543,7 @@ class Decorator::Window : public Window_base, public Animator::Item
|
|||||||
*/
|
*/
|
||||||
if (size_changed || motion_triggered) {
|
if (size_changed || motion_triggered) {
|
||||||
|
|
||||||
_reallocate_nitpicker_buffers();
|
_reallocate_gui_buffers();
|
||||||
|
|
||||||
/* triggering the animation has the side effect of repainting */
|
/* triggering the animation has the side effect of repainting */
|
||||||
trigger_animation = true;
|
trigger_animation = true;
|
||||||
|
@ -322,12 +322,12 @@ struct Window_layouter::Main : Operations,
|
|||||||
Signal_handler<Main> _input_handler {
|
Signal_handler<Main> _input_handler {
|
||||||
_env.ep(), *this, &Main::_handle_input };
|
_env.ep(), *this, &Main::_handle_input };
|
||||||
|
|
||||||
Nitpicker::Connection _nitpicker { _env };
|
Gui::Connection _gui { _env };
|
||||||
|
|
||||||
void _handle_mode_change()
|
void _handle_mode_change()
|
||||||
{
|
{
|
||||||
/* determine maximized window geometry */
|
/* determine maximized window geometry */
|
||||||
Framebuffer::Mode const mode = _nitpicker.mode();
|
Framebuffer::Mode const mode = _gui.mode();
|
||||||
|
|
||||||
_screen_size = Area(mode.width(), mode.height());
|
_screen_size = Area(mode.width(), mode.height());
|
||||||
|
|
||||||
@ -338,7 +338,7 @@ struct Window_layouter::Main : Operations,
|
|||||||
_env.ep(), *this, &Main::_handle_mode_change };
|
_env.ep(), *this, &Main::_handle_mode_change };
|
||||||
|
|
||||||
|
|
||||||
Input::Session_client _input { _env.rm(), _nitpicker.input_session() };
|
Input::Session_client _input { _env.rm(), _gui.input_session() };
|
||||||
|
|
||||||
Attached_dataspace _input_ds { _env.rm(), _input.dataspace() };
|
Attached_dataspace _input_ds { _env.rm(), _input.dataspace() };
|
||||||
|
|
||||||
@ -377,7 +377,7 @@ struct Window_layouter::Main : Operations,
|
|||||||
*/
|
*/
|
||||||
Main(Env &env) : _env(env)
|
Main(Env &env) : _env(env)
|
||||||
{
|
{
|
||||||
_nitpicker.mode_sigh(_mode_change_handler);
|
_gui.mode_sigh(_mode_change_handler);
|
||||||
_handle_mode_change();
|
_handle_mode_change();
|
||||||
|
|
||||||
_drop_timer.sigh(_drop_timer_handler);
|
_drop_timer.sigh(_drop_timer_handler);
|
||||||
@ -609,10 +609,10 @@ void Window_layouter::Main::_handle_hover()
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Don't generate a focus-model update here. In a situation where the
|
* Don't generate a focus-model update here. In a situation where the
|
||||||
* pointer has moved over a native nitpicker view (outside the realm of
|
* pointer has moved over a native GUI view (outside the realm of
|
||||||
* the window manager), the hover model as generated by the decorator
|
* the window manager), the hover model as generated by the decorator
|
||||||
* naturally becomes empty. If we posted a focus update, this would
|
* naturally becomes empty. If we posted a focus update, this would
|
||||||
* steal the focus away from the native nitpicker view.
|
* steal the focus away from the native GUI view.
|
||||||
*/
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Fader for a nitpicker client
|
* \brief Fader for a GUI client
|
||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
* \date 2014-09-08
|
* \date 2014-09-08
|
||||||
*/
|
*/
|
||||||
@ -29,13 +29,13 @@
|
|||||||
/* local includes */
|
/* local includes */
|
||||||
#include <alpha_dither_painter.h>
|
#include <alpha_dither_painter.h>
|
||||||
|
|
||||||
namespace Nit_fader {
|
namespace Gui_fader {
|
||||||
|
|
||||||
class Main;
|
class Main;
|
||||||
class Src_buffer;
|
class Src_buffer;
|
||||||
class Dst_buffer;
|
class Dst_buffer;
|
||||||
class Framebuffer_session_component;
|
class Framebuffer_session_component;
|
||||||
class Nitpicker_session_component;
|
class Gui_session_component;
|
||||||
|
|
||||||
typedef Genode::Surface_base::Area Area;
|
typedef Genode::Surface_base::Area Area;
|
||||||
typedef Genode::Surface_base::Point Point;
|
typedef Genode::Surface_base::Point Point;
|
||||||
@ -58,7 +58,7 @@ namespace Nit_fader {
|
|||||||
/**
|
/**
|
||||||
* Buffer handed out to our client as virtual framebuffer
|
* Buffer handed out to our client as virtual framebuffer
|
||||||
*/
|
*/
|
||||||
class Nit_fader::Src_buffer
|
class Gui_fader::Src_buffer
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
@ -96,7 +96,7 @@ class Nit_fader::Src_buffer
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class Nit_fader::Dst_buffer
|
class Gui_fader::Dst_buffer
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
@ -129,7 +129,7 @@ class Nit_fader::Dst_buffer
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class Nit_fader::Framebuffer_session_component
|
class Gui_fader::Framebuffer_session_component
|
||||||
:
|
:
|
||||||
public Genode::Rpc_object<Framebuffer::Session>
|
public Genode::Rpc_object<Framebuffer::Session>
|
||||||
{
|
{
|
||||||
@ -137,8 +137,8 @@ class Nit_fader::Framebuffer_session_component
|
|||||||
|
|
||||||
Genode::Env &_env;
|
Genode::Env &_env;
|
||||||
|
|
||||||
Nitpicker::Connection &_nitpicker;
|
Gui::Connection &_gui;
|
||||||
Src_buffer &_src_buffer;
|
Src_buffer &_src_buffer;
|
||||||
|
|
||||||
Constructible<Dst_buffer> _dst_buffer { };
|
Constructible<Dst_buffer> _dst_buffer { };
|
||||||
|
|
||||||
@ -150,11 +150,11 @@ class Nit_fader::Framebuffer_session_component
|
|||||||
/**
|
/**
|
||||||
* Constructor
|
* Constructor
|
||||||
*/
|
*/
|
||||||
Framebuffer_session_component(Genode::Env &env,
|
Framebuffer_session_component(Genode::Env &env,
|
||||||
Nitpicker::Connection &nitpicker,
|
Gui::Connection &gui,
|
||||||
Src_buffer &src_buffer)
|
Src_buffer &src_buffer)
|
||||||
:
|
:
|
||||||
_env(env), _nitpicker(nitpicker), _src_buffer(src_buffer)
|
_env(env), _gui(gui), _src_buffer(src_buffer)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
void dst_buffer(Dataspace_capability ds_cap, Area size)
|
void dst_buffer(Dataspace_capability ds_cap, Area size)
|
||||||
@ -207,7 +207,7 @@ class Nit_fader::Framebuffer_session_component
|
|||||||
|
|
||||||
transfer_src_to_dst_alpha(rect);
|
transfer_src_to_dst_alpha(rect);
|
||||||
|
|
||||||
_nitpicker.framebuffer()->refresh(rect.x1(), rect.y1(), rect.w(), rect.h());
|
_gui.framebuffer()->refresh(rect.x1(), rect.y1(), rect.w(), rect.h());
|
||||||
|
|
||||||
/* keep animating as long as the destination value is not reached */
|
/* keep animating as long as the destination value is not reached */
|
||||||
return _fade != _fade.dst();
|
return _fade != _fade.dst();
|
||||||
@ -230,12 +230,12 @@ class Nit_fader::Framebuffer_session_component
|
|||||||
|
|
||||||
Framebuffer::Mode mode() const override
|
Framebuffer::Mode mode() const override
|
||||||
{
|
{
|
||||||
return _nitpicker.framebuffer()->mode();
|
return _gui.framebuffer()->mode();
|
||||||
}
|
}
|
||||||
|
|
||||||
void mode_sigh(Genode::Signal_context_capability sigh) override
|
void mode_sigh(Genode::Signal_context_capability sigh) override
|
||||||
{
|
{
|
||||||
_nitpicker.framebuffer()->mode_sigh(sigh);
|
_gui.framebuffer()->mode_sigh(sigh);
|
||||||
}
|
}
|
||||||
|
|
||||||
void refresh(int x, int y, int w, int h) override
|
void refresh(int x, int y, int w, int h) override
|
||||||
@ -243,42 +243,42 @@ class Nit_fader::Framebuffer_session_component
|
|||||||
transfer_src_to_dst_pixel(Rect(Point(x, y), Area(w, h)));
|
transfer_src_to_dst_pixel(Rect(Point(x, y), Area(w, h)));
|
||||||
transfer_src_to_dst_alpha(Rect(Point(x, y), Area(w, h)));
|
transfer_src_to_dst_alpha(Rect(Point(x, y), Area(w, h)));
|
||||||
|
|
||||||
_nitpicker.framebuffer()->refresh(x, y, w, h);
|
_gui.framebuffer()->refresh(x, y, w, h);
|
||||||
}
|
}
|
||||||
|
|
||||||
void sync_sigh(Genode::Signal_context_capability sigh) override
|
void sync_sigh(Genode::Signal_context_capability sigh) override
|
||||||
{
|
{
|
||||||
_nitpicker.framebuffer()->sync_sigh(sigh);
|
_gui.framebuffer()->sync_sigh(sigh);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class Nit_fader::Nitpicker_session_component
|
class Gui_fader::Gui_session_component
|
||||||
:
|
:
|
||||||
public Genode::Rpc_object<Nitpicker::Session>
|
public Genode::Rpc_object<Gui::Session>
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
typedef Nitpicker::View_capability View_capability;
|
typedef Gui::View_capability View_capability;
|
||||||
typedef Nitpicker::Session::View_handle View_handle;
|
typedef Gui::Session::View_handle View_handle;
|
||||||
|
|
||||||
Genode::Env &_env;
|
Genode::Env &_env;
|
||||||
|
|
||||||
Reconstructible<Src_buffer> _src_buffer { _env, Area(1, 1), false };
|
Reconstructible<Src_buffer> _src_buffer { _env, Area(1, 1), false };
|
||||||
|
|
||||||
Nitpicker::Connection _nitpicker { _env };
|
Gui::Connection _gui { _env };
|
||||||
|
|
||||||
Genode::Attached_ram_dataspace _command_ds {
|
Genode::Attached_ram_dataspace _command_ds {
|
||||||
_env.ram(), _env.rm(), sizeof(Nitpicker::Session::Command_buffer) };
|
_env.ram(), _env.rm(), sizeof(Gui::Session::Command_buffer) };
|
||||||
|
|
||||||
Nitpicker::Session::Command_buffer &_commands =
|
Gui::Session::Command_buffer &_commands =
|
||||||
*_command_ds.local_addr<Nitpicker::Session::Command_buffer>();
|
*_command_ds.local_addr<Gui::Session::Command_buffer>();
|
||||||
|
|
||||||
Framebuffer_session_component _fb_session { _env, _nitpicker, *_src_buffer };
|
Framebuffer_session_component _fb_session { _env, _gui, *_src_buffer };
|
||||||
|
|
||||||
Framebuffer::Session_capability _fb_cap { _env.ep().manage(_fb_session) };
|
Framebuffer::Session_capability _fb_cap { _env.ep().manage(_fb_session) };
|
||||||
|
|
||||||
Nitpicker::Session::View_handle _view_handle { };
|
Gui::Session::View_handle _view_handle { };
|
||||||
|
|
||||||
bool _view_visible = false;
|
bool _view_visible = false;
|
||||||
Rect _view_geometry { };
|
Rect _view_geometry { };
|
||||||
@ -288,14 +288,14 @@ class Nit_fader::Nitpicker_session_component
|
|||||||
if (!_view_handle.valid() || (_view_visible == _fb_session.visible()))
|
if (!_view_handle.valid() || (_view_visible == _fb_session.visible()))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
|
|
||||||
if (_fb_session.visible())
|
if (_fb_session.visible())
|
||||||
_nitpicker.enqueue<Command::Geometry>(_view_handle, _view_geometry);
|
_gui.enqueue<Command::Geometry>(_view_handle, _view_geometry);
|
||||||
else
|
else
|
||||||
_nitpicker.enqueue<Command::Geometry>(_view_handle, Rect());
|
_gui.enqueue<Command::Geometry>(_view_handle, Rect());
|
||||||
|
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
|
|
||||||
_view_visible = _fb_session.visible();
|
_view_visible = _fb_session.visible();
|
||||||
}
|
}
|
||||||
@ -305,13 +305,13 @@ class Nit_fader::Nitpicker_session_component
|
|||||||
/**
|
/**
|
||||||
* Constructor
|
* Constructor
|
||||||
*/
|
*/
|
||||||
Nitpicker_session_component(Genode::Env &env) : _env(env)
|
Gui_session_component(Genode::Env &env) : _env(env)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Destructor
|
* Destructor
|
||||||
*/
|
*/
|
||||||
~Nitpicker_session_component()
|
~Gui_session_component()
|
||||||
{
|
{
|
||||||
_env.ep().dissolve(_fb_session);
|
_env.ep().dissolve(_fb_session);
|
||||||
}
|
}
|
||||||
@ -331,9 +331,9 @@ class Nit_fader::Nitpicker_session_component
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**********************************
|
/****************************
|
||||||
** Nitpicker::Session interface **
|
** Gui::Session interface **
|
||||||
**********************************/
|
****************************/
|
||||||
|
|
||||||
Framebuffer::Session_capability framebuffer_session() override
|
Framebuffer::Session_capability framebuffer_session() override
|
||||||
{
|
{
|
||||||
@ -342,35 +342,35 @@ class Nit_fader::Nitpicker_session_component
|
|||||||
|
|
||||||
Input::Session_capability input_session() override
|
Input::Session_capability input_session() override
|
||||||
{
|
{
|
||||||
return _nitpicker.input_session();
|
return _gui.input_session();
|
||||||
}
|
}
|
||||||
|
|
||||||
View_handle create_view(View_handle parent) override
|
View_handle create_view(View_handle parent) override
|
||||||
{
|
{
|
||||||
_view_handle = _nitpicker.create_view(parent);
|
_view_handle = _gui.create_view(parent);
|
||||||
_update_view_visibility();
|
_update_view_visibility();
|
||||||
return _view_handle;
|
return _view_handle;
|
||||||
}
|
}
|
||||||
|
|
||||||
void destroy_view(View_handle handle) override
|
void destroy_view(View_handle handle) override
|
||||||
{
|
{
|
||||||
return _nitpicker.destroy_view(handle);
|
return _gui.destroy_view(handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
View_handle view_handle(View_capability view_cap,
|
View_handle view_handle(View_capability view_cap,
|
||||||
View_handle handle) override
|
View_handle handle) override
|
||||||
{
|
{
|
||||||
return _nitpicker.view_handle(view_cap, handle);
|
return _gui.view_handle(view_cap, handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
View_capability view_capability(View_handle handle) override
|
View_capability view_capability(View_handle handle) override
|
||||||
{
|
{
|
||||||
return _nitpicker.view_capability(handle);
|
return _gui.view_capability(handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
void release_view_handle(View_handle handle) override
|
void release_view_handle(View_handle handle) override
|
||||||
{
|
{
|
||||||
_nitpicker.release_view_handle(handle);
|
_gui.release_view_handle(handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
Dataspace_capability command_dataspace() override
|
Dataspace_capability command_dataspace() override
|
||||||
@ -382,11 +382,11 @@ class Nit_fader::Nitpicker_session_component
|
|||||||
{
|
{
|
||||||
for (unsigned i = 0; i < _commands.num(); i++) {
|
for (unsigned i = 0; i < _commands.num(); i++) {
|
||||||
|
|
||||||
Nitpicker::Session::Command command = _commands.get(i);
|
Gui::Session::Command command = _commands.get(i);
|
||||||
|
|
||||||
bool forward_command = true;
|
bool forward_command = true;
|
||||||
|
|
||||||
if (command.opcode == Nitpicker::Session::Command::OP_GEOMETRY) {
|
if (command.opcode == Gui::Session::Command::OP_GEOMETRY) {
|
||||||
|
|
||||||
/* remember view geometry as defined by the client */
|
/* remember view geometry as defined by the client */
|
||||||
_view_geometry = command.geometry.rect;
|
_view_geometry = command.geometry.rect;
|
||||||
@ -396,21 +396,21 @@ class Nit_fader::Nitpicker_session_component
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (forward_command)
|
if (forward_command)
|
||||||
_nitpicker.enqueue(command);
|
_gui.enqueue(command);
|
||||||
}
|
}
|
||||||
_fb_session.transfer_src_to_dst_pixel(Rect(Point(0, 0), _fb_session.size()));
|
_fb_session.transfer_src_to_dst_pixel(Rect(Point(0, 0), _fb_session.size()));
|
||||||
_fb_session.transfer_src_to_dst_alpha(Rect(Point(0, 0), _fb_session.size()));
|
_fb_session.transfer_src_to_dst_alpha(Rect(Point(0, 0), _fb_session.size()));
|
||||||
return _nitpicker.execute();
|
return _gui.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
Framebuffer::Mode mode() override
|
Framebuffer::Mode mode() override
|
||||||
{
|
{
|
||||||
return _nitpicker.mode();
|
return _gui.mode();
|
||||||
}
|
}
|
||||||
|
|
||||||
void mode_sigh(Genode::Signal_context_capability sigh) override
|
void mode_sigh(Genode::Signal_context_capability sigh) override
|
||||||
{
|
{
|
||||||
_nitpicker.mode_sigh(sigh);
|
_gui.mode_sigh(sigh);
|
||||||
}
|
}
|
||||||
|
|
||||||
void buffer(Framebuffer::Mode mode, bool use_alpha) override
|
void buffer(Framebuffer::Mode mode, bool use_alpha) override
|
||||||
@ -419,19 +419,19 @@ class Nit_fader::Nitpicker_session_component
|
|||||||
|
|
||||||
_src_buffer.construct(_env, size, use_alpha);
|
_src_buffer.construct(_env, size, use_alpha);
|
||||||
|
|
||||||
_nitpicker.buffer(mode, true);
|
_gui.buffer(mode, true);
|
||||||
|
|
||||||
_fb_session.dst_buffer(_nitpicker.framebuffer()->dataspace(), size);
|
_fb_session.dst_buffer(_gui.framebuffer()->dataspace(), size);
|
||||||
}
|
}
|
||||||
|
|
||||||
void focus(Genode::Capability<Session> focused) override
|
void focus(Genode::Capability<Session> focused) override
|
||||||
{
|
{
|
||||||
_nitpicker.focus(focused);
|
_gui.focus(focused);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
struct Nit_fader::Main
|
struct Gui_fader::Main
|
||||||
{
|
{
|
||||||
Genode::Env &env;
|
Genode::Env &env;
|
||||||
|
|
||||||
@ -461,17 +461,17 @@ struct Nit_fader::Main
|
|||||||
env.ep(), *this, &Main::handle_config_update
|
env.ep(), *this, &Main::handle_config_update
|
||||||
};
|
};
|
||||||
|
|
||||||
Nitpicker_session_component nitpicker_session { env };
|
Gui_session_component gui_session { env };
|
||||||
|
|
||||||
Genode::Static_root<Nitpicker::Session> nitpicker_root
|
Genode::Static_root<Gui::Session> gui_root
|
||||||
{
|
{
|
||||||
env.ep().manage(nitpicker_session)
|
env.ep().manage(gui_session)
|
||||||
};
|
};
|
||||||
|
|
||||||
void handle_timer()
|
void handle_timer()
|
||||||
{
|
{
|
||||||
Genode::uint64_t frame = curr_frame();
|
Genode::uint64_t frame = curr_frame();
|
||||||
if (nitpicker_session.animate(frame - last_frame))
|
if (gui_session.animate(frame - last_frame))
|
||||||
timer.trigger_once(PERIOD);
|
timer.trigger_once(PERIOD);
|
||||||
|
|
||||||
last_frame = frame;
|
last_frame = frame;
|
||||||
@ -491,12 +491,12 @@ struct Nit_fader::Main
|
|||||||
/* apply initial config */
|
/* apply initial config */
|
||||||
handle_config_update();
|
handle_config_update();
|
||||||
|
|
||||||
env.parent().announce(env.ep().manage(nitpicker_root));
|
env.parent().announce(env.ep().manage(gui_root));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
void Nit_fader::Main::handle_config_update()
|
void Gui_fader::Main::handle_config_update()
|
||||||
{
|
{
|
||||||
config.update();
|
config.update();
|
||||||
|
|
||||||
@ -521,7 +521,7 @@ void Nit_fader::Main::handle_config_update()
|
|||||||
|
|
||||||
initial_fade_in = false;
|
initial_fade_in = false;
|
||||||
|
|
||||||
nitpicker_session.fade(280*new_alpha, steps);
|
gui_session.fade(280*new_alpha, steps);
|
||||||
|
|
||||||
alpha = new_alpha;
|
alpha = new_alpha;
|
||||||
|
|
||||||
@ -537,4 +537,4 @@ void Nit_fader::Main::handle_config_update()
|
|||||||
***************/
|
***************/
|
||||||
|
|
||||||
void Component::construct(Genode::Env &env) {
|
void Component::construct(Genode::Env &env) {
|
||||||
static Nit_fader::Main desktop(env); }
|
static Gui_fader::Main desktop(env); }
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Nitpicker service provided to decorator
|
* \brief GUI service provided to decorator
|
||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
* \date 2014-02-14
|
* \date 2014-02-14
|
||||||
*/
|
*/
|
||||||
@ -11,8 +11,8 @@
|
|||||||
* under the terms of the GNU Affero General Public License version 3.
|
* under the terms of the GNU Affero General Public License version 3.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _DECORATOR_NITPICKER_H_
|
#ifndef _DECORATOR_GUI_H_
|
||||||
#define _DECORATOR_NITPICKER_H_
|
#define _DECORATOR_GUI_H_
|
||||||
|
|
||||||
/* Genode includes */
|
/* Genode includes */
|
||||||
#include <util/string.h>
|
#include <util/string.h>
|
||||||
@ -42,7 +42,7 @@ namespace Wm { class Main;
|
|||||||
|
|
||||||
namespace Wm {
|
namespace Wm {
|
||||||
|
|
||||||
struct Decorator_nitpicker_session;
|
struct Decorator_gui_session;
|
||||||
struct Decorator_content_callback;
|
struct Decorator_content_callback;
|
||||||
struct Decorator_content_registry;
|
struct Decorator_content_registry;
|
||||||
}
|
}
|
||||||
@ -52,7 +52,7 @@ struct Wm::Decorator_content_callback : Interface
|
|||||||
{
|
{
|
||||||
virtual void content_geometry(Window_registry::Id win_id, Rect rect) = 0;
|
virtual void content_geometry(Window_registry::Id win_id, Rect rect) = 0;
|
||||||
|
|
||||||
virtual Nitpicker::View_capability content_view(Window_registry::Id win_id) = 0;
|
virtual Gui::View_capability content_view(Window_registry::Id win_id) = 0;
|
||||||
|
|
||||||
virtual void update_content_child_views(Window_registry::Id win_id) = 0;
|
virtual void update_content_child_views(Window_registry::Id win_id) = 0;
|
||||||
};
|
};
|
||||||
@ -69,13 +69,14 @@ class Wm::Decorator_content_registry
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
|
using View_handle = Gui::Session::View_handle;
|
||||||
|
|
||||||
struct Entry : List<Entry>::Element
|
struct Entry : List<Entry>::Element
|
||||||
{
|
{
|
||||||
Nitpicker::Session::View_handle const decorator_view_handle;
|
View_handle const decorator_view_handle;
|
||||||
Window_registry::Id const win_id;
|
Window_registry::Id const win_id;
|
||||||
|
|
||||||
Entry(Nitpicker::Session::View_handle decorator_view_handle,
|
Entry(View_handle decorator_view_handle, Window_registry::Id win_id)
|
||||||
Window_registry::Id win_id)
|
|
||||||
:
|
:
|
||||||
decorator_view_handle(decorator_view_handle),
|
decorator_view_handle(decorator_view_handle),
|
||||||
win_id(win_id)
|
win_id(win_id)
|
||||||
@ -85,7 +86,7 @@ class Wm::Decorator_content_registry
|
|||||||
List<Entry> _list { };
|
List<Entry> _list { };
|
||||||
Allocator &_entry_alloc;
|
Allocator &_entry_alloc;
|
||||||
|
|
||||||
Entry const &_lookup(Nitpicker::Session::View_handle view_handle) const
|
Entry const &_lookup(View_handle view_handle) const
|
||||||
{
|
{
|
||||||
for (Entry const *e = _list.first(); e; e = e->next()) {
|
for (Entry const *e = _list.first(); e; e = e->next()) {
|
||||||
if (e->decorator_view_handle == view_handle)
|
if (e->decorator_view_handle == view_handle)
|
||||||
@ -114,8 +115,7 @@ class Wm::Decorator_content_registry
|
|||||||
_remove(*e);
|
_remove(*e);
|
||||||
}
|
}
|
||||||
|
|
||||||
void insert(Nitpicker::Session::View_handle decorator_view_handle,
|
void insert(View_handle decorator_view_handle, Window_registry::Id win_id)
|
||||||
Window_registry::Id win_id)
|
|
||||||
{
|
{
|
||||||
Entry *e = new (_entry_alloc) Entry(decorator_view_handle, win_id);
|
Entry *e = new (_entry_alloc) Entry(decorator_view_handle, win_id);
|
||||||
_list.insert(e);
|
_list.insert(e);
|
||||||
@ -126,12 +126,12 @@ class Wm::Decorator_content_registry
|
|||||||
*
|
*
|
||||||
* \throw Lookup_failed
|
* \throw Lookup_failed
|
||||||
*/
|
*/
|
||||||
Window_registry::Id lookup(Nitpicker::Session::View_handle view_handle) const
|
Window_registry::Id lookup(View_handle view_handle) const
|
||||||
{
|
{
|
||||||
return _lookup(view_handle).win_id;
|
return _lookup(view_handle).win_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool registered(Nitpicker::Session::View_handle view_handle) const
|
bool registered(View_handle view_handle) const
|
||||||
{
|
{
|
||||||
try { lookup(view_handle); return true; } catch (...) { }
|
try { lookup(view_handle); return true; } catch (...) { }
|
||||||
return false;
|
return false;
|
||||||
@ -142,21 +142,22 @@ class Wm::Decorator_content_registry
|
|||||||
*
|
*
|
||||||
* \throw Lookup_failed
|
* \throw Lookup_failed
|
||||||
*/
|
*/
|
||||||
void remove(Nitpicker::Session::View_handle view_handle)
|
void remove(View_handle view_handle)
|
||||||
{
|
{
|
||||||
_remove(_lookup(view_handle));
|
_remove(_lookup(view_handle));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
struct Wm::Decorator_gui_session : Genode::Rpc_object<Gui::Session>,
|
||||||
private List<Decorator_nitpicker_session>::Element
|
private List<Decorator_gui_session>::Element
|
||||||
{
|
{
|
||||||
friend class List<Decorator_nitpicker_session>;
|
friend class List<Decorator_gui_session>;
|
||||||
using List<Decorator_nitpicker_session>::Element::next;
|
using List<Decorator_gui_session>::Element::next;
|
||||||
|
|
||||||
typedef Nitpicker::View_capability View_capability;
|
using View_capability = Gui::View_capability;
|
||||||
typedef Nitpicker::Session::View_handle View_handle;
|
using View_handle = Gui::Session::View_handle;
|
||||||
|
using Command_buffer = Gui::Session::Command_buffer;
|
||||||
|
|
||||||
Genode::Env &_env;
|
Genode::Env &_env;
|
||||||
|
|
||||||
@ -164,12 +165,10 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
|
|
||||||
Genode::Ram_allocator &_ram;
|
Genode::Ram_allocator &_ram;
|
||||||
|
|
||||||
Nitpicker::Connection _nitpicker_session { _env, "decorator" };
|
Gui::Connection _gui_session { _env, "decorator" };
|
||||||
|
|
||||||
Genode::Signal_context_capability _mode_sigh { };
|
Genode::Signal_context_capability _mode_sigh { };
|
||||||
|
|
||||||
typedef Nitpicker::Session::Command_buffer Command_buffer;
|
|
||||||
|
|
||||||
Attached_ram_dataspace _command_ds { _ram, _env.rm(), sizeof(Command_buffer) };
|
Attached_ram_dataspace _command_ds { _ram, _env.rm(), sizeof(Command_buffer) };
|
||||||
|
|
||||||
Command_buffer &_command_buffer = *_command_ds.local_addr<Command_buffer>();
|
Command_buffer &_command_buffer = *_command_ds.local_addr<Command_buffer>();
|
||||||
@ -191,26 +190,26 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
|
|
||||||
Allocator &_md_alloc;
|
Allocator &_md_alloc;
|
||||||
|
|
||||||
/* Nitpicker::Connection requires a valid input session */
|
/* Gui::Connection requires a valid input session */
|
||||||
Input::Session_component _dummy_input_component { _env, _env.ram() };
|
Input::Session_component _dummy_input_component { _env, _env.ram() };
|
||||||
Input::Session_capability _dummy_input_component_cap =
|
Input::Session_capability _dummy_input_component_cap =
|
||||||
_env.ep().manage(_dummy_input_component);
|
_env.ep().manage(_dummy_input_component);
|
||||||
|
|
||||||
Signal_handler<Decorator_nitpicker_session>
|
Signal_handler<Decorator_gui_session>
|
||||||
_input_handler { _env.ep(), *this, &Decorator_nitpicker_session::_handle_input };
|
_input_handler { _env.ep(), *this, &Decorator_gui_session::_handle_input };
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor
|
* Constructor
|
||||||
*
|
*
|
||||||
* \param ep entrypoint used for dispatching signals
|
* \param ep entrypoint used for dispatching signals
|
||||||
*/
|
*/
|
||||||
Decorator_nitpicker_session(Genode::Env &env,
|
Decorator_gui_session(Genode::Env &env,
|
||||||
Genode::Ram_allocator &ram,
|
Genode::Ram_allocator &ram,
|
||||||
Allocator &md_alloc,
|
Allocator &md_alloc,
|
||||||
Reporter &pointer_reporter,
|
Reporter &pointer_reporter,
|
||||||
Last_motion &last_motion,
|
Last_motion &last_motion,
|
||||||
Input::Session_component &window_layouter_input,
|
Input::Session_component &window_layouter_input,
|
||||||
Decorator_content_callback &content_callback)
|
Decorator_content_callback &content_callback)
|
||||||
:
|
:
|
||||||
_env(env),
|
_env(env),
|
||||||
_ram(ram),
|
_ram(ram),
|
||||||
@ -220,10 +219,10 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
_content_callback(content_callback),
|
_content_callback(content_callback),
|
||||||
_md_alloc(md_alloc)
|
_md_alloc(md_alloc)
|
||||||
{
|
{
|
||||||
_nitpicker_session.input()->sigh(_input_handler);
|
_gui_session.input()->sigh(_input_handler);
|
||||||
}
|
}
|
||||||
|
|
||||||
~Decorator_nitpicker_session()
|
~Decorator_gui_session()
|
||||||
{
|
{
|
||||||
_env.ep().dissolve(_dummy_input_component);
|
_env.ep().dissolve(_dummy_input_component);
|
||||||
}
|
}
|
||||||
@ -238,8 +237,8 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
while (_nitpicker_session.input()->pending())
|
while (_gui_session.input()->pending())
|
||||||
_nitpicker_session.input()->for_each_event([&] (Input::Event const &ev) {
|
_gui_session.input()->for_each_event([&] (Input::Event const &ev) {
|
||||||
|
|
||||||
if (ev.press()) _key_cnt++;
|
if (ev.press()) _key_cnt++;
|
||||||
|
|
||||||
@ -325,14 +324,13 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
* Replace content view originally created by the decorator
|
* Replace content view originally created by the decorator
|
||||||
* by view that shows the real window content.
|
* by view that shows the real window content.
|
||||||
*/
|
*/
|
||||||
Nitpicker::View_capability view_cap =
|
View_capability view_cap = _content_callback.content_view(win_id);
|
||||||
_content_callback.content_view(win_id);
|
|
||||||
|
|
||||||
_nitpicker_session.destroy_view(view_handle);
|
_gui_session.destroy_view(view_handle);
|
||||||
_nitpicker_session.view_handle(view_cap, view_handle);
|
_gui_session.view_handle(view_cap, view_handle);
|
||||||
|
|
||||||
_nitpicker_session.enqueue(cmd);
|
_gui_session.enqueue(cmd);
|
||||||
_nitpicker_session.execute();
|
_gui_session.execute();
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Now that the physical content view exists, it is time
|
* Now that the physical content view exists, it is time
|
||||||
@ -342,7 +340,7 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
|
|
||||||
} catch (Decorator_content_registry::Lookup_failed) {
|
} catch (Decorator_content_registry::Lookup_failed) {
|
||||||
|
|
||||||
_nitpicker_session.enqueue(cmd);
|
_gui_session.enqueue(cmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
@ -353,8 +351,8 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* If the content view changes position, propagate the new
|
* If the content view changes position, propagate the new
|
||||||
* position to the nitpicker service to properly transform
|
* position to the GUI service to properly transform absolute
|
||||||
* absolute input coordinates.
|
* input coordinates.
|
||||||
*/
|
*/
|
||||||
Window_registry::Id win_id = _content_registry.lookup(cmd.geometry.view);
|
Window_registry::Id win_id = _content_registry.lookup(cmd.geometry.view);
|
||||||
|
|
||||||
@ -363,7 +361,7 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
catch (Decorator_content_registry::Lookup_failed) { }
|
catch (Decorator_content_registry::Lookup_failed) { }
|
||||||
|
|
||||||
/* forward command */
|
/* forward command */
|
||||||
_nitpicker_session.enqueue(cmd);
|
_gui_session.enqueue(cmd);
|
||||||
return;
|
return;
|
||||||
|
|
||||||
case Command::OP_OFFSET:
|
case Command::OP_OFFSET:
|
||||||
@ -377,14 +375,14 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
_content_registry.lookup(cmd.geometry.view);
|
_content_registry.lookup(cmd.geometry.view);
|
||||||
}
|
}
|
||||||
catch (Decorator_content_registry::Lookup_failed) {
|
catch (Decorator_content_registry::Lookup_failed) {
|
||||||
_nitpicker_session.enqueue(cmd);
|
_gui_session.enqueue(cmd);
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
|
|
||||||
case Command::OP_BACKGROUND:
|
case Command::OP_BACKGROUND:
|
||||||
case Command::OP_NOP:
|
case Command::OP_NOP:
|
||||||
|
|
||||||
_nitpicker_session.enqueue(cmd);
|
_gui_session.enqueue(cmd);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -392,17 +390,17 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
void upgrade(const char *args)
|
void upgrade(const char *args)
|
||||||
{
|
{
|
||||||
size_t const ram_quota = Arg_string::find_arg(args, "ram_quota").ulong_value(0);
|
size_t const ram_quota = Arg_string::find_arg(args, "ram_quota").ulong_value(0);
|
||||||
_nitpicker_session.upgrade_ram(ram_quota);
|
_gui_session.upgrade_ram(ram_quota);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*********************************
|
/***************************
|
||||||
** Nitpicker session interface **
|
** GUI session interface **
|
||||||
*********************************/
|
***************************/
|
||||||
|
|
||||||
Framebuffer::Session_capability framebuffer_session() override
|
Framebuffer::Session_capability framebuffer_session() override
|
||||||
{
|
{
|
||||||
return _nitpicker_session.framebuffer_session();
|
return _gui_session.framebuffer_session();
|
||||||
}
|
}
|
||||||
|
|
||||||
Input::Session_capability input_session() override
|
Input::Session_capability input_session() override
|
||||||
@ -416,7 +414,7 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
|
|
||||||
View_handle create_view(View_handle parent) override
|
View_handle create_view(View_handle parent) override
|
||||||
{
|
{
|
||||||
return _nitpicker_session.create_view(parent);
|
return _gui_session.create_view(parent);
|
||||||
}
|
}
|
||||||
|
|
||||||
void destroy_view(View_handle view) override
|
void destroy_view(View_handle view) override
|
||||||
@ -425,28 +423,28 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
* Reset view geometry when destroying a content view
|
* Reset view geometry when destroying a content view
|
||||||
*/
|
*/
|
||||||
if (_content_registry.registered(view)) {
|
if (_content_registry.registered(view)) {
|
||||||
Nitpicker::Rect rect(Nitpicker::Point(0, 0), Nitpicker::Area(0, 0));
|
Gui::Rect rect(Gui::Point(0, 0), Gui::Area(0, 0));
|
||||||
_nitpicker_session.enqueue<Nitpicker::Session::Command::Geometry>(view, rect);
|
_gui_session.enqueue<Gui::Session::Command::Geometry>(view, rect);
|
||||||
_nitpicker_session.execute();
|
_gui_session.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
_nitpicker_session.destroy_view(view);
|
_gui_session.destroy_view(view);
|
||||||
}
|
}
|
||||||
|
|
||||||
View_handle view_handle(View_capability view_cap, View_handle handle) override
|
View_handle view_handle(View_capability view_cap, View_handle handle) override
|
||||||
{
|
{
|
||||||
return _nitpicker_session.view_handle(view_cap, handle);
|
return _gui_session.view_handle(view_cap, handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
View_capability view_capability(View_handle view) override
|
View_capability view_capability(View_handle view) override
|
||||||
{
|
{
|
||||||
return _nitpicker_session.view_capability(view);
|
return _gui_session.view_capability(view);
|
||||||
}
|
}
|
||||||
|
|
||||||
void release_view_handle(View_handle view) override
|
void release_view_handle(View_handle view) override
|
||||||
{
|
{
|
||||||
/* XXX dealloc View_ptr */
|
/* XXX dealloc View_ptr */
|
||||||
_nitpicker_session.release_view_handle(view);
|
_gui_session.release_view_handle(view);
|
||||||
}
|
}
|
||||||
|
|
||||||
Genode::Dataspace_capability command_dataspace() override
|
Genode::Dataspace_capability command_dataspace() override
|
||||||
@ -464,12 +462,12 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
Genode::warning("unhandled exception while processing command from decorator");
|
Genode::warning("unhandled exception while processing command from decorator");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
_nitpicker_session.execute();
|
_gui_session.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
Framebuffer::Mode mode() override
|
Framebuffer::Mode mode() override
|
||||||
{
|
{
|
||||||
return _nitpicker_session.mode();
|
return _gui_session.mode();
|
||||||
}
|
}
|
||||||
|
|
||||||
void mode_sigh(Genode::Signal_context_capability sigh) override
|
void mode_sigh(Genode::Signal_context_capability sigh) override
|
||||||
@ -479,18 +477,18 @@ struct Wm::Decorator_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>,
|
|||||||
* transitive delegations of the capability.
|
* transitive delegations of the capability.
|
||||||
*/
|
*/
|
||||||
_mode_sigh = sigh;
|
_mode_sigh = sigh;
|
||||||
_nitpicker_session.mode_sigh(sigh);
|
_gui_session.mode_sigh(sigh);
|
||||||
}
|
}
|
||||||
|
|
||||||
void buffer(Framebuffer::Mode mode, bool use_alpha) override
|
void buffer(Framebuffer::Mode mode, bool use_alpha) override
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* See comment in 'Wm::Nitpicker::Session_component::buffer'.
|
* See comment in 'Wm::Gui::Session_component::buffer'.
|
||||||
*/
|
*/
|
||||||
Nitpicker::Session_client(_env.rm(), _nitpicker_session.cap()).buffer(mode, use_alpha);
|
Gui::Session_client(_env.rm(), _gui_session.cap()).buffer(mode, use_alpha);
|
||||||
}
|
}
|
||||||
|
|
||||||
void focus(Genode::Capability<Nitpicker::Session>) override { }
|
void focus(Genode::Capability<Gui::Session>) override { }
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* _DECORATOR_NITPICKER_H_ */
|
#endif /* _DECORATOR_GUI_H_ */
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Pass-through nitpicker service announced to the outside world
|
* \brief Pass-through GUI service announced to the outside world
|
||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
* \date 2015-09-29
|
* \date 2015-09-29
|
||||||
*/
|
*/
|
||||||
@ -11,29 +11,29 @@
|
|||||||
* under the terms of the GNU Affero General Public License version 3.
|
* under the terms of the GNU Affero General Public License version 3.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _DIRECT_NITPICKER_H_
|
#ifndef _DIRECT_GUI_H_
|
||||||
#define _DIRECT_NITPICKER_H_
|
#define _DIRECT_GUI_H_
|
||||||
|
|
||||||
/* Genode includes */
|
/* Genode includes */
|
||||||
#include <os/session_policy.h>
|
#include <os/session_policy.h>
|
||||||
#include <gui_session/connection.h>
|
#include <gui_session/connection.h>
|
||||||
|
|
||||||
namespace Wm { class Direct_nitpicker_session; }
|
namespace Wm { class Direct_gui_session; }
|
||||||
|
|
||||||
|
|
||||||
class Wm::Direct_nitpicker_session : public Genode::Rpc_object<Nitpicker::Session>
|
class Wm::Direct_gui_session : public Genode::Rpc_object<Gui::Session>
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
Genode::Session_label _session_label;
|
Genode::Session_label _session_label;
|
||||||
Nitpicker::Connection _session;
|
Gui::Connection _session;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor
|
* Constructor
|
||||||
*/
|
*/
|
||||||
Direct_nitpicker_session(Genode::Env &env, Genode::Session_label const &session_label)
|
Direct_gui_session(Genode::Env &env, Genode::Session_label const &session_label)
|
||||||
:
|
:
|
||||||
_session_label(session_label),
|
_session_label(session_label),
|
||||||
_session(env, _session_label.string())
|
_session(env, _session_label.string())
|
||||||
@ -46,9 +46,9 @@ class Wm::Direct_nitpicker_session : public Genode::Rpc_object<Nitpicker::Sessio
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*********************************
|
/***************************
|
||||||
** Nitpicker session interface **
|
** GUI session interface **
|
||||||
*********************************/
|
***************************/
|
||||||
|
|
||||||
Framebuffer::Session_capability framebuffer_session() override
|
Framebuffer::Session_capability framebuffer_session() override
|
||||||
{
|
{
|
||||||
@ -70,12 +70,12 @@ class Wm::Direct_nitpicker_session : public Genode::Rpc_object<Nitpicker::Sessio
|
|||||||
_session.destroy_view(view);
|
_session.destroy_view(view);
|
||||||
}
|
}
|
||||||
|
|
||||||
View_handle view_handle(Nitpicker::View_capability view_cap, View_handle handle) override
|
View_handle view_handle(Gui::View_capability view_cap, View_handle handle) override
|
||||||
{
|
{
|
||||||
return _session.view_handle(view_cap, handle);
|
return _session.view_handle(view_cap, handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
Nitpicker::View_capability view_capability(View_handle view) override
|
Gui::View_capability view_capability(View_handle view) override
|
||||||
{
|
{
|
||||||
return _session.view_capability(view);
|
return _session.view_capability(view);
|
||||||
}
|
}
|
||||||
@ -110,10 +110,10 @@ class Wm::Direct_nitpicker_session : public Genode::Rpc_object<Nitpicker::Sessio
|
|||||||
_session.buffer(mode, use_alpha);
|
_session.buffer(mode, use_alpha);
|
||||||
}
|
}
|
||||||
|
|
||||||
void focus(Genode::Capability<Nitpicker::Session> session) override
|
void focus(Genode::Capability<Gui::Session> session) override
|
||||||
{
|
{
|
||||||
_session.focus(session);
|
_session.focus(session);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* _DIRECT_NITPICKER_H_ */
|
#endif /* _DIRECT_GUI_H_ */
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Virtualized nitpicker service announced to the outside world
|
* \brief Virtualized GUI service announced to the outside world
|
||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
* \date 2014-02-14
|
* \date 2014-02-14
|
||||||
*/
|
*/
|
||||||
@ -11,8 +11,8 @@
|
|||||||
* under the terms of the GNU Affero General Public License version 3.
|
* under the terms of the GNU Affero General Public License version 3.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _NITPICKER_H_
|
#ifndef _GUI_H_
|
||||||
#define _NITPICKER_H_
|
#define _GUI_H_
|
||||||
|
|
||||||
/* Genode includes */
|
/* Genode includes */
|
||||||
#include <util/list.h>
|
#include <util/list.h>
|
||||||
@ -29,9 +29,9 @@
|
|||||||
|
|
||||||
/* local includes */
|
/* local includes */
|
||||||
#include <window_registry.h>
|
#include <window_registry.h>
|
||||||
#include <decorator_nitpicker.h>
|
#include <decorator_gui.h>
|
||||||
#include <layouter_nitpicker.h>
|
#include <layouter_gui.h>
|
||||||
#include <direct_nitpicker.h>
|
#include <direct_gui.h>
|
||||||
|
|
||||||
|
|
||||||
namespace Wm {
|
namespace Wm {
|
||||||
@ -53,9 +53,9 @@ namespace Wm {
|
|||||||
using Genode::Interface;
|
using Genode::Interface;
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace Wm { namespace Nitpicker {
|
namespace Wm { namespace Gui {
|
||||||
|
|
||||||
using namespace ::Nitpicker;
|
using namespace ::Gui;
|
||||||
|
|
||||||
class Click_handler;
|
class Click_handler;
|
||||||
class Input_origin_changed_handler;
|
class Input_origin_changed_handler;
|
||||||
@ -82,7 +82,7 @@ namespace Wm { namespace Nitpicker {
|
|||||||
* clicks into an already focused window should be of no interest to the
|
* clicks into an already focused window should be of no interest to the
|
||||||
* layouter. So we hide them from the layouter.
|
* layouter. So we hide them from the layouter.
|
||||||
*/
|
*/
|
||||||
struct Wm::Nitpicker::Click_handler : Interface
|
struct Wm::Gui::Click_handler : Interface
|
||||||
{
|
{
|
||||||
virtual void handle_click(Point pos) = 0;
|
virtual void handle_click(Point pos) = 0;
|
||||||
virtual void handle_enter(Point pos) = 0;
|
virtual void handle_enter(Point pos) = 0;
|
||||||
@ -93,17 +93,17 @@ struct Wm::Nitpicker::Click_handler : Interface
|
|||||||
* Called by a top-level view to propagate the need to update the virtual
|
* Called by a top-level view to propagate the need to update the virtual
|
||||||
* pointer position of a client when the client's window moved.
|
* pointer position of a client when the client's window moved.
|
||||||
*/
|
*/
|
||||||
struct Wm::Nitpicker::Input_origin_changed_handler : Interface
|
struct Wm::Gui::Input_origin_changed_handler : Interface
|
||||||
{
|
{
|
||||||
virtual void input_origin_changed() = 0;
|
virtual void input_origin_changed() = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
struct Nitpicker::View : Genode::Interface { GENODE_RPC_INTERFACE(); };
|
struct Gui::View : Genode::Interface { GENODE_RPC_INTERFACE(); };
|
||||||
|
|
||||||
|
|
||||||
class Wm::Nitpicker::View : private Genode::Weak_object<View>,
|
class Wm::Gui::View : private Genode::Weak_object<View>,
|
||||||
public Genode::Rpc_object< ::Nitpicker::View>
|
public Genode::Rpc_object< ::Gui::View>
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
@ -112,35 +112,35 @@ class Wm::Nitpicker::View : private Genode::Weak_object<View>,
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
typedef Genode::String<100> Title;
|
using Title = Genode::String<100>;
|
||||||
typedef Nitpicker::Session::Command Command;
|
using Command = Gui::Session::Command;
|
||||||
typedef Nitpicker::Session::View_handle View_handle;
|
using View_handle = Gui::Session::View_handle;
|
||||||
|
|
||||||
Session_label _session_label;
|
Session_label _session_label;
|
||||||
Nitpicker::Session_client &_real_nitpicker;
|
Gui::Session_client &_real_gui;
|
||||||
View_handle _real_handle { };
|
View_handle _real_handle { };
|
||||||
Title _title { };
|
Title _title { };
|
||||||
Rect _geometry { };
|
Rect _geometry { };
|
||||||
Point _buffer_offset { };
|
Point _buffer_offset { };
|
||||||
Weak_ptr<View> _neighbor_ptr { };
|
Weak_ptr<View> _neighbor_ptr { };
|
||||||
bool _neighbor_behind { };
|
bool _neighbor_behind { };
|
||||||
bool _has_alpha;
|
bool _has_alpha;
|
||||||
|
|
||||||
View(Nitpicker::Session_client &real_nitpicker,
|
View(Gui::Session_client &real_gui,
|
||||||
Session_label const &session_label,
|
Session_label const &session_label,
|
||||||
bool has_alpha)
|
bool has_alpha)
|
||||||
:
|
:
|
||||||
_session_label(session_label), _real_nitpicker(real_nitpicker),
|
_session_label(session_label), _real_gui(real_gui),
|
||||||
_has_alpha(has_alpha)
|
_has_alpha(has_alpha)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Propagate cached view geometry to the physical nitpicker view
|
* Propagate cached view geometry to the physical GUI view
|
||||||
*/
|
*/
|
||||||
virtual void _propagate_view_geometry() = 0;
|
virtual void _propagate_view_geometry() = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Apply cached view state to the physical nitpicker view
|
* Apply cached view state to the physical GUI view
|
||||||
*/
|
*/
|
||||||
void _unsynchronized_apply_view_config(Locked_ptr<View> &neighbor)
|
void _unsynchronized_apply_view_config(Locked_ptr<View> &neighbor)
|
||||||
{
|
{
|
||||||
@ -148,23 +148,23 @@ class Wm::Nitpicker::View : private Genode::Weak_object<View>,
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
_propagate_view_geometry();
|
_propagate_view_geometry();
|
||||||
_real_nitpicker.enqueue<Command::Offset>(_real_handle, _buffer_offset);
|
_real_gui.enqueue<Command::Offset>(_real_handle, _buffer_offset);
|
||||||
_real_nitpicker.enqueue<Command::Title> (_real_handle, _title.string());
|
_real_gui.enqueue<Command::Title> (_real_handle, _title.string());
|
||||||
|
|
||||||
View_handle real_neighbor_handle;
|
View_handle real_neighbor_handle;
|
||||||
|
|
||||||
if (neighbor.valid())
|
if (neighbor.valid())
|
||||||
real_neighbor_handle = _real_nitpicker.view_handle(neighbor->real_view_cap());
|
real_neighbor_handle = _real_gui.view_handle(neighbor->real_view_cap());
|
||||||
|
|
||||||
if (_neighbor_behind)
|
if (_neighbor_behind)
|
||||||
_real_nitpicker.enqueue<Command::To_front>(_real_handle, real_neighbor_handle);
|
_real_gui.enqueue<Command::To_front>(_real_handle, real_neighbor_handle);
|
||||||
else
|
else
|
||||||
_real_nitpicker.enqueue<Command::To_back>(_real_handle, real_neighbor_handle);
|
_real_gui.enqueue<Command::To_back>(_real_handle, real_neighbor_handle);
|
||||||
|
|
||||||
_real_nitpicker.execute();
|
_real_gui.execute();
|
||||||
|
|
||||||
if (real_neighbor_handle.valid())
|
if (real_neighbor_handle.valid())
|
||||||
_real_nitpicker.release_view_handle(real_neighbor_handle);
|
_real_gui.release_view_handle(real_neighbor_handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
void _apply_view_config()
|
void _apply_view_config()
|
||||||
@ -178,7 +178,7 @@ class Wm::Nitpicker::View : private Genode::Weak_object<View>,
|
|||||||
~View()
|
~View()
|
||||||
{
|
{
|
||||||
if (_real_handle.valid())
|
if (_real_handle.valid())
|
||||||
_real_nitpicker.destroy_view(_real_handle);
|
_real_gui.destroy_view(_real_handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
using Genode::Weak_object<View>::weak_ptr;
|
using Genode::Weak_object<View>::weak_ptr;
|
||||||
@ -193,11 +193,11 @@ class Wm::Nitpicker::View : private Genode::Weak_object<View>,
|
|||||||
_geometry = geometry;
|
_geometry = geometry;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Propagate new size to real nitpicker view but
|
* Propagate new size to real GUI view but
|
||||||
*/
|
*/
|
||||||
if (_real_handle.valid()) {
|
if (_real_handle.valid()) {
|
||||||
_propagate_view_geometry();
|
_propagate_view_geometry();
|
||||||
_real_nitpicker.execute();
|
_real_gui.execute();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -206,8 +206,8 @@ class Wm::Nitpicker::View : private Genode::Weak_object<View>,
|
|||||||
_title = Title(title);
|
_title = Title(title);
|
||||||
|
|
||||||
if (_real_handle.valid()) {
|
if (_real_handle.valid()) {
|
||||||
_real_nitpicker.enqueue<Command::Title>(_real_handle, title);
|
_real_gui.enqueue<Command::Title>(_real_handle, title);
|
||||||
_real_nitpicker.execute();
|
_real_gui.execute();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -219,7 +219,7 @@ class Wm::Nitpicker::View : private Genode::Weak_object<View>,
|
|||||||
|
|
||||||
View_capability real_view_cap()
|
View_capability real_view_cap()
|
||||||
{
|
{
|
||||||
return _real_nitpicker.view_capability(_real_handle);
|
return _real_gui.view_capability(_real_handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
void buffer_offset(Point buffer_offset)
|
void buffer_offset(Point buffer_offset)
|
||||||
@ -227,8 +227,8 @@ class Wm::Nitpicker::View : private Genode::Weak_object<View>,
|
|||||||
_buffer_offset = buffer_offset;
|
_buffer_offset = buffer_offset;
|
||||||
|
|
||||||
if (_real_handle.valid()) {
|
if (_real_handle.valid()) {
|
||||||
_real_nitpicker.enqueue<Command::Offset>(_real_handle, _buffer_offset);
|
_real_gui.enqueue<Command::Offset>(_real_handle, _buffer_offset);
|
||||||
_real_nitpicker.execute();
|
_real_gui.execute();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -236,8 +236,7 @@ class Wm::Nitpicker::View : private Genode::Weak_object<View>,
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class Wm::Nitpicker::Top_level_view : public View,
|
class Wm::Gui::Top_level_view : public View, private List<Top_level_view>::Element
|
||||||
private List<Top_level_view>::Element
|
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
@ -260,17 +259,17 @@ class Wm::Nitpicker::Top_level_view : public View,
|
|||||||
Title _window_title { };
|
Title _window_title { };
|
||||||
Session_label _session_label;
|
Session_label _session_label;
|
||||||
|
|
||||||
typedef Nitpicker::Session::Command Command;
|
using Command = Gui::Session::Command;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
Top_level_view(Nitpicker::Session_client &real_nitpicker,
|
Top_level_view(Gui::Session_client &real_gui,
|
||||||
Session_label const &session_label,
|
Session_label const &session_label,
|
||||||
bool has_alpha,
|
bool has_alpha,
|
||||||
Window_registry &window_registry,
|
Window_registry &window_registry,
|
||||||
Input_origin_changed_handler &input_origin_changed_handler)
|
Input_origin_changed_handler &input_origin_changed_handler)
|
||||||
:
|
:
|
||||||
View(real_nitpicker, session_label, has_alpha),
|
View(real_gui, session_label, has_alpha),
|
||||||
_window_registry(window_registry),
|
_window_registry(window_registry),
|
||||||
_input_origin_changed_handler(input_origin_changed_handler),
|
_input_origin_changed_handler(input_origin_changed_handler),
|
||||||
_session_label(session_label)
|
_session_label(session_label)
|
||||||
@ -347,16 +346,16 @@ class Wm::Nitpicker::Top_level_view : public View,
|
|||||||
if (!_real_handle.valid()) {
|
if (!_real_handle.valid()) {
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Create and configure physical nitpicker view.
|
* Create and configure physical GUI view.
|
||||||
*/
|
*/
|
||||||
_real_handle = _real_nitpicker.create_view();
|
_real_handle = _real_gui.create_view();
|
||||||
|
|
||||||
_real_nitpicker.enqueue<Command::Offset>(_real_handle, _buffer_offset);
|
_real_gui.enqueue<Command::Offset>(_real_handle, _buffer_offset);
|
||||||
_real_nitpicker.enqueue<Command::Title> (_real_handle, _title.string());
|
_real_gui.enqueue<Command::Title> (_real_handle, _title.string());
|
||||||
_real_nitpicker.execute();
|
_real_gui.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
return _real_nitpicker.view_capability(_real_handle);
|
return _real_gui.view_capability(_real_handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
void hidden(bool hidden) { _window_registry.hidden(_win_id, hidden); }
|
void hidden(bool hidden) { _window_registry.hidden(_win_id, hidden); }
|
||||||
@ -371,8 +370,7 @@ class Wm::Nitpicker::Top_level_view : public View,
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class Wm::Nitpicker::Child_view : public View,
|
class Wm::Gui::Child_view : public View, private List<Child_view>::Element
|
||||||
private List<Child_view>::Element
|
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
@ -382,12 +380,12 @@ class Wm::Nitpicker::Child_view : public View,
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
Child_view(Nitpicker::Session_client &real_nitpicker,
|
Child_view(Gui::Session_client &real_gui,
|
||||||
Session_label const &session_label,
|
Session_label const &session_label,
|
||||||
bool has_alpha,
|
bool has_alpha,
|
||||||
Weak_ptr<View> parent)
|
Weak_ptr<View> parent)
|
||||||
:
|
:
|
||||||
View(real_nitpicker, session_label, has_alpha), _parent(parent)
|
View(real_gui, session_label, has_alpha), _parent(parent)
|
||||||
{
|
{
|
||||||
try_to_init_real_view();
|
try_to_init_real_view();
|
||||||
}
|
}
|
||||||
@ -401,7 +399,7 @@ class Wm::Nitpicker::Child_view : public View,
|
|||||||
|
|
||||||
void _propagate_view_geometry() override
|
void _propagate_view_geometry() override
|
||||||
{
|
{
|
||||||
_real_nitpicker.enqueue<Command::Geometry>(_real_handle, _geometry);
|
_real_gui.enqueue<Command::Geometry>(_real_handle, _geometry);
|
||||||
}
|
}
|
||||||
|
|
||||||
void stack(Weak_ptr<View> neighbor_ptr, bool behind) override
|
void stack(Weak_ptr<View> neighbor_ptr, bool behind) override
|
||||||
@ -436,13 +434,13 @@ class Wm::Nitpicker::Child_view : public View,
|
|||||||
if (!parent.valid())
|
if (!parent.valid())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
View_handle parent_handle = _real_nitpicker.view_handle(parent->real_view_cap());
|
View_handle parent_handle = _real_gui.view_handle(parent->real_view_cap());
|
||||||
if (!parent_handle.valid())
|
if (!parent_handle.valid())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
_real_handle = _real_nitpicker.create_view(parent_handle);
|
_real_handle = _real_gui.create_view(parent_handle);
|
||||||
|
|
||||||
_real_nitpicker.release_view_handle(parent_handle);
|
_real_gui.release_view_handle(parent_handle);
|
||||||
|
|
||||||
if (_neighbor_ptr == _parent)
|
if (_neighbor_ptr == _parent)
|
||||||
_unsynchronized_apply_view_config(parent);
|
_unsynchronized_apply_view_config(parent);
|
||||||
@ -457,28 +455,28 @@ class Wm::Nitpicker::Child_view : public View,
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
struct Wm::Nitpicker::Session_control_fn : Interface
|
struct Wm::Gui::Session_control_fn : Interface
|
||||||
{
|
{
|
||||||
virtual void session_control(char const *selector, Session::Session_control) = 0;
|
virtual void session_control(char const *selector, Session::Session_control) = 0;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class Wm::Nitpicker::Session_component : public Rpc_object<Nitpicker::Session>,
|
class Wm::Gui::Session_component : public Rpc_object<Gui::Session>,
|
||||||
private List<Session_component>::Element,
|
private List<Session_component>::Element,
|
||||||
private Input_origin_changed_handler
|
private Input_origin_changed_handler
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
friend class List<Session_component>;
|
friend class List<Session_component>;
|
||||||
|
|
||||||
typedef Nitpicker::Session::View_handle View_handle;
|
using View_handle = Gui::Session::View_handle;
|
||||||
|
|
||||||
Genode::Env &_env;
|
Genode::Env &_env;
|
||||||
|
|
||||||
Session_label _session_label;
|
Session_label _session_label;
|
||||||
Genode::Ram_allocator &_ram;
|
Genode::Ram_allocator &_ram;
|
||||||
Nitpicker::Connection _session { _env, _session_label.string() };
|
Gui::Connection _session { _env, _session_label.string() };
|
||||||
|
|
||||||
Window_registry &_window_registry;
|
Window_registry &_window_registry;
|
||||||
Session_control_fn &_session_control_fn;
|
Session_control_fn &_session_control_fn;
|
||||||
@ -501,7 +499,7 @@ class Wm::Nitpicker::Session_component : public Rpc_object<Nitpicker::Session>,
|
|||||||
/*
|
/*
|
||||||
* Command buffer
|
* Command buffer
|
||||||
*/
|
*/
|
||||||
typedef Nitpicker::Session::Command_buffer Command_buffer;
|
using Command_buffer = Gui::Session::Command_buffer;
|
||||||
|
|
||||||
Attached_ram_dataspace _command_ds { _ram, _env.rm(), sizeof(Command_buffer) };
|
Attached_ram_dataspace _command_ds { _ram, _env.rm(), sizeof(Command_buffer) };
|
||||||
|
|
||||||
@ -518,8 +516,8 @@ class Wm::Nitpicker::Session_component : public Rpc_object<Nitpicker::Session>,
|
|||||||
/*
|
/*
|
||||||
* Input
|
* Input
|
||||||
*/
|
*/
|
||||||
Input::Session_client _nitpicker_input { _env.rm(), _session.input_session() };
|
Input::Session_client _gui_input { _env.rm(), _session.input_session() };
|
||||||
Attached_dataspace _nitpicker_input_ds { _env.rm(), _nitpicker_input.dataspace() };
|
Attached_dataspace _gui_input_ds { _env.rm(), _gui_input.dataspace() };
|
||||||
|
|
||||||
Signal_handler<Session_component> _input_handler {
|
Signal_handler<Session_component> _input_handler {
|
||||||
_env.ep(), *this, &Session_component::_handle_input };
|
_env.ep(), *this, &Session_component::_handle_input };
|
||||||
@ -569,13 +567,16 @@ class Wm::Nitpicker::Session_component : public Rpc_object<Nitpicker::Session>,
|
|||||||
Point const input_origin = _input_origin();
|
Point const input_origin = _input_origin();
|
||||||
|
|
||||||
Input::Event const * const events =
|
Input::Event const * const events =
|
||||||
_nitpicker_input_ds.local_addr<Input::Event>();
|
_gui_input_ds.local_addr<Input::Event>();
|
||||||
|
|
||||||
while (_nitpicker_input.pending()) {
|
while (_gui_input.pending()) {
|
||||||
|
|
||||||
size_t const num_events = _nitpicker_input.flush();
|
size_t const num_events = _gui_input.flush();
|
||||||
|
|
||||||
/* we trust nitpicker to return a valid number of events */
|
/*
|
||||||
|
* We trust the nitpicker GUI server to return a valid number
|
||||||
|
* of events.
|
||||||
|
*/
|
||||||
|
|
||||||
for (size_t i = 0; i < num_events; i++) {
|
for (size_t i = 0; i < num_events; i++) {
|
||||||
|
|
||||||
@ -788,7 +789,7 @@ class Wm::Nitpicker::Session_component : public Rpc_object<Nitpicker::Session>,
|
|||||||
_click_handler(click_handler),
|
_click_handler(click_handler),
|
||||||
_view_handle_registry(session_alloc)
|
_view_handle_registry(session_alloc)
|
||||||
{
|
{
|
||||||
_nitpicker_input.sigh(_input_handler);
|
_gui_input.sigh(_input_handler);
|
||||||
_input_session.event_queue().enabled(true);
|
_input_session.event_queue().enabled(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -886,14 +887,14 @@ class Wm::Nitpicker::Session_component : public Rpc_object<Nitpicker::Session>,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return session capability to real nitpicker session
|
* Return session capability to real GUI session
|
||||||
*/
|
*/
|
||||||
Capability<Session> session() { return _session.rpc_cap(); }
|
Capability<Session> session() { return _session.rpc_cap(); }
|
||||||
|
|
||||||
|
|
||||||
/*********************************
|
/***************************
|
||||||
** Nitpicker session interface **
|
** GUI session interface **
|
||||||
*********************************/
|
***************************/
|
||||||
|
|
||||||
Framebuffer::Session_capability framebuffer_session() override
|
Framebuffer::Session_capability framebuffer_session() override
|
||||||
{
|
{
|
||||||
@ -985,7 +986,7 @@ class Wm::Nitpicker::Session_component : public Rpc_object<Nitpicker::Session>,
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* If the first top-level view has a defined size, use it
|
* If the first top-level view has a defined size, use it
|
||||||
* as the size of the virtualized nitpicker session.
|
* as the size of the virtualized GUI session.
|
||||||
*/
|
*/
|
||||||
if (Top_level_view const *v = _top_level_views.first())
|
if (Top_level_view const *v = _top_level_views.first())
|
||||||
if (v->size().valid())
|
if (v->size().valid())
|
||||||
@ -1017,19 +1018,18 @@ class Wm::Nitpicker::Session_component : public Rpc_object<Nitpicker::Session>,
|
|||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* We must not perform the 'buffer' operation on the connection
|
* We must not perform the 'buffer' operation on the connection
|
||||||
* object because the 'Nitpicker::Connection::buffer'
|
* object because the 'Gui::Connection::buffer' implementation
|
||||||
* implementation implicitly performs upgrade operations.
|
* implicitly performs upgrade operations.
|
||||||
*
|
*
|
||||||
* Here, we merely want to forward the buffer RPC call to the
|
* Here, we merely want to forward the buffer RPC call to the
|
||||||
* wrapped nitpicker session. Otherwise, we would perform
|
* wrapped GUI session. Otherwise, we would perform session
|
||||||
* session upgrades initiated by the wm client's buffer
|
* upgrades initiated by the wm client's buffer operation twice.
|
||||||
* operation twice.
|
|
||||||
*/
|
*/
|
||||||
Nitpicker::Session_client(_env.rm(), _session.cap()).buffer(mode, has_alpha);
|
Gui::Session_client(_env.rm(), _session.cap()).buffer(mode, has_alpha);
|
||||||
_has_alpha = has_alpha;
|
_has_alpha = has_alpha;
|
||||||
}
|
}
|
||||||
|
|
||||||
void focus(Genode::Capability<Nitpicker::Session>) override { }
|
void focus(Genode::Capability<Gui::Session>) override { }
|
||||||
|
|
||||||
void session_control(Label suffix, Session_control operation) override
|
void session_control(Label suffix, Session_control operation) override
|
||||||
{
|
{
|
||||||
@ -1040,9 +1040,9 @@ class Wm::Nitpicker::Session_component : public Rpc_object<Nitpicker::Session>,
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session> >,
|
class Wm::Gui::Root : public Genode::Rpc_object<Genode::Typed_root<Session> >,
|
||||||
public Decorator_content_callback,
|
public Decorator_content_callback,
|
||||||
public Session_control_fn
|
public Session_control_fn
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
@ -1077,13 +1077,13 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
Input::Session_capability _window_layouter_input_cap { _env.ep().manage(_window_layouter_input) };
|
Input::Session_capability _window_layouter_input_cap { _env.ep().manage(_window_layouter_input) };
|
||||||
|
|
||||||
/* handler that forwards clicks into unfocused windows to the layouter */
|
/* handler that forwards clicks into unfocused windows to the layouter */
|
||||||
struct Click_handler : Nitpicker::Click_handler
|
struct Click_handler : Gui::Click_handler
|
||||||
{
|
{
|
||||||
Input::Session_component &window_layouter_input;
|
Input::Session_component &window_layouter_input;
|
||||||
Reporter &pointer_reporter;
|
Reporter &pointer_reporter;
|
||||||
Last_motion &last_motion;
|
Last_motion &last_motion;
|
||||||
|
|
||||||
void handle_enter(Nitpicker::Point pos) override
|
void handle_enter(Gui::Point pos) override
|
||||||
{
|
{
|
||||||
last_motion = LAST_MOTION_NITPICKER;
|
last_motion = LAST_MOTION_NITPICKER;
|
||||||
|
|
||||||
@ -1094,7 +1094,7 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
void handle_click(Nitpicker::Point pos) override
|
void handle_click(Gui::Point pos) override
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* Propagate clicked-at position to decorator such that it can
|
* Propagate clicked-at position to decorator such that it can
|
||||||
@ -1132,14 +1132,14 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
*/
|
*/
|
||||||
List<Session_component> _sessions { };
|
List<Session_component> _sessions { };
|
||||||
|
|
||||||
Layouter_nitpicker_session *_layouter_session = nullptr;
|
Layouter_gui_session *_layouter_session = nullptr;
|
||||||
|
|
||||||
List<Decorator_nitpicker_session> _decorator_sessions { };
|
List<Decorator_gui_session> _decorator_sessions { };
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Nitpicker session used to perform session-control operations
|
* GUI session used to perform session-control operations
|
||||||
*/
|
*/
|
||||||
Nitpicker::Session &_focus_nitpicker_session;
|
Gui::Session &_focus_gui_session;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
@ -1150,14 +1150,14 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
Window_registry &window_registry, Allocator &md_alloc,
|
Window_registry &window_registry, Allocator &md_alloc,
|
||||||
Genode::Ram_allocator &ram,
|
Genode::Ram_allocator &ram,
|
||||||
Reporter &pointer_reporter, Reporter &focus_request_reporter,
|
Reporter &pointer_reporter, Reporter &focus_request_reporter,
|
||||||
Nitpicker::Session &focus_nitpicker_session)
|
Gui::Session &focus_gui_session)
|
||||||
:
|
:
|
||||||
_env(env),
|
_env(env),
|
||||||
_md_alloc(md_alloc), _ram(ram),
|
_md_alloc(md_alloc), _ram(ram),
|
||||||
_pointer_reporter(pointer_reporter),
|
_pointer_reporter(pointer_reporter),
|
||||||
_focus_request_reporter(focus_request_reporter),
|
_focus_request_reporter(focus_request_reporter),
|
||||||
_window_registry(window_registry),
|
_window_registry(window_registry),
|
||||||
_focus_nitpicker_session(focus_nitpicker_session)
|
_focus_gui_session(focus_gui_session)
|
||||||
{
|
{
|
||||||
_window_layouter_input.event_queue().enabled(true);
|
_window_layouter_input.event_queue().enabled(true);
|
||||||
|
|
||||||
@ -1215,11 +1215,11 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
case ROLE_DECORATOR:
|
case ROLE_DECORATOR:
|
||||||
{
|
{
|
||||||
auto session = new (_md_alloc)
|
auto session = new (_md_alloc)
|
||||||
Decorator_nitpicker_session(_env, _ram, _md_alloc,
|
Decorator_gui_session(_env, _ram, _md_alloc,
|
||||||
_pointer_reporter,
|
_pointer_reporter,
|
||||||
_last_motion,
|
_last_motion,
|
||||||
_window_layouter_input,
|
_window_layouter_input,
|
||||||
*this);
|
*this);
|
||||||
_decorator_sessions.insert(session);
|
_decorator_sessions.insert(session);
|
||||||
return _env.ep().manage(*session);
|
return _env.ep().manage(*session);
|
||||||
}
|
}
|
||||||
@ -1227,15 +1227,15 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
case ROLE_LAYOUTER:
|
case ROLE_LAYOUTER:
|
||||||
{
|
{
|
||||||
_layouter_session = new (_md_alloc)
|
_layouter_session = new (_md_alloc)
|
||||||
Layouter_nitpicker_session(_env, _window_layouter_input_cap);
|
Layouter_gui_session(_env, _window_layouter_input_cap);
|
||||||
|
|
||||||
return _env.ep().manage(*_layouter_session);
|
return _env.ep().manage(*_layouter_session);
|
||||||
}
|
}
|
||||||
|
|
||||||
case ROLE_DIRECT:
|
case ROLE_DIRECT:
|
||||||
{
|
{
|
||||||
Direct_nitpicker_session *session = new (_md_alloc)
|
Direct_gui_session *session = new (_md_alloc)
|
||||||
Direct_nitpicker_session(_env, session_label);
|
Direct_gui_session(_env, session_label);
|
||||||
|
|
||||||
return _env.ep().manage(*session);
|
return _env.ep().manage(*session);
|
||||||
}
|
}
|
||||||
@ -1260,14 +1260,14 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
if (regular_session)
|
if (regular_session)
|
||||||
regular_session->upgrade(args.string());
|
regular_session->upgrade(args.string());
|
||||||
|
|
||||||
Decorator_nitpicker_session *decorator_session =
|
Decorator_gui_session *decorator_session =
|
||||||
dynamic_cast<Decorator_nitpicker_session *>(session);
|
dynamic_cast<Decorator_gui_session *>(session);
|
||||||
|
|
||||||
if (decorator_session)
|
if (decorator_session)
|
||||||
decorator_session->upgrade(args.string());
|
decorator_session->upgrade(args.string());
|
||||||
|
|
||||||
Direct_nitpicker_session *direct_session =
|
Direct_gui_session *direct_session =
|
||||||
dynamic_cast<Direct_nitpicker_session *>(session);
|
dynamic_cast<Direct_gui_session *>(session);
|
||||||
|
|
||||||
if (direct_session)
|
if (direct_session)
|
||||||
direct_session->upgrade(args.string());
|
direct_session->upgrade(args.string());
|
||||||
@ -1292,8 +1292,8 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
Direct_nitpicker_session *direct_session =
|
Direct_gui_session *direct_session =
|
||||||
ep.apply(session_cap, [this] (Direct_nitpicker_session *session) {
|
ep.apply(session_cap, [this] (Direct_gui_session *session) {
|
||||||
if (session) {
|
if (session) {
|
||||||
_env.ep().dissolve(*session);
|
_env.ep().dissolve(*session);
|
||||||
}
|
}
|
||||||
@ -1304,8 +1304,8 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
Decorator_nitpicker_session *decorator_session =
|
Decorator_gui_session *decorator_session =
|
||||||
ep.apply(session_cap, [this] (Decorator_nitpicker_session *session) {
|
ep.apply(session_cap, [this] (Decorator_gui_session *session) {
|
||||||
if (session) {
|
if (session) {
|
||||||
_decorator_sessions.remove(session);
|
_decorator_sessions.remove(session);
|
||||||
_env.ep().dissolve(*session);
|
_env.ep().dissolve(*session);
|
||||||
@ -1317,7 +1317,7 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto layouter_lambda = [this] (Layouter_nitpicker_session *session) {
|
auto layouter_lambda = [this] (Layouter_gui_session *session) {
|
||||||
this->_env.ep().dissolve(*_layouter_session);
|
this->_env.ep().dissolve(*_layouter_session);
|
||||||
_layouter_session = nullptr;
|
_layouter_session = nullptr;
|
||||||
return session;
|
return session;
|
||||||
@ -1366,11 +1366,10 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
_window_registry.flush();
|
_window_registry.flush();
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Forward the request to the nitpicker control session to apply
|
* Forward the request to the GUI server's control session to apply
|
||||||
* the show/hide/to-front operations on "direct" nitpicker
|
* the show/hide/to-front operations on "direct" GUI sessions.
|
||||||
* sessions.
|
|
||||||
*/
|
*/
|
||||||
_focus_nitpicker_session.session_control(selector, operation);
|
_focus_gui_session.session_control(selector, operation);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1423,7 +1422,7 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
s->content_geometry(id, rect);
|
s->content_geometry(id, rect);
|
||||||
}
|
}
|
||||||
|
|
||||||
Capability<Session> lookup_nitpicker_session(unsigned win_id)
|
Capability<Session> lookup_gui_session(unsigned win_id)
|
||||||
{
|
{
|
||||||
for (Session_component *s = _sessions.first(); s; s = s->next())
|
for (Session_component *s = _sessions.first(); s; s = s->next())
|
||||||
if (s->has_win_id(win_id))
|
if (s->has_win_id(win_id))
|
||||||
@ -1440,4 +1439,4 @@ class Wm::Nitpicker::Root : public Genode::Rpc_object<Genode::Typed_root<Session
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* _NITPICKER_H_ */
|
#endif /* _GUI_H_ */
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Nitpicker service provided to layouter
|
* \brief GUI service provided to layouter
|
||||||
* \author Norman Feske
|
* \author Norman Feske
|
||||||
* \date 2015-06-06
|
* \date 2015-06-06
|
||||||
*/
|
*/
|
||||||
@ -11,47 +11,46 @@
|
|||||||
* under the terms of the GNU Affero General Public License version 3.
|
* under the terms of the GNU Affero General Public License version 3.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _LAYOUTER_NITPICKER_H_
|
#ifndef _LAYOUTER_GUI_H_
|
||||||
#define _LAYOUTER_NITPICKER_H_
|
#define _LAYOUTER_GUI_H_
|
||||||
|
|
||||||
/* Genode includes */
|
/* Genode includes */
|
||||||
#include <input/component.h>
|
#include <input/component.h>
|
||||||
#include <gui_session/connection.h>
|
#include <gui_session/connection.h>
|
||||||
|
|
||||||
namespace Wm {
|
namespace Wm {
|
||||||
struct Layouter_nitpicker_session;
|
struct Layouter_gui_session;
|
||||||
struct Layouter_nitpicker_service;
|
struct Layouter_gui_service;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
struct Wm::Layouter_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>
|
struct Wm::Layouter_gui_session : Genode::Rpc_object<Gui::Session>
|
||||||
{
|
{
|
||||||
typedef Nitpicker::View_capability View_capability;
|
using View_capability = Gui::View_capability;
|
||||||
typedef Nitpicker::Session::View_handle View_handle;
|
using View_handle = Gui::Session::View_handle;
|
||||||
|
|
||||||
Input::Session_capability _input_session_cap;
|
Input::Session_capability _input_session_cap;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Nitpicker session solely used to supply the nitpicker mode to the
|
* GUI session solely used to supply the GUI mode to the layouter
|
||||||
* layouter
|
|
||||||
*/
|
*/
|
||||||
Nitpicker::Connection _mode_sigh_nitpicker;
|
Gui::Connection _mode_sigh_gui;
|
||||||
|
|
||||||
Genode::Signal_context_capability _mode_sigh { };
|
Genode::Signal_context_capability _mode_sigh { };
|
||||||
|
|
||||||
Attached_ram_dataspace _command_ds;
|
Attached_ram_dataspace _command_ds;
|
||||||
|
|
||||||
Layouter_nitpicker_session(Genode::Env &env,
|
Layouter_gui_session(Genode::Env &env,
|
||||||
Input::Session_capability input_session_cap)
|
Input::Session_capability input_session_cap)
|
||||||
:
|
:
|
||||||
_input_session_cap(input_session_cap),
|
_input_session_cap(input_session_cap),
|
||||||
_mode_sigh_nitpicker(env), _command_ds(env.ram(), env.rm(), 4096)
|
_mode_sigh_gui(env), _command_ds(env.ram(), env.rm(), 4096)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
|
|
||||||
/*********************************
|
/***************************
|
||||||
** Nitpicker session interface **
|
** GUI session interface **
|
||||||
*********************************/
|
***************************/
|
||||||
|
|
||||||
Framebuffer::Session_capability framebuffer_session() override
|
Framebuffer::Session_capability framebuffer_session() override
|
||||||
{
|
{
|
||||||
@ -86,7 +85,7 @@ struct Wm::Layouter_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>
|
|||||||
|
|
||||||
void execute() override { }
|
void execute() override { }
|
||||||
|
|
||||||
Framebuffer::Mode mode() override { return _mode_sigh_nitpicker.mode(); }
|
Framebuffer::Mode mode() override { return _mode_sigh_gui.mode(); }
|
||||||
|
|
||||||
void mode_sigh(Genode::Signal_context_capability sigh) override
|
void mode_sigh(Genode::Signal_context_capability sigh) override
|
||||||
{
|
{
|
||||||
@ -96,12 +95,12 @@ struct Wm::Layouter_nitpicker_session : Genode::Rpc_object<Nitpicker::Session>
|
|||||||
*/
|
*/
|
||||||
_mode_sigh = sigh;
|
_mode_sigh = sigh;
|
||||||
|
|
||||||
_mode_sigh_nitpicker.mode_sigh(sigh);
|
_mode_sigh_gui.mode_sigh(sigh);
|
||||||
}
|
}
|
||||||
|
|
||||||
void buffer(Framebuffer::Mode, bool) override { }
|
void buffer(Framebuffer::Mode, bool) override { }
|
||||||
|
|
||||||
void focus(Genode::Capability<Nitpicker::Session>) override { }
|
void focus(Genode::Capability<Gui::Session>) override { }
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* _LAYOUTER_NITPICKER_H_ */
|
#endif /* _LAYOUTER_GUI_H_ */
|
@ -21,7 +21,7 @@
|
|||||||
#include <util/xml_node.h>
|
#include <util/xml_node.h>
|
||||||
|
|
||||||
/* local includes */
|
/* local includes */
|
||||||
#include <nitpicker.h>
|
#include <gui.h>
|
||||||
#include <report_forwarder.h>
|
#include <report_forwarder.h>
|
||||||
#include <rom_forwarder.h>
|
#include <rom_forwarder.h>
|
||||||
|
|
||||||
@ -60,12 +60,11 @@ struct Wm::Main
|
|||||||
|
|
||||||
Window_registry window_registry { heap, window_list_reporter };
|
Window_registry window_registry { heap, window_list_reporter };
|
||||||
|
|
||||||
Nitpicker::Connection focus_nitpicker_session { env };
|
Gui::Connection focus_gui_session { env };
|
||||||
|
|
||||||
Nitpicker::Root nitpicker_root { env, window_registry,
|
Gui::Root gui_root { env, window_registry, heap, env.ram(),
|
||||||
heap, env.ram(),
|
pointer_reporter, focus_request_reporter,
|
||||||
pointer_reporter, focus_request_reporter,
|
focus_gui_session };
|
||||||
focus_nitpicker_session };
|
|
||||||
|
|
||||||
void handle_focus_update()
|
void handle_focus_update()
|
||||||
{
|
{
|
||||||
@ -80,10 +79,10 @@ struct Wm::Main
|
|||||||
.attribute("id").value(win_id);
|
.attribute("id").value(win_id);
|
||||||
|
|
||||||
if (win_id) {
|
if (win_id) {
|
||||||
Nitpicker::Session_capability session_cap =
|
Gui::Session_capability session_cap =
|
||||||
nitpicker_root.lookup_nitpicker_session(win_id);
|
gui_root.lookup_gui_session(win_id);
|
||||||
|
|
||||||
focus_nitpicker_session.focus(session_cap);
|
focus_gui_session.focus(session_cap);
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch (...) { }
|
} catch (...) { }
|
||||||
@ -103,7 +102,7 @@ struct Wm::Main
|
|||||||
width = window.attribute_value("width", 0UL),
|
width = window.attribute_value("width", 0UL),
|
||||||
height = window.attribute_value("height", 0UL);
|
height = window.attribute_value("height", 0UL);
|
||||||
|
|
||||||
nitpicker_root.request_resize(win_id, Area(width, height));
|
gui_root.request_resize(win_id, Area(width, height));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4,12 +4,13 @@
|
|||||||
* \date 2019-02-18
|
* \date 2019-02-18
|
||||||
*
|
*
|
||||||
* This report service has the sole purpose of applying the same labeling
|
* This report service has the sole purpose of applying the same labeling
|
||||||
* policy to an application's shape report as done for the application's
|
* policy to an application's shape report as done for the application's GUI
|
||||||
* 'Nitpicker' session. This consistency is needed by the pointer to correlate
|
* session. This consistency is needed by the pointer to correlate the
|
||||||
* the currently hovered nitpicker session with the reported shapes.
|
* currently hovered GUI session with the reported shapes.
|
||||||
* Analogously, clipboard reports can be routed through the window
|
*
|
||||||
* manager to support the clipboard component with associating its clients
|
* Analogously, clipboard reports can be routed through the window manager to
|
||||||
* with nitpicker's reported focus.
|
* support the clipboard component with associating its clients with
|
||||||
|
* nitpicker's reported focus.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
*
|
*
|
||||||
* This ROM service can be used as proxy for clipboard ROMs to ensure the
|
* This ROM service can be used as proxy for clipboard ROMs to ensure the
|
||||||
* consistency of the client labels appearing at the clipboard component
|
* consistency of the client labels appearing at the clipboard component
|
||||||
* with the label of the currently focused nitpicker client.
|
* with the label of the currently focused GUI client.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief A Qt Widget that shows a nitpicker view
|
* \brief A Qt Widget that shows a Genode GUI view
|
||||||
* \author Christian Prochaska
|
* \author Christian Prochaska
|
||||||
* \date 2010-08-26
|
* \date 2010-08-26
|
||||||
*/
|
*/
|
||||||
@ -11,8 +11,8 @@
|
|||||||
* under the terms of the GNU Affero General Public License version 3.
|
* under the terms of the GNU Affero General Public License version 3.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef QNITPICKERVIEWWIDGET_H
|
#ifndef QGENODEVIEWWIDGET_H
|
||||||
#define QNITPICKERVIEWWIDGET_H
|
#define QGENODEVIEWWIDGET_H
|
||||||
|
|
||||||
#include <QtWidgets>
|
#include <QtWidgets>
|
||||||
#if 0
|
#if 0
|
||||||
@ -63,14 +63,14 @@ protected:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class QNitpickerViewWidget : public QEmbeddedViewWidget
|
class QGenodeViewWidget : public QEmbeddedViewWidget
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
Nitpicker::Session_client *nitpicker;
|
Gui::Session_client *gui;
|
||||||
Nitpicker::Session::View_handle view_handle;
|
Gui::Session::View_handle view_handle;
|
||||||
|
|
||||||
virtual void showEvent(QShowEvent *event);
|
virtual void showEvent(QShowEvent *event);
|
||||||
virtual void hideEvent(QHideEvent *event);
|
virtual void hideEvent(QHideEvent *event);
|
||||||
@ -79,11 +79,11 @@ protected:
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
QNitpickerViewWidget(QWidget *parent =0);
|
QGenodeViewWidget(QWidget *parent =0);
|
||||||
~QNitpickerViewWidget();
|
~QGenodeViewWidget();
|
||||||
void setNitpickerView(Nitpicker::Session_client *nitpicker,
|
void setGenodeView(Gui::Session_client *gui,
|
||||||
Nitpicker::Session::View_handle view_handle,
|
Gui::Session::View_handle view_handle,
|
||||||
int buf_x, int buf_y, int w, int h);
|
int buf_x, int buf_y, int w, int h);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // QNITPICKERVIEWWIDGET_H
|
#endif // QGENODEVIEWWIDGET_H
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief QNitpickerPlatformWindow
|
* \brief QGenodePlatformWindow
|
||||||
* \author Christian Prochaska
|
* \author Christian Prochaska
|
||||||
* \author Christian Helmuth
|
* \author Christian Helmuth
|
||||||
* \date 2013-05-08
|
* \date 2013-05-08
|
||||||
@ -13,8 +13,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
#ifndef _QNITPICKERPLATFORMWINDOW_H_
|
#ifndef _QGENODEPLATFORMWINDOW_H_
|
||||||
#define _QNITPICKERPLATFORMWINDOW_H_
|
#define _QGENODEPLATFORMWINDOW_H_
|
||||||
|
|
||||||
/* Genode includes */
|
/* Genode includes */
|
||||||
#include <input/event.h>
|
#include <input/event.h>
|
||||||
@ -33,31 +33,31 @@
|
|||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
class QNitpickerPlatformWindow : public QObject, public QPlatformWindow
|
class QGenodePlatformWindow : public QObject, public QPlatformWindow
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
Genode::Env &_env;
|
Genode::Env &_env;
|
||||||
QString _nitpicker_session_label;
|
QString _gui_session_label;
|
||||||
static QStringList _nitpicker_session_label_list;
|
static QStringList _gui_session_label_list;
|
||||||
Nitpicker::Connection _nitpicker_session;
|
Gui::Connection _gui_session;
|
||||||
Framebuffer::Session_client _framebuffer_session;
|
Framebuffer::Session_client _framebuffer_session;
|
||||||
unsigned char *_framebuffer;
|
unsigned char *_framebuffer;
|
||||||
bool _framebuffer_changed;
|
bool _framebuffer_changed;
|
||||||
bool _geometry_changed;
|
bool _geometry_changed;
|
||||||
Framebuffer::Mode _current_mode;
|
Framebuffer::Mode _current_mode;
|
||||||
Nitpicker::Session::View_handle _view_handle;
|
Gui::Session::View_handle _view_handle;
|
||||||
Input::Session_client _input_session;
|
Input::Session_client _input_session;
|
||||||
Genode::Attached_dataspace _ev_buf;
|
Genode::Attached_dataspace _ev_buf;
|
||||||
QPoint _mouse_position;
|
QPoint _mouse_position;
|
||||||
Qt::KeyboardModifiers _keyboard_modifiers;
|
Qt::KeyboardModifiers _keyboard_modifiers;
|
||||||
Qt::MouseButtons _mouse_button_state;
|
Qt::MouseButtons _mouse_button_state;
|
||||||
QByteArray _title;
|
QByteArray _title;
|
||||||
bool _resize_handle;
|
bool _resize_handle;
|
||||||
bool _decoration;
|
bool _decoration;
|
||||||
EGLSurface _egl_surface;
|
EGLSurface _egl_surface;
|
||||||
|
|
||||||
QPoint _local_position() const
|
QPoint _local_position() const
|
||||||
{
|
{
|
||||||
@ -82,8 +82,8 @@ class QNitpickerPlatformWindow : public QObject, public QPlatformWindow
|
|||||||
void _key_event(Input::Keycode, Codepoint, Mapped_key::Event);
|
void _key_event(Input::Keycode, Codepoint, Mapped_key::Event);
|
||||||
void _mouse_button_event(Input::Keycode, bool press);
|
void _mouse_button_event(Input::Keycode, bool press);
|
||||||
|
|
||||||
Genode::Io_signal_handler<QNitpickerPlatformWindow> _input_signal_handler;
|
Genode::Io_signal_handler<QGenodePlatformWindow> _input_signal_handler;
|
||||||
Genode::Io_signal_handler<QNitpickerPlatformWindow> _mode_changed_signal_handler;
|
Genode::Io_signal_handler<QGenodePlatformWindow> _mode_changed_signal_handler;
|
||||||
|
|
||||||
QVector<QWindowSystemInterface::TouchPoint> _touch_points { 16 };
|
QVector<QWindowSystemInterface::TouchPoint> _touch_points { 16 };
|
||||||
QTouchDevice *_touch_device;
|
QTouchDevice *_touch_device;
|
||||||
@ -91,7 +91,7 @@ class QNitpickerPlatformWindow : public QObject, public QPlatformWindow
|
|||||||
|
|
||||||
void _process_touch_events(QList<Input::Event> const &events);
|
void _process_touch_events(QList<Input::Event> const &events);
|
||||||
|
|
||||||
Nitpicker::Session::View_handle _create_view();
|
Gui::Session::View_handle _create_view();
|
||||||
void _adjust_and_set_geometry(const QRect &rect);
|
void _adjust_and_set_geometry(const QRect &rect);
|
||||||
|
|
||||||
QString _sanitize_label(QString label);
|
QString _sanitize_label(QString label);
|
||||||
@ -114,10 +114,10 @@ class QNitpickerPlatformWindow : public QObject, public QPlatformWindow
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
QNitpickerPlatformWindow(Genode::Env &env, QWindow *window,
|
QGenodePlatformWindow(Genode::Env &env, QWindow *window,
|
||||||
int screen_width, int screen_height);
|
int screen_width, int screen_height);
|
||||||
|
|
||||||
~QNitpickerPlatformWindow();
|
~QGenodePlatformWindow();
|
||||||
|
|
||||||
QSurfaceFormat format() const override;
|
QSurfaceFormat format() const override;
|
||||||
|
|
||||||
@ -184,24 +184,24 @@ class QNitpickerPlatformWindow : public QObject, public QPlatformWindow
|
|||||||
bool frameStrutEventsEnabled() const override;
|
bool frameStrutEventsEnabled() const override;
|
||||||
|
|
||||||
|
|
||||||
/* for QNitpickerWindowSurface */
|
/* for QGenodeWindowSurface */
|
||||||
|
|
||||||
unsigned char *framebuffer();
|
unsigned char *framebuffer();
|
||||||
|
|
||||||
void refresh(int x, int y, int w, int h);
|
void refresh(int x, int y, int w, int h);
|
||||||
|
|
||||||
|
|
||||||
/* for QNitpickerGLContext */
|
/* for QGenodeGLContext */
|
||||||
|
|
||||||
EGLSurface egl_surface() const;
|
EGLSurface egl_surface() const;
|
||||||
|
|
||||||
void egl_surface(EGLSurface egl_surface);
|
void egl_surface(EGLSurface egl_surface);
|
||||||
|
|
||||||
|
|
||||||
/* for QNitpickerViewWidget */
|
/* for QGenodeViewWidget */
|
||||||
|
|
||||||
Nitpicker::Session_client &nitpicker();
|
Gui::Session_client &gui_session();
|
||||||
Nitpicker::View_capability view_cap() const;
|
Gui::View_capability view_cap() const;
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
|
|
||||||
@ -211,4 +211,4 @@ class QNitpickerPlatformWindow : public QObject, public QPlatformWindow
|
|||||||
|
|
||||||
QT_END_NAMESPACE
|
QT_END_NAMESPACE
|
||||||
|
|
||||||
#endif /* _QNITPICKERPLATFORMWINDOW_H_ */
|
#endif /* _QGENODEPLATFORMWINDOW_H_ */
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief A Qt Widget that can load a plugin application and show its Nitpicker view
|
* \brief A Qt Widget that can load a plugin application and show its GUI view
|
||||||
* \author Christian Prochaska
|
* \author Christian Prochaska
|
||||||
* \date 2010-08-26
|
* \date 2010-08-26
|
||||||
*/
|
*/
|
||||||
@ -22,7 +22,7 @@
|
|||||||
#include <QtGui>
|
#include <QtGui>
|
||||||
#include <QtNetwork>
|
#include <QtNetwork>
|
||||||
|
|
||||||
#include <qnitpickerviewwidget/qnitpickerviewwidget.h>
|
#include <qgenodeviewwidget/qgenodeviewwidget.h>
|
||||||
|
|
||||||
enum Plugin_loading_state
|
enum Plugin_loading_state
|
||||||
{
|
{
|
||||||
@ -45,19 +45,19 @@ class PluginStarter : public QThread
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
Libc::Env *_env;
|
Libc::Env *_env;
|
||||||
QUrl _plugin_url;
|
QUrl _plugin_url;
|
||||||
QByteArray _args;
|
QByteArray _args;
|
||||||
int _max_width;
|
int _max_width;
|
||||||
int _max_height;
|
int _max_height;
|
||||||
Nitpicker::View_capability _parent_view;
|
Gui::View_capability _parent_view;
|
||||||
|
|
||||||
Loader::Connection *_pc;
|
Loader::Connection *_pc;
|
||||||
enum Plugin_loading_state _plugin_loading_state;
|
enum Plugin_loading_state _plugin_loading_state;
|
||||||
QString _plugin_loading_error_string;
|
QString _plugin_loading_error_string;
|
||||||
|
|
||||||
QNetworkAccessManager *_qnam;
|
QNetworkAccessManager *_qnam;
|
||||||
QNetworkReply *_reply;
|
QNetworkReply *_reply;
|
||||||
|
|
||||||
void _start_plugin(QString &file_name, QByteArray const &file_buf);
|
void _start_plugin(QString &file_name, QByteArray const &file_buf);
|
||||||
|
|
||||||
@ -68,19 +68,19 @@ class PluginStarter : public QThread
|
|||||||
PluginStarter(Libc::Env *env,
|
PluginStarter(Libc::Env *env,
|
||||||
QUrl plugin_url, QString &args,
|
QUrl plugin_url, QString &args,
|
||||||
int max_width, int max_height,
|
int max_width, int max_height,
|
||||||
Nitpicker::View_capability parent_view);
|
Gui::View_capability parent_view);
|
||||||
|
|
||||||
void run();
|
void run();
|
||||||
enum Plugin_loading_state plugin_loading_state() { return _plugin_loading_state; }
|
enum Plugin_loading_state plugin_loading_state() { return _plugin_loading_state; }
|
||||||
QString &plugin_loading_error_string() { return _plugin_loading_error_string; }
|
QString &plugin_loading_error_string() { return _plugin_loading_error_string; }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Requst size of the nitpicker view of the loaded subsystem
|
* Requst size of the Genode GUI view of the loaded subsystem
|
||||||
*/
|
*/
|
||||||
Loader::Area view_size();
|
Loader::Area view_size();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set geometry of the nitpicker view of the loaded subsystem
|
* Set geometry of the Genode GUI view of the loaded subsystem
|
||||||
*/
|
*/
|
||||||
void view_geometry(Loader::Rect rect, Loader::Point offset);
|
void view_geometry(Loader::Rect rect, Loader::Point offset);
|
||||||
|
|
||||||
|
@ -1 +1 @@
|
|||||||
QT5_INC_DIR += $(realpath $(call select_from_repositories,include/qt5/qnitpickerviewwidget)/..)
|
QT5_INC_DIR += $(realpath $(call select_from_repositories,include/qt5/qgenodeviewwidget)/..)
|
@ -3,9 +3,9 @@ IMPORT_QT5_INC=$(call select_from_repositories,lib/import/import-qt5.inc)
|
|||||||
include $(IMPORT_QT5_INC)
|
include $(IMPORT_QT5_INC)
|
||||||
|
|
||||||
ifeq ($(CONTRIB_DIR),)
|
ifeq ($(CONTRIB_DIR),)
|
||||||
INC_DIR += $(call select_from_repositories,include/qt5/qpa_nitpicker) \
|
INC_DIR += $(call select_from_repositories,include/qt5/qpa_genode) \
|
||||||
$(call select_from_repositories,include/QtInputSupport/$(QT_VERSION))
|
$(call select_from_repositories,include/QtInputSupport/$(QT_VERSION))
|
||||||
else
|
else
|
||||||
INC_DIR += $(REP_DIR)/include/qt5/qpa_nitpicker \
|
INC_DIR += $(REP_DIR)/include/qt5/qpa_genode \
|
||||||
$(QT5_PORT_DIR)/include/QtInputSupport/$(QT_VERSION)
|
$(QT5_PORT_DIR)/include/QtInputSupport/$(QT_VERSION)
|
||||||
endif
|
endif
|
@ -1,4 +1,4 @@
|
|||||||
QT5_INC_DIR += $(realpath $(call select_from_repositories,include/qt5/qpluginwidget)/..)
|
QT5_INC_DIR += $(realpath $(call select_from_repositories,include/qt5/qpluginwidget)/..)
|
||||||
|
|
||||||
# 'qpluginwidget.h' includes 'qnitpickerviewwidget.h'
|
# 'qpluginwidget.h' includes 'qgenodeviewwidget.h'
|
||||||
include $(call select_from_repositories,lib/import/import-qt5_qnitpickerviewwidget.mk)
|
include $(call select_from_repositories,lib/import/import-qt5_qgenodeviewwidget.mk)
|
||||||
|
13
repos/libports/lib/mk/qt5_qgenodeviewwidget.mk
Normal file
13
repos/libports/lib/mk/qt5_qgenodeviewwidget.mk
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
include $(call select_from_repositories,lib/import/import-qt5_qgenodeviewwidget.mk)
|
||||||
|
|
||||||
|
SHARED_LIB = yes
|
||||||
|
|
||||||
|
SRC_CC = qgenodeviewwidget.cpp \
|
||||||
|
moc_qgenodeviewwidget.cpp
|
||||||
|
|
||||||
|
vpath %.h $(call select_from_repositories,include/qt5/qgenodeviewwidget)
|
||||||
|
vpath %.cpp $(REP_DIR)/src/lib/qt5/qgenodeviewwidget
|
||||||
|
|
||||||
|
LIBS += libc qoost qt5_core qt5_gui qt5_qpa_genode qt5_widgets
|
||||||
|
|
||||||
|
CC_CXX_WARN_STRICT =
|
@ -1,13 +0,0 @@
|
|||||||
include $(call select_from_repositories,lib/import/import-qt5_qnitpickerviewwidget.mk)
|
|
||||||
|
|
||||||
SHARED_LIB = yes
|
|
||||||
|
|
||||||
SRC_CC = qnitpickerviewwidget.cpp \
|
|
||||||
moc_qnitpickerviewwidget.cpp
|
|
||||||
|
|
||||||
vpath %.h $(call select_from_repositories,include/qt5/qnitpickerviewwidget)
|
|
||||||
vpath %.cpp $(REP_DIR)/src/lib/qt5/qnitpickerviewwidget
|
|
||||||
|
|
||||||
LIBS += libc qoost qt5_core qt5_gui qt5_qpa_nitpicker qt5_widgets
|
|
||||||
|
|
||||||
CC_CXX_WARN_STRICT =
|
|
@ -1,4 +1,4 @@
|
|||||||
include $(call select_from_repositories,lib/import/import-qt5_qpa_nitpicker.mk)
|
include $(call select_from_repositories,lib/import/import-qt5_qpa_genode.mk)
|
||||||
|
|
||||||
SHARED_LIB = yes
|
SHARED_LIB = yes
|
||||||
|
|
||||||
@ -11,15 +11,15 @@ SRC_CC = qgenericunixeventdispatcher.cpp \
|
|||||||
|
|
||||||
SRC_CC += main.cpp \
|
SRC_CC += main.cpp \
|
||||||
qgenodeclipboard.cpp \
|
qgenodeclipboard.cpp \
|
||||||
qnitpickercursor.cpp \
|
qgenodecursor.cpp \
|
||||||
qnitpickerglcontext.cpp \
|
qgenodeglcontext.cpp \
|
||||||
qnitpickerintegration.cpp \
|
qgenodeintegration.cpp \
|
||||||
qnitpickerplatformwindow.cpp \
|
qgenodeplatformwindow.cpp \
|
||||||
qnitpickerwindowsurface.cpp \
|
qgenodewindowsurface.cpp \
|
||||||
moc_qgenodeclipboard.cpp \
|
moc_qgenodeclipboard.cpp \
|
||||||
moc_qnitpickerplatformwindow.cpp \
|
moc_qgenodeplatformwindow.cpp \
|
||||||
moc_qnitpickerwindowsurface.cpp \
|
moc_qgenodewindowsurface.cpp \
|
||||||
moc_qnitpickerintegrationplugin.cpp
|
moc_qgenodeintegrationplugin.cpp
|
||||||
|
|
||||||
ifeq ($(CONTRIB_DIR),)
|
ifeq ($(CONTRIB_DIR),)
|
||||||
|
|
||||||
@ -32,7 +32,7 @@ INC_DIR += $(call select_from_repositories,include/QtEglSupport/$(QT_VERSION)) \
|
|||||||
$(call select_from_repositories,include/QtInputSupport/$(QT_VERSION)/QtInputSupport/private)
|
$(call select_from_repositories,include/QtInputSupport/$(QT_VERSION)/QtInputSupport/private)
|
||||||
|
|
||||||
vpath qunixeventdispatcher_qpa_p.h $(call select_from_repositories,include/QtEventDispatcherSupport/$(QT_VERSION)/QtEventDispatcherSupport/private)
|
vpath qunixeventdispatcher_qpa_p.h $(call select_from_repositories,include/QtEventDispatcherSupport/$(QT_VERSION)/QtEventDispatcherSupport/private)
|
||||||
vpath qnitpickerplatformwindow.h $(call select_from_repositories,include/qt5/qpa_nitpicker)
|
vpath qgenodeplatformwindow.h $(call select_from_repositories,include/qt5/qpa_genode)
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
||||||
@ -41,7 +41,7 @@ INC_DIR += $(QT5_PORT_DIR)/include/QtEglSupport/$(QT_VERSION) \
|
|||||||
$(QT5_PORT_DIR)/include/QtFontDatabaseSupport/$(QT_VERSION) \
|
$(QT5_PORT_DIR)/include/QtFontDatabaseSupport/$(QT_VERSION) \
|
||||||
$(QT5_PORT_DIR)/include/QtInputSupport/$(QT_VERSION)
|
$(QT5_PORT_DIR)/include/QtInputSupport/$(QT_VERSION)
|
||||||
|
|
||||||
vpath %.h $(REP_DIR)/include/qt5/qpa_nitpicker
|
vpath %.h $(REP_DIR)/include/qt5/qpa_genode
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -50,6 +50,6 @@ LIBS += qt5_gui qt5_core qoost egl freetype libc
|
|||||||
vpath % $(QT5_CONTRIB_DIR)/qtbase/src/platformsupport/eglconvenience
|
vpath % $(QT5_CONTRIB_DIR)/qtbase/src/platformsupport/eglconvenience
|
||||||
vpath % $(QT5_CONTRIB_DIR)/qtbase/src/platformsupport/eventdispatchers
|
vpath % $(QT5_CONTRIB_DIR)/qtbase/src/platformsupport/eventdispatchers
|
||||||
vpath % $(QT5_CONTRIB_DIR)/qtbase/src/platformsupport/fontdatabases/freetype
|
vpath % $(QT5_CONTRIB_DIR)/qtbase/src/platformsupport/fontdatabases/freetype
|
||||||
vpath % $(REP_DIR)/src/lib/qt5/qtbase/src/plugins/platforms/nitpicker
|
vpath % $(REP_DIR)/src/lib/qt5/qtbase/src/plugins/platforms/genode
|
||||||
|
|
||||||
CC_CXX_WARN_STRICT =
|
CC_CXX_WARN_STRICT =
|
@ -8,6 +8,6 @@ SRC_CC = qpluginwidget.cpp \
|
|||||||
vpath %.h $(call select_from_repositories,include/qt5/qpluginwidget)
|
vpath %.h $(call select_from_repositories,include/qt5/qpluginwidget)
|
||||||
vpath %.cpp $(REP_DIR)/src/lib/qt5/qpluginwidget
|
vpath %.cpp $(REP_DIR)/src/lib/qt5/qpluginwidget
|
||||||
|
|
||||||
LIBS += libc qoost qt5_core qt5_gui qt5_network qt5_qnitpickerviewwidget qt5_qpa_nitpicker qt5_widgets zlib
|
LIBS += libc qoost qt5_core qt5_gui qt5_network qt5_qgenodeviewwidget qt5_qpa_genode qt5_widgets zlib
|
||||||
|
|
||||||
CC_CXX_WARN_STRICT =
|
CC_CXX_WARN_STRICT =
|
||||||
|
30
repos/libports/lib/symbols/qt5_qgenodeviewwidget
Normal file
30
repos/libports/lib/symbols/qt5_qgenodeviewwidget
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
_ZN17QGenodeViewWidget10paintEventEP11QPaintEvent T
|
||||||
|
_ZN17QGenodeViewWidget11qt_metacallEN11QMetaObject4CallEiPPv T
|
||||||
|
_ZN17QGenodeViewWidget11qt_metacastEPKc T
|
||||||
|
_ZN17QGenodeViewWidget12focusInEventEP11QFocusEvent T
|
||||||
|
_ZN17QGenodeViewWidget13setGenodeViewEPN3Gui14Session_clientEN6Genode6HandleINS0_4ViewEEEiiii T
|
||||||
|
_ZN17QGenodeViewWidget16staticMetaObjectE D 48
|
||||||
|
_ZN17QGenodeViewWidget9hideEventEP10QHideEvent T
|
||||||
|
_ZN17QGenodeViewWidget9showEventEP10QShowEvent T
|
||||||
|
_ZN17QGenodeViewWidgetC1EP7QWidget T
|
||||||
|
_ZN17QGenodeViewWidgetC2EP7QWidget T
|
||||||
|
_ZN17QGenodeViewWidgetD0Ev T
|
||||||
|
_ZN17QGenodeViewWidgetD1Ev T
|
||||||
|
_ZN17QGenodeViewWidgetD2Ev T
|
||||||
|
_ZN19QEmbeddedViewWidget11qt_metacallEN11QMetaObject4CallEiPPv T
|
||||||
|
_ZN19QEmbeddedViewWidget11qt_metacastEPKc T
|
||||||
|
_ZN19QEmbeddedViewWidget12valueChangedEv T
|
||||||
|
_ZN19QEmbeddedViewWidget16staticMetaObjectE D 48
|
||||||
|
_ZN19QEmbeddedViewWidget19_calc_view_geometryEv T
|
||||||
|
_ZN19QEmbeddedViewWidget9destroyedEP7QObject T
|
||||||
|
_ZN19QEmbeddedViewWidgetC1EP7QWidget T
|
||||||
|
_ZN19QEmbeddedViewWidgetC2EP7QWidget T
|
||||||
|
_ZN19QEmbeddedViewWidgetD0Ev T
|
||||||
|
_ZN19QEmbeddedViewWidgetD1Ev T
|
||||||
|
_ZN19QEmbeddedViewWidgetD2Ev T
|
||||||
|
_ZNK17QGenodeViewWidget10metaObjectEv T
|
||||||
|
_ZNK19QEmbeddedViewWidget10metaObjectEv T
|
||||||
|
_ZThn16_N17QGenodeViewWidgetD0Ev T
|
||||||
|
_ZThn16_N17QGenodeViewWidgetD1Ev T
|
||||||
|
_ZThn16_N19QEmbeddedViewWidgetD0Ev T
|
||||||
|
_ZThn16_N19QEmbeddedViewWidgetD1Ev T
|
@ -1,30 +0,0 @@
|
|||||||
_ZN19QEmbeddedViewWidget11qt_metacallEN11QMetaObject4CallEiPPv T
|
|
||||||
_ZN19QEmbeddedViewWidget11qt_metacastEPKc T
|
|
||||||
_ZN19QEmbeddedViewWidget12valueChangedEv T
|
|
||||||
_ZN19QEmbeddedViewWidget16staticMetaObjectE D 48
|
|
||||||
_ZN19QEmbeddedViewWidget19_calc_view_geometryEv T
|
|
||||||
_ZN19QEmbeddedViewWidget9destroyedEP7QObject T
|
|
||||||
_ZN19QEmbeddedViewWidgetC1EP7QWidget T
|
|
||||||
_ZN19QEmbeddedViewWidgetC2EP7QWidget T
|
|
||||||
_ZN19QEmbeddedViewWidgetD0Ev T
|
|
||||||
_ZN19QEmbeddedViewWidgetD1Ev T
|
|
||||||
_ZN19QEmbeddedViewWidgetD2Ev T
|
|
||||||
_ZN20QNitpickerViewWidget10paintEventEP11QPaintEvent T
|
|
||||||
_ZN20QNitpickerViewWidget11qt_metacallEN11QMetaObject4CallEiPPv T
|
|
||||||
_ZN20QNitpickerViewWidget11qt_metacastEPKc T
|
|
||||||
_ZN20QNitpickerViewWidget12focusInEventEP11QFocusEvent T
|
|
||||||
_ZN20QNitpickerViewWidget16setNitpickerViewEPN9Nitpicker14Session_clientEN6Genode6HandleINS0_4ViewEEEiiii T
|
|
||||||
_ZN20QNitpickerViewWidget16staticMetaObjectE D 48
|
|
||||||
_ZN20QNitpickerViewWidget9hideEventEP10QHideEvent T
|
|
||||||
_ZN20QNitpickerViewWidget9showEventEP10QShowEvent T
|
|
||||||
_ZN20QNitpickerViewWidgetC1EP7QWidget T
|
|
||||||
_ZN20QNitpickerViewWidgetC2EP7QWidget T
|
|
||||||
_ZN20QNitpickerViewWidgetD0Ev T
|
|
||||||
_ZN20QNitpickerViewWidgetD1Ev T
|
|
||||||
_ZN20QNitpickerViewWidgetD2Ev T
|
|
||||||
_ZNK19QEmbeddedViewWidget10metaObjectEv T
|
|
||||||
_ZNK20QNitpickerViewWidget10metaObjectEv T
|
|
||||||
_ZThn16_N19QEmbeddedViewWidgetD0Ev T
|
|
||||||
_ZThn16_N19QEmbeddedViewWidgetD1Ev T
|
|
||||||
_ZThn16_N20QNitpickerViewWidgetD0Ev T
|
|
||||||
_ZThn16_N20QNitpickerViewWidgetD1Ev T
|
|
283
repos/libports/lib/symbols/qt5_qpa_genode
Normal file
283
repos/libports/lib/symbols/qt5_qpa_genode
Normal file
@ -0,0 +1,283 @@
|
|||||||
|
_Z14qt_getFreetypev T
|
||||||
|
_Z16q_printEglConfigPvS_ T
|
||||||
|
_Z17initialize_qt_guiRN6Genode3EnvE T
|
||||||
|
_Z17q_hasEglExtensionPvPKc T
|
||||||
|
_Z18q_screenSizeFromFbi T
|
||||||
|
_Z18qt_getFreetypeDatav T
|
||||||
|
_Z19q_refreshRateFromFbi T
|
||||||
|
_Z19q_screenDepthFromFbi T
|
||||||
|
_Z20q_configFromGLFormatPvRK14QSurfaceFormatbi T
|
||||||
|
_Z20q_glFormatFromConfigPvS_RK14QSurfaceFormat T
|
||||||
|
_Z24q_reduceConfigAttributesP7QVectorIiE T
|
||||||
|
_Z26q_physicalScreenSizeFromFbiRK5QSize T
|
||||||
|
_Z34q_createConfigAttributesFromFormatRK14QSurfaceFormat T
|
||||||
|
_Z41qt_static_plugin_QGenodeIntegrationPluginv T
|
||||||
|
_ZN13QFontEngineFT11boundingBoxERK12QGlyphLayout T
|
||||||
|
_ZN13QFontEngineFT11boundingBoxEj T
|
||||||
|
_ZN13QFontEngineFT11boundingBoxEjRK10QTransform T
|
||||||
|
_ZN13QFontEngineFT12loadGlyphForEj6QFixedN11QFontEngine11GlyphFormatERK10QTransformbb T
|
||||||
|
_ZN13QFontEngineFT12loadGlyphSetERK10QTransform T
|
||||||
|
_ZN13QFontEngineFT14bitmapForGlyphEj6QFixedRK10QTransform T
|
||||||
|
_ZN13QFontEngineFT15addGlyphsToPathEPjP11QFixedPointiP12QPainterPath6QFlagsIN9QTextItem10RenderFlagEE T
|
||||||
|
_ZN13QFontEngineFT16addOutlineToPathEddRK12QGlyphLayoutP12QPainterPath6QFlagsIN9QTextItem10RenderFlagEE T
|
||||||
|
_ZN13QFontEngineFT16alphaMapForGlyphEj6QFixed T
|
||||||
|
_ZN13QFontEngineFT16alphaMapForGlyphEj6QFixedRK10QTransform T
|
||||||
|
_ZN13QFontEngineFT16getUnscaledGlyphEjP12QPainterPathP15glyph_metrics_t T
|
||||||
|
_ZN13QFontEngineFT17getPointInOutlineEjijP6QFixedS1_Pj T
|
||||||
|
_ZN13QFontEngineFT18initFromFontEngineEPKS_ T
|
||||||
|
_ZN13QFontEngineFT19alphaMapBoundingBoxEj6QFixedRK10QTransformN11QFontEngine11GlyphFormatE T
|
||||||
|
_ZN13QFontEngineFT19alphaRGBMapForGlyphEj6QFixedRK10QTransform T
|
||||||
|
_ZN13QFontEngineFT19setDefaultHintStyleEN11QFontEngine9HintStyleE T
|
||||||
|
_ZN13QFontEngineFT20removeGlyphFromCacheEj T
|
||||||
|
_ZN13QFontEngineFT21setQtDefaultHintStyleEN5QFont17HintingPreferenceE T
|
||||||
|
_ZN13QFontEngineFT22lockedAlphaMapForGlyphEj6QFixedN11QFontEngine11GlyphFormatERK10QTransformP6QPoint T
|
||||||
|
_ZN13QFontEngineFT22unlockAlphaMapForGlyphEv T
|
||||||
|
_ZN13QFontEngineFT4initEN11QFontEngine6FaceIdEbNS0_11GlyphFormatEP13QFreetypeFace T
|
||||||
|
_ZN13QFontEngineFT4initEN11QFontEngine6FaceIdEbNS0_11GlyphFormatERK10QByteArray T
|
||||||
|
_ZN13QFontEngineFT5GlyphD1Ev T
|
||||||
|
_ZN13QFontEngineFT5GlyphD2Ev T
|
||||||
|
_ZN13QFontEngineFT6createERK10QByteArraydN5QFont17HintingPreferenceE T
|
||||||
|
_ZN13QFontEngineFT6createERK8QFontDefN11QFontEngine6FaceIdERK10QByteArray T
|
||||||
|
_ZN13QFontEngineFT9QGlyphSet20removeGlyphFromCacheEj6QFixed T
|
||||||
|
_ZN13QFontEngineFT9QGlyphSet5clearEv T
|
||||||
|
_ZN13QFontEngineFT9QGlyphSet8setGlyphEj6QFixedPNS_5GlyphE T
|
||||||
|
_ZN13QFontEngineFT9QGlyphSetC1Ev T
|
||||||
|
_ZN13QFontEngineFT9QGlyphSetC2Ev T
|
||||||
|
_ZN13QFontEngineFT9QGlyphSetD1Ev T
|
||||||
|
_ZN13QFontEngineFT9QGlyphSetD2Ev T
|
||||||
|
_ZN13QFontEngineFTC1ERK8QFontDef T
|
||||||
|
_ZN13QFontEngineFTC2ERK8QFontDef T
|
||||||
|
_ZN13QFontEngineFTD0Ev T
|
||||||
|
_ZN13QFontEngineFTD1Ev T
|
||||||
|
_ZN13QFontEngineFTD2Ev T
|
||||||
|
_ZN13QFreetypeFace11computeSizeERK8QFontDefPiS3_PbP6QFixed T
|
||||||
|
_ZN13QFreetypeFace14addGlyphToPathEP11FT_FaceRec_P16FT_GlyphSlotRec_RK11QFixedPointP12QPainterPathll T
|
||||||
|
_ZN13QFreetypeFace15addBitmapToPathEP16FT_GlyphSlotRec_RK11QFixedPointP12QPainterPath T
|
||||||
|
_ZN13QFreetypeFace17getPointInOutlineEjijP6QFixedS1_Pj T
|
||||||
|
_ZN13QFreetypeFace7cleanupEv T
|
||||||
|
_ZN13QFreetypeFace7getFaceERKN11QFontEngine6FaceIdERK10QByteArray T
|
||||||
|
_ZN13QFreetypeFace7releaseERKN11QFontEngine6FaceIdE T
|
||||||
|
_ZN13QGenodeCursor12changeCursorEP7QCursorP7QWindow T
|
||||||
|
_ZN13QGenodeCursorC1ERN6Genode3EnvE T
|
||||||
|
_ZN13QGenodeCursorC2ERN6Genode3EnvE T
|
||||||
|
_ZN14QtFreetypeDataD1Ev T
|
||||||
|
_ZN14QtFreetypeDataD2Ev T
|
||||||
|
_ZN16QGenodeClipboard11qt_metacallEN11QMetaObject4CallEiPPv T
|
||||||
|
_ZN16QGenodeClipboard11qt_metacastEPKc T
|
||||||
|
_ZN16QGenodeClipboard11setMimeDataEP9QMimeDataN10QClipboard4ModeE T
|
||||||
|
_ZN16QGenodeClipboard16staticMetaObjectE D 48
|
||||||
|
_ZN16QGenodeClipboard17_handle_clipboardEv T
|
||||||
|
_ZN16QGenodeClipboard18_clipboard_changedEv T
|
||||||
|
_ZN16QGenodeClipboard8mimeDataEN10QClipboard4ModeE T
|
||||||
|
_ZN16QGenodeClipboardC1ERN6Genode3EnvE T
|
||||||
|
_ZN16QGenodeClipboardC2ERN6Genode3EnvE T
|
||||||
|
_ZN16QGenodeClipboardD0Ev T
|
||||||
|
_ZN16QGenodeClipboardD1Ev T
|
||||||
|
_ZN16QGenodeClipboardD2Ev T
|
||||||
|
_ZN16QGenodeGLContext11doneCurrentEv T
|
||||||
|
_ZN16QGenodeGLContext11makeCurrentEP16QPlatformSurface T
|
||||||
|
_ZN16QGenodeGLContext11swapBuffersEP16QPlatformSurface T
|
||||||
|
_ZN16QGenodeGLContext14getProcAddressEPKc T
|
||||||
|
_ZN16QGenodeGLContextC1EP14QOpenGLContext T
|
||||||
|
_ZN16QGenodeGLContextC2EP14QOpenGLContext T
|
||||||
|
_ZN17QEglConfigChooser12chooseConfigEv T
|
||||||
|
_ZN17QEglConfigChooserC1EPv T
|
||||||
|
_ZN17QEglConfigChooserC2EPv T
|
||||||
|
_ZN17QEglConfigChooserD0Ev T
|
||||||
|
_ZN17QEglConfigChooserD1Ev T
|
||||||
|
_ZN17QEglConfigChooserD2Ev T
|
||||||
|
_ZN18QGenodeIntegration10initializeEv T
|
||||||
|
_ZN18QGenodeIntegrationC1ERN6Genode3EnvE T
|
||||||
|
_ZN18QGenodeIntegrationC2ERN6Genode3EnvE T
|
||||||
|
_ZN20QGenodeWindowSurface11paintDeviceEv T
|
||||||
|
_ZN20QGenodeWindowSurface11qt_metacallEN11QMetaObject4CallEiPPv T
|
||||||
|
_ZN20QGenodeWindowSurface11qt_metacastEPKc T
|
||||||
|
_ZN20QGenodeWindowSurface16staticMetaObjectE D 48
|
||||||
|
_ZN20QGenodeWindowSurface19framebuffer_changedEv T
|
||||||
|
_ZN20QGenodeWindowSurface5flushEP7QWindowRK7QRegionRK6QPoint T
|
||||||
|
_ZN20QGenodeWindowSurface6resizeERK5QSizeRK7QRegion T
|
||||||
|
_ZN20QGenodeWindowSurfaceC1EP7QWindow T
|
||||||
|
_ZN20QGenodeWindowSurfaceC2EP7QWindow T
|
||||||
|
_ZN20QGenodeWindowSurfaceD0Ev T
|
||||||
|
_ZN20QGenodeWindowSurfaceD1Ev T
|
||||||
|
_ZN20QGenodeWindowSurfaceD2Ev T
|
||||||
|
_ZN21QFreeTypeFontDatabase10fontEngineERK10QByteArraydN5QFont17HintingPreferenceE T
|
||||||
|
_ZN21QFreeTypeFontDatabase10fontEngineERK8QFontDefPv T
|
||||||
|
_ZN21QFreeTypeFontDatabase13releaseHandleEPv T
|
||||||
|
_ZN21QFreeTypeFontDatabase18addApplicationFontERK10QByteArrayRK7QString T
|
||||||
|
_ZN21QFreeTypeFontDatabase20populateFontDatabaseEv T
|
||||||
|
_ZN21QFreeTypeFontDatabase9addTTFileERK10QByteArrayS2_ T
|
||||||
|
_ZN21QGenodePlatformWindow10_key_eventEN5Input7KeycodeEN6Genode9CodepointENS_10Mapped_key5EventE T
|
||||||
|
_ZN21QGenodePlatformWindow10setOpacityEd T
|
||||||
|
_ZN21QGenodePlatformWindow10setVisibleEb T
|
||||||
|
_ZN21QGenodePlatformWindow11egl_surfaceEPv T
|
||||||
|
_ZN21QGenodePlatformWindow11framebufferEv T
|
||||||
|
_ZN21QGenodePlatformWindow11gui_sessionEv T
|
||||||
|
_ZN21QGenodePlatformWindow11qt_metacallEN11QMetaObject4CallEiPPv T
|
||||||
|
_ZN21QGenodePlatformWindow11qt_metacastEPKc T
|
||||||
|
_ZN21QGenodePlatformWindow11setGeometryERK5QRect T
|
||||||
|
_ZN21QGenodePlatformWindow11windowEventEP6QEvent T
|
||||||
|
_ZN21QGenodePlatformWindow12_create_viewEv T
|
||||||
|
_ZN21QGenodePlatformWindow13_handle_inputEv T
|
||||||
|
_ZN21QGenodePlatformWindow13_mode_changedEv T
|
||||||
|
_ZN21QGenodePlatformWindow13setWindowIconERK5QIcon T
|
||||||
|
_ZN21QGenodePlatformWindow14setWindowFlagsE6QFlagsIN2Qt10WindowTypeEE T
|
||||||
|
_ZN21QGenodePlatformWindow14setWindowStateE6QFlagsIN2Qt11WindowStateEE T
|
||||||
|
_ZN21QGenodePlatformWindow14setWindowTitleERK7QString T
|
||||||
|
_ZN21QGenodePlatformWindow15_sanitize_labelE7QString T
|
||||||
|
_ZN21QGenodePlatformWindow16staticMetaObjectE D 48
|
||||||
|
_ZN21QGenodePlatformWindow17setWindowFilePathERK7QString T
|
||||||
|
_ZN21QGenodePlatformWindow17setWindowModifiedEb T
|
||||||
|
_ZN21QGenodePlatformWindow17startSystemResizeERK6QPointN2Qt6CornerE T
|
||||||
|
_ZN21QGenodePlatformWindow18_init_touch_deviceEv T
|
||||||
|
_ZN21QGenodePlatformWindow18propagateSizeHintsEv T
|
||||||
|
_ZN21QGenodePlatformWindow19_mouse_button_eventEN5Input7KeycodeEb T
|
||||||
|
_ZN21QGenodePlatformWindow19framebuffer_changedEv T
|
||||||
|
_ZN21QGenodePlatformWindow19setMouseGrabEnabledEb T
|
||||||
|
_ZN21QGenodePlatformWindow20_handle_mode_changedEv T
|
||||||
|
_ZN21QGenodePlatformWindow21_process_touch_eventsERK5QListIN5Input5EventEE T
|
||||||
|
_ZN21QGenodePlatformWindow21requestActivateWindowEv T
|
||||||
|
_ZN21QGenodePlatformWindow22setKeyboardGrabEnabledEb T
|
||||||
|
_ZN21QGenodePlatformWindow23_gui_session_label_listE B 8
|
||||||
|
_ZN21QGenodePlatformWindow24_adjust_and_set_geometryERK5QRect T
|
||||||
|
_ZN21QGenodePlatformWindow26setFrameStrutEventsEnabledEb T
|
||||||
|
_ZN21QGenodePlatformWindow30handleContentOrientationChangeEN2Qt17ScreenOrientationE T
|
||||||
|
_ZN21QGenodePlatformWindow5lowerEv T
|
||||||
|
_ZN21QGenodePlatformWindow5raiseEv T
|
||||||
|
_ZN21QGenodePlatformWindow6_inputEv T
|
||||||
|
_ZN21QGenodePlatformWindow7refreshEiiii T
|
||||||
|
_ZN21QGenodePlatformWindow7setMaskERK7QRegion T
|
||||||
|
_ZN21QGenodePlatformWindow8_map_keyEN5Input7KeycodeEN6Genode9CodepointENS_10Mapped_key5EventE T
|
||||||
|
_ZN21QGenodePlatformWindow9setParentEPK15QPlatformWindow T
|
||||||
|
_ZN21QGenodePlatformWindowC1ERN6Genode3EnvEP7QWindowii T
|
||||||
|
_ZN21QGenodePlatformWindowC2ERN6Genode3EnvEP7QWindowii T
|
||||||
|
_ZN21QGenodePlatformWindowD0Ev T
|
||||||
|
_ZN21QGenodePlatformWindowD1Ev T
|
||||||
|
_ZN21QGenodePlatformWindowD2Ev T
|
||||||
|
_ZN23QUnixEventDispatcherQPA11qt_metacallEN11QMetaObject4CallEiPPv T
|
||||||
|
_ZN23QUnixEventDispatcherQPA11qt_metacastEPKc T
|
||||||
|
_ZN23QUnixEventDispatcherQPA13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE T
|
||||||
|
_ZN23QUnixEventDispatcherQPA16hasPendingEventsEv T
|
||||||
|
_ZN23QUnixEventDispatcherQPA16staticMetaObjectE D 48
|
||||||
|
_ZN23QUnixEventDispatcherQPA5flushEv T
|
||||||
|
_ZN23QUnixEventDispatcherQPAC1EP7QObject T
|
||||||
|
_ZN23QUnixEventDispatcherQPAC2EP7QObject T
|
||||||
|
_ZN23QUnixEventDispatcherQPAD0Ev T
|
||||||
|
_ZN23QUnixEventDispatcherQPAD1Ev T
|
||||||
|
_ZN23QUnixEventDispatcherQPAD2Ev T
|
||||||
|
_ZN23QtGenericUnixDispatcher25createUnixEventDispatcherEv T
|
||||||
|
_ZN24QGenodeIntegrationPlugin11qt_metacallEN11QMetaObject4CallEiPPv T
|
||||||
|
_ZN24QGenodeIntegrationPlugin11qt_metacastEPKc T
|
||||||
|
_ZN24QGenodeIntegrationPlugin16staticMetaObjectE D 48
|
||||||
|
_ZN24QGenodeIntegrationPlugin4_envE B 8
|
||||||
|
_ZN24QGenodeIntegrationPlugin6createERK7QStringRK11QStringList T
|
||||||
|
_ZNK13QFontEngineFT10glyphCountEv T
|
||||||
|
_ZNK13QFontEngineFT10glyphIndexEj T
|
||||||
|
_ZNK13QFontEngineFT10propertiesEv T
|
||||||
|
_ZNK13QFontEngineFT10unlockFaceEv T
|
||||||
|
_ZNK13QFontEngineFT11synthesizedEv T
|
||||||
|
_ZNK13QFontEngineFT12emSquareSizeEv T
|
||||||
|
_ZNK13QFontEngineFT12maxCharWidthEv T
|
||||||
|
_ZNK13QFontEngineFT12stringToCMapEPK5QChariP12QGlyphLayoutPi6QFlagsIN11QFontEngine10ShaperFlagEE T
|
||||||
|
_ZNK13QFontEngineFT13cloneWithSizeEd T
|
||||||
|
_ZNK13QFontEngineFT13lineThicknessEv T
|
||||||
|
_ZNK13QFontEngineFT14recalcAdvancesEP12QGlyphLayout6QFlagsIN11QFontEngine10ShaperFlagEE T
|
||||||
|
_ZNK13QFontEngineFT15non_locked_faceEv T
|
||||||
|
_ZNK13QFontEngineFT16averageCharWidthEv T
|
||||||
|
_ZNK13QFontEngineFT16getSfntTableDataEjPhPj T
|
||||||
|
_ZNK13QFontEngineFT17underlinePositionEv T
|
||||||
|
_ZNK13QFontEngineFT19scaledBitmapMetricsE6QFixed T
|
||||||
|
_ZNK13QFontEngineFT19scaledBitmapMetricsERK15glyph_metrics_tRK10QTransform T
|
||||||
|
_ZNK13QFontEngineFT22shouldUseDesignMetricsE6QFlagsIN11QFontEngine10ShaperFlagEE T
|
||||||
|
_ZNK13QFontEngineFT22supportsTransformationERK10QTransform T
|
||||||
|
_ZNK13QFontEngineFT29expectsGammaCorrectedBlendingEv T
|
||||||
|
_ZNK13QFontEngineFT6ascentEv T
|
||||||
|
_ZNK13QFontEngineFT6faceIdEv T
|
||||||
|
_ZNK13QFontEngineFT6handleEv T
|
||||||
|
_ZNK13QFontEngineFT7descentEv T
|
||||||
|
_ZNK13QFontEngineFT7leadingEv T
|
||||||
|
_ZNK13QFontEngineFT7xHeightEv T
|
||||||
|
_ZNK13QFontEngineFT8lockFaceENS_7ScalingE T
|
||||||
|
_ZNK13QFontEngineFT9capHeightEv T
|
||||||
|
_ZNK13QFontEngineFT9doKerningEP12QGlyphLayout6QFlagsIN11QFontEngine10ShaperFlagEE T
|
||||||
|
_ZNK13QFontEngineFT9loadFlagsEPNS_9QGlyphSetEN11QFontEngine11GlyphFormatEiRbRi T
|
||||||
|
_ZNK13QFontEngineFT9loadGlyphEPNS_9QGlyphSetEj6QFixedN11QFontEngine11GlyphFormatEbb T
|
||||||
|
_ZNK13QFreetypeFace10propertiesEv T
|
||||||
|
_ZNK13QFreetypeFace12getSfntTableEjPhPj T
|
||||||
|
_ZNK13QFreetypeFace16isScalableBitmapEv T
|
||||||
|
_ZNK13QFreetypeFace6fsTypeEv T
|
||||||
|
_ZNK16QGenodeClipboard10metaObjectEv T
|
||||||
|
_ZNK16QGenodeGLContext6formatEv T
|
||||||
|
_ZNK17QEglConfigChooser12filterConfigEPv T
|
||||||
|
_ZNK18QGenodeIntegration12fontDatabaseEv T
|
||||||
|
_ZNK18QGenodeIntegration12inputContextEv T
|
||||||
|
_ZNK18QGenodeIntegration13hasCapabilityEN20QPlatformIntegration10CapabilityE T
|
||||||
|
_ZNK18QGenodeIntegration20createPlatformWindowEP7QWindow T
|
||||||
|
_ZNK18QGenodeIntegration21createEventDispatcherEv T
|
||||||
|
_ZNK18QGenodeIntegration26createPlatformBackingStoreEP7QWindow T
|
||||||
|
_ZNK18QGenodeIntegration27createPlatformOpenGLContextEP14QOpenGLContext T
|
||||||
|
_ZNK18QGenodeIntegration9clipboardEv T
|
||||||
|
_ZNK20QGenodeWindowSurface10metaObjectEv T
|
||||||
|
_ZNK21QGenodePlatformWindow10isEmbeddedEv T
|
||||||
|
_ZNK21QGenodePlatformWindow10metaObjectEv T
|
||||||
|
_ZNK21QGenodePlatformWindow11egl_surfaceEv T
|
||||||
|
_ZNK21QGenodePlatformWindow11mapToGlobalERK6QPoint T
|
||||||
|
_ZNK21QGenodePlatformWindow12frameMarginsEv T
|
||||||
|
_ZNK21QGenodePlatformWindow13mapFromGlobalERK6QPoint T
|
||||||
|
_ZNK21QGenodePlatformWindow16devicePixelRatioEv T
|
||||||
|
_ZNK21QGenodePlatformWindow23frameStrutEventsEnabledEv T
|
||||||
|
_ZNK21QGenodePlatformWindow5winIdEv T
|
||||||
|
_ZNK21QGenodePlatformWindow6formatEv T
|
||||||
|
_ZNK21QGenodePlatformWindow8geometryEv T
|
||||||
|
_ZNK21QGenodePlatformWindow8isActiveEv T
|
||||||
|
_ZNK21QGenodePlatformWindow8view_capEv T
|
||||||
|
_ZNK21QGenodePlatformWindow9isExposedEv T
|
||||||
|
_ZNK23QUnixEventDispatcherQPA10metaObjectEv T
|
||||||
|
_ZNK24QGenodeIntegrationPlugin10metaObjectEv T
|
||||||
|
_ZNK24QGenodeIntegrationPlugin4keysEv T
|
||||||
|
_ZThn16_N16QGenodeClipboard11setMimeDataEP9QMimeDataN10QClipboard4ModeE T
|
||||||
|
_ZThn16_N16QGenodeClipboard8mimeDataEN10QClipboard4ModeE T
|
||||||
|
_ZThn16_N16QGenodeClipboardD0Ev T
|
||||||
|
_ZThn16_N16QGenodeClipboardD1Ev T
|
||||||
|
_ZThn16_N20QGenodeWindowSurface11paintDeviceEv T
|
||||||
|
_ZThn16_N20QGenodeWindowSurface5flushEP7QWindowRK7QRegionRK6QPoint T
|
||||||
|
_ZThn16_N20QGenodeWindowSurface6resizeERK5QSizeRK7QRegion T
|
||||||
|
_ZThn16_N20QGenodeWindowSurfaceD0Ev T
|
||||||
|
_ZThn16_N20QGenodeWindowSurfaceD1Ev T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow10setOpacityEd T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow10setVisibleEb T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow11setGeometryERK5QRect T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow11windowEventEP6QEvent T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow13setWindowIconERK5QIcon T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow14setWindowFlagsE6QFlagsIN2Qt10WindowTypeEE T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow14setWindowStateE6QFlagsIN2Qt11WindowStateEE T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow14setWindowTitleERK7QString T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow17setWindowFilePathERK7QString T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow17setWindowModifiedEb T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow17startSystemResizeERK6QPointN2Qt6CornerE T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow18propagateSizeHintsEv T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow19setMouseGrabEnabledEb T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow21requestActivateWindowEv T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow22setKeyboardGrabEnabledEb T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow26setFrameStrutEventsEnabledEb T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow30handleContentOrientationChangeEN2Qt17ScreenOrientationE T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow5lowerEv T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow5raiseEv T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow7setMaskERK7QRegion T
|
||||||
|
_ZThn16_N21QGenodePlatformWindow9setParentEPK15QPlatformWindow T
|
||||||
|
_ZThn16_N21QGenodePlatformWindowD0Ev T
|
||||||
|
_ZThn16_N21QGenodePlatformWindowD1Ev T
|
||||||
|
_ZThn16_NK21QGenodePlatformWindow10isEmbeddedEv T
|
||||||
|
_ZThn16_NK21QGenodePlatformWindow11mapToGlobalERK6QPoint T
|
||||||
|
_ZThn16_NK21QGenodePlatformWindow12frameMarginsEv T
|
||||||
|
_ZThn16_NK21QGenodePlatformWindow13mapFromGlobalERK6QPoint T
|
||||||
|
_ZThn16_NK21QGenodePlatformWindow16devicePixelRatioEv T
|
||||||
|
_ZThn16_NK21QGenodePlatformWindow23frameStrutEventsEnabledEv T
|
||||||
|
_ZThn16_NK21QGenodePlatformWindow5winIdEv T
|
||||||
|
_ZThn16_NK21QGenodePlatformWindow6formatEv T
|
||||||
|
_ZThn16_NK21QGenodePlatformWindow8geometryEv T
|
||||||
|
_ZThn16_NK21QGenodePlatformWindow8isActiveEv T
|
||||||
|
_ZThn16_NK21QGenodePlatformWindow9isExposedEv T
|
||||||
|
|
||||||
|
# manually added typeinfo and vtable symbols
|
||||||
|
_ZTI21QGenodePlatformWindow V
|
@ -1,292 +0,0 @@
|
|||||||
_Z11qLcEvdevKeyv T
|
|
||||||
_Z14qLcEvdevKeyMapv T
|
|
||||||
_Z14qt_getFreetypev T
|
|
||||||
_Z16q_printEglConfigPvS_ T
|
|
||||||
_Z17initialize_qt_guiRN6Genode3EnvE T
|
|
||||||
_Z17q_hasEglExtensionPvPKc T
|
|
||||||
_Z18q_screenSizeFromFbi T
|
|
||||||
_Z18qt_getFreetypeDatav T
|
|
||||||
_Z19q_refreshRateFromFbi T
|
|
||||||
_Z19q_screenDepthFromFbi T
|
|
||||||
_Z20q_configFromGLFormatPvRK14QSurfaceFormatbi T
|
|
||||||
_Z20q_glFormatFromConfigPvS_RK14QSurfaceFormat T
|
|
||||||
_Z24q_reduceConfigAttributesP7QVectorIiE T
|
|
||||||
_Z25createUnixEventDispatcherv T
|
|
||||||
_Z26q_physicalScreenSizeFromFbiRK5QSize T
|
|
||||||
_Z34q_createConfigAttributesFromFormatRK14QSurfaceFormat T
|
|
||||||
_Z44qt_static_plugin_QNitpickerIntegrationPluginv T
|
|
||||||
_ZN12QFdContainer5resetEv T
|
|
||||||
_ZN13QFontEngineFT11boundingBoxERK12QGlyphLayout T
|
|
||||||
_ZN13QFontEngineFT11boundingBoxEj T
|
|
||||||
_ZN13QFontEngineFT11boundingBoxEjRK10QTransform T
|
|
||||||
_ZN13QFontEngineFT12loadGlyphForEj6QFixedN11QFontEngine11GlyphFormatERK10QTransformbb T
|
|
||||||
_ZN13QFontEngineFT12loadGlyphSetERK10QTransform T
|
|
||||||
_ZN13QFontEngineFT14bitmapForGlyphEj6QFixedRK10QTransform T
|
|
||||||
_ZN13QFontEngineFT15addGlyphsToPathEPjP11QFixedPointiP12QPainterPath6QFlagsIN9QTextItem10RenderFlagEE T
|
|
||||||
_ZN13QFontEngineFT16addOutlineToPathEddRK12QGlyphLayoutP12QPainterPath6QFlagsIN9QTextItem10RenderFlagEE T
|
|
||||||
_ZN13QFontEngineFT16alphaMapForGlyphEj6QFixed T
|
|
||||||
_ZN13QFontEngineFT16alphaMapForGlyphEj6QFixedRK10QTransform T
|
|
||||||
_ZN13QFontEngineFT16getUnscaledGlyphEjP12QPainterPathP15glyph_metrics_t T
|
|
||||||
_ZN13QFontEngineFT17getPointInOutlineEjijP6QFixedS1_Pj T
|
|
||||||
_ZN13QFontEngineFT18initFromFontEngineEPKS_ T
|
|
||||||
_ZN13QFontEngineFT19alphaMapBoundingBoxEj6QFixedRK10QTransformN11QFontEngine11GlyphFormatE T
|
|
||||||
_ZN13QFontEngineFT19alphaRGBMapForGlyphEj6QFixedRK10QTransform T
|
|
||||||
_ZN13QFontEngineFT19setDefaultHintStyleEN11QFontEngine9HintStyleE T
|
|
||||||
_ZN13QFontEngineFT20removeGlyphFromCacheEj T
|
|
||||||
_ZN13QFontEngineFT21setQtDefaultHintStyleEN5QFont17HintingPreferenceE T
|
|
||||||
_ZN13QFontEngineFT22lockedAlphaMapForGlyphEj6QFixedN11QFontEngine11GlyphFormatERK10QTransformP6QPoint T
|
|
||||||
_ZN13QFontEngineFT22unlockAlphaMapForGlyphEv T
|
|
||||||
_ZN13QFontEngineFT4initEN11QFontEngine6FaceIdEbNS0_11GlyphFormatEP13QFreetypeFace T
|
|
||||||
_ZN13QFontEngineFT4initEN11QFontEngine6FaceIdEbNS0_11GlyphFormatERK10QByteArray T
|
|
||||||
_ZN13QFontEngineFT5GlyphD1Ev T
|
|
||||||
_ZN13QFontEngineFT5GlyphD2Ev T
|
|
||||||
_ZN13QFontEngineFT9QGlyphSet20removeGlyphFromCacheEj6QFixed T
|
|
||||||
_ZN13QFontEngineFT9QGlyphSet5clearEv T
|
|
||||||
_ZN13QFontEngineFT9QGlyphSet8setGlyphEj6QFixedPNS_5GlyphE T
|
|
||||||
_ZN13QFontEngineFT9QGlyphSetC1Ev T
|
|
||||||
_ZN13QFontEngineFT9QGlyphSetC2Ev T
|
|
||||||
_ZN13QFontEngineFT9QGlyphSetD1Ev T
|
|
||||||
_ZN13QFontEngineFT9QGlyphSetD2Ev T
|
|
||||||
_ZN13QFontEngineFTC1ERK8QFontDef T
|
|
||||||
_ZN13QFontEngineFTC2ERK8QFontDef T
|
|
||||||
_ZN13QFontEngineFTD0Ev T
|
|
||||||
_ZN13QFontEngineFTD1Ev T
|
|
||||||
_ZN13QFontEngineFTD2Ev T
|
|
||||||
_ZN13QFreetypeFace11computeSizeERK8QFontDefPiS3_PbP6QFixed T
|
|
||||||
_ZN13QFreetypeFace14addGlyphToPathEP11FT_FaceRec_P16FT_GlyphSlotRec_RK11QFixedPointP12QPainterPathll T
|
|
||||||
_ZN13QFreetypeFace15addBitmapToPathEP16FT_GlyphSlotRec_RK11QFixedPointP12QPainterPath T
|
|
||||||
_ZN13QFreetypeFace17getPointInOutlineEjijP6QFixedS1_Pj T
|
|
||||||
_ZN13QFreetypeFace7cleanupEv T
|
|
||||||
_ZN13QFreetypeFace7getFaceERKN11QFontEngine6FaceIdERK10QByteArray T
|
|
||||||
_ZN13QFreetypeFace7releaseERKN11QFontEngine6FaceIdE T
|
|
||||||
_ZN14QtFreetypeDataD1Ev T
|
|
||||||
_ZN14QtFreetypeDataD2Ev T
|
|
||||||
_ZN16QGenodeClipboard11setMimeDataEP9QMimeDataN10QClipboard4ModeE T
|
|
||||||
_ZN16QGenodeClipboard17_handle_clipboardEj T
|
|
||||||
_ZN16QGenodeClipboard8mimeDataEN10QClipboard4ModeE T
|
|
||||||
_ZN16QGenodeClipboardC1ERN6Genode3EnvERNS0_15Signal_receiverE T
|
|
||||||
_ZN16QGenodeClipboardC2ERN6Genode3EnvERNS0_15Signal_receiverE T
|
|
||||||
_ZN16QGenodeClipboardD0Ev T
|
|
||||||
_ZN16QGenodeClipboardD1Ev T
|
|
||||||
_ZN16QGenodeClipboardD2Ev T
|
|
||||||
_ZN16QNitpickerCursor12changeCursorEP7QCursorP7QWindow T
|
|
||||||
_ZN16QNitpickerCursorC1ERN6Genode3EnvE T
|
|
||||||
_ZN16QNitpickerCursorC2ERN6Genode3EnvE T
|
|
||||||
_ZN17QEglConfigChooser12chooseConfigEv T
|
|
||||||
_ZN17QEglConfigChooserC1EPv T
|
|
||||||
_ZN17QEglConfigChooserC2EPv T
|
|
||||||
_ZN17QEglConfigChooserD0Ev T
|
|
||||||
_ZN17QEglConfigChooserD1Ev T
|
|
||||||
_ZN17QEglConfigChooserD2Ev T
|
|
||||||
_ZN18QBasicFontDatabase10fontEngineERK10QByteArraydN5QFont17HintingPreferenceE T
|
|
||||||
_ZN18QBasicFontDatabase10fontEngineERK8QFontDefPv T
|
|
||||||
_ZN18QBasicFontDatabase13releaseHandleEPv T
|
|
||||||
_ZN18QBasicFontDatabase18addApplicationFontERK10QByteArrayRK7QString T
|
|
||||||
_ZN18QBasicFontDatabase20populateFontDatabaseEv T
|
|
||||||
_ZN18QBasicFontDatabase9addTTFileERK10QByteArrayS2_ T
|
|
||||||
_ZN19QNitpickerGLContext11doneCurrentEv T
|
|
||||||
_ZN19QNitpickerGLContext11makeCurrentEP16QPlatformSurface T
|
|
||||||
_ZN19QNitpickerGLContext11swapBuffersEP16QPlatformSurface T
|
|
||||||
_ZN19QNitpickerGLContext14getProcAddressEPKc T
|
|
||||||
_ZN19QNitpickerGLContextC1EP14QOpenGLContext T
|
|
||||||
_ZN19QNitpickerGLContextC2EP14QOpenGLContext T
|
|
||||||
_ZN20QSignalHandlerThread11qt_metacallEN11QMetaObject4CallEiPPv T
|
|
||||||
_ZN20QSignalHandlerThread11qt_metacastEPKc T
|
|
||||||
_ZN20QSignalHandlerThread16staticMetaObjectE D 48
|
|
||||||
_ZN20QSignalHandlerThread3runEv T
|
|
||||||
_ZN21QEvdevKeyboardHandler10loadKeymapERK7QString T
|
|
||||||
_ZN21QEvdevKeyboardHandler11qt_metacallEN11QMetaObject4CallEiPPv T
|
|
||||||
_ZN21QEvdevKeyboardHandler11qt_metacastEPKc T
|
|
||||||
_ZN21QEvdevKeyboardHandler12unloadKeymapEv T
|
|
||||||
_ZN21QEvdevKeyboardHandler14processKeycodeEtbb T
|
|
||||||
_ZN21QEvdevKeyboardHandler15processKeyEventEiii6QFlagsIN2Qt16KeyboardModifierEEbb T
|
|
||||||
_ZN21QEvdevKeyboardHandler16s_keymap_defaultE R 7032
|
|
||||||
_ZN21QEvdevKeyboardHandler16staticMetaObjectE D 48
|
|
||||||
_ZN21QEvdevKeyboardHandler20s_keycompose_defaultE R 882
|
|
||||||
_ZN21QEvdevKeyboardHandlerC1ERK7QStringR12QFdContainerbbS2_ T
|
|
||||||
_ZN21QEvdevKeyboardHandlerC2ERK7QStringR12QFdContainerbbS2_ T
|
|
||||||
_ZN21QEvdevKeyboardHandlerD0Ev T
|
|
||||||
_ZN21QEvdevKeyboardHandlerD1Ev T
|
|
||||||
_ZN21QEvdevKeyboardHandlerD2Ev T
|
|
||||||
_ZN21QNitpickerIntegration10initializeEv T
|
|
||||||
_ZN21QNitpickerIntegration16_signal_receiverEv T
|
|
||||||
_ZN21QNitpickerIntegrationC1ERN6Genode3EnvE T
|
|
||||||
_ZN21QNitpickerIntegrationC2ERN6Genode3EnvE T
|
|
||||||
_ZN23QNitpickerWindowSurface11paintDeviceEv T
|
|
||||||
_ZN23QNitpickerWindowSurface11qt_metacallEN11QMetaObject4CallEiPPv T
|
|
||||||
_ZN23QNitpickerWindowSurface11qt_metacastEPKc T
|
|
||||||
_ZN23QNitpickerWindowSurface16staticMetaObjectE D 48
|
|
||||||
_ZN23QNitpickerWindowSurface19framebuffer_changedEv T
|
|
||||||
_ZN23QNitpickerWindowSurface5flushEP7QWindowRK7QRegionRK6QPoint T
|
|
||||||
_ZN23QNitpickerWindowSurface6resizeERK5QSizeRK7QRegion T
|
|
||||||
_ZN23QNitpickerWindowSurfaceC1EP7QWindow T
|
|
||||||
_ZN23QNitpickerWindowSurfaceC2EP7QWindow T
|
|
||||||
_ZN23QNitpickerWindowSurfaceD0Ev T
|
|
||||||
_ZN23QNitpickerWindowSurfaceD1Ev T
|
|
||||||
_ZN23QNitpickerWindowSurfaceD2Ev T
|
|
||||||
_ZN23QUnixEventDispatcherQPA11qt_metacallEN11QMetaObject4CallEiPPv T
|
|
||||||
_ZN23QUnixEventDispatcherQPA11qt_metacastEPKc T
|
|
||||||
_ZN23QUnixEventDispatcherQPA13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE T
|
|
||||||
_ZN23QUnixEventDispatcherQPA16hasPendingEventsEv T
|
|
||||||
_ZN23QUnixEventDispatcherQPA16staticMetaObjectE D 48
|
|
||||||
_ZN23QUnixEventDispatcherQPA5flushEv T
|
|
||||||
_ZN23QUnixEventDispatcherQPAC1EP7QObject T
|
|
||||||
_ZN23QUnixEventDispatcherQPAC2EP7QObject T
|
|
||||||
_ZN23QUnixEventDispatcherQPAD0Ev T
|
|
||||||
_ZN23QUnixEventDispatcherQPAD1Ev T
|
|
||||||
_ZN23QUnixEventDispatcherQPAD2Ev T
|
|
||||||
_ZN24QNitpickerPlatformWindow10setOpacityEd T
|
|
||||||
_ZN24QNitpickerPlatformWindow10setVisibleEb T
|
|
||||||
_ZN24QNitpickerPlatformWindow11_key_repeatEv T
|
|
||||||
_ZN24QNitpickerPlatformWindow11egl_surfaceEPv T
|
|
||||||
_ZN24QNitpickerPlatformWindow11framebufferEv T
|
|
||||||
_ZN24QNitpickerPlatformWindow11qt_metacallEN11QMetaObject4CallEiPPv T
|
|
||||||
_ZN24QNitpickerPlatformWindow11qt_metacastEPKc T
|
|
||||||
_ZN24QNitpickerPlatformWindow11setGeometryERK5QRect T
|
|
||||||
_ZN24QNitpickerPlatformWindow11windowEventEP6QEvent T
|
|
||||||
_ZN24QNitpickerPlatformWindow12_create_viewEv T
|
|
||||||
_ZN24QNitpickerPlatformWindow13_handle_inputEj T
|
|
||||||
_ZN24QNitpickerPlatformWindow13_mode_changedEj T
|
|
||||||
_ZN24QNitpickerPlatformWindow13setWindowIconERK5QIcon T
|
|
||||||
_ZN24QNitpickerPlatformWindow14setWindowFlagsE6QFlagsIN2Qt10WindowTypeEE T
|
|
||||||
_ZN24QNitpickerPlatformWindow14setWindowStateEN2Qt11WindowStateE T
|
|
||||||
_ZN24QNitpickerPlatformWindow14setWindowTitleERK7QString T
|
|
||||||
_ZN24QNitpickerPlatformWindow16staticMetaObjectE D 48
|
|
||||||
_ZN24QNitpickerPlatformWindow17setWindowFilePathERK7QString T
|
|
||||||
_ZN24QNitpickerPlatformWindow17setWindowModifiedEb T
|
|
||||||
_ZN24QNitpickerPlatformWindow17startSystemResizeERK6QPointN2Qt6CornerE T
|
|
||||||
_ZN24QNitpickerPlatformWindow18_init_touch_deviceEv T
|
|
||||||
_ZN24QNitpickerPlatformWindow18_process_key_eventERKN5Input5EventE T
|
|
||||||
_ZN24QNitpickerPlatformWindow18propagateSizeHintsEv T
|
|
||||||
_ZN24QNitpickerPlatformWindow19framebuffer_changedEv T
|
|
||||||
_ZN24QNitpickerPlatformWindow19setMouseGrabEnabledEb T
|
|
||||||
_ZN24QNitpickerPlatformWindow20_handle_mode_changedEj T
|
|
||||||
_ZN24QNitpickerPlatformWindow20_process_mouse_eventERKN5Input5EventE T
|
|
||||||
_ZN24QNitpickerPlatformWindow21_process_touch_eventsERK5QListIN5Input5EventEE T
|
|
||||||
_ZN24QNitpickerPlatformWindow21requestActivateWindowEv T
|
|
||||||
_ZN24QNitpickerPlatformWindow22setKeyboardGrabEnabledEb T
|
|
||||||
_ZN24QNitpickerPlatformWindow24_adjust_and_set_geometryERK5QRect T
|
|
||||||
_ZN24QNitpickerPlatformWindow26setFrameStrutEventsEnabledEb T
|
|
||||||
_ZN24QNitpickerPlatformWindow30handleContentOrientationChangeEN2Qt17ScreenOrientationE T
|
|
||||||
_ZN24QNitpickerPlatformWindow5lowerEv T
|
|
||||||
_ZN24QNitpickerPlatformWindow5raiseEv T
|
|
||||||
_ZN24QNitpickerPlatformWindow6_inputEj T
|
|
||||||
_ZN24QNitpickerPlatformWindow7refreshEiiii T
|
|
||||||
_ZN24QNitpickerPlatformWindow7setMaskERK7QRegion T
|
|
||||||
_ZN24QNitpickerPlatformWindow9nitpickerEv T
|
|
||||||
_ZN24QNitpickerPlatformWindow9setParentEPK15QPlatformWindow T
|
|
||||||
_ZN24QNitpickerPlatformWindowC1ERN6Genode3EnvEP7QWindowRNS0_15Signal_receiverEii T
|
|
||||||
_ZN24QNitpickerPlatformWindowC2ERN6Genode3EnvEP7QWindowRNS0_15Signal_receiverEii T
|
|
||||||
_ZN27QNitpickerIntegrationPlugin11qt_metacallEN11QMetaObject4CallEiPPv T
|
|
||||||
_ZN27QNitpickerIntegrationPlugin11qt_metacastEPKc T
|
|
||||||
_ZN27QNitpickerIntegrationPlugin16staticMetaObjectE D 48
|
|
||||||
_ZN27QNitpickerIntegrationPlugin4_envE B 8
|
|
||||||
_ZN27QNitpickerIntegrationPlugin6createERK7QStringRK11QStringList T
|
|
||||||
_ZNK13QFontEngineFT10glyphCountEv T
|
|
||||||
_ZNK13QFontEngineFT10glyphIndexEj T
|
|
||||||
_ZNK13QFontEngineFT10propertiesEv T
|
|
||||||
_ZNK13QFontEngineFT10unlockFaceEv T
|
|
||||||
_ZNK13QFontEngineFT11synthesizedEv T
|
|
||||||
_ZNK13QFontEngineFT12emSquareSizeEv T
|
|
||||||
_ZNK13QFontEngineFT12maxCharWidthEv T
|
|
||||||
_ZNK13QFontEngineFT12stringToCMapEPK5QChariP12QGlyphLayoutPi6QFlagsIN11QFontEngine10ShaperFlagEE T
|
|
||||||
_ZNK13QFontEngineFT13cloneWithSizeEd T
|
|
||||||
_ZNK13QFontEngineFT13lineThicknessEv T
|
|
||||||
_ZNK13QFontEngineFT14recalcAdvancesEP12QGlyphLayout6QFlagsIN11QFontEngine10ShaperFlagEE T
|
|
||||||
_ZNK13QFontEngineFT15non_locked_faceEv T
|
|
||||||
_ZNK13QFontEngineFT16averageCharWidthEv T
|
|
||||||
_ZNK13QFontEngineFT16getSfntTableDataEjPhPj T
|
|
||||||
_ZNK13QFontEngineFT17underlinePositionEv T
|
|
||||||
_ZNK13QFontEngineFT19scaledBitmapMetricsE6QFixed T
|
|
||||||
_ZNK13QFontEngineFT19scaledBitmapMetricsERK15glyph_metrics_t T
|
|
||||||
_ZNK13QFontEngineFT22shouldUseDesignMetricsE6QFlagsIN11QFontEngine10ShaperFlagEE T
|
|
||||||
_ZNK13QFontEngineFT22supportsTransformationERK10QTransform T
|
|
||||||
_ZNK13QFontEngineFT6ascentEv T
|
|
||||||
_ZNK13QFontEngineFT6faceIdEv T
|
|
||||||
_ZNK13QFontEngineFT6handleEv T
|
|
||||||
_ZNK13QFontEngineFT7descentEv T
|
|
||||||
_ZNK13QFontEngineFT7leadingEv T
|
|
||||||
_ZNK13QFontEngineFT7xHeightEv T
|
|
||||||
_ZNK13QFontEngineFT8lockFaceENS_7ScalingE T
|
|
||||||
_ZNK13QFontEngineFT9capHeightEv T
|
|
||||||
_ZNK13QFontEngineFT9doKerningEP12QGlyphLayout6QFlagsIN11QFontEngine10ShaperFlagEE T
|
|
||||||
_ZNK13QFontEngineFT9loadFlagsEPNS_9QGlyphSetEN11QFontEngine11GlyphFormatEiRbRi T
|
|
||||||
_ZNK13QFontEngineFT9loadGlyphEPNS_9QGlyphSetEj6QFixedN11QFontEngine11GlyphFormatEbb T
|
|
||||||
_ZNK13QFreetypeFace10propertiesEv T
|
|
||||||
_ZNK13QFreetypeFace12getSfntTableEjPhPj T
|
|
||||||
_ZNK13QFreetypeFace16isScalableBitmapEv T
|
|
||||||
_ZNK13QFreetypeFace6fsTypeEv T
|
|
||||||
_ZNK17QEglConfigChooser12filterConfigEPv T
|
|
||||||
_ZNK19QNitpickerGLContext6formatEv T
|
|
||||||
_ZNK20QSignalHandlerThread10metaObjectEv T
|
|
||||||
_ZNK21QEvdevKeyboardHandler10metaObjectEv T
|
|
||||||
_ZNK21QNitpickerIntegration12fontDatabaseEv T
|
|
||||||
_ZNK21QNitpickerIntegration12inputContextEv T
|
|
||||||
_ZNK21QNitpickerIntegration13hasCapabilityEN20QPlatformIntegration10CapabilityE T
|
|
||||||
_ZNK21QNitpickerIntegration20createPlatformWindowEP7QWindow T
|
|
||||||
_ZNK21QNitpickerIntegration21createEventDispatcherEv T
|
|
||||||
_ZNK21QNitpickerIntegration26createPlatformBackingStoreEP7QWindow T
|
|
||||||
_ZNK21QNitpickerIntegration27createPlatformOpenGLContextEP14QOpenGLContext T
|
|
||||||
_ZNK21QNitpickerIntegration9clipboardEv T
|
|
||||||
_ZNK23QNitpickerWindowSurface10metaObjectEv T
|
|
||||||
_ZNK23QUnixEventDispatcherQPA10metaObjectEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow10isEmbeddedEPK15QPlatformWindow T
|
|
||||||
_ZNK24QNitpickerPlatformWindow10metaObjectEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow11egl_surfaceEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow11mapToGlobalERK6QPoint T
|
|
||||||
_ZNK24QNitpickerPlatformWindow12frameMarginsEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow13mapFromGlobalERK6QPoint T
|
|
||||||
_ZNK24QNitpickerPlatformWindow16devicePixelRatioEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow23frameStrutEventsEnabledEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow5winIdEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow6formatEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow6parentEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow6screenEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow6windowEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow8geometryEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow8isActiveEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow8view_capEv T
|
|
||||||
_ZNK24QNitpickerPlatformWindow9isExposedEv T
|
|
||||||
_ZNK27QNitpickerIntegrationPlugin10metaObjectEv T
|
|
||||||
_ZNK27QNitpickerIntegrationPlugin4keysEv T
|
|
||||||
_ZThn16_N23QNitpickerWindowSurface11paintDeviceEv T
|
|
||||||
_ZThn16_N23QNitpickerWindowSurface5flushEP7QWindowRK7QRegionRK6QPoint T
|
|
||||||
_ZThn16_N23QNitpickerWindowSurface6resizeERK5QSizeRK7QRegion T
|
|
||||||
_ZThn16_N23QNitpickerWindowSurfaceD0Ev T
|
|
||||||
_ZThn16_N23QNitpickerWindowSurfaceD1Ev T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow10setOpacityEd T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow10setVisibleEb T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow11setGeometryERK5QRect T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow11windowEventEP6QEvent T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow13setWindowIconERK5QIcon T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow14setWindowFlagsE6QFlagsIN2Qt10WindowTypeEE T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow14setWindowStateEN2Qt11WindowStateE T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow14setWindowTitleERK7QString T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow17setWindowFilePathERK7QString T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow17setWindowModifiedEb T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow17startSystemResizeERK6QPointN2Qt6CornerE T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow18propagateSizeHintsEv T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow19setMouseGrabEnabledEb T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow21requestActivateWindowEv T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow22setKeyboardGrabEnabledEb T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow26setFrameStrutEventsEnabledEb T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow30handleContentOrientationChangeEN2Qt17ScreenOrientationE T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow5lowerEv T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow5raiseEv T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow7setMaskERK7QRegion T
|
|
||||||
_ZThn16_N24QNitpickerPlatformWindow9setParentEPK15QPlatformWindow T
|
|
||||||
_ZThn16_NK24QNitpickerPlatformWindow10isEmbeddedEPK15QPlatformWindow T
|
|
||||||
_ZThn16_NK24QNitpickerPlatformWindow11mapToGlobalERK6QPoint T
|
|
||||||
_ZThn16_NK24QNitpickerPlatformWindow12frameMarginsEv T
|
|
||||||
_ZThn16_NK24QNitpickerPlatformWindow13mapFromGlobalERK6QPoint T
|
|
||||||
_ZThn16_NK24QNitpickerPlatformWindow16devicePixelRatioEv T
|
|
||||||
_ZThn16_NK24QNitpickerPlatformWindow23frameStrutEventsEnabledEv T
|
|
||||||
_ZThn16_NK24QNitpickerPlatformWindow5winIdEv T
|
|
||||||
_ZThn16_NK24QNitpickerPlatformWindow6formatEv T
|
|
||||||
_ZThn16_NK24QNitpickerPlatformWindow8geometryEv T
|
|
||||||
_ZThn16_NK24QNitpickerPlatformWindow8isActiveEv T
|
|
||||||
_ZThn16_NK24QNitpickerPlatformWindow9isExposedEv T
|
|
||||||
|
|
||||||
# manually added typeinfo and vtable symbols
|
|
||||||
|
|
||||||
_ZTI24QNitpickerPlatformWindow V
|
|
@ -7,8 +7,8 @@ _ZN13PluginStarter20networkReplyFinishedEv T
|
|||||||
_ZN13PluginStarter3runEv T
|
_ZN13PluginStarter3runEv T
|
||||||
_ZN13PluginStarter8finishedEv T
|
_ZN13PluginStarter8finishedEv T
|
||||||
_ZN13PluginStarter9view_sizeEv T
|
_ZN13PluginStarter9view_sizeEv T
|
||||||
_ZN13PluginStarterC1EPN4Libc3EnvE4QUrlR7QStringiiN6Genode10CapabilityIN9Nitpicker4ViewEEE T
|
_ZN13PluginStarterC1EPN4Libc3EnvE4QUrlR7QStringiiN6Genode10CapabilityIN3Gui4ViewEEE T
|
||||||
_ZN13PluginStarterC2EPN4Libc3EnvE4QUrlR7QStringiiN6Genode10CapabilityIN9Nitpicker4ViewEEE T
|
_ZN13PluginStarterC2EPN4Libc3EnvE4QUrlR7QStringiiN6Genode10CapabilityIN3Gui4ViewEEE T
|
||||||
_ZN13QPluginWidget10paintEventEP11QPaintEvent T
|
_ZN13QPluginWidget10paintEventEP11QPaintEvent T
|
||||||
_ZN13QPluginWidget11qt_metacallEN11QMetaObject4CallEiPPv T
|
_ZN13QPluginWidget11qt_metacallEN11QMetaObject4CallEiPPv T
|
||||||
_ZN13QPluginWidget11qt_metacastEPKc T
|
_ZN13QPluginWidget11qt_metacastEPKc T
|
||||||
|
@ -1 +1 @@
|
|||||||
08438581c2490afe7ced218efdded14505063f7b
|
4a78b61b0e73803e65095f65b4c054861a308411
|
||||||
|
@ -1 +1 @@
|
|||||||
2019-11-18 e36032edf2fa4646293574a1d587ac3057ffc98a
|
2020-06-17 966a17f191101426c8f56ec435c7ffa908482fa5
|
||||||
|
11
repos/libports/recipes/api/qt5_qgenodeviewwidget/content.mk
Normal file
11
repos/libports/recipes/api/qt5_qgenodeviewwidget/content.mk
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
MIRROR_FROM_REP_DIR := include/qt5/qgenodeviewwidget \
|
||||||
|
lib/import/import-qt5_qgenodeviewwidget.mk \
|
||||||
|
lib/symbols/qt5_qgenodeviewwidget
|
||||||
|
|
||||||
|
content: $(MIRROR_FROM_REP_DIR) LICENSE
|
||||||
|
|
||||||
|
$(MIRROR_FROM_REP_DIR):
|
||||||
|
$(mirror_from_rep_dir)
|
||||||
|
|
||||||
|
LICENSE:
|
||||||
|
cp $(GENODE_DIR)/LICENSE $@
|
@ -1,11 +0,0 @@
|
|||||||
MIRROR_FROM_REP_DIR := include/qt5/qnitpickerviewwidget \
|
|
||||||
lib/import/import-qt5_qnitpickerviewwidget.mk \
|
|
||||||
lib/symbols/qt5_qnitpickerviewwidget
|
|
||||||
|
|
||||||
content: $(MIRROR_FROM_REP_DIR) LICENSE
|
|
||||||
|
|
||||||
$(MIRROR_FROM_REP_DIR):
|
|
||||||
$(mirror_from_rep_dir)
|
|
||||||
|
|
||||||
LICENSE:
|
|
||||||
cp $(GENODE_DIR)/LICENSE $@
|
|
@ -1,7 +1,7 @@
|
|||||||
MIRROR_FROM_REP_DIR := include/qt5/qpa_nitpicker \
|
MIRROR_FROM_REP_DIR := include/qt5/qpa_genode \
|
||||||
lib/import/import-qt5_qpa_nitpicker.mk \
|
lib/import/import-qt5_qpa_genode.mk \
|
||||||
lib/import/import-qt5.inc \
|
lib/import/import-qt5.inc \
|
||||||
lib/symbols/qt5_qpa_nitpicker
|
lib/symbols/qt5_qpa_genode
|
||||||
|
|
||||||
content: $(MIRROR_FROM_REP_DIR)
|
content: $(MIRROR_FROM_REP_DIR)
|
||||||
|
|
1
repos/libports/recipes/api/qt5_qpa_genode/hash
Normal file
1
repos/libports/recipes/api/qt5_qpa_genode/hash
Normal file
@ -0,0 +1 @@
|
|||||||
|
2020-03-25 304dd3316129751b40c6c226e98927dcc10887c4
|
@ -1 +0,0 @@
|
|||||||
2020-03-25 f825f9eff572b58730ec3ba47e3526064e40e26f
|
|
@ -8,7 +8,7 @@ _/src/mesa
|
|||||||
_/src/qt5_core
|
_/src/qt5_core
|
||||||
_/src/qt5_gui
|
_/src/qt5_gui
|
||||||
_/src/qt5_qjpeg
|
_/src/qt5_qjpeg
|
||||||
_/src/qt5_qpa_nitpicker
|
_/src/qt5_qpa_genode
|
||||||
_/src/stdcxx
|
_/src/stdcxx
|
||||||
_/src/vfs
|
_/src/vfs
|
||||||
_/src/vfs_pipe
|
_/src/vfs_pipe
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
<rom label="qt5_dejavusans.tar"/>
|
<rom label="qt5_dejavusans.tar"/>
|
||||||
<rom label="qt5_gui.lib.so"/>
|
<rom label="qt5_gui.lib.so"/>
|
||||||
<rom label="qt5_qjpeg.lib.so"/>
|
<rom label="qt5_qjpeg.lib.so"/>
|
||||||
<rom label="qt5_qpa_nitpicker.lib.so"/>
|
<rom label="qt5_qpa_genode.lib.so"/>
|
||||||
<rom label="stdcxx.lib.so"/>
|
<rom label="stdcxx.lib.so"/>
|
||||||
<rom label="vfs.lib.so"/>
|
<rom label="vfs.lib.so"/>
|
||||||
<rom label="vfs_pipe.lib.so"/>
|
<rom label="vfs_pipe.lib.so"/>
|
||||||
|
@ -4,6 +4,6 @@ qt5_component
|
|||||||
qt5_core
|
qt5_core
|
||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_qjpeg
|
qt5_qjpeg
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_widgets
|
qt5_widgets
|
||||||
stdcxx
|
stdcxx
|
||||||
|
@ -5,7 +5,7 @@ os
|
|||||||
qt5_core
|
qt5_core
|
||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_qjpeg
|
qt5_qjpeg
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_widgets
|
qt5_widgets
|
||||||
stdcxx
|
stdcxx
|
||||||
timer_session
|
timer_session
|
||||||
|
@ -5,5 +5,5 @@ qt5_component
|
|||||||
qt5_core
|
qt5_core
|
||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_qjpeg
|
qt5_qjpeg
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
stdcxx
|
stdcxx
|
||||||
|
1
repos/libports/recipes/src/qt5_qgenodeviewwidget/api
Normal file
1
repos/libports/recipes/src/qt5_qgenodeviewwidget/api
Normal file
@ -0,0 +1 @@
|
|||||||
|
qt5_qgenodeviewwidget
|
14
repos/libports/recipes/src/qt5_qgenodeviewwidget/content.mk
Normal file
14
repos/libports/recipes/src/qt5_qgenodeviewwidget/content.mk
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
MIRROR_FROM_REP_DIR := lib/mk/qt5_qgenodeviewwidget.mk \
|
||||||
|
src/lib/qt5/qgenodeviewwidget
|
||||||
|
|
||||||
|
content: $(MIRROR_FROM_REP_DIR) LICENSE src/lib/qt5_qgenodeviewwidget/target.mk
|
||||||
|
|
||||||
|
$(MIRROR_FROM_REP_DIR):
|
||||||
|
$(mirror_from_rep_dir)
|
||||||
|
|
||||||
|
src/lib/qt5_qgenodeviewwidget/target.mk:
|
||||||
|
mkdir -p $(dir $@)
|
||||||
|
echo "LIBS = qt5_qgenodeviewwidget" > $@
|
||||||
|
|
||||||
|
LICENSE:
|
||||||
|
cp $(GENODE_DIR)/LICENSE $@
|
@ -8,6 +8,6 @@ os
|
|||||||
qoost
|
qoost
|
||||||
qt5_core
|
qt5_core
|
||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_widgets
|
qt5_widgets
|
||||||
stdcxx
|
stdcxx
|
@ -1 +0,0 @@
|
|||||||
qt5_qnitpickerviewwidget
|
|
@ -1,14 +0,0 @@
|
|||||||
MIRROR_FROM_REP_DIR := lib/mk/qt5_qnitpickerviewwidget.mk \
|
|
||||||
src/lib/qt5/qnitpickerviewwidget
|
|
||||||
|
|
||||||
content: $(MIRROR_FROM_REP_DIR) LICENSE src/lib/qt5_qnitpickerviewwidget/target.mk
|
|
||||||
|
|
||||||
$(MIRROR_FROM_REP_DIR):
|
|
||||||
$(mirror_from_rep_dir)
|
|
||||||
|
|
||||||
src/lib/qt5_qnitpickerviewwidget/target.mk:
|
|
||||||
mkdir -p $(dir $@)
|
|
||||||
echo "LIBS = qt5_qnitpickerviewwidget" > $@
|
|
||||||
|
|
||||||
LICENSE:
|
|
||||||
cp $(GENODE_DIR)/LICENSE $@
|
|
1
repos/libports/recipes/src/qt5_qpa_genode/api
Normal file
1
repos/libports/recipes/src/qt5_qpa_genode/api
Normal file
@ -0,0 +1 @@
|
|||||||
|
qt5_qpa_genode
|
@ -1,15 +1,15 @@
|
|||||||
MIRROR_FROM_REP_DIR := lib/mk/qt5_qpa_nitpicker.mk \
|
MIRROR_FROM_REP_DIR := lib/mk/qt5_qpa_genode.mk \
|
||||||
lib/mk/qt5.inc \
|
lib/mk/qt5.inc \
|
||||||
src/lib/qt5/qtbase/src/plugins/platforms/nitpicker
|
src/lib/qt5/qtbase/src/plugins/platforms/genode
|
||||||
|
|
||||||
content: $(MIRROR_FROM_REP_DIR) src/lib/qt5_qpa_nitpicker/target.mk
|
content: $(MIRROR_FROM_REP_DIR) src/lib/qt5_qpa_genode/target.mk
|
||||||
|
|
||||||
$(MIRROR_FROM_REP_DIR):
|
$(MIRROR_FROM_REP_DIR):
|
||||||
$(mirror_from_rep_dir)
|
$(mirror_from_rep_dir)
|
||||||
|
|
||||||
src/lib/qt5_qpa_nitpicker/target.mk:
|
src/lib/qt5_qpa_genode/target.mk:
|
||||||
mkdir -p $(dir $@)
|
mkdir -p $(dir $@)
|
||||||
echo "LIBS = qt5_qpa_nitpicker" > $@
|
echo "LIBS = qt5_qpa_genode" > $@
|
||||||
|
|
||||||
PORT_DIR := $(call port_dir,$(REP_DIR)/ports/qt5)
|
PORT_DIR := $(call port_dir,$(REP_DIR)/ports/qt5)
|
||||||
|
|
1
repos/libports/recipes/src/qt5_qpa_genode/hash
Normal file
1
repos/libports/recipes/src/qt5_qpa_genode/hash
Normal file
@ -0,0 +1 @@
|
|||||||
|
2020-05-26 cca0a58fd1f25172965bc4f152c4506543fb812b
|
@ -1 +0,0 @@
|
|||||||
qt5_qpa_nitpicker
|
|
@ -1 +0,0 @@
|
|||||||
2020-05-26 6e55ce071661a25898db0c99f940019bd9c1cacc
|
|
@ -10,8 +10,8 @@ qoost
|
|||||||
qt5_core
|
qt5_core
|
||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_network
|
qt5_network
|
||||||
qt5_qnitpickerviewwidget
|
qt5_qgenodeviewwidget
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_widgets
|
qt5_widgets
|
||||||
stdcxx
|
stdcxx
|
||||||
vfs
|
vfs
|
||||||
|
@ -7,6 +7,6 @@ qt5_network
|
|||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_qjpeg
|
qt5_qjpeg
|
||||||
qt5_qml
|
qt5_qml
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_quick
|
qt5_quick
|
||||||
stdcxx
|
stdcxx
|
||||||
|
@ -5,7 +5,7 @@ qt5_component
|
|||||||
qt5_core
|
qt5_core
|
||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_qjpeg
|
qt5_qjpeg
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_test
|
qt5_test
|
||||||
qt5_widgets
|
qt5_widgets
|
||||||
stdcxx
|
stdcxx
|
||||||
|
@ -5,7 +5,7 @@ qt5_component
|
|||||||
qt5_core
|
qt5_core
|
||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_qjpeg
|
qt5_qjpeg
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_scriptclassic
|
qt5_scriptclassic
|
||||||
qt5_ui_tools
|
qt5_ui_tools
|
||||||
qt5_widgets
|
qt5_widgets
|
||||||
|
@ -6,6 +6,6 @@ qt5_core
|
|||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_printsupport
|
qt5_printsupport
|
||||||
qt5_qjpeg
|
qt5_qjpeg
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_widgets
|
qt5_widgets
|
||||||
stdcxx
|
stdcxx
|
||||||
|
@ -7,7 +7,7 @@ qt5_network
|
|||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_qjpeg
|
qt5_qjpeg
|
||||||
qt5_qml
|
qt5_qml
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_quick
|
qt5_quick
|
||||||
qt5_virtualkeyboard
|
qt5_virtualkeyboard
|
||||||
stdcxx
|
stdcxx
|
||||||
|
@ -11,8 +11,8 @@ qt5_core
|
|||||||
qt5_gui
|
qt5_gui
|
||||||
qt5_network
|
qt5_network
|
||||||
qt5_qjpeg
|
qt5_qjpeg
|
||||||
qt5_qnitpickerviewwidget
|
qt5_qgenodeviewwidget
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_qpluginwidget
|
qt5_qpluginwidget
|
||||||
qt5_widgets
|
qt5_widgets
|
||||||
stdcxx
|
stdcxx
|
||||||
|
@ -7,6 +7,6 @@ qt5_gui
|
|||||||
qt5_network
|
qt5_network
|
||||||
qt5_qjpeg
|
qt5_qjpeg
|
||||||
qt5_qml
|
qt5_qml
|
||||||
qt5_qpa_nitpicker
|
qt5_qpa_genode
|
||||||
qt5_quick
|
qt5_quick
|
||||||
stdcxx
|
stdcxx
|
||||||
|
@ -21,7 +21,7 @@ import_from_depot [depot_user]/src/[base_src] \
|
|||||||
[depot_user]/src/qt5_core \
|
[depot_user]/src/qt5_core \
|
||||||
[depot_user]/src/qt5_gui \
|
[depot_user]/src/qt5_gui \
|
||||||
[depot_user]/src/qt5_qjpeg \
|
[depot_user]/src/qt5_qjpeg \
|
||||||
[depot_user]/src/qt5_qpa_nitpicker \
|
[depot_user]/src/qt5_qpa_genode \
|
||||||
[depot_user]/src/report_rom \
|
[depot_user]/src/report_rom \
|
||||||
[depot_user]/src/stdcxx \
|
[depot_user]/src/stdcxx \
|
||||||
[depot_user]/src/vfs \
|
[depot_user]/src/vfs \
|
||||||
|
@ -4,7 +4,7 @@ import_from_depot [depot_user]/src/libcrypto \
|
|||||||
[depot_user]/src/libssl \
|
[depot_user]/src/libssl \
|
||||||
[depot_user]/src/qt5_component \
|
[depot_user]/src/qt5_component \
|
||||||
[depot_user]/src/qt5_network \
|
[depot_user]/src/qt5_network \
|
||||||
[depot_user]/src/qt5_qnitpickerviewwidget \
|
[depot_user]/src/qt5_qgenodeviewwidget \
|
||||||
[depot_user]/src/qt5_qpluginwidget \
|
[depot_user]/src/qt5_qpluginwidget \
|
||||||
[depot_user]/src/qt5_widgets \
|
[depot_user]/src/qt5_widgets \
|
||||||
[depot_user]/src/test-qpluginwidget
|
[depot_user]/src/test-qpluginwidget
|
||||||
|
@ -139,11 +139,11 @@ class Pdf_view
|
|||||||
|
|
||||||
Genode::Env &_env;
|
Genode::Env &_env;
|
||||||
|
|
||||||
Nitpicker::Connection _nitpicker { _env };
|
Gui::Connection _gui { _env };
|
||||||
Framebuffer::Session &_framebuffer = *_nitpicker.framebuffer();
|
Framebuffer::Session &_framebuffer = *_gui.framebuffer();
|
||||||
Input::Session_client &_input = *_nitpicker.input();
|
Input::Session_client &_input = *_gui.input();
|
||||||
|
|
||||||
Framebuffer::Mode _nit_mode = _nitpicker.mode();
|
Framebuffer::Mode _nit_mode = _gui.mode();
|
||||||
Framebuffer::Mode _fb_mode {};
|
Framebuffer::Mode _fb_mode {};
|
||||||
|
|
||||||
Genode::Constructible<Genode::Attached_dataspace> _fb_ds { };
|
Genode::Constructible<Genode::Attached_dataspace> _fb_ds { };
|
||||||
@ -157,22 +157,22 @@ class Pdf_view
|
|||||||
Genode::Signal_handler<Pdf_view> _input_handler {
|
Genode::Signal_handler<Pdf_view> _input_handler {
|
||||||
_env.ep(), *this, &Pdf_view::_handle_input_events };
|
_env.ep(), *this, &Pdf_view::_handle_input_events };
|
||||||
|
|
||||||
Nitpicker::Session::View_handle _view = _nitpicker.create_view();
|
Gui::Session::View_handle _view = _gui.create_view();
|
||||||
|
|
||||||
pixel_t *_fb_base() { return _fb_ds->local_addr<pixel_t>(); }
|
pixel_t *_fb_base() { return _fb_ds->local_addr<pixel_t>(); }
|
||||||
|
|
||||||
void _rebuffer()
|
void _rebuffer()
|
||||||
{
|
{
|
||||||
using namespace Nitpicker;
|
using namespace Gui;
|
||||||
|
|
||||||
_nit_mode = _nitpicker.mode();
|
_nit_mode = _gui.mode();
|
||||||
|
|
||||||
int max_x = Genode::max(_nit_mode.width(), _fb_mode.width());
|
int max_x = Genode::max(_nit_mode.width(), _fb_mode.width());
|
||||||
int max_y = Genode::max(_nit_mode.height(), _fb_mode.height());
|
int max_y = Genode::max(_nit_mode.height(), _fb_mode.height());
|
||||||
|
|
||||||
if (max_x > _fb_mode.width() || max_y > _fb_mode.height()) {
|
if (max_x > _fb_mode.width() || max_y > _fb_mode.height()) {
|
||||||
_fb_mode = Mode(max_x, max_y, _nit_mode.format());
|
_fb_mode = Mode(max_x, max_y, _nit_mode.format());
|
||||||
_nitpicker.buffer(_fb_mode, NO_ALPHA);
|
_gui.buffer(_fb_mode, NO_ALPHA);
|
||||||
if (_fb_ds.constructed())
|
if (_fb_ds.constructed())
|
||||||
_fb_ds.destruct();
|
_fb_ds.destruct();
|
||||||
_fb_ds.construct(_env.rm(), _framebuffer.dataspace());
|
_fb_ds.construct(_env.rm(), _framebuffer.dataspace());
|
||||||
@ -190,11 +190,11 @@ class Pdf_view
|
|||||||
_pdfapp.resolution = Genode::min(_nit_mode.width()/5,
|
_pdfapp.resolution = Genode::min(_nit_mode.width()/5,
|
||||||
_nit_mode.height()/3.8);
|
_nit_mode.height()/3.8);
|
||||||
|
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
_nitpicker.enqueue<Command::Geometry>(
|
_gui.enqueue<Command::Geometry>(
|
||||||
_view, Rect(Point(), Area(_nit_mode.width(), _nit_mode.height())));
|
_view, Rect(Point(), Area(_nit_mode.width(), _nit_mode.height())));
|
||||||
_nitpicker.enqueue<Command::To_front>(_view, Nitpicker::Session::View_handle());
|
_gui.enqueue<Command::To_front>(_view, Gui::Session::View_handle());
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
void _handle_nit_mode()
|
void _handle_nit_mode()
|
||||||
@ -284,7 +284,7 @@ class Pdf_view
|
|||||||
*/
|
*/
|
||||||
Pdf_view(Genode::Env &env) : _env(env)
|
Pdf_view(Genode::Env &env) : _env(env)
|
||||||
{
|
{
|
||||||
_nitpicker.mode_sigh(_nit_mode_handler);
|
_gui.mode_sigh(_nit_mode_handler);
|
||||||
_input.sigh(_input_handler);
|
_input.sigh(_input_handler);
|
||||||
|
|
||||||
pdfapp_init(&_pdfapp);
|
pdfapp_init(&_pdfapp);
|
||||||
@ -322,9 +322,9 @@ class Pdf_view
|
|||||||
|
|
||||||
void title(char const *msg)
|
void title(char const *msg)
|
||||||
{
|
{
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
_nitpicker.enqueue<Command::Title>(_view, msg);
|
_gui.enqueue<Command::Title>(_view, msg);
|
||||||
_nitpicker.execute();
|
_gui.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
void show();
|
void show();
|
||||||
|
@ -31,7 +31,7 @@ endif
|
|||||||
# QtGui
|
# QtGui
|
||||||
ifeq ($(findstring gui, $(QT)), gui)
|
ifeq ($(findstring gui, $(QT)), gui)
|
||||||
QT_DEFINES += -DQT_GUI_LIB
|
QT_DEFINES += -DQT_GUI_LIB
|
||||||
LIBS += qt5_gui qt5_qpa_nitpicker qt5_qjpeg
|
LIBS += qt5_gui qt5_qpa_genode qt5_qjpeg
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# QtWidgets
|
# QtWidgets
|
||||||
|
@ -241,7 +241,7 @@ index 7444e61..1ae740d 100644
|
|||||||
#define QT_FEATURE_pdf 1
|
#define QT_FEATURE_pdf 1
|
||||||
#define QT_FEATURE_picture 1
|
#define QT_FEATURE_picture 1
|
||||||
-#define QT_QPA_DEFAULT_PLATFORM_NAME "minimal"
|
-#define QT_QPA_DEFAULT_PLATFORM_NAME "minimal"
|
||||||
+#define QT_QPA_DEFAULT_PLATFORM_NAME "nitpicker"
|
+#define QT_QPA_DEFAULT_PLATFORM_NAME "genode"
|
||||||
#define QT_FEATURE_sessionmanager -1
|
#define QT_FEATURE_sessionmanager -1
|
||||||
#define QT_NO_SESSIONMANAGER
|
#define QT_NO_SESSIONMANAGER
|
||||||
#define QT_FEATURE_shortcut 1
|
#define QT_FEATURE_shortcut 1
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief A Qt Widget that shows a nitpicker view
|
* \brief A Qt Widget that shows a Genode GUI view
|
||||||
* \author Christian Prochaska
|
* \author Christian Prochaska
|
||||||
* \date 2010-08-26
|
* \date 2010-08-26
|
||||||
*/
|
*/
|
||||||
@ -10,8 +10,8 @@
|
|||||||
|
|
||||||
#include <QtGui>
|
#include <QtGui>
|
||||||
|
|
||||||
#include <qnitpickerplatformwindow.h>
|
#include <qgenodeplatformwindow.h>
|
||||||
#include <qnitpickerviewwidget/qnitpickerviewwidget.h>
|
#include <qgenodeviewwidget/qgenodeviewwidget.h>
|
||||||
|
|
||||||
|
|
||||||
/*************************
|
/*************************
|
||||||
@ -121,116 +121,113 @@ void QEmbeddedViewWidget::destroyed(QObject *obj)
|
|||||||
|
|
||||||
|
|
||||||
/**************************
|
/**************************
|
||||||
** QNitpickerViewWidget **
|
** QGenodeViewWidget **
|
||||||
**************************/
|
**************************/
|
||||||
|
|
||||||
QNitpickerViewWidget::QNitpickerViewWidget(QWidget *parent)
|
QGenodeViewWidget::QGenodeViewWidget(QWidget *parent)
|
||||||
:
|
:
|
||||||
QEmbeddedViewWidget(parent), nitpicker(0)
|
QEmbeddedViewWidget(parent), gui(0)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
|
|
||||||
void QNitpickerViewWidget::setNitpickerView(Nitpicker::Session_client *new_nitpicker,
|
void QGenodeViewWidget::setGenodeView(Gui::Session_client *new_gui,
|
||||||
Nitpicker::Session::View_handle new_view_handle,
|
Gui::Session::View_handle new_view_handle,
|
||||||
int buf_x, int buf_y, int w, int h)
|
int buf_x, int buf_y, int w, int h)
|
||||||
{
|
{
|
||||||
QEmbeddedViewWidget::_orig_geometry(w, h, buf_x, buf_y);
|
QEmbeddedViewWidget::_orig_geometry(w, h, buf_x, buf_y);
|
||||||
|
|
||||||
nitpicker = new_nitpicker;
|
gui = new_gui;
|
||||||
view_handle = new_view_handle;
|
view_handle = new_view_handle;
|
||||||
setFixedSize(w, h);
|
setFixedSize(w, h);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QNitpickerViewWidget::~QNitpickerViewWidget() { }
|
QGenodeViewWidget::~QGenodeViewWidget() { }
|
||||||
|
|
||||||
|
|
||||||
void QNitpickerViewWidget::showEvent(QShowEvent *event)
|
void QGenodeViewWidget::showEvent(QShowEvent *event)
|
||||||
{
|
{
|
||||||
QWidget::showEvent(event);
|
QWidget::showEvent(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void QNitpickerViewWidget::hideEvent(QHideEvent *event)
|
void QGenodeViewWidget::hideEvent(QHideEvent *event)
|
||||||
{
|
{
|
||||||
QWidget::hideEvent(event);
|
QWidget::hideEvent(event);
|
||||||
|
|
||||||
if (nitpicker) {
|
if (gui) {
|
||||||
|
|
||||||
QEmbeddedViewWidget::View_geometry const view_geometry =
|
QEmbeddedViewWidget::View_geometry const view_geometry =
|
||||||
QEmbeddedViewWidget::_calc_view_geometry();
|
QEmbeddedViewWidget::_calc_view_geometry();
|
||||||
|
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
|
|
||||||
Nitpicker::Rect const geometry(Nitpicker::Point(mapToGlobal(pos()).x(),
|
Gui::Rect const geometry(Gui::Point(mapToGlobal(pos()).x(),
|
||||||
mapToGlobal(pos()).y()),
|
mapToGlobal(pos()).y()),
|
||||||
Nitpicker::Area(0, 0));
|
Gui::Area(0, 0));
|
||||||
nitpicker->enqueue<Command::Geometry>(view_handle, geometry);
|
gui->enqueue<Command::Geometry>(view_handle, geometry);
|
||||||
|
|
||||||
Nitpicker::Point const offset(view_geometry.buf_x, view_geometry.buf_y);
|
Gui::Point const offset(view_geometry.buf_x, view_geometry.buf_y);
|
||||||
nitpicker->enqueue<Command::Offset>(view_handle, offset);
|
gui->enqueue<Command::Offset>(view_handle, offset);
|
||||||
|
|
||||||
nitpicker->execute();
|
gui->execute();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void QNitpickerViewWidget::paintEvent(QPaintEvent *event)
|
void QGenodeViewWidget::paintEvent(QPaintEvent *event)
|
||||||
{
|
{
|
||||||
QWidget::paintEvent(event);
|
QWidget::paintEvent(event);
|
||||||
|
|
||||||
if (!nitpicker)
|
if (!gui)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
QEmbeddedViewWidget::View_geometry const view_geometry =
|
QEmbeddedViewWidget::View_geometry const view_geometry =
|
||||||
QEmbeddedViewWidget::_calc_view_geometry();
|
QEmbeddedViewWidget::_calc_view_geometry();
|
||||||
|
|
||||||
typedef Nitpicker::Session::Command Command;
|
typedef Gui::Session::Command Command;
|
||||||
|
|
||||||
/* argument to mapToGlobal() is relative to the Widget's origin
|
/* argument to mapToGlobal() is relative to the Widget's origin
|
||||||
* the plugin view starts at (0, 0)
|
* the plugin view starts at (0, 0)
|
||||||
*/
|
*/
|
||||||
if (mask().isEmpty()) {
|
if (mask().isEmpty()) {
|
||||||
|
|
||||||
Nitpicker::Rect const geometry(Nitpicker::Point(view_geometry.x,
|
Gui::Rect const geometry(Gui::Point(view_geometry.x, view_geometry.y),
|
||||||
view_geometry.y),
|
Gui::Area(view_geometry.w, view_geometry.h));
|
||||||
Nitpicker::Area(view_geometry.w,
|
gui->enqueue<Command::Geometry>(view_handle, geometry);
|
||||||
view_geometry.h));
|
Gui::Point const offset(view_geometry.buf_x, view_geometry.buf_y);
|
||||||
nitpicker->enqueue<Command::Geometry>(view_handle, geometry);
|
gui->enqueue<Command::Offset>(view_handle, offset);
|
||||||
Nitpicker::Point const offset(view_geometry.buf_x,
|
|
||||||
view_geometry.buf_y);
|
|
||||||
nitpicker->enqueue<Command::Offset>(view_handle, offset);
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
Nitpicker::Rect const
|
Gui::Rect const
|
||||||
geometry(Nitpicker::Point(mapToGlobal(mask().boundingRect().topLeft()).x(),
|
geometry(Gui::Point(mapToGlobal(mask().boundingRect().topLeft()).x(),
|
||||||
mapToGlobal(mask().boundingRect().topLeft()).y()),
|
mapToGlobal(mask().boundingRect().topLeft()).y()),
|
||||||
Nitpicker::Area(mask().boundingRect().width(),
|
Gui::Area(mask().boundingRect().width(),
|
||||||
mask().boundingRect().height()));
|
mask().boundingRect().height()));
|
||||||
nitpicker->enqueue<Command::Geometry>(view_handle, geometry);
|
gui->enqueue<Command::Geometry>(view_handle, geometry);
|
||||||
|
|
||||||
Nitpicker::Point const offset(view_geometry.buf_x, view_geometry.buf_y);
|
Gui::Point const offset(view_geometry.buf_x, view_geometry.buf_y);
|
||||||
nitpicker->enqueue<Command::Offset>(view_handle, offset);
|
gui->enqueue<Command::Offset>(view_handle, offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* bring the plugin view to the front of the Qt window */
|
/* bring the plugin view to the front of the Qt window */
|
||||||
QNitpickerPlatformWindow *platform_window =
|
QGenodePlatformWindow *platform_window =
|
||||||
dynamic_cast<QNitpickerPlatformWindow*>(window()->windowHandle()->handle());
|
dynamic_cast<QGenodePlatformWindow*>(window()->windowHandle()->handle());
|
||||||
|
|
||||||
Nitpicker::Session::View_handle const neighbor_handle =
|
Gui::Session::View_handle const neighbor_handle =
|
||||||
nitpicker->view_handle(platform_window->view_cap());
|
gui->view_handle(platform_window->view_cap());
|
||||||
|
|
||||||
nitpicker->enqueue<Command::To_front>(view_handle, neighbor_handle);
|
gui->enqueue<Command::To_front>(view_handle, neighbor_handle);
|
||||||
nitpicker->execute();
|
gui->execute();
|
||||||
|
|
||||||
nitpicker->release_view_handle(neighbor_handle);
|
gui->release_view_handle(neighbor_handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void QNitpickerViewWidget::focusInEvent(QFocusEvent *)
|
void QGenodeViewWidget::focusInEvent(QFocusEvent *)
|
||||||
{
|
{
|
||||||
QNitpickerPlatformWindow *platform_window =
|
QGenodePlatformWindow *platform_window =
|
||||||
dynamic_cast<QNitpickerPlatformWindow*>(window()->windowHandle()->handle());
|
dynamic_cast<QGenodePlatformWindow*>(window()->windowHandle()->handle());
|
||||||
|
|
||||||
platform_window->nitpicker().focus(nitpicker->rpc_cap());
|
platform_window->gui_session().focus(gui->rpc_cap());
|
||||||
}
|
}
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief A Qt Widget that can load a plugin application and show its Nitpicker view
|
* \brief A Qt Widget that can load a plugin application and show its GUI view
|
||||||
* \author Christian Prochaska
|
* \author Christian Prochaska
|
||||||
* \date 2010-08-26
|
* \date 2010-08-26
|
||||||
*/
|
*/
|
||||||
@ -18,7 +18,7 @@
|
|||||||
/* Qt includes */
|
/* Qt includes */
|
||||||
#include <QtGui>
|
#include <QtGui>
|
||||||
|
|
||||||
#include <qnitpickerplatformwindow.h>
|
#include <qgenodeplatformwindow.h>
|
||||||
|
|
||||||
#include <qpluginwidget/qpluginwidget.h>
|
#include <qpluginwidget/qpluginwidget.h>
|
||||||
|
|
||||||
@ -38,7 +38,7 @@ const char *config = " \
|
|||||||
<service name=\"RM\"/> \
|
<service name=\"RM\"/> \
|
||||||
<service name=\"ROM\"/> \
|
<service name=\"ROM\"/> \
|
||||||
<service name=\"Timer\"/> \
|
<service name=\"Timer\"/> \
|
||||||
<service name=\"Nitpicker\"/> \
|
<service name=\"Gui\"/> \
|
||||||
</parent-provides> \
|
</parent-provides> \
|
||||||
<default-route> \
|
<default-route> \
|
||||||
<any-service> <parent/> <any-child/> </any-service> \
|
<any-service> <parent/> <any-child/> </any-service> \
|
||||||
@ -89,7 +89,7 @@ class Signal_wait_thread : public QThread
|
|||||||
PluginStarter::PluginStarter(Libc::Env *env,
|
PluginStarter::PluginStarter(Libc::Env *env,
|
||||||
QUrl plugin_url, QString &args,
|
QUrl plugin_url, QString &args,
|
||||||
int max_width, int max_height,
|
int max_width, int max_height,
|
||||||
Nitpicker::View_capability parent_view)
|
Gui::View_capability parent_view)
|
||||||
:
|
:
|
||||||
_env(env),
|
_env(env),
|
||||||
_plugin_url(plugin_url),
|
_plugin_url(plugin_url),
|
||||||
@ -434,8 +434,8 @@ void QPluginWidget::showEvent(QShowEvent *event)
|
|||||||
|
|
||||||
if (!_plugin_starter_started) {
|
if (!_plugin_starter_started) {
|
||||||
|
|
||||||
QNitpickerPlatformWindow *platform_window =
|
QGenodePlatformWindow *platform_window =
|
||||||
dynamic_cast<QNitpickerPlatformWindow*>(window()->windowHandle()->handle());
|
dynamic_cast<QGenodePlatformWindow*>(window()->windowHandle()->handle());
|
||||||
|
|
||||||
assert(_env != nullptr);
|
assert(_env != nullptr);
|
||||||
|
|
||||||
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"Keys": [ "genode" ]
|
||||||
|
}
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief Nitpicker QPA plugin
|
* \brief Genode QPA plugin
|
||||||
* \author Christian Prochaska
|
* \author Christian Prochaska
|
||||||
* \date 2013-05-08
|
* \date 2013-05-08
|
||||||
*/
|
*/
|
||||||
@ -15,19 +15,19 @@
|
|||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
|
|
||||||
/* Qt includes */
|
/* Qt includes */
|
||||||
#include "qnitpickerintegrationplugin.h"
|
#include "qgenodeintegrationplugin.h"
|
||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
Genode::Env *QNitpickerIntegrationPlugin::_env = nullptr;
|
Genode::Env *QGenodeIntegrationPlugin::_env = nullptr;
|
||||||
|
|
||||||
void initialize_qt_gui(Genode::Env &env)
|
void initialize_qt_gui(Genode::Env &env)
|
||||||
{
|
{
|
||||||
QNitpickerIntegrationPlugin::env(env);
|
QGenodeIntegrationPlugin::env(env);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QStringList QNitpickerIntegrationPlugin::keys() const
|
QStringList QGenodeIntegrationPlugin::keys() const
|
||||||
{
|
{
|
||||||
QStringList list;
|
QStringList list;
|
||||||
list << "Gui";
|
list << "Gui";
|
||||||
@ -35,17 +35,17 @@ QStringList QNitpickerIntegrationPlugin::keys() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QPlatformIntegration *QNitpickerIntegrationPlugin::create(const QString& system, const QStringList& paramList)
|
QPlatformIntegration *QGenodeIntegrationPlugin::create(const QString& system, const QStringList& paramList)
|
||||||
{
|
{
|
||||||
Q_UNUSED(paramList);
|
Q_UNUSED(paramList);
|
||||||
if (system.toLower() == "nitpicker") {
|
if (system.toLower() == "genode") {
|
||||||
assert(_env != nullptr);
|
assert(_env != nullptr);
|
||||||
return new QNitpickerIntegration(*_env);
|
return new QGenodeIntegration(*_env);
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
Q_IMPORT_PLUGIN(QNitpickerIntegrationPlugin)
|
Q_IMPORT_PLUGIN(QGenodeIntegrationPlugin)
|
||||||
|
|
||||||
QT_END_NAMESPACE
|
QT_END_NAMESPACE
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief QNitpickerCursor
|
* \brief QGenodeCursor
|
||||||
* \author Christian Prochaska
|
* \author Christian Prochaska
|
||||||
* \date 2017-11-13
|
* \date 2017-11-13
|
||||||
*/
|
*/
|
||||||
@ -17,11 +17,11 @@
|
|||||||
|
|
||||||
/* Qt includes */
|
/* Qt includes */
|
||||||
#include <QtGui/QBitmap>
|
#include <QtGui/QBitmap>
|
||||||
#include "qnitpickercursor.h"
|
#include "qgenodecursor.h"
|
||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
QNitpickerCursor::QNitpickerCursor(Genode::Env &env)
|
QGenodeCursor::QGenodeCursor(Genode::Env &env)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
_shape_report_connection.construct(env, "shape", sizeof(Pointer::Shape_report));
|
_shape_report_connection.construct(env, "shape", sizeof(Pointer::Shape_report));
|
||||||
@ -30,7 +30,7 @@ QNitpickerCursor::QNitpickerCursor(Genode::Env &env)
|
|||||||
} catch (Genode::Service_denied) { }
|
} catch (Genode::Service_denied) { }
|
||||||
}
|
}
|
||||||
|
|
||||||
void QNitpickerCursor::changeCursor(QCursor *widgetCursor, QWindow *window)
|
void QGenodeCursor::changeCursor(QCursor *widgetCursor, QWindow *window)
|
||||||
{
|
{
|
||||||
Q_UNUSED(window);
|
Q_UNUSED(window);
|
||||||
|
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief QNitpickerCursor
|
* \brief QGenodeCursor
|
||||||
* \author Christian Prochaska
|
* \author Christian Prochaska
|
||||||
* \date 2017-11-13
|
* \date 2017-11-13
|
||||||
*/
|
*/
|
||||||
@ -12,8 +12,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
#ifndef _QNITPICKERCURSOR_H_
|
#ifndef _QGENODECURSOR_H_
|
||||||
#define _QNITPICKERCURSOR_H_
|
#define _QGENODECURSOR_H_
|
||||||
|
|
||||||
/* Genode includes */
|
/* Genode includes */
|
||||||
#include <base/attached_dataspace.h>
|
#include <base/attached_dataspace.h>
|
||||||
@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
class QNitpickerCursor : public QPlatformCursor
|
class QGenodeCursor : public QPlatformCursor
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
@ -35,11 +35,11 @@ class QNitpickerCursor : public QPlatformCursor
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
QNitpickerCursor(Genode::Env &env);
|
QGenodeCursor(Genode::Env &env);
|
||||||
|
|
||||||
virtual void changeCursor(QCursor *widgetCursor, QWindow *window) override;
|
virtual void changeCursor(QCursor *widgetCursor, QWindow *window) override;
|
||||||
};
|
};
|
||||||
|
|
||||||
QT_END_NAMESPACE
|
QT_END_NAMESPACE
|
||||||
|
|
||||||
#endif /* _QNITPICKERCURSOR_H_ */
|
#endif /* _QGENODECURSOR_H_ */
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* \brief QNitpickerGLContext
|
* \brief QGenodeGLContext
|
||||||
* \author Christian Prochaska
|
* \author Christian Prochaska
|
||||||
* \date 2013-11-18
|
* \date 2013-11-18
|
||||||
*/
|
*/
|
||||||
@ -25,14 +25,14 @@
|
|||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
|
|
||||||
/* local includes */
|
/* local includes */
|
||||||
#include "qnitpickerplatformwindow.h"
|
#include "qgenodeplatformwindow.h"
|
||||||
#include "qnitpickerglcontext.h"
|
#include "qgenodeglcontext.h"
|
||||||
|
|
||||||
static const bool qnglc_verbose = false;
|
static const bool qnglc_verbose = false;
|
||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
QNitpickerGLContext::QNitpickerGLContext(QOpenGLContext *context)
|
QGenodeGLContext::QGenodeGLContext(QOpenGLContext *context)
|
||||||
: QPlatformOpenGLContext()
|
: QPlatformOpenGLContext()
|
||||||
{
|
{
|
||||||
if (qnglc_verbose)
|
if (qnglc_verbose)
|
||||||
@ -65,14 +65,14 @@ QNitpickerGLContext::QNitpickerGLContext(QOpenGLContext *context)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool QNitpickerGLContext::makeCurrent(QPlatformSurface *surface)
|
bool QGenodeGLContext::makeCurrent(QPlatformSurface *surface)
|
||||||
{
|
{
|
||||||
if (qnglc_verbose)
|
if (qnglc_verbose)
|
||||||
Genode::log(__func__, " called");
|
Genode::log(__func__, " called");
|
||||||
|
|
||||||
doneCurrent();
|
doneCurrent();
|
||||||
|
|
||||||
QNitpickerPlatformWindow *w = static_cast<QNitpickerPlatformWindow*>(surface);
|
QGenodePlatformWindow *w = static_cast<QGenodePlatformWindow*>(surface);
|
||||||
|
|
||||||
Genode_egl_window egl_window = { w->geometry().width(),
|
Genode_egl_window egl_window = { w->geometry().width(),
|
||||||
w->geometry().height(),
|
w->geometry().height(),
|
||||||
@ -100,7 +100,7 @@ bool QNitpickerGLContext::makeCurrent(QPlatformSurface *surface)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void QNitpickerGLContext::doneCurrent()
|
void QGenodeGLContext::doneCurrent()
|
||||||
{
|
{
|
||||||
if (qnglc_verbose)
|
if (qnglc_verbose)
|
||||||
Genode::log(__func__, " called");
|
Genode::log(__func__, " called");
|
||||||
@ -110,12 +110,12 @@ void QNitpickerGLContext::doneCurrent()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void QNitpickerGLContext::swapBuffers(QPlatformSurface *surface)
|
void QGenodeGLContext::swapBuffers(QPlatformSurface *surface)
|
||||||
{
|
{
|
||||||
if (qnglc_verbose)
|
if (qnglc_verbose)
|
||||||
Genode::log(__func__, " called");
|
Genode::log(__func__, " called");
|
||||||
|
|
||||||
QNitpickerPlatformWindow *w = static_cast<QNitpickerPlatformWindow*>(surface);
|
QGenodePlatformWindow *w = static_cast<QGenodePlatformWindow*>(surface);
|
||||||
|
|
||||||
if (!eglSwapBuffers(_egl_display, w->egl_surface()))
|
if (!eglSwapBuffers(_egl_display, w->egl_surface()))
|
||||||
qFatal("eglSwapBuffers() failed");
|
qFatal("eglSwapBuffers() failed");
|
||||||
@ -124,7 +124,7 @@ void QNitpickerGLContext::swapBuffers(QPlatformSurface *surface)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QFunctionPointer QNitpickerGLContext::getProcAddress(const char *procName)
|
QFunctionPointer QGenodeGLContext::getProcAddress(const char *procName)
|
||||||
{
|
{
|
||||||
if (qnglc_verbose)
|
if (qnglc_verbose)
|
||||||
Genode::log("procName=", Genode::Cstring(procName), " , "
|
Genode::log("procName=", Genode::Cstring(procName), " , "
|
||||||
@ -134,7 +134,7 @@ QFunctionPointer QNitpickerGLContext::getProcAddress(const char *procName)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QSurfaceFormat QNitpickerGLContext::format() const
|
QSurfaceFormat QGenodeGLContext::format() const
|
||||||
{
|
{
|
||||||
return _format;
|
return _format;
|
||||||
}
|
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user