~unity-team/platform-api/mir-support

« back to all changes in this revision

Viewing changes to src/mirserver/ubuntu_application_api_mirserver.cpp

  • Committer: Robert Carr
  • Date: 2013-05-14 16:52:01 UTC
  • Revision ID: robert.carr@canonical.com-20130514165201-hf7r3tgeajzbhaan
Update to Mir API changes

Show diffs side-by-side

added added

removed removed

Lines of Context:
48
48
typedef struct {
49
49
    std::shared_ptr<msh::SessionManager> session_manager;
50
50
    std::shared_ptr<mg::Platform> graphics_platform;
 
51
    std::shared_ptr<mg::InternalClient> client;
51
52
    std::shared_ptr<mg::Display> display;
52
53
    std::shared_ptr<mircv::InputPlatform> input_platform;
53
54
} ubuntu_application_ui_mirserver_context;
56
57
typedef struct {
57
58
    std::shared_ptr<mf::Session> session; // TODO: Split
58
59
    std::shared_ptr<msh::Surface> surface;
59
 
    std::shared_ptr<mg::InternalClient> client;
60
 
    
61
60
    std::shared_ptr<mircv::InputReceiverThread> input_thread;
62
61
    input_event_cb input_cb;
63
62
    void *input_ctx;
81
80
{
82
81
    global_context.session_manager = session_manager;
83
82
    global_context.graphics_platform = graphics_platform;
 
83
    global_context.client = graphics_platform->create_internal_client();
84
84
    global_context.display = display;
85
85
    global_context.input_platform = mircv::InputPlatform::create();
86
86
}
117
117
}
118
118
 
119
119
EGLNativeDisplayType
120
 
ubuntu_application_ui_get_native_display(ubuntu_application_ui_surface s)
 
120
ubuntu_application_ui_get_native_display()
121
121
{
122
 
    auto ui_surf = ui_surf_mir_surf(s);
123
 
    return ui_surf->client->egl_native_display();
 
122
    return global_context.client->egl_native_display();
124
123
}
125
124
 
126
125
void
216
215
    ubuntu_application_ui_mirserver_surface *ui_surf = new ubuntu_application_ui_mirserver_surface;
217
216
    ui_surf->session = session;
218
217
    ui_surf->surface = surface;
219
 
    ui_surf->client = global_context.graphics_platform->create_internal_client(surface);
220
218
    ui_surf->input_cb = cb;
221
219
    ui_surf->input_ctx = ctx;
222
220
    *out_surface = ui_surf;
246
244
ubuntu_application_ui_surface_to_native_window_type(ubuntu_application_ui_surface s)
247
245
{
248
246
    auto ui_surf = ui_surf_mir_surf(s);
249
 
    return ui_surf->client->egl_native_window();
 
247
    return global_context.client->egl_native_window(ui_surf->surface);
250
248
}
251
249
 
252
250
void