KWinInternal::Client Class Reference
#include <client.h>
Detailed Description
The Client class encapsulates a window decoration frame.
Definition at line 46 of file client.h.
Public Types | |
enum | Sizemode { SizemodeAny, SizemodeFixedW, SizemodeFixedH, SizemodeMax } |
Public Member Functions | |
Client (Workspace *ws) | |
Window | window () const |
Window | frameId () const |
Window | wrapperId () const |
Window | decorationId () const |
Workspace * | workspace () const |
const Client * | transientFor () const |
Client * | transientFor () |
bool | isTransient () const |
bool | groupTransient () const |
bool | wasOriginallyGroupTransient () const |
ClientList | mainClients () const |
bool | hasTransient (const Client *c, bool indirect) const |
const ClientList & | transients () const |
void | checkTransient (Window w) |
Client * | findModal () |
const Group * | group () const |
Group * | group () |
void | checkGroup (Group *gr=NULL, bool force=false) |
void | changeClientLeaderGroup (Group *gr) |
NET::WindowType | windowType (bool direct=false, int supported_types=SUPPORTED_WINDOW_TYPES_MASK) const |
const WindowRules * | rules () const |
void | removeRule (Rules *r) |
void | setupWindowRules (bool ignore_temporary) |
void | applyWindowRules () |
QRect | geometry () const |
QSize | size () const |
QSize | minSize () const |
QSize | maxSize () const |
QPoint | pos () const |
QRect | rect () const |
int | x () const |
int | y () const |
int | width () const |
int | height () const |
QPoint | clientPos () const |
QSize | clientSize () const |
bool | windowEvent (XEvent *e) |
virtual bool | eventFilter (QObject *o, QEvent *e) |
bool | manage (Window w, bool isMapped) |
void | releaseWindow (bool on_shutdown=false) |
QSize | adjustedSize (const QSize &, Sizemode mode=SizemodeAny) const |
QSize | adjustedSize () const |
QPixmap | icon () const |
QPixmap | miniIcon () const |
bool | isActive () const |
void | setActive (bool, bool updateOpacity=true) |
int | desktop () const |
void | setDesktop (int) |
bool | isOnDesktop (int d) const |
bool | isOnCurrentDesktop () const |
bool | isOnAllDesktops () const |
void | setOnAllDesktops (bool set) |
bool | isShown (bool shaded_is_shown) const |
bool | isShade () const |
ShadeMode | shadeMode () const |
void | setShade (ShadeMode mode) |
bool | isShadeable () const |
bool | isMinimized () const |
bool | isMaximizable () const |
QRect | geometryRestore () const |
MaximizeMode | maximizeModeRestore () const |
MaximizeMode | maximizeMode () const |
bool | isMinimizable () const |
void | setMaximize (bool vertically, bool horizontally) |
void | setFullScreen (bool set, bool user) |
bool | isFullScreen () const |
bool | isFullScreenable (bool fullscreen_hack=false) const |
bool | userCanSetFullScreen () const |
QRect | geometryFSRestore () const |
int | fullScreenMode () const |
bool | isUserNoBorder () const |
void | setUserNoBorder (bool set) |
bool | userCanSetNoBorder () const |
bool | noBorder () const |
bool | skipTaskbar (bool from_outside=false) const |
void | setSkipTaskbar (bool set, bool from_outside) |
bool | skipPager () const |
void | setSkipPager (bool) |
bool | keepAbove () const |
void | setKeepAbove (bool) |
bool | keepBelow () const |
void | setKeepBelow (bool) |
Layer | layer () const |
Layer | belongsToLayer () const |
void | invalidateLayer () |
void | setModal (bool modal) |
bool | isModal () const |
bool | wantsTabFocus () const |
bool | wantsInput () const |
bool | hasNETSupport () const |
bool | isMovable () const |
bool | isDesktop () const |
bool | isDock () const |
bool | isToolbar () const |
bool | isTopMenu () const |
bool | isMenu () const |
bool | isNormalWindow () const |
bool | isDialog () const |
bool | isSplash () const |
bool | isUtility () const |
bool | isSpecialWindow () const |
bool | isResizable () const |
bool | isCloseable () const |
void | takeActivity (int flags, bool handled, allowed_t) |
void | takeFocus (allowed_t) |
void | demandAttention (bool set=true) |
void | setMask (const QRegion &r, int mode=X::Unsorted) |
QRegion | mask () const |
void | updateDecoration (bool check_workspace_pos, bool force=false) |
void | checkBorderSizes () |
bool | shape () const |
void | updateShape () |
void | setGeometry (int x, int y, int w, int h, ForceGeometry_t force=NormalGeometrySet) |
void | setGeometry (const QRect &r, ForceGeometry_t force=NormalGeometrySet) |
void | move (int x, int y, ForceGeometry_t force=NormalGeometrySet) |
void | move (const QPoint &p, ForceGeometry_t force=NormalGeometrySet) |
void | plainResize (int w, int h, ForceGeometry_t force=NormalGeometrySet) |
void | plainResize (const QSize &s, ForceGeometry_t force=NormalGeometrySet) |
void | resizeWithChecks (int w, int h, ForceGeometry_t force=NormalGeometrySet) |
void | resizeWithChecks (const QSize &s, ForceGeometry_t force=NormalGeometrySet) |
void | keepInArea (QRect area, bool partial=false) |
void | growHorizontal () |
void | shrinkHorizontal () |
void | growVertical () |
void | shrinkVertical () |
bool | providesContextHelp () const |
KShortcut | shortcut () const |
void | setShortcut (const QString &cut) |
bool | performMouseCommand (Options::MouseCommand, QPoint globalPos, bool handled=false) |
QCString | windowRole () const |
QCString | sessionId () |
QCString | resourceName () const |
QCString | resourceClass () const |
QCString | wmCommand () |
QCString | wmClientMachine (bool use_localhost) const |
Window | wmClientLeader () const |
pid_t | pid () const |
QRect | adjustedClientArea (const QRect &desktop, const QRect &area) const |
Colormap | colormap () const |
void | updateVisibility () |
void | hideClient (bool hide) |
QString | caption (bool full=true) const |
void | updateCaption () |
void | keyPressEvent (uint key_code) |
void | updateMouseGrab () |
Window | moveResizeGrabWindow () const |
const QPoint | calculateGravitation (bool invert, int gravity=0) const |
void | NETMoveResize (int x_root, int y_root, NET::Direction direction) |
void | NETMoveResizeWindow (int flags, int x, int y, int width, int height) |
void | restackWindow (Window above, int detail, NET::RequestSource source, Time timestamp, bool send_event=false) |
void | gotPing (Time timestamp) |
void | checkWorkspacePosition () |
void | updateUserTime (Time time=CurrentTime) |
Time | userTime () const |
bool | hasUserTimeSupport () const |
bool | ignoreFocusStealing () const |
void | minimize (bool avoid_animation=false) |
void | unminimize (bool avoid_animation=false) |
void | closeWindow () |
void | killWindow () |
void | maximize (MaximizeMode) |
void | toggleShade () |
void | showContextHelp () |
void | cancelShadeHover () |
void | cancelAutoRaise () |
void | destroyClient () |
void | checkActiveModal () |
void | setOpacity (bool translucent, uint opacity=0) |
void | setShadowSize (uint shadowSize) |
void | updateOpacity () |
void | updateShadowSize () |
bool | hasCustomOpacity () |
void | setCustomOpacityFlag (bool custom=true) |
bool | getWindowOpacity () |
int | opacityPercentage () |
void | checkAndSetInitialRuledOpacity () |
uint | ruleOpacityInactive () |
uint | ruleOpacityActive () |
unsigned int | opacity () |
bool | isBMP () |
void | setBMP (bool b) |
bool | touches (const Client *c) |
void | setShapable (bool b) |
bool | hasStrut () const |
Static Public Member Functions | |
static QCString | staticWindowRole (WId) |
static QCString | staticSessionId (WId) |
static QCString | staticWmCommand (WId) |
static QCString | staticWmClientMachine (WId) |
static Window | staticWmClientLeader (WId) |
static void | deleteClient (Client *c, allowed_t) |
static bool | resourceMatch (const Client *c1, const Client *c2) |
static bool | belongToSameApplication (const Client *c1, const Client *c2, bool active_hack=false) |
static void | readIcons (Window win, QPixmap *icon, QPixmap *miniicon) |
Friends | |
class | Bridge |
struct | FetchNameInternalPredicate |
struct | CheckIgnoreFocusStealingProcedure |
struct | ResetupRulesProcedure |
class | GeometryUpdatesPostponer |
bool | performTransiencyCheck () |
Constructor & Destructor Documentation
KWinInternal::Client::Client | ( | Workspace * | ws | ) |
This ctor is "dumb" - it only initializes data. All the real initialization is done in manage().
Definition at line 69 of file client.cpp.
Member Function Documentation
bool KWinInternal::Client::windowEvent | ( | XEvent * | e | ) |
General handler for XEvents concerning the client window
Definition at line 519 of file events.cpp.
bool KWinInternal::Client::manage | ( | Window | w, | |
bool | isMapped | |||
) |
Manages the clients. This means handling the very first maprequest: reparenting, initial geometry, initial state, placement, etc. Returns false if KWin is not going to manage this window.
Definition at line 38 of file manage.cpp.
void KWinInternal::Client::releaseWindow | ( | bool | on_shutdown = false |
) |
Releases the window. The client has done its job and the window is still existing.
Definition at line 182 of file client.cpp.
QSize KWinInternal::Client::adjustedSize | ( | const QSize & | frame, | |
Sizemode | mode = SizemodeAny | |||
) | const |
Adjust the frame size frame according to he window's size hints.
Definition at line 1023 of file geometry.cpp.
void KWinInternal::Client::setActive | ( | bool | act, | |
bool | updateOpacity_ = true | |||
) |
Sets the client's active state to act.
This function does only change the visual appearance of the client, it does not change the focus setting. Use Workspace::activateClient() or Workspace::requestFocus() instead.
If a client receives or looses the focus, it calls setActive() on its own.
Definition at line 807 of file activation.cpp.
int KWinInternal::Client::desktop | ( | ) | const [inline] |
Returns the virtual desktop within the workspace() the client window is located in, 0 if it isn't located on any special desktop (not mapped yet), or NET::OnAllDesktops. Do not use desktop() directly, use isOnDesktop() instead.
bool KWinInternal::Client::isOnDesktop | ( | int | d | ) | const [inline] |
void KWinInternal::Client::setMaximize | ( | bool | vertically, | |
bool | horizontally | |||
) |
Sets the maximization according to vertically and horizontally
Definition at line 1826 of file geometry.cpp.
bool KWinInternal::Client::isMovable | ( | ) | const |
Returns whether the window is moveable or has a fixed position.
Definition at line 1598 of file geometry.cpp.
bool KWinInternal::Client::isResizable | ( | ) | const |
Returns whether the window is resizable or has a fixed size.
Definition at line 1614 of file geometry.cpp.
void KWinInternal::Client::setGeometry | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h, | |||
ForceGeometry_t | force = NormalGeometrySet | |||
) |
Reimplemented to inform the client about the new window position.
Definition at line 1661 of file geometry.cpp.
void KWinInternal::Client::move | ( | int | x, | |
int | y, | |||
ForceGeometry_t | force = NormalGeometrySet | |||
) |
Reimplemented to inform the client about the new window position.
Definition at line 1776 of file geometry.cpp.
bool KWinInternal::Client::providesContextHelp | ( | ) | const |
Returns whether the window provides context help or not. If it does, you should show a help menu item or a help button like '?' and call contextHelp() if this is invoked.
- See also:
- contextHelp()
Definition at line 1313 of file client.cpp.
bool KWinInternal::Client::performMouseCommand | ( | Options::MouseCommand | command, | |
QPoint | globalPos, | |||
bool | handled = false | |||
) |
Performs a mouse command on this client (see options.h)
Definition at line 628 of file useractions.cpp.
QCString KWinInternal::Client::sessionId | ( | ) |
Returns sessionId for this client, taken either from its window or from the leader window.
Definition at line 1602 of file client.cpp.
QCString KWinInternal::Client::wmCommand | ( | ) |
Returns command property for this client, taken either from its window or from the leader window.
Definition at line 1614 of file client.cpp.
QCString KWinInternal::Client::wmClientMachine | ( | bool | use_localhost | ) | const |
Returns client machine for this client, taken either from its window or from the leader window.
Definition at line 1635 of file client.cpp.
Window KWinInternal::Client::wmClientLeader | ( | ) | const |
Returns client leader window for this client. Returns the client window itself if no leader window is defined.
Definition at line 1650 of file client.cpp.
QRect KWinInternal::Client::adjustedClientArea | ( | const QRect & | desktopArea, | |
const QRect & | area | |||
) | const |
Returns area with the client's strut taken into account.
Used from Workspace in updateClientArea.
Definition at line 702 of file geometry.cpp.
QString KWinInternal::Client::caption | ( | bool | full = true |
) | const |
QCString KWinInternal::Client::staticWindowRole | ( | WId | w | ) | [static] |
Returns WM_WINDOW_ROLE property for a given window.
Definition at line 1546 of file client.cpp.
QCString KWinInternal::Client::staticSessionId | ( | WId | w | ) | [static] |
Returns SM_CLIENT_ID property for a given window.
Definition at line 1554 of file client.cpp.
QCString KWinInternal::Client::staticWmCommand | ( | WId | w | ) | [static] |
Returns WM_COMMAND property for a given window.
Definition at line 1562 of file client.cpp.
Window KWinInternal::Client::staticWmClientLeader | ( | WId | w | ) | [static] |
Returns WM_CLIENT_LEADER property for a given window.
Definition at line 1570 of file client.cpp.
void KWinInternal::Client::updateUserTime | ( | Time | time = CurrentTime |
) |
Updates the user time (time of last action in the active window). This is called inside kwin for every action with the window that qualifies for user interaction (clicking on it, activate it externally, etc.).
Definition at line 625 of file activation.cpp.
void KWinInternal::Client::minimize | ( | bool | avoid_animation = false |
) |
Minimizes this client plus its transients
Definition at line 596 of file client.cpp.
void KWinInternal::Client::closeWindow | ( | ) |
Closes the window by either sending a delete_window message or using XKill.
Definition at line 1050 of file client.cpp.
void KWinInternal::Client::killWindow | ( | ) |
Kills the window via XKill
Definition at line 1074 of file client.cpp.
void KWinInternal::Client::showContextHelp | ( | ) |
Invokes context help on the window. Only works if the window actually provides context help.
- See also:
- providesContextHelp()
Definition at line 1325 of file client.cpp.
The documentation for this class was generated from the following files: