George Peter Staplin
7fa6fc5ad0
XQuartz: pbproxy: Fix a bug that occured when a PICT format was available.
...
We may need another branch to convert a PICT to a PNG or JPEG. For now
TIFF works well in all of the test image copying apps when converted to
PNG or JPEG with an NSBitmapImageRep class.
(cherry picked from commit adf339d8f948fc1e308dbcae38fcfce504b5b0ab)
2008-09-21 17:40:41 -07:00
George Peter Staplin
f67490ceb5
XQuartz: pbproxy: Make the proxy handle copy request races, and PRIMARY
...
INCR transfers mixed with a CLIPBOARD change.
Fix a bug with some UTF-8 transfers. I can only guess that my UTF-8
tests before were inadequate. I can now copy/paste any characters between
uxterm and Textedit.app.
(cherry picked from commit 7ca1532e8e6e2c733c9c508eee0de73d09ecb947)
2008-09-21 17:40:41 -07:00
Jeremy Huddleston
b666ffd781
XQuartz: "Disable" the text when syncing is disabled.
...
(cherry picked from commit 7713d7ab66e74b212a6c0d634a3ad82373e178db)
2008-09-21 17:40:41 -07:00
Jeremy Huddleston
dba290ec23
XQuartz: Added a preferences UI for pbproxy options.
...
(cherry picked from commit d76cca5e1eae86450aa236e49a2024881d0bac01)
2008-09-21 17:40:35 -07:00
George Peter Staplin
a928cae57b
XQuartz: pbproxy: Add a missing include of Xutil.h. Another header
...
seems to have done this before, but correctness matters.
(cherry picked from commit 1b4987e779d97b90669bac2405a4672085677f7c)
2008-09-21 17:40:16 -07:00
George Peter Staplin
749bdf19b2
XQuartz: pbproxy: Add COMPOUND_TEXT handling. Do misc. cleanups with testing
...
to verify that the behavior didn't change.
main.m: XInternAtom compound_text, and atom_pair.
pbproxy.h: Add compound_text and atom_pair to the struct atom_list.
x-selection.m: Add an #include of Xutil.h. Refactor the reply struct
initialization to be done in a common place. Add send_reply: to simplify
the code a bit more. Add send_compound_text: which handles the
COMPOUND_TEXT type. Add the beginnings of a send_multiple:. Change
handle_image:extension: to handle_image:. The extension: message isn't
needed anymore.
(cherry picked from commit 1e9460abdf5bafe46215966bbef3e796cb1c33e0)
2008-09-21 17:40:16 -07:00
George Peter Staplin
00bfbee59f
XQuartz: pbproxy: pbproxy now responds to selection request events.
...
We can now copy and paste images to and from X11. Text copying and
pasting works as well.
The NSPasteboard can contain TIFF or PICT images, and pbproxy will
translate to an image/png or image/jpeg request, and list those in the
TARGETS.
I added a description of the basic design at the top of x-selection.m.
I removed the request_data x_selection class struct. It's not needed.
(cherry picked from commit 4a8daf884694c9c420c45d427f1f84e608e7e48f)
2008-09-21 17:40:16 -07:00
George Peter Staplin
811e9f5e9e
XQuartz: pbproxy: Use an NSBitmapImageRep to convert an "image/png" selection
...
to a TIFFRepresentation for use with NSPasteboard.
This has been tested with the Gimp and works with some minor quartz-wm changes.
The Finder clipboard shows the image updates after an Edit -> Copy.
(cherry picked from commit 12912adaeea759d30f96d8ae51a84fd1659ea0ac)
2008-09-21 17:40:16 -07:00
Jeremy Huddleston
d8d555bac7
XQuartz: Don't enable 8bit visuals in the TrueColor server, since it's not working yet
...
(cherry picked from commit 1317c8ff94c4bd32617a5398e929f667bd87da58)
2008-09-21 17:40:15 -07:00
George Peter Staplin
23ec8261b6
XQuartz: pbproxy: The greedy CLIPBOARD handling now works for text.
...
This change adds some [self own_clipboard] calls in the necessary places to get the proper greedy behavior.
UTF8_STRING and STRING properties seem to work well now with the test cases (PRIMARY, and CLIPBOARD). I can copy from several different X apps, and have the behavior be correct when pasting. I also verified that quartz-wm isn't doing the copying, by disabling the quartz-wm paths.
(cherry picked from commit 934669f732c28f07b9d934d8f8f0b63ccfebd900)
2008-09-21 17:40:15 -07:00
George Peter Staplin
7c2eb3d41a
XQuartz: pbproxy: return the TARGETS list as a 32-bit list to fix a bug that was in the original.
...
Add TRACE() calls where appropriate to try to figure out why we are losing CLIPBOARD at times, after transferring PRIMARY to the NSPasteboard.
Use the new pbproxy_clipboard_to_pasteboard where appropriate.
(cherry picked from commit 40190675a6c1889cca3574e5d1a9c16ab74315a7)
2008-09-21 17:40:15 -07:00
George Peter Staplin
81c836902d
Rename reclaim_clipboard to claim_clipboard.
...
Convert the puts usage to use DB().
Add the initial handle_image method.
Check for nil in the NSString instantiation in various places.
Add some commentary to enhance the clarity of why I did some things.
(cherry picked from commit 37361567b65241eab64e8b30cd9729d0e71a86d2)
2008-09-21 17:40:15 -07:00
George Peter Staplin
85e23affea
Add an image_jpeg Atom.
...
(cherry picked from commit ea9dc27977c5eab666f2aa2d914e4e28d36758c7)
2008-09-21 17:40:15 -07:00
George Peter Staplin
6b42f40ff9
Rename reclaim_clipboard to claim_clipboard.
...
(cherry picked from commit d333a8e2b5514b8b76a78c6a13a3f5149ea8de27)
2008-09-21 17:40:15 -07:00
George Peter Staplin
2ab56981b1
Add image/jpeg type, and rename reclaim_clipboard to claim_clipboard.
...
(cherry picked from commit 32b175ef62b68a971784e51e937e358cb10e20ac)
2008-09-21 17:40:14 -07:00
Jeremy Huddleston
cbd32645f7
XQuartz: pbproxy: Added global variables to customize how pbproxy behaves
...
(cherry picked from commit 21a2d0b8d03faf1c66ec0c5c11fbd2ab24547727)
2008-09-21 17:40:14 -07:00
Jeremy Huddleston
5b397642cd
XQuartz: pbproxy: First round of updates to pbproxy from George.
...
(cherry picked from commit 5c8b956f8f3f17e8d577d97cb66424954be72684)
2008-09-21 17:40:14 -07:00
Jeremy Huddleston
999f3362d5
XQuartz: Dead code removal
...
(cherry picked from commit 43184cd379c4fb7254391b8a362016cbf89b5529)
2008-09-12 15:26:18 -07:00
Jeremy Huddleston
6548a55ebd
XQuartz: 256 color support
...
(cherry picked from commit 8dd6d5c825d457f26b41b79d02d57ed4a5ecf1f5)
2008-09-12 15:26:13 -07:00
Jeremy Huddleston
bad7cd14c2
XQuartz: Dead code removal
...
(cherry picked from commit bf10fb0b1f776e72db7c76db11f764e26f9d62c4)
2008-09-12 15:26:07 -07:00
Jeremy Huddleston
1119fe136f
XQuartz: Changed around fd handoff model to be more robust
...
(cherry picked from commit 4fe605c2bc62d50e0b5764d9edda245af227630b)
2008-09-12 15:26:01 -07:00
Jeremy Huddleston
183233b27b
XQuartz: Don't warp the pointer on server start for XQuartz
...
(cherry picked from commit c0da576d4921c246a9ac747921b48ab9e718347f)
2008-09-12 15:25:44 -07:00
Jeremy Huddleston
7a46dd30d3
XQuartz: Dead code removal
...
(cherry picked from commit 2e45344870f5d17181df6407da3448991036d783)
2008-09-12 15:22:46 -07:00
Jeremy Huddleston
1c70e53f25
XQuartz: Fixed proximity logic errors for tablets.
...
(cherry picked from commit d942849f248c368b92ca73e145e8a5bc339112d7)
2008-09-12 15:22:39 -07:00
Jeremy Huddleston
1669308be6
XQuartz: Added pasteboard proxy code stripped out of quartz-wm.
...
(cherry picked from commit 1f842c71c35db031a24de646429834d6054adf1d)
(cherry picked from commit 144746223d8dc3f6ff2a0e805aa27a6e57df558a)
2008-09-03 09:33:58 -07:00
Jeremy Huddleston
46168b3b40
XQuartz: Updated Tablet code to include ranges for valuators and added cursor and erasor
...
(cherry picked from commit 6bca78760951cb5cb57ea66b7631a2dc230dc27a)
(cherry picked from commit fafcafd6de39cf6b5967793f03b30b49db36fec5)
2008-09-03 09:33:53 -07:00
Jeremy Huddleston
7f5318131d
XQuartz: Removed "Done" button from Applications Customization. Now properly save on exit.
...
(cherry picked from commit 2f1e163d5db6063e54fcaa045ea67c29ce3e46aa)
(cherry picked from commit 7542c00b96461c3474b8c23545171c4b6ddfd29d)
2008-09-03 09:33:45 -07:00
Jeremy Huddleston
700e8bf33f
XQuartz: Updated man page
...
(cherry picked from commit 6932d0d19ea75c64ed38b82a246b68c6bbfb8cec)
(cherry picked from commit 8e3da36b6b0a261975808bc67b5caca733a1a23d)
2008-09-03 09:25:13 -07:00
Jeremy Huddleston
7430bb9093
XQuartz: Removed dead code (unused option definitions)
...
(cherry picked from commit 3d74f77490105c0704c0b10dc7a6eb859bf6e985)
(cherry picked from commit c1e5ea9ba058f6a13f564165a3d6862335729630)
2008-09-03 09:25:07 -07:00
Jeremy Huddleston
b3836e5bdd
XQuartz: Cleaned up our sleeping before adding the launchd socket.
...
(cherry picked from commit ebfe49dfca6e04d66232bad760f522629397cc35)
(cherry picked from commit 2cf74a76d54d795cfc3c0380a526b9177327782d)
2008-09-03 09:24:59 -07:00
Jeremy Huddleston
0cd6709db5
XQuartz: Fixed editing of Applications menu
...
(cherry picked from commit da647f1add4c1ae7854c0fbfbf972666ce5d12c8)
2008-08-30 16:25:06 -07:00
Jeremy Huddleston
c4d290fc54
XQuartz: Fixed missing symbol in quartzKeyboard debugging
...
(cherry picked from commit 8ad55e484f0ba9073ce07a03de660cc546a7b668)
2008-08-30 14:21:17 -07:00
Jeremy Huddleston
1885582444
XQuartz: Placate automake which doesn't like escaped newlines even in comments...
...
(cherry picked from commit 73db1170129a31ad2d55a7e83ac6dfc8030e47f1)
2008-08-29 21:18:26 -07:00
Jeremy Huddleston
8abcc12fdd
XQuartz: Added debugging output to the crash log to help track down two crashes, since people don't often report their system.log spew.
...
(cherry picked from commit aaf0f71db197526b6b866cc1b39fbdfe051879ef)
2008-08-29 20:55:25 -07:00
Jeremy Huddleston
aee19c7b55
XQuartz: xp_is_symbolic_hotkey_event catches the input menu, but not our mainMenu, so we still need to do that the old way.
...
(cherry picked from commit 25eccf12c89d73b8bce2c9be14841efb230acedc)
2008-08-29 20:53:10 -07:00
Tomas Carnecky
ebea78cdba
Prepare for array-index based devPrivates.
...
TODO: static indices can be made just an int; some indices
can be combined.
2008-08-28 18:05:40 -04:00
Jeremy Huddleston
2db1afbf2e
XQuartz: Always use TIS for the keyboard layout seed since KB* aren't thread safe.
...
(cherry picked from commit c8244177b0dbcb28d2f5509e6f2a3e8057889790)
2008-08-26 23:10:18 -07:00
Jeremy Huddleston
319405fa4a
XQuartz: Fixed needed xplugin version. ><
...
(cherry picked from commit 01b3a99dff79e0d2b316e02658c19fa79d9144ae)
2008-08-26 23:10:17 -07:00
Jeremy Huddleston
3350770bd6
XQuartz: Use new Xplugin API to determine if a keypress event corresponds to an OS-X hotkey that we should dispatch to Appkit.
...
(cherry picked from commit e7658e745f8a3eaf5cec9f54a8a1b7e5a7708e09)
2008-08-26 20:19:47 -07:00
Jeremy Huddleston
7930ea9116
XQuartz: Made a note to come back to the xinitrc race condition in the 1.5 branch when we move up to it.
...
(cherry picked from commit 54a882dcbdccef3f3eb4e6398e13c88185a8986c)
2008-08-26 20:19:44 -07:00
Jeremy Huddleston
dc1171df5b
XQuartz: Fixed bogus args to debug ErrorF
...
(cherry picked from commit f0351c2b80f30ae31f041798b84139141fc3d5a5)
2008-08-26 20:19:41 -07:00
Jeremy Huddleston
ac936525af
XQuartz: Cleaned up mouse event translation a bit more.
...
(cherry picked from commit c286f2a718fdaf6ad10249b59abb20731da8d904)
2008-08-26 20:19:38 -07:00
Jeremy Huddleston
1b42f55000
Xquartz: Added missing ev_type for NSTabletPoint event.
...
(cherry picked from commit 07548f13947a212dcc020d52fe0ad679255121e2)
2008-08-26 20:19:35 -07:00
Jeremy Huddleston
13a89f1920
XQuartz: Added more explanation to debug keylayout spew to cut down on report-spam.
...
(cherry picked from commit fcdc9f8b5abd724d75f53d48fdadbed9859e9e79)
2008-08-26 20:19:33 -07:00
Adam Jackson
64ef7ed072
Centralize declaration of ConnectionInfo.
2008-08-20 13:14:34 -04:00
Jeremy Huddleston
f1f44940f1
XQuartz: Support windowItemModMask=0 or -1 to disable window shortcuts.
...
(cherry picked from commit 81187364e512606a6aebb95ab2967d9d420f57f2)
(cherry picked from commit f2ec79e4a159dec6481691e4dd615db01770dd7a)
2008-08-20 10:00:43 -07:00
Jeremy Huddleston
6c5612c2e1
XQuartz: Added window_item_modifiers defaults item (and option to localization) to change the modifier keys used for the windows menu.
...
(cherry picked from commit e4110861d307a55d9032cb83cf024ec1f294e8d7)
(cherry picked from commit fcfc05482a88696cb713c7a2ddfcf935ae8378a6)
2008-08-20 10:00:37 -07:00
Jeremy Huddleston
bdc277c9b3
XQuartz: Just cleaned up formatting of event processing code... no "meat" changed...
...
(cherry picked from commit 745bc8ab387d6794f47d8b9dca33b4c81f6dd39c)
(cherry picked from commit a28a2be52478a1557a363140f7bd70ececf144dc)
2008-08-20 10:00:32 -07:00
Jeremy Huddleston
ed42108920
XQuartz: Added appkit_modifiers defaults option which users can set to 'rcommand' to get access to the input menu with right command
...
(cherry picked from commit 02af74d7a5a7225f408915254c40856159dc7f19)
(cherry picked from commit 2da32894dff8340f6ca7c980277fca7ec835a193)
2008-08-20 10:00:27 -07:00
Jeremy Huddleston
be06961312
XQuartz: More input fixes
...
stuck-modifier fixes (capslock)
3button-emulation now doesn't send the modifier key with the click
Added other options to fake_button2 and fake_button3 defaults options:
({l,r}{control,alt,command,shift})
(cherry picked from commit 8fb6a1cf44c35a20dfb0c05c9824f94898f88da7)
(cherry picked from commit ae9c1b3cfb3874b4d1251681c24bda91c398bcab)
2008-08-20 10:00:20 -07:00