Logo Search packages:      
Sourcecode: unity-2d version File versions  Download package

Public Member Functions | Private Types | Private Slots | Private Member Functions | Private Attributes

VisibilityController Class Reference

#include <visibilitycontroller.h>

Collaboration diagram for VisibilityController:
Collaboration graph
[legend]

List of all members.

Public Member Functions

Q_INVOKABLE void beginForceVisible (const QString &service=QString())
Q_INVOKABLE void endForceVisible (const QString &service=QString())
 VisibilityController (Unity2dPanel *panel)

Private Types

enum  AutoHideMode { ManualHide, AutoHide, IntelliHide }
typedef QHash< QString, int > ForceVisibleCountHash

Private Slots

void slotServiceUnregistered (const QString &)
void update ()
void updatePanelVisibility (bool)

Private Member Functions

 Q_DISABLE_COPY (VisibilityController)
void setBehavior (AbstractVisibilityBehavior *)

Private Attributes

QScopedPointer
< AbstractVisibilityBehavior
m_behavior
QDBusServiceWatcher * m_dbusWatcher
ForceVisibleCountHash m_forceVisibleCountHash
GConfItemQmlWrapper * m_hideModeKey
Unity2dPanelm_panel

Detailed Description

This class monitors the hide_mode gconf key and set up an instance of AbstractVisibilityBehavior depending on its value

It also tracks requests for forced visibility: the launcher or another application (through launcher DBus API) can request the launcher to stay visible for a while, for example because an application requests attention or because the dash is visible. This is handled by the beginForceVisible() and endForceVisible() methods.

Internally it maintains a refcount-per-app of forced visibility requests so that it can restore the default mode if an application quits without calling endForceVisible().

Definition at line 51 of file visibilitycontroller.h.


The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index