KWin
Loading...
Searching...
No Matches
src
plugins
blendchanges
blendchanges.h
Go to the documentation of this file.
1
/*
2
KWin - the KDE window manager
3
This file is part of the KDE project.
4
5
SPDX-FileCopyrightText: 2022 David Edmundson <davidedmundson@kde.org>
6
7
SPDX-License-Identifier: GPL-2.0-or-later
8
*/
9
#pragma once
10
#include "
effect/offscreeneffect.h
"
11
#include "
effect/timeline.h
"
12
#include <chrono>
13
14
namespace
KWin
15
{
16
17
class
BlendChanges
:
public
CrossFadeEffect
18
{
19
Q_OBJECT
20
21
public
:
22
BlendChanges
();
23
~BlendChanges
()
override
;
24
25
static
bool
supported
();
26
27
// Effect interface
28
void
prePaintScreen
(
ScreenPrePaintData
&data, std::chrono::milliseconds presentTime)
override
;
29
void
postPaintScreen
()
override
;
30
void
paintWindow
(
const
RenderTarget
&renderTarget,
const
RenderViewport
&viewport,
EffectWindow
*w,
int
mask, QRegion region,
WindowPaintData
&data)
override
;
31
32
bool
isActive
()
const override
;
33
34
int
requestedEffectChainPosition
()
const override
35
{
36
return
80;
37
}
38
39
public
Q_SLOTS:
45
void
start
(
int
delay = 300);
46
47
private
:
48
TimeLine
m_timeline;
49
enum
State {
50
Off,
51
ShowingCache,
52
Blending
53
};
54
State m_state = Off;
55
};
56
57
}
// namespace KWin
KWin::BlendChanges
Definition
blendchanges.h:18
KWin::BlendChanges::prePaintScreen
void prePaintScreen(ScreenPrePaintData &data, std::chrono::milliseconds presentTime) override
Definition
blendchanges.cpp:89
KWin::BlendChanges::isActive
bool isActive() const override
Definition
blendchanges.cpp:64
KWin::BlendChanges::paintWindow
void paintWindow(const RenderTarget &renderTarget, const RenderViewport &viewport, EffectWindow *w, int mask, QRegion region, WindowPaintData &data) override
Definition
blendchanges.cpp:83
KWin::BlendChanges::postPaintScreen
void postPaintScreen() override
Definition
blendchanges.cpp:69
KWin::BlendChanges::requestedEffectChainPosition
int requestedEffectChainPosition() const override
Definition
blendchanges.h:34
KWin::BlendChanges::~BlendChanges
~BlendChanges() override
KWin::BlendChanges::BlendChanges
BlendChanges()
Definition
blendchanges.cpp:19
KWin::BlendChanges::supported
static bool supported()
Definition
blendchanges.cpp:32
KWin::BlendChanges::start
void start(int delay=300)
Definition
blendchanges.cpp:37
KWin::CrossFadeEffect
Definition
offscreeneffect.h:98
KWin::EffectWindow
Representation of a window used by/for Effect classes.
Definition
effectwindow.cpp:24
KWin::RenderTarget
Definition
rendertarget.h:21
KWin::RenderViewport
Definition
renderviewport.h:21
KWin::ScreenPrePaintData
Definition
effect.h:462
KWin::TimeLine
Definition
timeline.cpp:13
KWin::WindowPaintData
Definition
effect.h:300
KWin
Definition
activation_test.cpp:20
offscreeneffect.h
timeline.h
Generated on Sat Feb 17 2024 01:42:09 for KWin by
1.10.0