|
|
|
#include "visibilitymanager.h"
|
|
|
|
#include "visibilitymanager_p.h"
|
|
|
|
|
|
|
|
namespace Latte {
|
|
|
|
|
|
|
|
//! BEGIN: VisiblityManagerPrivate implementation
|
|
|
|
VisibilityManagerPrivate::VisibilityManagerPrivate(PlasmaQuick::ContainmentView *view, VisibilityManager *q)
|
|
|
|
: QObject(view), q(q)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
VisibilityManagerPrivate::~VisibilityManagerPrivate()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManagerPrivate::setMode(Dock::Visibility mode)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManagerPrivate::setIsHidden(bool isHidden)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManagerPrivate::setTimerShow(int msec)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManagerPrivate::setTimerHide(int msec)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManagerPrivate::raiseDock(bool raise)
|
|
|
|
{
|
|
|
|
if (raise) {
|
|
|
|
timerHide.stop();
|
|
|
|
|
|
|
|
if (!timerShow.isActive())
|
|
|
|
timerShow.start();
|
|
|
|
} else {
|
|
|
|
timerShow.stop();
|
|
|
|
|
|
|
|
if (!timerHide.isActive())
|
|
|
|
timerHide.start();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManagerPrivate::setDockRect(const QRect &rect)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManagerPrivate::windowAdded(WId id)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManagerPrivate::dodgeActive(WId id)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManagerPrivate::dodgeWindows(WId id)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManagerPrivate::checkAllWindows()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
bool VisibilityManagerPrivate::intersects(const WindowInfoWrap &info)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManagerPrivate::saveConfig()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManagerPrivate::restoreConfig()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
bool VisibilityManagerPrivate::event(QEvent *ev)
|
|
|
|
{
|
|
|
|
if (ev->type() == QEvent::Enter && !containsMouse) {
|
|
|
|
containsMouse = true;
|
|
|
|
emit q->containsMouseChanged();
|
|
|
|
|
|
|
|
if (mode == Dock::AutoHide)
|
|
|
|
raiseDock(true);
|
|
|
|
|
|
|
|
} else if (ev->type() == QEvent::Leave && containsMouse) {
|
|
|
|
containsMouse = false;
|
|
|
|
emit q->containsMouseChanged();
|
|
|
|
|
|
|
|
if (mode == Dock::AutoHide)
|
|
|
|
raiseDock(false);
|
|
|
|
}
|
|
|
|
|
|
|
|
return QObject::event(ev);
|
|
|
|
}
|
|
|
|
|
|
|
|
//! END: VisibilityManager implementation
|
|
|
|
|
|
|
|
//! BEGIN: VisiblityManager implementation
|
|
|
|
VisibilityManager::VisibilityManager(PlasmaQuick::ContainmentView *view)
|
|
|
|
: d(new VisibilityManagerPrivate(view, this))
|
|
|
|
{
|
|
|
|
d->restoreConfig();
|
|
|
|
}
|
|
|
|
|
|
|
|
VisibilityManager::~VisibilityManager()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
Dock::Visibility VisibilityManager::mode() const
|
|
|
|
{
|
|
|
|
return d->mode;
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManager::setMode(Dock::Visibility mode)
|
|
|
|
{
|
|
|
|
d->setMode(mode);
|
|
|
|
}
|
|
|
|
|
|
|
|
bool VisibilityManager::isHidden() const
|
|
|
|
{
|
|
|
|
return d->isHidden;
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManager::setHidden(bool isHidden)
|
|
|
|
{
|
|
|
|
d->setIsHidden(isHidden);
|
|
|
|
}
|
|
|
|
|
|
|
|
bool VisibilityManager::containsMouse() const
|
|
|
|
{
|
|
|
|
return d->containsMouse;
|
|
|
|
}
|
|
|
|
|
|
|
|
int VisibilityManager::timerShow() const
|
|
|
|
{
|
|
|
|
return d->timerShow.interval();
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManager::setTimerShow(int msec)
|
|
|
|
{
|
|
|
|
d->setTimerShow(msec);
|
|
|
|
}
|
|
|
|
|
|
|
|
int VisibilityManager::timerHide() const
|
|
|
|
{
|
|
|
|
return d->timerHide.interval();
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManager::setTimerHide(int msec)
|
|
|
|
{
|
|
|
|
d->setTimerHide(msec);
|
|
|
|
}
|
|
|
|
|
|
|
|
void VisibilityManager::updateDockGeometry(const QRect &geometry)
|
|
|
|
{
|
|
|
|
d->setDockRect(geometry);
|
|
|
|
}
|
|
|
|
|
|
|
|
//! END: VisibilityManager implementation
|
|
|
|
}
|
|
|
|
|
|
|
|
#include "abstractwindowinterface.h"
|
|
|
|
#include "xwindowinterface.h"
|
|
|
|
#include "plasmaquick/containmentview.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|