~cemil-azizoglu/mir/improve-raii-take2

« back to all changes in this revision

Viewing changes to examples/server_example_generic_shell.cpp

  • Committer: Cemil Azizoglu
  • Date: 2015-02-26 23:37:35 UTC
  • mfrom: (2323.1.24 development-branch)
  • Revision ID: cemil.azizoglu@canonical.com-20150226233735-zm2j3eunf26b2hgb
Merge trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
18
18
 
19
19
#include "server_example_generic_shell.h"
20
20
 
 
21
#include "mir/geometry/point.h"
21
22
#include "mir/scene/session.h"
 
23
#include "mir/scene/surface_coordinator.h"
22
24
#include "mir/scene/surface_creation_parameters.h"
23
25
 
24
26
namespace me = mir::examples;
34
36
    std::shared_ptr<ms::SurfaceCoordinator> const& surface_coordinator,
35
37
    std::shared_ptr<ms::SessionCoordinator> const& session_coordinator,
36
38
    std::shared_ptr<ms::PromptSessionManager> const& prompt_session_manager,
37
 
    std::function<std::shared_ptr<WindowManager>(shell::FocusController* focus_controller)> const& wm_builder) :
 
39
    std::function<std::shared_ptr<WindowManager>(FocusController* focus_controller)> const& wm_builder) :
38
40
    AbstractShell(input_targeter, surface_coordinator, session_coordinator, prompt_session_manager),
39
41
    window_manager(wm_builder(this))
40
42
{
122
124
{
123
125
    window_manager->remove_display(area);
124
126
}
 
127
 
 
128
std::shared_ptr<ms::Surface> me::GenericShell::focused_surface() const
 
129
{
 
130
    return msh::AbstractShell::focused_surface();
 
131
}
 
132
 
 
133
void me::GenericShell::set_focus_to(
 
134
    std::shared_ptr<ms::Session> const& focus_session,
 
135
    std::shared_ptr<ms::Surface> const& focus_surface)
 
136
{
 
137
    msh::AbstractShell::set_focus_to(focus_session, focus_surface);
 
138
}
 
139
 
 
140
auto me::GenericShell::surface_at(geometry::Point cursor) const
 
141
-> std::shared_ptr<scene::Surface>
 
142
{
 
143
    return surface_coordinator->surface_at(cursor);
 
144
}
 
145
 
 
146
void me::GenericShell::raise(std::weak_ptr<ms::Surface> const& surface)
 
147
{
 
148
    surface_coordinator->raise(surface);
 
149
}
 
150
 
 
151
void me::GenericShell::raise(SurfaceSet const& surfaces)
 
152
{
 
153
    surface_coordinator->raise(surfaces);
 
154
}
 
155
 
 
156
auto me::GenericShell::focused_session() const
 
157
-> std::shared_ptr<ms::Session>
 
158
{
 
159
    return focussed_application().lock();
 
160
}