X11::Protocol::Ext::SHAPE(3pm)

X11::Protocol::Ext::SHAPE3pm

Perl module for the x11 protocol nonrectangular window shape extension

Usage

  use X11::Protocol;
  $x = X11::Protocol->new($ENV{'DISPLAY'});
  $x->init_extension('SHAPE') or die;

Overview

This module is used by the X11::Protocol module to participate in the shaped window extension to the X protocol, allowing windows to be of any shape, not just rectangles.

Symbolic constants

This extension adds the constant types 'ShapeKind' and 'ShapeOp', with values as defined in the standard.

Events

This extension adds the event type 'ShapeNotify', with values as specified in the standard. This event is selected using the ShapeSelectInput() request.

Requests

This extension adds several requests, called as shown below:

  $x->ShapeQueryVersion
  =>
  ($major, $minor)
  $x->ShapeRectangles($dest, $destKind, $op, $xOff, $yOff,
                      $ordering, @rectangles) 
  $x->ShapeMask($dest, $destKind, $op, $xOff, $yOff, $source)
  $x->ShapeCombine($dest, $destKind, $op, $xOff, $yOff, $source,
                   $sourceKind)
  $x->ShapeOffset($dest, $destKind, $xOff, $yOff)
  $x->ShapeQueryExtents($dest)
  =>
  ($boundingShaped, $clipShaped,
   ($xBoundingShape, $yBoundingShape,
    $widthBoundingShape, $heightBoundingShape)  
   ($xClipShape, $yClipShape, $widthClipShape, $heightClipShape))
  $x->ShapeSelectInput($window, $enable)  
  $x->ShapeInputSelected($window)
  =>
  $enable
  $x->ShapeGetRectangles($window, $kind)
  =>
  ($ordering, [$x, $y, $width, $height], ...)

Releases

12 releases since Debian 3.1 (Sarge); the text changed 8 times.

  1. 3.1
  2. 4.0
  3. 5.0–6.0
  4. 7
  5. 8
  6. 9–10
  7. 11
  8. 12–13
  9. Arch

Author

Stephen McCamant <[email protected]>.

From perl-x11-protocol 0.56-18 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.