19 #ifndef MIR_SHELL_SINGLE_VISIBILITY_FOCUS_MECHANISM_H_
20 #define MIR_SHELL_SINGLE_VISIBILITY_FOCUS_MECHANISM_H_
29 namespace scene {
class SurfaceRanker; }
40 std::shared_ptr<scene::SurfaceRanker>
const& surface_controller);
43 void set_focus_to(std::shared_ptr<shell::Session>
const& new_focus);
50 std::shared_ptr<InputTargeter>
const input_targeter;
51 std::shared_ptr<scene::SurfaceRanker>
const surface_controller;
53 std::mutex surface_focus_lock;
54 std::weak_ptr<Surface> currently_focused_surface;
61 #endif // MIR_SHELL_SINGLE_VISIBILITY_FOCUS_MECHANISM_H_
Interface used by the Shell to propagate changes in the focus model to interested views e...
Definition: focus_setter.h:33
virtual ~DefaultFocusMechanism()=default
void set_focus_to(std::shared_ptr< shell::Session > const &new_focus)
Definition: default_focus_mechanism.cpp:38
DefaultFocusMechanism(std::shared_ptr< InputTargeter > const &input_targeter, std::shared_ptr< scene::SurfaceRanker > const &surface_controller)
DefaultFocusMechanism & operator=(const DefaultFocusMechanism &)=delete
Definition: default_focus_mechanism.h:36