From dba290ec231422740f453b69b187f80df3f50e4b Mon Sep 17 00:00:00 2001 From: Jeremy Huddleston Date: Sun, 21 Sep 2008 17:40:35 -0700 Subject: [PATCH] XQuartz: Added a preferences UI for pbproxy options. (cherry picked from commit d76cca5e1eae86450aa236e49a2024881d0bac01) --- hw/xquartz/X11Application.h | 6 + hw/xquartz/X11Application.m | 11 + hw/xquartz/X11Controller.h | 8 + hw/xquartz/X11Controller.m | 51 +- .../English.lproj/main.nib/designable.nib | 874 +++++++++++++----- .../English.lproj/main.nib/keyedobjects.nib | Bin 37205 -> 41243 bytes hw/xquartz/darwin.h | 6 + hw/xquartz/doc/Xquartz.man.pre | 15 + 8 files changed, 718 insertions(+), 253 deletions(-) diff --git a/hw/xquartz/X11Application.h b/hw/xquartz/X11Application.h index 3d06a4553..ce3fa7bda 100644 --- a/hw/xquartz/X11Application.h +++ b/hw/xquartz/X11Application.h @@ -100,4 +100,10 @@ extern int quartzHasRoot, quartzEnableRootless; #define PREFS_FFM "wm_ffm" #define PREFS_FOCUS_ON_NEW_WINDOW "wm_focus_on_new_window" +#define PREFS_SYNC_PB "sync_pasteboard" +#define PREFS_SYNC_PB_TO_CLIPBOARD "sync_pasteboard_to_clipboard" +#define PREFS_SYNC_PB_TO_PRIMARY "sync_pasteboard_to_primary" +#define PREFS_SYNC_CLIPBOARD_TO_PB "sync_clipboard_to_pasteboard" +#define PREFS_SYNC_PRIMARY_ON_SELECT "sync_primary_on_select" + #endif /* X11APPLICATION_H */ diff --git a/hw/xquartz/X11Application.m b/hw/xquartz/X11Application.m index 0ce495148..213d9ed1d 100644 --- a/hw/xquartz/X11Application.m +++ b/hw/xquartz/X11Application.m @@ -673,6 +673,17 @@ static NSMutableArray * cfarray_to_nsarray (CFArrayRef in) { // enable_stereo = [self prefs_get_boolean:@PREFS_ENABLE_STEREO // default:false]; + + pbproxy_active = [self prefs_get_boolean:@PREFS_SYNC_PB + default:pbproxy_active]; + pbproxy_pasteboard_to_clipboard = [self prefs_get_boolean:@PREFS_SYNC_PB_TO_CLIPBOARD + default:pbproxy_pasteboard_to_clipboard]; + pbproxy_pasteboard_to_primary = [self prefs_get_boolean:@PREFS_SYNC_PB_TO_PRIMARY + default:pbproxy_pasteboard_to_primary]; + pbproxy_clipboard_to_pasteboard = [self prefs_get_boolean:@PREFS_SYNC_CLIPBOARD_TO_PB + default:pbproxy_clipboard_to_pasteboard]; + pbproxy_primary_on_grab = [self prefs_get_boolean:@PREFS_SYNC_PRIMARY_ON_SELECT + default:pbproxy_primary_on_grab]; } /* This will end up at the end of the responder chain. */ diff --git a/hw/xquartz/X11Controller.h b/hw/xquartz/X11Controller.h index c6c719461..a3e208673 100644 --- a/hw/xquartz/X11Controller.h +++ b/hw/xquartz/X11Controller.h @@ -49,6 +49,13 @@ IBOutlet NSButton *focus_on_new_window; IBOutlet NSButton *enable_auth; IBOutlet NSButton *enable_tcp; + IBOutlet NSButton *sync_pasteboard; + IBOutlet NSButton *sync_pasteboard_to_clipboard; + IBOutlet NSButton *sync_pasteboard_to_primary; + IBOutlet NSButton *sync_clipboard_to_pasteboard; + IBOutlet NSButton *sync_primary_immediately; + IBOutlet NSTextField *sync_text1; + IBOutlet NSTextField *sync_text2; IBOutlet NSPopUpButton *depth; IBOutlet NSMenuItem *x11_about_item; @@ -56,6 +63,7 @@ IBOutlet NSMenuItem *dock_window_separator; IBOutlet NSMenuItem *apps_separator; IBOutlet NSMenuItem *toggle_fullscreen_item; + IBOutlet NSMenuItem *copy_menu_item; IBOutlet NSMenu *dock_apps_menu; IBOutlet NSTableView *apps_table; diff --git a/hw/xquartz/X11Controller.m b/hw/xquartz/X11Controller.m index 3c12ea78b..db7ca2d08 100644 --- a/hw/xquartz/X11Controller.m +++ b/hw/xquartz/X11Controller.m @@ -54,6 +54,13 @@ #include #include +// This will live in pbproxy/x-selection.m when we integrage that into a server thread... for now, living here for testing the UI. +int pbproxy_active = YES; +int pbproxy_primary_on_grab = NO; // This is provided as an option for people who want it and has issues that won't ever be addressed to make it *always* work +int pbproxy_clipboard_to_pasteboard = YES; +int pbproxy_pasteboard_to_primary = YES; +int pbproxy_pasteboard_to_clipboard = YES; + @implementation X11Controller - (void) awakeFromNib @@ -622,9 +629,24 @@ objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row quartzUseSysBeep = [use_sysbeep intValue]; X11EnableKeyEquivalents = [enable_keyequivs intValue]; darwinSyncKeymap = [sync_keymap intValue]; + + pbproxy_active = [sync_pasteboard intValue]; + pbproxy_pasteboard_to_clipboard = [sync_pasteboard_to_clipboard intValue]; + pbproxy_pasteboard_to_primary = [sync_pasteboard_to_primary intValue]; + pbproxy_clipboard_to_pasteboard = [sync_clipboard_to_pasteboard intValue]; + pbproxy_primary_on_grab = [sync_primary_immediately intValue]; + + [sync_pasteboard_to_clipboard setEnabled:pbproxy_active]; + [sync_pasteboard_to_primary setEnabled:pbproxy_active]; + [sync_clipboard_to_pasteboard setEnabled:pbproxy_active]; + [sync_primary_immediately setEnabled:pbproxy_active]; + + // This doesn't seem to work. + [sync_text1 setEnabled:pbproxy_active]; + [sync_text2 setEnabled:pbproxy_active]; /* after adding prefs here, also add to [X11Application read_defaults] - and below */ + and prefs_show */ [NSApp prefs_set_boolean:@PREFS_FAKEBUTTONS value:darwinFakeButtons]; [NSApp prefs_set_boolean:@PREFS_SYSBEEP value:quartzUseSysBeep]; @@ -636,6 +658,12 @@ objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row [NSApp prefs_set_boolean:@PREFS_NO_AUTH value:![enable_auth intValue]]; [NSApp prefs_set_boolean:@PREFS_NO_TCP value:![enable_tcp intValue]]; [NSApp prefs_set_integer:@PREFS_DEPTH value:[depth selectedTag]]; + + [NSApp prefs_set_integer:@PREFS_SYNC_PB value:pbproxy_active]; + [NSApp prefs_set_integer:@PREFS_SYNC_PB_TO_CLIPBOARD value:pbproxy_pasteboard_to_clipboard]; + [NSApp prefs_set_integer:@PREFS_SYNC_PB_TO_PRIMARY value:pbproxy_pasteboard_to_primary]; + [NSApp prefs_set_integer:@PREFS_SYNC_CLIPBOARD_TO_PB value:pbproxy_clipboard_to_pasteboard]; + [NSApp prefs_set_integer:@PREFS_SYNC_PRIMARY_ON_SELECT value:pbproxy_primary_on_grab]; system("killall -HUP quartz-wm"); @@ -656,7 +684,22 @@ objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row [enable_tcp setIntValue:![NSApp prefs_get_boolean:@PREFS_NO_TCP default:NO]]; [depth selectItemAtIndex:[depth indexOfItemWithTag:[NSApp prefs_get_integer:@PREFS_DEPTH default:-1]]]; - + + [sync_pasteboard setIntValue:pbproxy_active]; + [sync_pasteboard_to_clipboard setIntValue:pbproxy_pasteboard_to_clipboard]; + [sync_pasteboard_to_primary setIntValue:pbproxy_pasteboard_to_primary]; + [sync_clipboard_to_pasteboard setIntValue:pbproxy_clipboard_to_pasteboard]; + [sync_primary_immediately setIntValue:pbproxy_primary_on_grab]; + + [sync_pasteboard_to_clipboard setEnabled:pbproxy_active]; + [sync_pasteboard_to_primary setEnabled:pbproxy_active]; + [sync_clipboard_to_pasteboard setEnabled:pbproxy_active]; + [sync_primary_immediately setEnabled:pbproxy_active]; + + // This doesn't seem to work. + [sync_text1 setEnabled:pbproxy_active]; + [sync_text2 setEnabled:pbproxy_active]; + [enable_fullscreen setIntValue:!quartzEnableRootless]; // TODO: Add fullscreen support [enable_fullscreen setEnabled:NO]; @@ -677,9 +720,11 @@ objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row - (OSX_BOOL) validateMenuItem:(NSMenuItem *)item { NSMenu *menu = [item menu]; - + if (item == toggle_fullscreen_item) return !quartzEnableRootless; + else if (item == copy_menu_item) // For some reason, this isn't working... + return NO; else if (menu == [window_separator menu] || menu == dock_menu || (menu == [x11_about_item menu] && [item tag] == 42)) return (AppleWMSelectedEvents () & AppleWMControllerNotifyMask) != 0; diff --git a/hw/xquartz/bundle/Resources/English.lproj/main.nib/designable.nib b/hw/xquartz/bundle/Resources/English.lproj/main.nib/designable.nib index 76148dacf..7490e0fa4 100644 --- a/hw/xquartz/bundle/Resources/English.lproj/main.nib/designable.nib +++ b/hw/xquartz/bundle/Resources/English.lproj/main.nib/designable.nib @@ -1,19 +1,29 @@ - + 1050 - 9F30 - 670 + 9F33 + 674 949.34 352.00 YES - + + YES com.apple.InterfaceBuilder.CocoaPlugin + + YES + + YES + + + YES + + YES @@ -230,44 +240,6 @@ Edit YES - - - Undo - z - 1048576 - 2147483647 - - - - - - Redo - Z - 1048576 - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Cut - x - 1048576 - 2147483647 - - - Copy @@ -277,33 +249,6 @@ - - - Paste - v - 1048576 - 2147483647 - - - - - - Delete - - 1048576 - 2147483647 - - - - - - Select All - a - 1048576 - 2147483647 - - - @@ -447,7 +392,7 @@ 3 2 - {{266, 392}, {484, 280}} + {{266, 364}, {484, 308}} 1350041600 X11 Preferences NSPanel @@ -457,14 +402,14 @@ {3.40282e+38, 3.40282e+38} {320, 240} - + 256 YES 256 - {{13, 10}, {458, 264}} + {{13, 10}, {458, 292}} YES @@ -480,7 +425,7 @@ 256 - {{18, 182}, {402, 18}} + {{18, 210}, {402, 18}} YES @@ -507,7 +452,7 @@ 256 - {{36, 32}, {385, 31}} + {{36, 60}, {385, 31}} YES @@ -543,7 +488,7 @@ 256 - {{36, 134}, {385, 42}} + {{36, 162}, {385, 42}} YES @@ -560,7 +505,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{18, 69}, {402, 18}} + {{18, 97}, {402, 18}} YES @@ -581,7 +526,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{36, 98}, {385, 14}} + {{36, 126}, {385, 14}} YES @@ -597,7 +542,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{18, 118}, {402, 18}} + {{18, 146}, {402, 18}} YES @@ -616,7 +561,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg - {{10, 33}, {438, 218}} + {{10, 33}, {438, 246}} Input @@ -635,7 +580,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{18, 55}, {402, 18}} + {{18, 83}, {402, 18}} YES @@ -656,7 +601,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{36, 21}, {385, 28}} + {{36, 49}, {385, 28}} YES @@ -672,7 +617,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{74, 174}, {128, 26}} + {{74, 202}, {128, 26}} YES @@ -763,7 +708,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{17, 177}, {55, 20}} + {{17, 205}, {55, 20}} YES @@ -779,7 +724,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{36, 155}, {392, 14}} + {{36, 183}, {392, 14}} YES @@ -795,7 +740,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{18, 121}, {409, 23}} + {{18, 149}, {409, 23}} YES @@ -816,7 +761,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{36, 84}, {385, 31}} + {{36, 112}, {385, 31}} YES @@ -830,12 +775,183 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg - {{10, 33}, {438, 218}} + {{10, 33}, {438, 246}} Output + + + 2 + + + + 256 + + YES + + + 256 + {{18, 222}, {409, 23}} + + YES + + 67239424 + 0 + Enable syncing + + + 1211912703 + 2 + + + + 200 + 25 + + + + + 256 + {{36, 188}, {385, 28}} + + YES + + 67239424 + 4194304 + RW5hYmxlcyB0aGUgImNvcHkiIG1lbnUgaXRlbSBhbmQgYWxsb3dzIGZvciBzeW5jaW5nIGJldHdlZW4g +dGhlIE9TWCBQYXN0ZWJvYXJkIGFuZCB0aGUgWDExIENMSVBCT0FSRCBhbmQgUFJJTUFSWSBidWZmZXJz +Lg + + + + + + + + + 256 + {{34, 96}, {409, 23}} + + YES + + 67239424 + 0 + Update CLIPBOARD when Pasteboard changes. + + + 1211912703 + 2 + + + + 200 + 25 + + + + + 256 + {{34, 71}, {409, 23}} + + YES + + 67239424 + 0 + Update PRIMARY (middle-click) when Pasteboard changes. + + + 1211912703 + 2 + + + + 200 + 25 + + + + + 256 + {{34, 46}, {409, 23}} + + YES + + 67239424 + 0 + Update Pasteboard immediately when new text is selected. + + + 1211912703 + 2 + + + + 200 + 25 + + + + + 256 + {{34, 159}, {409, 23}} + + YES + + 67239424 + 0 + Update Pasteboard when CLIPBOARD changes. + + + 1211912703 + 2 + + + + 200 + 25 + + + + + 256 + {{48, 125}, {385, 28}} + + YES + + 67239424 + 4194304 + Disable this option if you want to use xclipboard, klipper, or any other X11 clipboard manager. + + + + + + + + + 256 + {{48, 14}, {370, 28}} + + YES + + 67239424 + 4194304 + Due to limitations in the X11 protocol, this option may not always work in some applications. + + + + + + + + {{10, 33}, {438, 246}} + + Pasteboard + + + 2 @@ -848,7 +964,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{15, 184}, {402, 18}} + {{15, 212}, {402, 18}} YES @@ -869,7 +985,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{23, 147}, {385, 31}} + {{23, 175}, {385, 31}} YES @@ -885,7 +1001,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{15, 123}, {402, 18}} + {{15, 151}, {402, 18}} YES @@ -906,7 +1022,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{23, 100}, {385, 17}} + {{23, 128}, {385, 17}} YES @@ -922,7 +1038,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{15, 79}, {402, 18}} + {{15, 107}, {402, 18}} YES @@ -943,7 +1059,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{23, 45}, {385, 28}} + {{23, 73}, {385, 28}} YES @@ -957,7 +1073,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg - {{10, 33}, {438, 218}} + {{10, 33}, {438, 246}} Windows @@ -972,7 +1088,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{18, 182}, {402, 18}} + {{18, 210}, {402, 18}} YES @@ -993,7 +1109,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{18, 105}, {402, 18}} + {{18, 133}, {402, 18}} YES @@ -1014,7 +1130,7 @@ IG9yIHJpZ2h0IG1vdXNlIGJ1dHRvbnMuCg 256 - {{36, 134}, {385, 42}} + {{36, 162}, {385, 42}} YES @@ -1032,7 +1148,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 256 - {{36, 57}, {385, 42}} + {{36, 85}, {385, 42}} YES @@ -1048,7 +1164,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 256 - {{20, -44}, {404, 14}} + {{20, -16}, {404, 14}} YES @@ -1062,7 +1178,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 - {{10, 33}, {438, 218}} + {{10, 33}, {438, 246}} Security @@ -1080,10 +1196,11 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 - {484, 280} + {484, 308} + {{0, 0}, {1280, 938}} - {213, 129} + {320, 262} {3.40282e+38, 3.40282e+38} x11_prefs @@ -1100,7 +1217,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 {3.40282e+38, 3.40282e+38} {320, 240} - + 256 YES @@ -1394,7 +1511,6 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 {454, 271} - {{0, 0}, {1280, 938}} {320, 262} @@ -1459,46 +1575,6 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 YES - - - cut: - - - - 175 - - - - paste: - - - - 176 - - - - redo: - - - - 178 - - - - selectAll: - - - - 179 - - - - undo: - - - - 180 - copy: @@ -1507,14 +1583,6 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 181 - - - delete: - - - - 195 - minimize_window: @@ -1939,6 +2007,110 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 300394 + + + copy_menu_item + + + + 300443 + + + + sync_pasteboard + + + + 300444 + + + + sync_clipboard_to_pasteboard + + + + 300461 + + + + sync_pasteboard_to_clipboard + + + + 300462 + + + + sync_pasteboard_to_primary + + + + 300463 + + + + sync_primary_immediately + + + + 300464 + + + + prefs_changed: + + + + 300465 + + + + prefs_changed: + + + + 300466 + + + + prefs_changed: + + + + 300467 + + + + prefs_changed: + + + + 300468 + + + + prefs_changed: + + + + 300469 + + + + sync_text1 + + + + 300470 + + + + sync_text2 + + + + 300471 + @@ -2161,57 +2333,15 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 YES - - - - - - - - - 156 - - - 157 - - 158 - - - - - 160 - - - - - 164 - - - - - 171 - - - - - 172 - - - - - 173 - - - 269 @@ -2298,6 +2428,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 + @@ -2959,6 +3090,143 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 + + 300421 + + + YES + + + + + + 300422 + + + YES + + + + + + + + + + + + + 300423 + + + YES + + + + + + 300424 + + + YES + + + + + + 300440 + + + + + 300441 + + + + + 300447 + + + YES + + + + + + 300450 + + + + + 300451 + + + YES + + + + + + 300452 + + + + + 300453 + + + YES + + + + + + 300454 + + + + + 300455 + + + YES + + + + + + 300456 + + + + + 300457 + + + YES + + + + + + 300458 + + + + + 300459 + + + YES + + + + + + 300460 + + + @@ -2969,7 +3237,29 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 -2.IBPluginDependency -3.IBPluginDependency -3.ImportedFromIB2 + 100292.IBPluginDependency + 100293.IBPluginDependency + 100295.IBPluginDependency 100295.IBShouldRemoveOnLegacySave + 100310.IBPluginDependency + 100363.IBPluginDependency + 100364.IBPluginDependency + 100365.IBPluginDependency + 100368.IBPluginDependency + 100369.IBPluginDependency + 100370.IBPluginDependency + 100371.IBPluginDependency + 100372.IBPluginDependency + 100374.IBPluginDependency + 100375.IBPluginDependency + 100376.IBPluginDependency + 100377.IBPluginDependency + 100379.IBPluginDependency + 100382.IBPluginDependency + 100385.IBPluginDependency + 100386.IBPluginDependency + 100541.IBPluginDependency + 100543.IBPluginDependency 129.IBPluginDependency 129.ImportedFromIB2 130.IBPluginDependency @@ -2990,31 +3280,19 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 149.ImportedFromIB2 150.IBPluginDependency 150.ImportedFromIB2 - 156.IBPluginDependency - 156.ImportedFromIB2 157.IBPluginDependency 157.ImportedFromIB2 - 158.IBPluginDependency - 158.ImportedFromIB2 - 160.IBPluginDependency - 160.ImportedFromIB2 163.IBPluginDependency 163.ImportedFromIB2 - 164.IBPluginDependency - 164.ImportedFromIB2 + 169.IBEditorWindowLastContentRect 169.IBPluginDependency 169.ImportedFromIB2 169.editorWindowContentRectSynchronizationRect - 171.IBPluginDependency - 171.ImportedFromIB2 - 172.IBPluginDependency - 172.ImportedFromIB2 - 173.IBPluginDependency - 173.ImportedFromIB2 19.IBPluginDependency 19.ImportedFromIB2 196.IBPluginDependency 196.ImportedFromIB2 + 200295.IBPluginDependency 200295.IBShouldRemoveOnLegacySave 203.IBPluginDependency 203.ImportedFromIB2 @@ -3022,11 +3300,11 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 204.ImportedFromIB2 23.IBPluginDependency 23.ImportedFromIB2 + 24.IBEditorWindowLastContentRect 24.IBPluginDependency 24.ImportedFromIB2 24.editorWindowContentRectSynchronizationRect 244.IBEditorWindowLastContentRect - 244.IBPluginDependency 244.IBWindowTemplateEditedContentRect 244.ImportedFromIB2 244.editorWindowContentRectSynchronizationRect @@ -3038,13 +3316,13 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 245.ImportedFromIB2 269.IBPluginDependency 269.ImportedFromIB2 + 270.IBEditorWindowLastContentRect 270.IBPluginDependency 270.ImportedFromIB2 270.editorWindowContentRectSynchronizationRect 272.IBPluginDependency 272.ImportedFromIB2 285.IBEditorWindowLastContentRect - 285.IBPluginDependency 285.IBViewEditorWindowController.showingBoundsRectangles 285.IBViewEditorWindowController.showingLayoutRectangles 285.IBWindowTemplateEditedContentRect @@ -3072,6 +3350,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 297.ImportedFromIB2 298.IBPluginDependency 298.ImportedFromIB2 + 300295.IBPluginDependency 300295.IBShouldRemoveOnLegacySave 300330.IBPluginDependency 300330.ImportedFromIB2 @@ -3083,14 +3362,48 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 300358.ImportedFromIB2 300359.IBPluginDependency 300359.ImportedFromIB2 + 300360.IBPluginDependency + 300361.IBPluginDependency 300362.IBPluginDependency 300362.ImportedFromIB2 + 300363.IBPluginDependency 300364.IBPluginDependency 300364.ImportedFromIB2 + 300365.IBPluginDependency 300368.IBPluginDependency 300368.ImportedFromIB2 + 300369.IBPluginDependency 300370.IBPluginDependency 300370.ImportedFromIB2 + 300371.IBPluginDependency + 300421.IBPluginDependency + 300421.ImportedFromIB2 + 300422.IBPluginDependency + 300422.ImportedFromIB2 + 300423.IBPluginDependency + 300423.ImportedFromIB2 + 300424.IBPluginDependency + 300424.ImportedFromIB2 + 300440.IBPluginDependency + 300441.IBPluginDependency + 300447.IBPluginDependency + 300447.ImportedFromIB2 + 300450.IBPluginDependency + 300451.IBPluginDependency + 300451.ImportedFromIB2 + 300452.IBPluginDependency + 300453.IBPluginDependency + 300453.ImportedFromIB2 + 300454.IBPluginDependency + 300455.IBPluginDependency + 300455.ImportedFromIB2 + 300456.IBPluginDependency + 300457.IBPluginDependency + 300457.ImportedFromIB2 + 300458.IBPluginDependency + 300459.IBPluginDependency + 300459.ImportedFromIB2 + 300460.IBPluginDependency 305.IBPluginDependency 305.ImportedFromIB2 310.IBPluginDependency @@ -3210,8 +3523,30 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -3235,14 +3570,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - + {{168, 821}, {113, 23}} com.apple.InterfaceBuilder.CocoaPlugin {{202, 626}, {154, 153}} @@ -3256,36 +3584,31 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin + {{204, 683}, {315, 153}} com.apple.InterfaceBuilder.CocoaPlugin {{271, 666}, {301, 153}} - {{423, 622}, {484, 280}} - com.apple.InterfaceBuilder.CocoaPlugin - {{423, 622}, {484, 280}} + {{437, 749}, {484, 308}} + {{437, 749}, {484, 308}} {{184, 290}, {481, 345}} - + {3.40282e+38, 3.40282e+38} - {213, 107} + {320, 240} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + {{58, 803}, {155, 33}} com.apple.InterfaceBuilder.CocoaPlugin {{100, 746}, {155, 33}} com.apple.InterfaceBuilder.CocoaPlugin {{68, 585}, {454, 271}} - com.apple.InterfaceBuilder.CocoaPlugin {{68, 585}, {454, 271}} @@ -3297,7 +3620,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 {320, 240} com.apple.InterfaceBuilder.CocoaPlugin - {{0, 836}, {336, 20}} + {{8, 844}, {336, 20}} com.apple.InterfaceBuilder.CocoaPlugin {{67, 819}, {336, 20}} @@ -3313,6 +3636,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -3325,6 +3649,58 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -3412,25 +3788,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{12, 633}, {218, 203}} + {{20, 641}, {218, 203}} com.apple.InterfaceBuilder.CocoaPlugin {{79, 616}, {218, 203}} @@ -3466,7 +3824,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 - 300420 + 300471 @@ -3551,6 +3909,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 apps_separator apps_table click_through + copy_menu_item depth dock_apps_menu dock_menu @@ -3563,7 +3922,14 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 focus_follows_mouse focus_on_new_window prefs_panel + sync_clipboard_to_pasteboard sync_keymap + sync_pasteboard + sync_pasteboard_to_clipboard + sync_pasteboard_to_primary + sync_primary_immediately + sync_text1 + sync_text2 toggle_fullscreen_item use_sysbeep window_separator @@ -3574,6 +3940,7 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 NSMenuItem NSTableView NSButton + NSMenuItem NSPopUpButton NSMenu NSMenu @@ -3587,6 +3954,13 @@ d2hpY2ggbWF5IHByZXZlbnQgWDExIGFwcGxpY2F0aW9ucyBmcm9tIGxhdW5jaGluZy4 NSButton NSPanel NSButton + NSButton + NSButton + NSButton + NSButton + NSButton + NSTextField + NSTextField NSMenuItem NSButton NSMenuItem diff --git a/hw/xquartz/bundle/Resources/English.lproj/main.nib/keyedobjects.nib b/hw/xquartz/bundle/Resources/English.lproj/main.nib/keyedobjects.nib index 197c1be190e54e5467eec2a5d111cd6b04f8a98e..c5495681f7ad006cf29ac967f52dc804128570ec 100644 GIT binary patch literal 41243 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 literal 37205 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 diff --git a/hw/xquartz/darwin.h b/hw/xquartz/darwin.h index da5ad74a1..e45ab19f3 100644 --- a/hw/xquartz/darwin.h +++ b/hw/xquartz/darwin.h @@ -89,6 +89,12 @@ extern unsigned int darwinDesiredWidth, darwinDesiredHeight; extern int darwinDesiredDepth; extern int darwinDesiredRefresh; +extern int pbproxy_active; +extern int pbproxy_primary_on_grab; +extern int pbproxy_clipboard_to_pasteboard; +extern int pbproxy_pasteboard_to_primary; +extern int pbproxy_pasteboard_to_clipboard; + // location of X11's (0,0) point in global screen coordinates extern int darwinMainScreenX; extern int darwinMainScreenY; diff --git a/hw/xquartz/doc/Xquartz.man.pre b/hw/xquartz/doc/Xquartz.man.pre index 100589e08..a9f9a589b 100644 --- a/hw/xquartz/doc/Xquartz.man.pre +++ b/hw/xquartz/doc/Xquartz.man.pre @@ -56,6 +56,21 @@ defaults to the depth of the main display. .TP 8 .B defaults write org.x.X11 sync_keymap -boolean true Keep the X11 keymap up to date with the OSX system keymap. +.TP 8 +.B defaults write org.x.X11 sync_pasteboard -boolean true +Enable syncing between the OSX pasteboard and clipboard/primary selection buffers in X11. This option needs to be true for any of the other pasteboard sync options to have an effect. +.TP 8 +.B defaults write org.x.X11 sync_pasteboard_to_clipboard -boolean true +Update the X11 CLIPBOARD when the OSX NSPasteboard is updated. +.TP 8 +.B defaults write org.x.X11 sync_pasteboard_to_primary -boolean true +Update the the X11 PRIMARY buffer when the OSX NSPasteboard is updated. +.TP 8 +.B defaults write org.x.X11 sync_clipboard_to_pasteboard -boolean true +Update the the OSX NSPasteboard when the X11 CLIPBOARD is updated. Note that enabling this option causes the clipboard synchronization to act as a clipboard manager in X11. This makes it impossible to use xclipboard, klipper, or any other such clipboard managers. If you want to use any of these programs, you must disable this option. +.TP 8 +.B defaults write org.x.X11 sync_primary_on_select -boolean true +This option defaults to false and is provided only "for experts." It updates the NSPasteboard whenever a new X11 selection is made (rather than requiring you to hit cmd-c to copy the selection to the NSPasteboard). Since the X11 protocol does not require applications to send notification when they change selection, this might not work in all cases (if you run into this problem, try selecting text in another application first, then selecting the text you want). .SH OPTIONS .PP In addition to the normal server options described in the \fIXserver(1)\fP