… | |
… | |
30 | #include "../config.h" |
30 | #include "../config.h" |
31 | |
31 | |
32 | #include <stddef.h> |
32 | #include <stddef.h> |
33 | #include <stdarg.h> |
33 | #include <stdarg.h> |
34 | |
34 | |
35 | #include "unistd.h" |
35 | #include <unistd.h> |
|
|
36 | |
|
|
37 | #include <X11/extensions/shape.h> |
|
|
38 | |
|
|
39 | // support old includes (https://bugs.freedesktop.org/show_bug.cgi?id=2799, https://lists.x.org/archives/xorg-arch/2005-March/000004.html) |
|
|
40 | #ifndef ShapeInput |
|
|
41 | # define ShapeInput 2 |
|
|
42 | #endif |
36 | |
43 | |
37 | #include "ev_cpp.h" |
44 | #include "ev_cpp.h" |
38 | #include "rxvt.h" |
45 | #include "rxvt.h" |
39 | #include "keyboard.h" |
46 | #include "keyboard.h" |
40 | #include "rxvtutil.h" |
47 | #include "rxvtutil.h" |
… | |
… | |
847 | const_iv (RS_Uline), |
854 | const_iv (RS_Uline), |
848 | |
855 | |
849 | // TODO: should support all colour constants, create colorinc.h &c |
856 | // TODO: should support all colour constants, create colorinc.h &c |
850 | const_iv (Color_fg), |
857 | const_iv (Color_fg), |
851 | const_iv (Color_bg), |
858 | const_iv (Color_bg), |
852 | #if OFF_FOCUS_FADING |
859 | # if OFF_FOCUS_FADING |
853 | const_iv (Color_fade), |
860 | const_iv (Color_fade), |
854 | #endif |
861 | # endif |
855 | const_iv (Color_pointer_fg), |
862 | const_iv (Color_pointer_fg), |
856 | const_iv (Color_pointer_bg), |
863 | const_iv (Color_pointer_bg), |
857 | const_iv (Color_border), |
864 | const_iv (Color_border), |
858 | const_iv (NRS_COLORS), |
865 | const_iv (NRS_COLORS), |
859 | const_iv (TOTAL_COLORS), |
866 | const_iv (TOTAL_COLORS), |
… | |
… | |
936 | const_iv (SelectionRequest), |
943 | const_iv (SelectionRequest), |
937 | const_iv (SelectionNotify), |
944 | const_iv (SelectionNotify), |
938 | const_iv (ColormapNotify), |
945 | const_iv (ColormapNotify), |
939 | const_iv (ClientMessage), |
946 | const_iv (ClientMessage), |
940 | const_iv (MappingNotify), |
947 | const_iv (MappingNotify), |
|
|
948 | |
|
|
949 | // shape extension |
|
|
950 | const_iv (ShapeSet), |
|
|
951 | const_iv (ShapeUnion), |
|
|
952 | const_iv (ShapeIntersect), |
|
|
953 | const_iv (ShapeSubtract), |
|
|
954 | const_iv (ShapeInvert), |
|
|
955 | |
|
|
956 | const_iv (ShapeBounding), |
|
|
957 | const_iv (ShapeClip), |
|
|
958 | const_iv (ShapeInput), |
|
|
959 | |
|
|
960 | // XIM |
941 | # if ENABLE_XIM_ONTHESPOT |
961 | # if ENABLE_XIM_ONTHESPOT |
942 | const_iv (XIMReverse), |
962 | const_iv (XIMReverse), |
943 | const_iv (XIMUnderline), |
963 | const_iv (XIMUnderline), |
944 | const_iv (XIMHighlight), |
964 | const_iv (XIMHighlight), |
945 | const_iv (XIMPrimary), |
965 | const_iv (XIMPrimary), |
946 | const_iv (XIMSecondary), |
966 | const_iv (XIMSecondary), |
947 | const_iv (XIMTertiary), |
967 | const_iv (XIMTertiary), |
948 | const_iv (XIMVisibleToForward), |
968 | const_iv (XIMVisibleToForward), |
949 | const_iv (XIMVisibleToBackword), |
969 | const_iv (XIMVisibleToBackword), |
950 | const_iv (XIMVisibleToCenter), |
970 | const_iv (XIMVisibleToCenter), |
|
|
971 | # endif |
951 | #if XRENDER |
972 | # if XRENDER |
952 | const_iv (PictStandardARGB32), |
973 | const_iv (PictStandardARGB32), |
953 | const_iv (PictStandardRGB24), |
974 | const_iv (PictStandardRGB24), |
954 | const_iv (PictStandardA8), |
975 | const_iv (PictStandardA8), |
955 | const_iv (PictStandardA4), |
976 | const_iv (PictStandardA4), |
956 | const_iv (PictStandardA1), |
977 | const_iv (PictStandardA1), |
… | |
… | |
1012 | const_iv (PictOpExclusion), |
1033 | const_iv (PictOpExclusion), |
1013 | const_iv (PictOpHSLHue), |
1034 | const_iv (PictOpHSLHue), |
1014 | const_iv (PictOpHSLSaturation), |
1035 | const_iv (PictOpHSLSaturation), |
1015 | const_iv (PictOpHSLColor), |
1036 | const_iv (PictOpHSLColor), |
1016 | const_iv (PictOpHSLLuminosity), |
1037 | const_iv (PictOpHSLLuminosity), |
1017 | #endif |
1038 | # endif |
1018 | # if 0 |
1039 | # if 0 |
1019 | const_iv (XIMForwardChar), |
1040 | const_iv (XIMForwardChar), |
1020 | const_iv (XIMBackwardChar), |
1041 | const_iv (XIMBackwardChar), |
1021 | const_iv (XIMForwardWord), |
1042 | const_iv (XIMForwardWord), |
1022 | const_iv (XIMBackwardWord), |
1043 | const_iv (XIMBackwardWord), |
… | |
… | |
1026 | const_iv (XIMPreviousLine), |
1047 | const_iv (XIMPreviousLine), |
1027 | const_iv (XIMLineStart), |
1048 | const_iv (XIMLineStart), |
1028 | const_iv (XIMLineEnd), |
1049 | const_iv (XIMLineEnd), |
1029 | const_iv (XIMAbsolutePosition), |
1050 | const_iv (XIMAbsolutePosition), |
1030 | const_iv (XIMDontChange), |
1051 | const_iv (XIMDontChange), |
1031 | # endif |
|
|
1032 | # endif |
1052 | # endif |
1033 | |
1053 | |
1034 | /* DEC private modes */ |
1054 | /* DEC private modes */ |
1035 | const_iv (PrivMode_132), |
1055 | const_iv (PrivMode_132), |
1036 | const_iv (PrivMode_132OK), |
1056 | const_iv (PrivMode_132OK), |
… | |
… | |
2203 | |
2223 | |
2204 | void |
2224 | void |
2205 | XDeleteProperty (rxvt_term *term, Window window, Atom property) |
2225 | XDeleteProperty (rxvt_term *term, Window window, Atom property) |
2206 | C_ARGS: term->dpy, window, property |
2226 | C_ARGS: term->dpy, window, property |
2207 | |
2227 | |
|
|
2228 | Region |
|
|
2229 | XCreateRegion () |
|
|
2230 | |
|
|
2231 | int |
|
|
2232 | XUnionRectWithRegion (int x, int y, int w, int h, Region src, Region dst) |
|
|
2233 | CODE: |
|
|
2234 | XRectangle rect; |
|
|
2235 | rect.x = x; |
|
|
2236 | rect.y = y; |
|
|
2237 | rect.width = w; |
|
|
2238 | rect.height = h; |
|
|
2239 | RETVAL = XUnionRectWithRegion (&rect, src, dst); |
|
|
2240 | OUTPUT: RETVAL |
|
|
2241 | |
|
|
2242 | int |
|
|
2243 | XIntersectRegion (Region src1, Region src2, Region res) |
|
|
2244 | |
|
|
2245 | int |
|
|
2246 | XUnionRegion (Region src1, Region src2, Region res) |
|
|
2247 | |
|
|
2248 | int |
|
|
2249 | XSubtractRegion (Region src1, Region src2, Region res) |
|
|
2250 | |
|
|
2251 | int |
|
|
2252 | XXorRegion (Region src1, Region src2, Region res) |
|
|
2253 | |
|
|
2254 | int |
|
|
2255 | XOffsetRegion (Region r, int dx, int dy) |
|
|
2256 | |
|
|
2257 | int |
|
|
2258 | XShrinkRegion (Region r, int dx, int dy) |
|
|
2259 | |
|
|
2260 | int |
|
|
2261 | XDestroyRegion (Region r) |
|
|
2262 | |
|
|
2263 | void |
|
|
2264 | rxvt_term::XShapeQueryVersion () |
|
|
2265 | PPCODE: |
|
|
2266 | int major, minor; |
|
|
2267 | EXTEND (SP, 2); |
|
|
2268 | if (XShapeQueryVersion (THIS->display->dpy, &major, &minor)) |
|
|
2269 | { |
|
|
2270 | PUSHs (sv_2mortal (newSViv (major))); |
|
|
2271 | PUSHs (sv_2mortal (newSViv (minor))); |
|
|
2272 | } |
|
|
2273 | |
|
|
2274 | void |
|
|
2275 | XShapeCombineRegion (rxvt_term *term, Window dest, int destKind, int xOff, int yOff, Region r, int op) |
|
|
2276 | C_ARGS: term->display->dpy, dest, destKind, xOff, yOff, r, op |
|
|
2277 | |
|
|
2278 | void |
|
|
2279 | XShapeCombineMask (rxvt_term *term, XID dest, int destKind, int xOff, int yOff, Pixmap src, int op) |
|
|
2280 | C_ARGS: term->display->dpy, dest, destKind, xOff, yOff, src, op |
|
|
2281 | |
|
|
2282 | void |
|
|
2283 | XShapeCombineShape (rxvt_term *term, XID dest, int destKind, int xOff, int yOff, Pixmap src, int srcKind, int op) |
|
|
2284 | C_ARGS: term->display->dpy, dest, destKind, xOff, yOff, src, srcKind, op |
|
|
2285 | |
2208 | Window |
2286 | Window |
2209 | rxvt_term::DefaultRootWindow () |
2287 | rxvt_term::DefaultRootWindow () |
2210 | CODE: |
2288 | CODE: |
2211 | RETVAL = THIS->display->root; |
2289 | RETVAL = THIS->display->root; |
2212 | OUTPUT: |
2290 | OUTPUT: |