/* $XConsortium: README /main/7 1996/07/15 14:22:00 drk $ */ Instructions for using the icccm/multi programs to test the clipboard bug fixes done by Alastair Gourlay ------------------------------------------------------------------------- There are two programs involved in testing the clipboard: icccm multi icccm ----- This program is a simple client that has been implemented to use the clipboard in the manner described by the ICCCM. It does NOT use any of the Motif short cuts for dealing with clipboard cutting and pasting. The client comes up with a set of six pushbuttons that read as follows: Request TARGETS Request formats Request MULTIPLE Request TIMESTAMP Own CLIPBOARD Quit "Request TARGETS" will print on the standard xterm display the results of an XConvertSelection from the clipboard with ICCCM XA_TARGETS atom as the type to select. "Request formats" will print the XConvertSelection results of a loop through any data in the clipboard found during the TARGETS request. "Request MULTIPLE" will do the same as "formats" except it will use the ICCCM atom XA_MULTIPLE and make only one XConvertSelection call to get all the TARGETS data. "Request TIMESTAMP" will print the XConvertSelection results using the ICCCM XA_TIMESTAMP atom. "Own CLIPBOARD" will call XSetSelectionOwner setting itself as the owner. multi ----- This program is a simple, typical Motif client that uses the clipboard. It contains three elements, a string, an integer and a pixmap. Each one can be toggled on or off. At any time, the currently toggled-on items can be cut, cut by name, or pasted to the clipboard. Also, the last clipboard action can be undone, the clipboard inquired, and the clipboard locked and unlocked. All of these actions are accomplished using pushbuttons on the bottom of the window. More than one multi can be run simultaneously, and the clipboard will use the Motif clipboard operations between them. But, whenever the "icccm" client accesses the clipboard, standard icccm functions and actions are used. To run the test: ---------------- Bring up two multi's (by running "multi &; multi &"), and then execute one icccm (by running "icccm &"). Play with the cutting and pasting between the multi's to verify that the clipboard operates properly between two Motif clients. Then use the icccm program to verify that items cut from the Motif application can properly be recognized by a non-Motif client. Verify that this works for cutting by name and regular cutting, and that it works for all three types of data - strings, integers, and pixmaps, and various combinations of the three. Also, verify that items cut from the icccm program can be pasted in the multi (Motif) application. Do this by choosing "Own CLIPBOARD" from the icccm clipboard and then use the "Inquire" and "Paste" options in the multi application. "Inquire" should return STRING and INTEGER, "Paste" should return "ICCCM Clipboard Text" (STRING) and "911" (INTEGER). Also, see "ICCCM Version 1.0" document by David S. Rosenthal, section 2.6 for more details. BUGS SHOWN BY THESE TESTS Cutpaste3 PIRS No.: 3331 You can get multiple destination cursors in a Text widget. See test Cutpaste3 . An expose event will clear. Version found in: 1.2 Version fixed in: 1.2S2 Assigned to: HP Priority: 7 Status: R Cutpaste3 PIRS No.: 3487 Text widgets created with variable font are not displayed fully. Top of text is chopped off. Version found in: 1.2 Version fixed in: 1.2S3 Assigned to: HP Priority: 7 Status: R Cutpaste4a PIRS No.: 2592 The client Cutpaste4b has a paned window. If you move in and out of this client, you can get the sash and the P.B highlight Version found in: 1.1.1 Version fixed in: Assigned to: HP Priority: 8 Status: A multi PIRS No.: 2879 New DECW Clipboard Cut's will crash Motif clipboard Cut's and vice-versa. Motif Clipboard needs to protect itself. Version found in: 1.1 Version fixed in: Assigned to: ALASTAIR GOURLAY Priority: 8 Status: A multi PIRS No.: 3348 When calling XmClipboardInquireCount(), motif passes NULL as the format name. This causes XInternAtom to cause a core dump. Version found in: 1.2 Version fixed in: 1.2S1 Assigned to: ALASTAIR GOURLAY Priority: 5 Status: R ENDBUGS