xkb: note that we allow full xi interaction
We now allow maps to be set (etc) on different keyboards, so stop putting XkbXI_KeyboardsMask in unsupported.
This commit is contained in:
parent
1d65429a9e
commit
de5a4c6374
|
@ -5720,7 +5720,6 @@ char * str;
|
||||||
wanted&= ~XkbXI_ButtonActionsMask;
|
wanted&= ~XkbXI_ButtonActionsMask;
|
||||||
if ((!dev->kbdfeed)&&(!dev->leds))
|
if ((!dev->kbdfeed)&&(!dev->leds))
|
||||||
wanted&= ~XkbXI_IndicatorsMask;
|
wanted&= ~XkbXI_IndicatorsMask;
|
||||||
wanted&= ~XkbXI_KeyboardsMask;
|
|
||||||
|
|
||||||
nameLen= XkbSizeCountedString(dev->name);
|
nameLen= XkbSizeCountedString(dev->name);
|
||||||
bzero((char *)&rep,SIZEOF(xkbGetDeviceInfoReply));
|
bzero((char *)&rep,SIZEOF(xkbGetDeviceInfoReply));
|
||||||
|
@ -5729,8 +5728,8 @@ char * str;
|
||||||
rep.sequenceNumber = client->sequence;
|
rep.sequenceNumber = client->sequence;
|
||||||
rep.length = nameLen/4;
|
rep.length = nameLen/4;
|
||||||
rep.present = wanted;
|
rep.present = wanted;
|
||||||
rep.supported = XkbXI_AllDeviceFeaturesMask&(~XkbXI_KeyboardsMask);
|
rep.supported = XkbXI_AllDeviceFeaturesMask;
|
||||||
rep.unsupported = XkbXI_KeyboardsMask;
|
rep.unsupported = 0;
|
||||||
rep.firstBtnWanted = rep.nBtnsWanted = 0;
|
rep.firstBtnWanted = rep.nBtnsWanted = 0;
|
||||||
rep.firstBtnRtrn = rep.nBtnsRtrn = 0;
|
rep.firstBtnRtrn = rep.nBtnsRtrn = 0;
|
||||||
if (dev->button)
|
if (dev->button)
|
||||||
|
@ -6044,7 +6043,7 @@ xkbExtensionDeviceNotify ed;
|
||||||
change= stuff->change;
|
change= stuff->change;
|
||||||
|
|
||||||
CHK_ANY_DEVICE(dev,stuff->deviceSpec);
|
CHK_ANY_DEVICE(dev,stuff->deviceSpec);
|
||||||
CHK_MASK_LEGAL(0x01,change,(XkbXI_AllFeaturesMask&(~XkbXI_KeyboardsMask)));
|
CHK_MASK_LEGAL(0x01,change,XkbXI_AllFeaturesMask);
|
||||||
|
|
||||||
wire= (char *)&stuff[1];
|
wire= (char *)&stuff[1];
|
||||||
if (change&XkbXI_ButtonActionsMask) {
|
if (change&XkbXI_ButtonActionsMask) {
|
||||||
|
|
|
@ -675,13 +675,13 @@ xkbExtensionDeviceNotify my_ed;
|
||||||
changes->names.changed_indicators|= changed_names;
|
changes->names.changed_indicators|= changed_names;
|
||||||
}
|
}
|
||||||
|
|
||||||
ed->reason|= (XkbXI_IndicatorNamesMask&(~XkbXI_KeyboardsMask));
|
ed->reason|= XkbXI_IndicatorNamesMask;
|
||||||
ed->ledClass= sli->class;
|
ed->ledClass= sli->class;
|
||||||
ed->ledID= sli->id;
|
ed->ledID= sli->id;
|
||||||
ed->ledsDefined= sli->namesPresent|sli->mapsPresent;
|
ed->ledsDefined= sli->namesPresent|sli->mapsPresent;
|
||||||
ed->ledState= sli->effectiveState;
|
ed->ledState= sli->effectiveState;
|
||||||
ed->unsupported= XkbXI_KeyboardsMask;
|
ed->unsupported= 0;
|
||||||
ed->supported= XkbXI_AllFeaturesMask&(~XkbXI_KeyboardsMask);
|
ed->supported= XkbXI_AllFeaturesMask;
|
||||||
|
|
||||||
if (changes!=&my_changes) changes= NULL;
|
if (changes!=&my_changes) changes= NULL;
|
||||||
if (ed!=&my_ed) ed= NULL;
|
if (ed!=&my_ed) ed= NULL;
|
||||||
|
@ -753,13 +753,13 @@ xkbExtensionDeviceNotify my_ed;
|
||||||
|
|
||||||
XkbCheckIndicatorMaps(dev,sli,changed_maps);
|
XkbCheckIndicatorMaps(dev,sli,changed_maps);
|
||||||
|
|
||||||
ed->reason|= (XkbXI_IndicatorMapsMask&(~XkbXI_KeyboardsMask));
|
ed->reason|= XkbXI_IndicatorMapsMask;
|
||||||
ed->ledClass= sli->class;
|
ed->ledClass= sli->class;
|
||||||
ed->ledID= sli->id;
|
ed->ledID= sli->id;
|
||||||
ed->ledsDefined= sli->namesPresent|sli->mapsPresent;
|
ed->ledsDefined= sli->namesPresent|sli->mapsPresent;
|
||||||
ed->ledState= sli->effectiveState;
|
ed->ledState= sli->effectiveState;
|
||||||
ed->unsupported|= XkbXI_KeyboardsMask&XkbXI_IndicatorMapsMask;
|
ed->unsupported|= XkbXI_IndicatorMapsMask;
|
||||||
ed->supported= XkbXI_AllFeaturesMask&(~XkbXI_KeyboardsMask);
|
ed->supported= XkbXI_AllFeaturesMask;
|
||||||
|
|
||||||
XkbUpdateLedAutoState(dev,sli,changed_maps,ed,changes,cause);
|
XkbUpdateLedAutoState(dev,sli,changed_maps,ed,changes,cause);
|
||||||
|
|
||||||
|
@ -834,13 +834,13 @@ Bool kb_changed;
|
||||||
if ((kbd==dev)&&(sli->flags&XkbSLI_IsDefault))
|
if ((kbd==dev)&&(sli->flags&XkbSLI_IsDefault))
|
||||||
changes->indicators.state_changes|= affected;
|
changes->indicators.state_changes|= affected;
|
||||||
if (affected) {
|
if (affected) {
|
||||||
ed->reason|= (XkbXI_IndicatorStateMask&(~XkbXI_KeyboardsMask));
|
ed->reason|= XkbXI_IndicatorStateMask;
|
||||||
ed->ledClass= sli->class;
|
ed->ledClass= sli->class;
|
||||||
ed->ledID= sli->id;
|
ed->ledID= sli->id;
|
||||||
ed->ledsDefined= sli->namesPresent|sli->mapsPresent;
|
ed->ledsDefined= sli->namesPresent|sli->mapsPresent;
|
||||||
ed->ledState= sli->effectiveState;
|
ed->ledState= sli->effectiveState;
|
||||||
ed->unsupported|= XkbXI_KeyboardsMask&XkbXI_IndicatorStateMask;
|
ed->unsupported|= XkbXI_IndicatorStateMask;
|
||||||
ed->supported= XkbXI_AllFeaturesMask&(~XkbXI_KeyboardsMask);
|
ed->supported= XkbXI_AllFeaturesMask;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (kb_changed) {
|
if (kb_changed) {
|
||||||
|
@ -918,13 +918,13 @@ unsigned oldState;
|
||||||
changes->indicators.state_changes|= affected;
|
changes->indicators.state_changes|= affected;
|
||||||
}
|
}
|
||||||
|
|
||||||
ed->reason|= (XkbXI_IndicatorStateMask&(~XkbXI_KeyboardsMask));
|
ed->reason|= XkbXI_IndicatorStateMask;
|
||||||
ed->ledClass= sli->class;
|
ed->ledClass= sli->class;
|
||||||
ed->ledID= sli->id;
|
ed->ledID= sli->id;
|
||||||
ed->ledsDefined= sli->namesPresent|sli->mapsPresent;
|
ed->ledsDefined= sli->namesPresent|sli->mapsPresent;
|
||||||
ed->ledState= sli->effectiveState;
|
ed->ledState= sli->effectiveState;
|
||||||
ed->unsupported|= XkbXI_KeyboardsMask&XkbXI_IndicatorStateMask;
|
ed->unsupported|= XkbXI_IndicatorStateMask;
|
||||||
ed->supported= XkbXI_AllFeaturesMask&(~XkbXI_KeyboardsMask);
|
ed->supported= XkbXI_AllFeaturesMask;
|
||||||
|
|
||||||
if (changes!=&my_changes) changes= NULL;
|
if (changes!=&my_changes) changes= NULL;
|
||||||
if (ed!=&my_ed) ed= NULL;
|
if (ed!=&my_ed) ed= NULL;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user