XQuartz: Send AppleWMReloadPreferences where appropriate.
This commit is contained in:
parent
8edc5fb38c
commit
490cbe9888
|
@ -674,17 +674,6 @@ 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. */
|
||||
|
|
|
@ -54,13 +54,6 @@
|
|||
#include <sys/types.h>
|
||||
#include <sys/wait.h>
|
||||
|
||||
// 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
|
||||
|
@ -630,21 +623,6 @@ objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row
|
|||
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];
|
||||
|
||||
// setEnabled doesn't do this...
|
||||
[sync_text1 setTextColor:pbproxy_active ? [NSColor controlTextColor] : [NSColor disabledControlTextColor]];
|
||||
[sync_text2 setTextColor:pbproxy_active ? [NSColor controlTextColor] : [NSColor disabledControlTextColor]];
|
||||
|
||||
/* after adding prefs here, also add to [X11Application read_defaults]
|
||||
and prefs_show */
|
||||
|
||||
|
@ -659,19 +637,32 @@ objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row
|
|||
[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];
|
||||
BOOL pbproxy_active = [sync_pasteboard intValue];
|
||||
|
||||
[NSApp prefs_set_boolean:@PREFS_SYNC_PB value:pbproxy_active];
|
||||
[NSApp prefs_set_boolean:@PREFS_SYNC_PB_TO_CLIPBOARD value:[sync_pasteboard_to_clipboard intValue]];
|
||||
[NSApp prefs_set_boolean:@PREFS_SYNC_PB_TO_PRIMARY value:[sync_pasteboard_to_primary intValue]];
|
||||
[NSApp prefs_set_boolean:@PREFS_SYNC_CLIPBOARD_TO_PB value:[sync_clipboard_to_pasteboard intValue]];
|
||||
[NSApp prefs_set_boolean:@PREFS_SYNC_PRIMARY_ON_SELECT value:[sync_primary_immediately intValue]];
|
||||
|
||||
system("killall -HUP quartz-wm");
|
||||
|
||||
[NSApp prefs_synchronize];
|
||||
|
||||
[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];
|
||||
|
||||
// setEnabled doesn't do this...
|
||||
[sync_text1 setTextColor:pbproxy_active ? [NSColor controlTextColor] : [NSColor disabledControlTextColor]];
|
||||
[sync_text2 setTextColor:pbproxy_active ? [NSColor controlTextColor] : [NSColor disabledControlTextColor]];
|
||||
|
||||
DarwinSendDDXEvent(kXquartzReloadPreferences, 0);
|
||||
}
|
||||
|
||||
- (IBAction) prefs_show:sender
|
||||
{
|
||||
BOOL pbproxy_active = [NSApp prefs_get_boolean:@PREFS_SYNC_PB default:YES];
|
||||
|
||||
[fake_buttons setIntValue:darwinFakeButtons];
|
||||
[use_sysbeep setIntValue:quartzUseSysBeep];
|
||||
[enable_keyequivs setIntValue:X11EnableKeyEquivalents];
|
||||
|
@ -684,12 +675,12 @@ 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 setIntValue:[NSApp prefs_get_boolean:@PREFS_SYNC_PB_TO_CLIPBOARD default:YES]];
|
||||
[sync_pasteboard_to_primary setIntValue:[NSApp prefs_get_boolean:@PREFS_SYNC_PB_TO_PRIMARY default:YES]];
|
||||
[sync_clipboard_to_pasteboard setIntValue:[NSApp prefs_get_boolean:@PREFS_SYNC_CLIPBOARD_TO_PB default:YES]];
|
||||
[sync_primary_immediately setIntValue:[NSApp prefs_get_boolean:@PREFS_SYNC_PRIMARY_ON_SELECT default:NO]];
|
||||
|
||||
[sync_pasteboard_to_clipboard setEnabled:pbproxy_active];
|
||||
[sync_pasteboard_to_primary setEnabled:pbproxy_active];
|
||||
|
|
|
@ -89,12 +89,6 @@ 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;
|
||||
|
|
|
@ -107,6 +107,7 @@ static pthread_t create_thread(void *func, void *arg) {
|
|||
return tid;
|
||||
}
|
||||
|
||||
void darwinEvents_lock(void);
|
||||
void darwinEvents_lock(void) {
|
||||
int err;
|
||||
if((err = pthread_mutex_lock(&mieq_lock))) {
|
||||
|
@ -119,6 +120,7 @@ void darwinEvents_lock(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void darwinEvents_unlock(void);
|
||||
void darwinEvents_unlock(void) {
|
||||
int err;
|
||||
if((err = pthread_mutex_unlock(&mieq_lock))) {
|
||||
|
@ -225,6 +227,13 @@ static void DarwinEventHandler(int screenNum, xEventPtr xe, DeviceIntPtr dev, in
|
|||
QuartzHide();
|
||||
break;
|
||||
|
||||
case kXquartzReloadPreferences:
|
||||
DEBUG_LOG("kXquartzReloadPreferences\n");
|
||||
AppleWMSendEvent(AppleWMActivationNotify,
|
||||
AppleWMActivationNotifyMask,
|
||||
AppleWMReloadPreferences, 0);
|
||||
break;
|
||||
|
||||
case kXquartzToggleFullscreen:
|
||||
DEBUG_LOG("kXquartzToggleFullscreen\n");
|
||||
#ifdef DARWIN_DDX_MISSING
|
||||
|
@ -315,6 +324,7 @@ Bool DarwinEQInit(void) {
|
|||
mieqSetHandler(kXquartzReloadKeymap, DarwinKeyboardReloadHandler);
|
||||
mieqSetHandler(kXquartzActivate, DarwinEventHandler);
|
||||
mieqSetHandler(kXquartzDeactivate, DarwinEventHandler);
|
||||
mieqSetHandler(kXquartzReloadPreferences, DarwinEventHandler);
|
||||
mieqSetHandler(kXquartzSetRootClip, DarwinEventHandler);
|
||||
mieqSetHandler(kXquartzQuit, DarwinEventHandler);
|
||||
mieqSetHandler(kXquartzReadPasteboard, QuartzReadPasteboard);
|
||||
|
@ -394,8 +404,8 @@ static void DarwinPrepareValuators(int *valuators, ScreenPtr screen,
|
|||
valuators[3] = tilt_x * SCALEFACTOR_TILT;
|
||||
valuators[4] = tilt_y * SCALEFACTOR_TILT;
|
||||
|
||||
DEBUG_LOG("Valuators: {%d,%d,%d,%d,%d}\n",
|
||||
valuators[0], valuators[1], valuators[2], valuators[3], valuators[4]);
|
||||
// DEBUG_LOG("Valuators: {%d,%d,%d,%d,%d}\n",
|
||||
// valuators[0], valuators[1], valuators[2], valuators[3], valuators[4]);
|
||||
}
|
||||
|
||||
void DarwinSendPointerEvents(int ev_type, int ev_button, int pointer_x, int pointer_y,
|
||||
|
@ -406,7 +416,7 @@ void DarwinSendPointerEvents(int ev_type, int ev_button, int pointer_x, int poin
|
|||
ScreenPtr screen;
|
||||
int valuators[5];
|
||||
|
||||
DEBUG_LOG("x=%d, y=%d, p=%f, tx=%f, ty=%f\n", pointer_x, pointer_y, pressure, tilt_x, tilt_y);
|
||||
// DEBUG_LOG("x=%d, y=%d, p=%f, tx=%f, ty=%f\n", pointer_x, pointer_y, pressure, tilt_x, tilt_y);
|
||||
|
||||
if(!darwinEvents) {
|
||||
DEBUG_LOG("DarwinSendPointerEvents called before darwinEvents was initialized\n");
|
||||
|
|
|
@ -63,6 +63,7 @@ enum {
|
|||
*/
|
||||
kXquartzControllerNotify, // send an AppleWMControllerNotify event
|
||||
kXquartzPasteboardNotify, // notify the WM to copy or paste
|
||||
kXquartzReloadPreferences, // send AppleWMReloadPreferences
|
||||
/*
|
||||
* Xplugin notification events
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue
Block a user