19 #ifndef MIR_SHELL_SINGLE_VISIBILITY_FOCUS_MECHANISM_H_
20 #define MIR_SHELL_SINGLE_VISIBILITY_FOCUS_MECHANISM_H_
29 namespace scene {
class SurfaceCoordinator;
class Surface; }
39 std::shared_ptr<scene::SurfaceCoordinator>
const& surface_coordinator);
42 void set_focus_to(std::shared_ptr<scene::Session>
const& new_focus);
49 std::shared_ptr<InputTargeter>
const input_targeter;
50 std::shared_ptr<scene::SurfaceCoordinator>
const surface_coordinator;
52 std::mutex surface_focus_lock;
53 std::weak_ptr<scene::Surface> currently_focused_surface;
60 #endif // MIR_SHELL_SINGLE_VISIBILITY_FOCUS_MECHANISM_H_
All things Mir.
Definition: aging_buffer.h:24
Interface used by the Shell to propagate changes in the focus model to interested views e...
Definition: focus_setter.h:33
virtual ~DefaultFocusMechanism()=default
DefaultFocusMechanism(std::shared_ptr< InputTargeter > const &input_targeter, std::shared_ptr< scene::SurfaceCoordinator > const &surface_coordinator)
void set_focus_to(std::shared_ptr< scene::Session > const &new_focus)
Definition: default_focus_mechanism.cpp:38
DefaultFocusMechanism & operator=(const DefaultFocusMechanism &)=delete
Definition: default_focus_mechanism.h:35