KWin
Loading...
Searching...
No Matches
Public Types | Signals | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Properties | List of all members
KWin::EffectWindow Class Reference

Representation of a window used by/for Effect classes. More...

#include <effectwindow.h>

Inheritance diagram for KWin::EffectWindow:

Public Types

enum  { PAINT_DISABLED = 1 << 0 , PAINT_DISABLED_BY_DESKTOP = 1 << 1 , PAINT_DISABLED_BY_MINIMIZE = 1 << 2 , PAINT_DISABLED_BY_ACTIVITY = 1 << 3 }
 

Signals

void windowStartUserMovedResized (KWin::EffectWindow *w)
 
void windowStepUserMovedResized (KWin::EffectWindow *w, const QRectF &geometry)
 
void windowFinishUserMovedResized (KWin::EffectWindow *w)
 
void windowMaximizedStateChanged (KWin::EffectWindow *w, bool horizontal, bool vertical)
 
void windowMaximizedStateAboutToChange (KWin::EffectWindow *w, bool horizontal, bool vertical)
 
void windowFrameGeometryChanged (KWin::EffectWindow *window, const QRectF &oldGeometry)
 
void windowFrameGeometryAboutToChange (KWin::EffectWindow *window)
 
void windowOpacityChanged (KWin::EffectWindow *w, qreal oldOpacity, qreal newOpacity)
 
void minimizedChanged (KWin::EffectWindow *w)
 
void windowModalityChanged (KWin::EffectWindow *w)
 
void windowUnresponsiveChanged (KWin::EffectWindow *w, bool unresponsive)
 
void windowDamaged (KWin::EffectWindow *w)
 
void windowKeepAboveChanged (KWin::EffectWindow *w)
 
void windowKeepBelowChanged (KWin::EffectWindow *w)
 
void windowFullScreenChanged (KWin::EffectWindow *w)
 
void windowDecorationChanged (KWin::EffectWindow *window)
 
void windowExpandedGeometryChanged (KWin::EffectWindow *window)
 
void windowDesktopsChanged (KWin::EffectWindow *window)
 
void windowShown (KWin::EffectWindow *w)
 
void windowHidden (KWin::EffectWindow *w)
 

Public Member Functions

 Private (EffectWindow *q, WindowItem *windowItem)
 
 EffectWindow (WindowItem *windowItem)
 
 ~EffectWindow () override
 
Q_SCRIPTABLE void addRepaint (const QRect &r)
 
Q_SCRIPTABLE void addRepaint (int x, int y, int w, int h)
 
Q_SCRIPTABLE void addRepaintFull ()
 
Q_SCRIPTABLE void addLayerRepaint (const QRect &r)
 
Q_SCRIPTABLE void addLayerRepaint (int x, int y, int w, int h)
 
void refWindow ()
 
void unrefWindow ()
 
bool isDeleted () const
 
bool isHidden () const
 
bool isHiddenByShowDesktop () const
 
bool isMinimized () const
 
double opacity () const
 
bool isOnCurrentActivity () const
 
Q_SCRIPTABLE bool isOnActivity (const QString &id) const
 
bool isOnAllActivities () const
 
QStringList activities () const
 
Q_SCRIPTABLE bool isOnDesktop (KWin::VirtualDesktop *desktop) const
 
bool isOnCurrentDesktop () const
 
bool isOnAllDesktops () const
 
QList< KWin::VirtualDesktop * > desktops () const
 
qreal x () const
 
qreal y () const
 
qreal width () const
 
qreal height () const
 
QSizeF basicUnit () const
 
QRectF frameGeometry () const
 
QRectF bufferGeometry () const
 
QRectF clientGeometry () const
 
QRectF expandedGeometry () const
 
Outputscreen () const
 
QPointF pos () const
 
QSizeF size () const
 
QRectF rect () const
 
bool isMovable () const
 
bool isMovableAcrossScreens () const
 
bool isUserMove () const
 
bool isUserResize () const
 
QRectF iconGeometry () const
 
QRectF contentsRect () const
 
QRectF decorationInnerRect () const
 
bool hasDecoration () const
 
bool decorationHasAlpha () const
 
KDecoration2::Decoration * decoration () const
 
QByteArray readProperty (long atom, long type, int format) const
 
void deleteProperty (long atom) const
 
QString caption () const
 
QIcon icon () const
 
QString windowClass () const
 
QString windowRole () const
 
const EffectWindowGroupgroup () const
 
bool isDesktop () const
 
bool isDock () const
 
bool isToolbar () const
 
bool isMenu () const
 
bool isNormalWindow () const
 
bool isSpecialWindow () const
 
bool isDialog () const
 
bool isSplash () const
 
bool isUtility () const
 
bool isDropdownMenu () const
 
bool isPopupMenu () const
 
bool isTooltip () const
 
bool isNotification () const
 
bool isCriticalNotification () const
 
bool isAppletPopup () const
 
bool isOnScreenDisplay () const
 
bool isComboBox () const
 
bool isDNDIcon () const
 
NET::WindowType windowType () const
 
bool isManaged () const
 
bool acceptsFocus () const
 
bool keepAbove () const
 
bool keepBelow () const
 
bool isModal () const
 
Q_SCRIPTABLE KWin::EffectWindowfindModal ()
 
Q_SCRIPTABLE KWin::EffectWindowtransientFor ()
 
Q_SCRIPTABLE QList< KWin::EffectWindow * > mainWindows () const
 
bool isSkipSwitcher () const
 
void setMinimized (bool minimize)
 
void minimize ()
 
void unminimize ()
 
Q_SCRIPTABLE void closeWindow ()
 
bool isVisible () const
 
bool skipsCloseAnimation () const
 
SurfaceInterfacesurface () const
 
bool isFullScreen () const
 
bool isUnresponsive () const
 
bool isWaylandClient () const
 
bool isX11Client () const
 
bool isPopupWindow () const
 
QWindow * internalWindow () const
 
bool isOutline () const
 
bool isLockScreen () const
 
pid_t pid () const
 
qlonglong windowId () const
 
QUuid internalId () const
 
bool isInputMethod () const
 
Q_SCRIPTABLE void setData (int role, const QVariant &data)
 
Q_SCRIPTABLE QVariant data (int role) const
 
Windowwindow () const
 
WindowItemwindowItem () const
 
void elevate (bool elevate)
 

Public Attributes

EffectWindowq
 
Windowm_window
 
WindowItemm_windowItem
 
QHash< int, QVariant > dataMap
 
bool managed = false
 
bool m_waylandWindow
 
bool m_x11Window
 

Protected Member Functions

void refVisible (const EffectWindowVisibleRef *holder)
 
void unrefVisible (const EffectWindowVisibleRef *holder)
 

Protected Attributes

friend EffectWindowVisibleRef
 

Properties

QRectF geometry
 
QRectF expandedGeometry
 
qreal height
 
qreal opacity
 
QPointF pos
 
KWin::Outputscreen
 
QSizeF size
 
qreal width
 
qreal x
 
qreal y
 
QList< KWin::VirtualDesktop * > desktops
 
bool onAllDesktops
 
bool onCurrentDesktop
 
QRectF rect
 
QString windowClass
 
QString windowRole
 
bool desktopWindow
 
bool dock
 
bool toolbar
 
bool menu
 
bool normalWindow
 
bool dialog
 
bool splash
 
bool utility
 
bool dropdownMenu
 
bool popupMenu
 
bool tooltip
 
bool notification
 
bool criticalNotification
 
bool onScreenDisplay
 
bool comboBox
 
bool dndIcon
 
int windowType
 
bool deleted
 
QString caption
 
bool keepAbove
 
bool keepBelow
 
bool minimized
 
bool modal
 
bool moveable
 
bool moveableAcrossScreens
 
QSizeF basicUnit
 
bool move
 
bool resize
 
QRectF iconGeometry
 
bool specialWindow
 
QIcon icon
 
bool skipSwitcher
 
QRectF contentsRect
 
QRectF decorationInnerRect
 
bool hasDecoration
 
QStringList activities
 
bool onCurrentActivity
 
bool onAllActivities
 
bool decorationHasAlpha
 
bool visible
 
bool skipsCloseAnimation
 
bool fullScreen
 
bool unresponsive
 
bool waylandClient
 
bool x11Client
 
bool popupWindow
 
QWindow * internalWindow
 
bool outline
 
pid_t pid
 
bool lockScreen
 
bool hiddenByShowDesktop
 

Detailed Description

Representation of a window used by/for Effect classes.

The purpose is to hide internal data and also to serve as a single representation for the case when Client/Unmanaged becomes Deleted.

Definition at line 23 of file effectwindow.cpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Flags explaining why painting should be disabled

Enumerator
PAINT_DISABLED 

Window will not be painted

PAINT_DISABLED_BY_DESKTOP 

Window will not be painted because of which desktop it's on

PAINT_DISABLED_BY_MINIMIZE 

Window will not be painted because it is minimized

PAINT_DISABLED_BY_ACTIVITY 

Window will not be painted because it's not on the current activity

Definition at line 331 of file effectwindow.h.

Constructor & Destructor Documentation

◆ EffectWindow()

KWin::EffectWindow::EffectWindow ( WindowItem * windowItem)
explicit

Definition at line 44 of file effectwindow.cpp.

◆ ~EffectWindow()

KWin::EffectWindow::~EffectWindow ( )
override

Definition at line 122 of file effectwindow.cpp.

Member Function Documentation

◆ acceptsFocus()

bool KWin::EffectWindow::acceptsFocus ( ) const

Returns whether or not the window can accept keyboard focus.

◆ activities()

QStringList KWin::EffectWindow::activities ( ) const

◆ addLayerRepaint() [1/2]

void KWin::EffectWindow::addLayerRepaint ( const QRect & r)

Definition at line 209 of file effectwindow.cpp.

◆ addLayerRepaint() [2/2]

void KWin::EffectWindow::addLayerRepaint ( int x,
int y,
int w,
int h )
inline

Definition at line 989 of file effectwindow.h.

◆ addRepaint() [1/2]

void KWin::EffectWindow::addRepaint ( const QRect & r)

Definition at line 199 of file effectwindow.cpp.

◆ addRepaint() [2/2]

void KWin::EffectWindow::addRepaint ( int x,
int y,
int w,
int h )
inline

Definition at line 984 of file effectwindow.h.

◆ addRepaintFull()

void KWin::EffectWindow::addRepaintFull ( )

Definition at line 204 of file effectwindow.cpp.

◆ basicUnit()

QSizeF KWin::EffectWindow::basicUnit ( ) const

By how much the window wishes to grow/shrink at least. Usually QSize(1,1). MAY BE DISOBEYED BY THE WM! It's only for information, do NOT rely on it at all.

Definition at line 329 of file effectwindow.cpp.

◆ bufferGeometry()

QRectF KWin::EffectWindow::bufferGeometry ( ) const

Returns the geometry of the pixmap or buffer attached to this window.

For X11 clients, this method returns server-side geometry of the Window.

For Wayland clients, this method returns rectangle that the main surface occupies on the screen, in global screen coordinates.

Since
5.18

◆ caption()

QString KWin::EffectWindow::caption ( ) const

◆ clientGeometry()

QRectF KWin::EffectWindow::clientGeometry ( ) const

◆ closeWindow()

void KWin::EffectWindow::closeWindow ( )

Definition at line 464 of file effectwindow.cpp.

◆ contentsRect()

QRectF KWin::EffectWindow::contentsRect ( ) const

Geometry of the actual window contents inside the whole (including decorations) window.

Definition at line 319 of file effectwindow.cpp.

◆ data()

QVariant KWin::EffectWindow::data ( int role) const

Definition at line 440 of file effectwindow.cpp.

◆ decoration()

KDecoration2::Decoration * KWin::EffectWindow::decoration ( ) const

Returns the decoration

Since
5.25

Definition at line 342 of file effectwindow.cpp.

◆ decorationHasAlpha()

bool KWin::EffectWindow::decorationHasAlpha ( ) const

◆ decorationInnerRect()

QRectF KWin::EffectWindow::decorationInnerRect ( ) const

Geometry of the transparent rect in the decoration. May be different from contentsRect() if the decoration is extended into the client area.

Since
4.5

Definition at line 337 of file effectwindow.cpp.

◆ deleteProperty()

void KWin::EffectWindow::deleteProperty ( long atom) const

Definition at line 371 of file effectwindow.cpp.

◆ desktops()

QList< KWin::VirtualDesktop * > KWin::EffectWindow::desktops ( ) const

All the desktops by number that the window is in. On X11 this list will always have a length of 1, on Wayland can be any subset. If the list is empty it means the window is on all desktops

◆ elevate()

void KWin::EffectWindow::elevate ( bool elevate)

Definition at line 445 of file effectwindow.cpp.

◆ expandedGeometry()

QRectF KWin::EffectWindow::expandedGeometry ( ) const

Geometry of the window including decoration and potentially shadows. May be different from geometry() if the window has a shadow.

Since
4.9

◆ findModal()

EffectWindow * KWin::EffectWindow::findModal ( )

Definition at line 383 of file effectwindow.cpp.

◆ frameGeometry()

QRectF KWin::EffectWindow::frameGeometry ( ) const

Returns the geometry of the window excluding server-side and client-side drop-shadows.

Since
5.18

◆ group()

const EffectWindowGroup * KWin::EffectWindow::group ( ) const

Definition at line 214 of file effectwindow.cpp.

◆ hasDecoration()

bool KWin::EffectWindow::hasDecoration ( ) const

Definition at line 177 of file effectwindow.cpp.

◆ height()

qreal KWin::EffectWindow::height ( ) const

◆ icon()

QIcon KWin::EffectWindow::icon ( ) const

◆ iconGeometry()

QRectF KWin::EffectWindow::iconGeometry ( ) const

◆ internalId()

QUuid KWin::EffectWindow::internalId ( ) const

Returns the internal id of the window that uniquely identifies it. The main difference between internalId() and windowId() is that the latter one works as expected only on X11, while the former is unique regardless of the window system.

Note that the internaId() has special meaning only to kwin.

Since
5.24

◆ internalWindow()

QWindow * KWin::EffectWindow::internalWindow ( ) const
Since
5.16

Definition at line 403 of file effectwindow.cpp.

◆ isAppletPopup()

bool KWin::EffectWindow::isAppletPopup ( ) const

Returns whether the window is a window used for applet popups.

◆ isComboBox()

bool KWin::EffectWindow::isComboBox ( ) const

Returns whether the window is a combobox popup. See _NET_WM_WINDOW_TYPE_COMBO at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isCriticalNotification()

bool KWin::EffectWindow::isCriticalNotification ( ) const

Returns whether the window is a window with a critical notification. using the non-standard _KDE_NET_WM_WINDOW_TYPE_CRITICAL_NOTIFICATION

◆ isDeleted()

bool KWin::EffectWindow::isDeleted ( ) const

◆ isDesktop()

bool KWin::EffectWindow::isDesktop ( ) const

Returns whether the window is a desktop background window (the one with wallpaper). See _NET_WM_WINDOW_TYPE_DESKTOP at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isDialog()

bool KWin::EffectWindow::isDialog ( ) const

Returns whether the window is a dialog window. See _NET_WM_WINDOW_TYPE_DIALOG at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isDNDIcon()

bool KWin::EffectWindow::isDNDIcon ( ) const

Returns whether the window is a Drag&Drop icon. See _NET_WM_WINDOW_TYPE_DND at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isDock()

bool KWin::EffectWindow::isDock ( ) const

Returns whether the window is a dock (i.e. a panel). See _NET_WM_WINDOW_TYPE_DOCK at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isDropdownMenu()

bool KWin::EffectWindow::isDropdownMenu ( ) const

Returns whether the window is a dropdown menu (i.e. a popup directly or indirectly open from the applications menubar). See _NET_WM_WINDOW_TYPE_DROPDOWN_MENU at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isFullScreen()

bool KWin::EffectWindow::isFullScreen ( ) const
Since
5.6

◆ isHidden()

bool KWin::EffectWindow::isHidden ( ) const

◆ isHiddenByShowDesktop()

bool KWin::EffectWindow::isHiddenByShowDesktop ( ) const

◆ isInputMethod()

bool KWin::EffectWindow::isInputMethod ( ) const
Since
6.0

◆ isLockScreen()

bool KWin::EffectWindow::isLockScreen ( ) const
Since
5.22

◆ isManaged()

bool KWin::EffectWindow::isManaged ( ) const

Returns whether the window is managed by KWin (it has control over its placement and other aspects, as opposed to override-redirect windows that are entirely handled by the application).

Definition at line 471 of file effectwindow.cpp.

◆ isMenu()

bool KWin::EffectWindow::isMenu ( ) const

Returns whether the window is a torn-off menu. See _NET_WM_WINDOW_TYPE_MENU at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isMinimized()

bool KWin::EffectWindow::isMinimized ( ) const

◆ isModal()

bool KWin::EffectWindow::isModal ( ) const

◆ isMovable()

bool KWin::EffectWindow::isMovable ( ) const

◆ isMovableAcrossScreens()

bool KWin::EffectWindow::isMovableAcrossScreens ( ) const

◆ isNormalWindow()

bool KWin::EffectWindow::isNormalWindow ( ) const

Returns whether the window is a "normal" window, i.e. an application or any other window for which none of the specialized window types fit. See _NET_WM_WINDOW_TYPE_NORMAL at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isNotification()

bool KWin::EffectWindow::isNotification ( ) const

Returns whether the window is a window with a notification. See _NET_WM_WINDOW_TYPE_NOTIFICATION at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isOnActivity()

bool KWin::EffectWindow::isOnActivity ( const QString & id) const

Definition at line 136 of file effectwindow.cpp.

◆ isOnAllActivities()

bool KWin::EffectWindow::isOnAllActivities ( ) const

Definition at line 142 of file effectwindow.cpp.

◆ isOnAllDesktops()

bool KWin::EffectWindow::isOnAllDesktops ( ) const

Definition at line 172 of file effectwindow.cpp.

◆ isOnCurrentActivity()

bool KWin::EffectWindow::isOnCurrentActivity ( ) const

Definition at line 156 of file effectwindow.cpp.

◆ isOnCurrentDesktop()

bool KWin::EffectWindow::isOnCurrentDesktop ( ) const

Definition at line 161 of file effectwindow.cpp.

◆ isOnDesktop()

bool KWin::EffectWindow::isOnDesktop ( KWin::VirtualDesktop * desktop) const

Definition at line 166 of file effectwindow.cpp.

◆ isOnScreenDisplay()

bool KWin::EffectWindow::isOnScreenDisplay ( ) const

Returns whether the window is an on screen display window using the non-standard _KDE_NET_WM_WINDOW_TYPE_ON_SCREEN_DISPLAY

◆ isOutline()

bool KWin::EffectWindow::isOutline ( ) const
Since
5.16

◆ isPopupMenu()

bool KWin::EffectWindow::isPopupMenu ( ) const

Returns whether the window is a popup menu (that is not a torn-off or dropdown menu). See _NET_WM_WINDOW_TYPE_POPUP_MENU at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isPopupWindow()

bool KWin::EffectWindow::isPopupWindow ( ) const
Since
5.15

◆ isSkipSwitcher()

bool KWin::EffectWindow::isSkipSwitcher ( ) const

Returns whether the window should be excluded from window switching effects.

Since
4.5

◆ isSpecialWindow()

bool KWin::EffectWindow::isSpecialWindow ( ) const

Returns whether the window is any of special windows types (desktop, dock, splash, ...), i.e. window types that usually don't have a window frame and the user does not use window management (moving, raising,...) on them.

◆ isSplash()

bool KWin::EffectWindow::isSplash ( ) const

Returns whether the window is a splashscreen. Note that many (especially older) applications do not support marking their splash windows with this type. See _NET_WM_WINDOW_TYPE_SPLASH at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isToolbar()

bool KWin::EffectWindow::isToolbar ( ) const

Returns whether the window is a standalone (detached) toolbar window. See _NET_WM_WINDOW_TYPE_TOOLBAR at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isTooltip()

bool KWin::EffectWindow::isTooltip ( ) const

Returns whether the window is a tooltip. See _NET_WM_WINDOW_TYPE_TOOLTIP at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isUnresponsive()

bool KWin::EffectWindow::isUnresponsive ( ) const
Since
5.10

◆ isUserMove()

bool KWin::EffectWindow::isUserMove ( ) const

◆ isUserResize()

bool KWin::EffectWindow::isUserResize ( ) const

◆ isUtility()

bool KWin::EffectWindow::isUtility ( ) const

Returns whether the window is a utility window, such as a tool window. See _NET_WM_WINDOW_TYPE_UTILITY at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

◆ isVisible()

bool KWin::EffectWindow::isVisible ( ) const
Since
4.11

Definition at line 182 of file effectwindow.cpp.

◆ isWaylandClient()

bool KWin::EffectWindow::isWaylandClient ( ) const
Since
5.15

Definition at line 476 of file effectwindow.cpp.

◆ isX11Client()

bool KWin::EffectWindow::isX11Client ( ) const
Since
5.15

Definition at line 481 of file effectwindow.cpp.

◆ keepAbove()

bool KWin::EffectWindow::keepAbove ( ) const

Returns whether or not the window is kept above all other windows.

◆ keepBelow()

bool KWin::EffectWindow::keepBelow ( ) const

Returns whether the window is kept below all other windows.

◆ mainWindows()

QList< EffectWindow * > KWin::EffectWindow::mainWindows ( ) const

Definition at line 425 of file effectwindow.cpp.

◆ minimize()

void KWin::EffectWindow::minimize ( )

Definition at line 450 of file effectwindow.cpp.

◆ minimizedChanged

void KWin::EffectWindow::minimizedChanged ( KWin::EffectWindow * w)
signal

Signal emitted when a window is minimized or unminimized.

Parameters
wThe window whose minimized state has changed

◆ opacity()

double KWin::EffectWindow::opacity ( ) const

◆ pid()

pid_t KWin::EffectWindow::pid ( ) const
Since
5.18

◆ pos()

QPointF KWin::EffectWindow::pos ( ) const

◆ Private()

KWin::EffectWindow::Private ( EffectWindow * q,
WindowItem * windowItem )

◆ readProperty()

QByteArray KWin::EffectWindow::readProperty ( long atom,
long type,
int format ) const

Definition at line 347 of file effectwindow.cpp.

◆ rect()

QRectF KWin::EffectWindow::rect ( ) const

◆ refVisible()

void KWin::EffectWindow::refVisible ( const EffectWindowVisibleRef * holder)
protected

Definition at line 189 of file effectwindow.cpp.

◆ refWindow()

void KWin::EffectWindow::refWindow ( )

Definition at line 222 of file effectwindow.cpp.

◆ screen()

Output * KWin::EffectWindow::screen ( ) const

Definition at line 232 of file effectwindow.cpp.

◆ setData()

void KWin::EffectWindow::setData ( int role,
const QVariant & data )

Can be used to by effects to store arbitrary data in the EffectWindow.

Invoking this method will emit the signal EffectsHandler::windowDataChanged.

See also
EffectsHandler::windowDataChanged

Definition at line 430 of file effectwindow.cpp.

◆ setMinimized()

void KWin::EffectWindow::setMinimized ( bool minimize)

Definition at line 147 of file effectwindow.cpp.

◆ size()

QSizeF KWin::EffectWindow::size ( ) const

◆ skipsCloseAnimation()

bool KWin::EffectWindow::skipsCloseAnimation ( ) const
Since
5.0

◆ surface()

SurfaceInterface * KWin::EffectWindow::surface ( ) const
Since
5.5

◆ transientFor()

EffectWindow * KWin::EffectWindow::transientFor ( )

Definition at line 393 of file effectwindow.cpp.

◆ unminimize()

void KWin::EffectWindow::unminimize ( )

Definition at line 457 of file effectwindow.cpp.

◆ unrefVisible()

void KWin::EffectWindow::unrefVisible ( const EffectWindowVisibleRef * holder)
protected

Definition at line 194 of file effectwindow.cpp.

◆ unrefWindow()

void KWin::EffectWindow::unrefWindow ( )

Definition at line 227 of file effectwindow.cpp.

◆ width()

qreal KWin::EffectWindow::width ( ) const

◆ window()

Window * KWin::EffectWindow::window ( ) const

Definition at line 126 of file effectwindow.cpp.

◆ windowClass()

QString KWin::EffectWindow::windowClass ( ) const

Definition at line 314 of file effectwindow.cpp.

◆ windowDamaged

void KWin::EffectWindow::windowDamaged ( KWin::EffectWindow * w)
signal

Signal emitted when an area of a window is scheduled for repainting. Use this signal in an effect if another area needs to be synced as well.

Parameters
wThe window which is scheduled for repainting

◆ windowDecorationChanged

void KWin::EffectWindow::windowDecorationChanged ( KWin::EffectWindow * window)
signal

This signal is emitted when decoration of was changed.

Parameters
wThe window for which decoration changed

◆ windowDesktopsChanged

void KWin::EffectWindow::windowDesktopsChanged ( KWin::EffectWindow * window)
signal

This signal is emitted when a window enters or leaves a virtual desktop.

◆ windowExpandedGeometryChanged

void KWin::EffectWindow::windowExpandedGeometryChanged ( KWin::EffectWindow * window)
signal

This signal is emitted when the visible geometry of a window changed.

◆ windowFinishUserMovedResized

void KWin::EffectWindow::windowFinishUserMovedResized ( KWin::EffectWindow * w)
signal

Signal emitted when the user finishes move/resize of window w.

Parameters
wThe window which has been moved/resized
See also
windowStartUserMovedResized
windowFinishUserMovedResized

◆ windowFrameGeometryAboutToChange

void KWin::EffectWindow::windowFrameGeometryAboutToChange ( KWin::EffectWindow * window)
signal

This signal is emitted when the frame geometry is about to change, the new one is not known yet. Useful for OffscreenEffect to grab a window image before any actual change happens.

Parameters
windowThe window whose geometry is about to change

◆ windowFrameGeometryChanged

void KWin::EffectWindow::windowFrameGeometryChanged ( KWin::EffectWindow * window,
const QRectF & oldGeometry )
signal

This signal is emitted when the frame geometry of a window changed.

Parameters
windowThe window whose geometry changed
oldGeometryThe previous geometry

◆ windowFullScreenChanged

void KWin::EffectWindow::windowFullScreenChanged ( KWin::EffectWindow * w)
signal

This signal is emitted when the full screen state of w was changed.

Parameters
wThe window whose the full screen state was changed.

◆ windowHidden

void KWin::EffectWindow::windowHidden ( KWin::EffectWindow * w)
signal

The window w got hidden but not yet closed. This can happen when a window is still being used and is supposed to be shown again with windowShown. On X11 an example is autohiding panels. On Wayland every window first goes through the window hidden state and might get shown again, or might get closed the normal way.

See also
windowShown
windowClosed

◆ windowId()

qlonglong KWin::EffectWindow::windowId ( ) const
Since
5.21

Definition at line 306 of file effectwindow.cpp.

◆ windowItem()

WindowItem * KWin::EffectWindow::windowItem ( ) const

Definition at line 131 of file effectwindow.cpp.

◆ windowKeepAboveChanged

void KWin::EffectWindow::windowKeepAboveChanged ( KWin::EffectWindow * w)
signal

This signal is emitted when the keep above state of w was changed.

Parameters
wThe window whose the keep above state was changed.

◆ windowKeepBelowChanged

void KWin::EffectWindow::windowKeepBelowChanged ( KWin::EffectWindow * w)
signal

This signal is emitted when the keep below state of was changed.

Parameters
wThe window whose the keep below state was changed.

◆ windowMaximizedStateAboutToChange

void KWin::EffectWindow::windowMaximizedStateAboutToChange ( KWin::EffectWindow * w,
bool horizontal,
bool vertical )
signal

Signal emitted when the maximized state of the window w is about to change, but before windowMaximizedStateChanged is emitted or any geometry change. Useful for OffscreenEffect to grab a window image before any actual change happens

A window can be in one of four states:

  • restored: both horizontal and vertical are false
  • horizontally maximized: horizontal is true and vertical is false
  • vertically maximized: horizontal is false and vertical is true
  • completely maximized: both horizontal and vertical are true
    Parameters
    wThe window whose maximized state changed
    horizontalIf true maximized horizontally
    verticalIf true maximized vertically

◆ windowMaximizedStateChanged

void KWin::EffectWindow::windowMaximizedStateChanged ( KWin::EffectWindow * w,
bool horizontal,
bool vertical )
signal

Signal emitted when the maximized state of the window w changed. A window can be in one of four states:

  • restored: both horizontal and vertical are false
  • horizontally maximized: horizontal is true and vertical is false
  • vertically maximized: horizontal is false and vertical is true
  • completely maximized: both horizontal and vertical are true
    Parameters
    wThe window whose maximized state changed
    horizontalIf true maximized horizontally
    verticalIf true maximized vertically

◆ windowModalityChanged

void KWin::EffectWindow::windowModalityChanged ( KWin::EffectWindow * w)
signal

Signal emitted when a window either becomes modal (ie. blocking for its main client) or looses that state.

Parameters
wThe window which was unminimized

◆ windowOpacityChanged

void KWin::EffectWindow::windowOpacityChanged ( KWin::EffectWindow * w,
qreal oldOpacity,
qreal newOpacity )
signal

Signal emitted when the windows opacity is changed.

Parameters
wThe window whose opacity level is changed.
oldOpacityThe previous opacity level
newOpacityThe new opacity level

◆ windowRole()

QString KWin::EffectWindow::windowRole ( ) const

◆ windowShown

void KWin::EffectWindow::windowShown ( KWin::EffectWindow * w)
signal

The window w gets shown again. The window was previously initially shown with windowAdded and hidden with windowHidden.

See also
windowHidden
windowAdded

◆ windowStartUserMovedResized

void KWin::EffectWindow::windowStartUserMovedResized ( KWin::EffectWindow * w)
signal

Signal emitted when a user begins a window move or resize operation. To figure out whether the user resizes or moves the window use isUserMove or isUserResize. Whenever the geometry is updated the signal windowStepUserMovedResized is emitted with the current geometry. The move/resize operation ends with the signal windowFinishUserMovedResized. Only one window can be moved/resized by the user at the same time!

Parameters
wThe window which is being moved/resized
See also
windowStepUserMovedResized
windowFinishUserMovedResized
EffectWindow::isUserMove
EffectWindow::isUserResize

◆ windowStepUserMovedResized

void KWin::EffectWindow::windowStepUserMovedResized ( KWin::EffectWindow * w,
const QRectF & geometry )
signal

Signal emitted during a move/resize operation when the user changed the geometry. Please note: KWin supports two operation modes. In one mode all changes are applied instantly. This means the window's geometry matches the passed in geometry. In the other mode the geometry is changed after the user ended the move/resize mode. The geometry differs from the window's geometry. Also the window's pixmap still has the same size as before. Depending what the effect wants to do it would be recommended to scale/translate the window.

Parameters
wThe window which is being moved/resized
geometryThe geometry of the window in the current move/resize step.
See also
windowStartUserMovedResized
windowFinishUserMovedResized
EffectWindow::isUserMove
EffectWindow::isUserResize

◆ windowType()

NET::WindowType KWin::EffectWindow::windowType ( ) const

Returns the NETWM window type See https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 324 of file effectwindow.cpp.

◆ windowUnresponsiveChanged

void KWin::EffectWindow::windowUnresponsiveChanged ( KWin::EffectWindow * w,
bool unresponsive )
signal

Signal emitted when a window either became unresponsive (eg. app froze or crashed) or respoonsive

Parameters
wThe window that became (un)responsive
unresponsiveWhether the window is responsive or unresponsive

◆ x()

qreal KWin::EffectWindow::x ( ) const

◆ y()

qreal KWin::EffectWindow::y ( ) const

Member Data Documentation

◆ dataMap

QHash<int, QVariant> KWin::EffectWindow::dataMap

Definition at line 31 of file effectwindow.cpp.

◆ EffectWindowVisibleRef

friend KWin::EffectWindow::EffectWindowVisibleRef
protected

Definition at line 845 of file effectwindow.h.

◆ m_waylandWindow

bool KWin::EffectWindow::m_waylandWindow

Definition at line 33 of file effectwindow.cpp.

◆ m_window

Window* KWin::EffectWindow::m_window

Definition at line 29 of file effectwindow.cpp.

◆ m_windowItem

WindowItem* KWin::EffectWindow::m_windowItem

Definition at line 30 of file effectwindow.cpp.

◆ m_x11Window

bool KWin::EffectWindow::m_x11Window

Definition at line 34 of file effectwindow.cpp.

◆ managed

bool KWin::EffectWindow::managed = false
read

Whether this EffectWindow is managed by KWin (it has control over its placement and other aspects, as opposed to override-redirect windows that are entirely handled by the application).

Definition at line 32 of file effectwindow.cpp.

◆ q

EffectWindow* KWin::EffectWindow::q

Definition at line 28 of file effectwindow.cpp.

Property Documentation

◆ activities

QStringList KWin::EffectWindow::activities
read

Definition at line 229 of file effectwindow.h.

◆ basicUnit

QSizeF KWin::EffectWindow::basicUnit
read

By how much the window wishes to grow/shrink at least. Usually QSize(1,1). MAY BE DISOBEYED BY THE WM! It's only for information, do NOT rely on it at all.

Definition at line 194 of file effectwindow.h.

◆ caption

QString KWin::EffectWindow::caption
read

The Caption of the window. Read from WM_NAME property together with a suffix for hostname and shortcut.

Definition at line 162 of file effectwindow.h.

◆ comboBox

bool KWin::EffectWindow::comboBox
read

Returns whether the window is a combobox popup. See _NET_WM_WINDOW_TYPE_COMBO at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 139 of file effectwindow.h.

◆ contentsRect

QRectF KWin::EffectWindow::contentsRect
read

Geometry of the actual window contents inside the whole (including decorations) window.

Definition at line 222 of file effectwindow.h.

◆ criticalNotification

bool KWin::EffectWindow::criticalNotification
read

Returns whether the window is a window with a critical notification. using the non-standard _KDE_NET_WM_WINDOW_TYPE_CRITICAL_NOTIFICATION

Definition at line 129 of file effectwindow.h.

◆ decorationHasAlpha

bool KWin::EffectWindow::decorationHasAlpha
read

Whether the decoration currently uses an alpha channel.

Since
4.10

Definition at line 236 of file effectwindow.h.

◆ decorationInnerRect

QRectF KWin::EffectWindow::decorationInnerRect
read

Geometry of the transparent rect in the decoration. May be different from contentsRect if the decoration is extended into the client area.

Definition at line 227 of file effectwindow.h.

◆ deleted

bool KWin::EffectWindow::deleted
read

Whether this EffectWindow represents an already deleted window and only kept for the compositor for animations.

Definition at line 158 of file effectwindow.h.

◆ desktops

QList<KWin::VirtualDesktop *> KWin::EffectWindow::desktops
read

Definition at line 56 of file effectwindow.h.

◆ desktopWindow

bool KWin::EffectWindow::desktopWindow
read

Returns whether the window is a desktop background window (the one with wallpaper). See _NET_WM_WINDOW_TYPE_DESKTOP at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 66 of file effectwindow.h.

◆ dialog

bool KWin::EffectWindow::dialog
read

Returns whether the window is a dialog window. See _NET_WM_WINDOW_TYPE_DIALOG at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 92 of file effectwindow.h.

◆ dndIcon

bool KWin::EffectWindow::dndIcon
read

Returns whether the window is a Drag&Drop icon. See _NET_WM_WINDOW_TYPE_DND at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 144 of file effectwindow.h.

◆ dock

bool KWin::EffectWindow::dock
read

Returns whether the window is a dock (i.e. a panel). See _NET_WM_WINDOW_TYPE_DOCK at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 71 of file effectwindow.h.

◆ dropdownMenu

bool KWin::EffectWindow::dropdownMenu
read

Returns whether the window is a dropdown menu (i.e. a popup directly or indirectly open from the applications menubar). See _NET_WM_WINDOW_TYPE_DROPDOWN_MENU at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 109 of file effectwindow.h.

◆ expandedGeometry

QRectF KWin::EffectWindow::expandedGeometry
read

Definition at line 47 of file effectwindow.h.

◆ fullScreen

bool KWin::EffectWindow::fullScreen
read

Whether the window is fullscreen.

Since
5.6

Definition at line 259 of file effectwindow.h.

◆ geometry

QRectF KWin::EffectWindow::geometry
read

Definition at line 46 of file effectwindow.h.

◆ hasDecoration

bool KWin::EffectWindow::hasDecoration
read

Definition at line 228 of file effectwindow.h.

◆ height

qreal KWin::EffectWindow::height
read

Definition at line 48 of file effectwindow.h.

◆ hiddenByShowDesktop

bool KWin::EffectWindow::hiddenByShowDesktop
read

Whether this EffectWindow is hidden because the show desktop mode is active.

Definition at line 327 of file effectwindow.h.

◆ icon

QIcon KWin::EffectWindow::icon
read

Definition at line 214 of file effectwindow.h.

◆ iconGeometry

QRectF KWin::EffectWindow::iconGeometry
read

The optional geometry representing the minimized Client in e.g a taskbar. See _NET_WM_ICON_GEOMETRY at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 207 of file effectwindow.h.

◆ internalWindow

QWindow * KWin::EffectWindow::internalWindow
read

KWin internal window. Specific to Wayland platform.

If the EffectWindow does not reference an internal window, this property is null.

Since
5.16

Definition at line 299 of file effectwindow.h.

◆ keepAbove

bool KWin::EffectWindow::keepAbove
read

Whether the window is set to be kept above other windows.

Definition at line 166 of file effectwindow.h.

◆ keepBelow

bool KWin::EffectWindow::keepBelow
read

Whether the window is set to be kept below other windows.

Definition at line 170 of file effectwindow.h.

◆ lockScreen

bool KWin::EffectWindow::lockScreen
read

Whether this EffectWindow represents the screenlocker greeter.

Since
5.22

Definition at line 322 of file effectwindow.h.

◆ menu

bool KWin::EffectWindow::menu
read

Returns whether the window is a torn-off menu. See _NET_WM_WINDOW_TYPE_MENU at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 81 of file effectwindow.h.

◆ minimized

bool KWin::EffectWindow::minimized
readwrite

Whether the window is minimized.

Definition at line 174 of file effectwindow.h.

◆ modal

bool KWin::EffectWindow::modal
read

Whether the window represents a modal window.

Definition at line 178 of file effectwindow.h.

◆ move

bool KWin::EffectWindow::move
read

Whether the window is currently being moved by the user.

Definition at line 198 of file effectwindow.h.

◆ moveable

bool KWin::EffectWindow::moveable
read

Whether the window is moveable. Even if it is not moveable, it might be possible to move it to another screen.

See also
moveableAcrossScreens

Definition at line 184 of file effectwindow.h.

◆ moveableAcrossScreens

bool KWin::EffectWindow::moveableAcrossScreens
read

Whether the window can be moved to another screen.

See also
moveable

Definition at line 189 of file effectwindow.h.

◆ normalWindow

bool KWin::EffectWindow::normalWindow
read

Returns whether the window is a "normal" window, i.e. an application or any other window for which none of the specialized window types fit. See _NET_WM_WINDOW_TYPE_NORMAL at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 87 of file effectwindow.h.

◆ notification

bool KWin::EffectWindow::notification
read

Returns whether the window is a window with a notification. See _NET_WM_WINDOW_TYPE_NOTIFICATION at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 124 of file effectwindow.h.

◆ onAllActivities

bool KWin::EffectWindow::onAllActivities
read

Definition at line 231 of file effectwindow.h.

◆ onAllDesktops

bool KWin::EffectWindow::onAllDesktops
read

Definition at line 57 of file effectwindow.h.

◆ onCurrentActivity

bool KWin::EffectWindow::onCurrentActivity
read

Definition at line 230 of file effectwindow.h.

◆ onCurrentDesktop

bool KWin::EffectWindow::onCurrentDesktop
read

Definition at line 58 of file effectwindow.h.

◆ onScreenDisplay

bool KWin::EffectWindow::onScreenDisplay
read

Returns whether the window is an on screen display window using the non-standard _KDE_NET_WM_WINDOW_TYPE_ON_SCREEN_DISPLAY

Definition at line 134 of file effectwindow.h.

◆ opacity

qreal KWin::EffectWindow::opacity
read

Definition at line 49 of file effectwindow.h.

◆ outline

bool KWin::EffectWindow::outline
read

Whether this EffectWindow represents the outline.

When compositing is turned on, the outline is an actual window.

Since
5.16

Definition at line 308 of file effectwindow.h.

◆ pid

pid_t KWin::EffectWindow::pid
read

The PID of the application this window belongs to.

Since
5.18

Definition at line 315 of file effectwindow.h.

◆ popupMenu

bool KWin::EffectWindow::popupMenu
read

Returns whether the window is a popup menu (that is not a torn-off or dropdown menu). See _NET_WM_WINDOW_TYPE_POPUP_MENU at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 114 of file effectwindow.h.

◆ popupWindow

bool KWin::EffectWindow::popupWindow
read

Whether the window is a popup.

A popup is a window that can be used to implement tooltips, combo box popups, popup menus and other similar user interface concepts.

Since
5.15

Definition at line 291 of file effectwindow.h.

◆ pos

QPointF KWin::EffectWindow::pos
read

Definition at line 50 of file effectwindow.h.

◆ rect

QRectF KWin::EffectWindow::rect
read

Definition at line 59 of file effectwindow.h.

◆ resize

bool KWin::EffectWindow::resize
read

Whether the window is currently being resized by the user.

Definition at line 202 of file effectwindow.h.

◆ screen

KWin::Output * KWin::EffectWindow::screen
read

Definition at line 51 of file effectwindow.h.

◆ size

QSizeF KWin::EffectWindow::size
read

Definition at line 52 of file effectwindow.h.

◆ skipsCloseAnimation

bool KWin::EffectWindow::skipsCloseAnimation
read

Whether the window does not want to be animated on window close. In case this property is true it is not useful to start an animation on window close. The window will not be visible, but the animation hooks are executed.

Since
5.0

Definition at line 253 of file effectwindow.h.

◆ skipSwitcher

bool KWin::EffectWindow::skipSwitcher
read

Whether the window should be excluded from window switching effects.

Definition at line 218 of file effectwindow.h.

◆ specialWindow

bool KWin::EffectWindow::specialWindow
read

Returns whether the window is any of special windows types (desktop, dock, splash, ...), i.e. window types that usually don't have a window frame and the user does not use window management (moving, raising,...) on them.

Definition at line 213 of file effectwindow.h.

◆ splash

bool KWin::EffectWindow::splash
read

Returns whether the window is a splashscreen. Note that many (especially older) applications do not support marking their splash windows with this type. See _NET_WM_WINDOW_TYPE_SPLASH at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 98 of file effectwindow.h.

◆ toolbar

bool KWin::EffectWindow::toolbar
read

Returns whether the window is a standalone (detached) toolbar window. See _NET_WM_WINDOW_TYPE_TOOLBAR at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 76 of file effectwindow.h.

◆ tooltip

bool KWin::EffectWindow::tooltip
read

Returns whether the window is a tooltip. See _NET_WM_WINDOW_TYPE_TOOLTIP at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 119 of file effectwindow.h.

◆ unresponsive

bool KWin::EffectWindow::unresponsive
read

Whether this client is unresponsive.

When an application failed to react on a ping request in time, it is considered unresponsive. This usually indicates that the application froze or crashed.

Since
5.10

Definition at line 269 of file effectwindow.h.

◆ utility

bool KWin::EffectWindow::utility
read

Returns whether the window is a utility window, such as a tool window. See _NET_WM_WINDOW_TYPE_UTILITY at https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 103 of file effectwindow.h.

◆ visible

bool KWin::EffectWindow::visible
read

Whether the window is currently visible to the user, that is:

  • Not minimized
  • On current desktop
  • On current activity
Since
4.11

Definition at line 246 of file effectwindow.h.

◆ waylandClient

bool KWin::EffectWindow::waylandClient
read

Whether this is a Wayland client.

Since
5.15

Definition at line 275 of file effectwindow.h.

◆ width

qreal KWin::EffectWindow::width
read

Definition at line 53 of file effectwindow.h.

◆ windowClass

QString KWin::EffectWindow::windowClass
read

Definition at line 60 of file effectwindow.h.

◆ windowRole

QString KWin::EffectWindow::windowRole
read

Definition at line 61 of file effectwindow.h.

◆ windowType

int KWin::EffectWindow::windowType
read

Returns the NETWM window type See https://standards.freedesktop.org/wm-spec/wm-spec-latest.html .

Definition at line 149 of file effectwindow.h.

◆ x

qreal KWin::EffectWindow::x
read

Definition at line 54 of file effectwindow.h.

◆ x11Client

bool KWin::EffectWindow::x11Client
read

Whether this is an X11 client.

Since
5.15

Definition at line 281 of file effectwindow.h.

◆ y

qreal KWin::EffectWindow::y
read

Definition at line 55 of file effectwindow.h.


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