mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-10-28 10:58:51 +00:00
Fixed CPEvent -timestamp to return seconds since startup, as documented in Cocoa.
Miscellaneous cleanup of timestamp usage as well.
This commit is contained in:
1 parent
3f58c4ea6f
commit
5763ebdf2b
7 files changed
+51
-42
No files matched your search
+11
-2
@@ -179,7 +179,8 @@ CPDOMEventTouchCancel = "touchcancel";
|
|||||||
|
|
||||||
var _CPEventPeriodicEventPeriod = 0,
|
var _CPEventPeriodicEventPeriod = 0,
|
||||||
_CPEventPeriodicEventTimer = nil,
|
_CPEventPeriodicEventTimer = nil,
|
||||||
_CPEventUpperCaseRegex = new RegExp("[A-Z]");
|
_CPEventUpperCaseRegex = new RegExp("[A-Z]"),
|
||||||
|
_CPEventStartupMilliseconds = new Date().getTime();
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@ingroup appkit
|
@ingroup appkit
|
||||||
@@ -209,6 +210,14 @@ var _CPEventPeriodicEventPeriod = 0,
|
|||||||
float _deltaZ;
|
float _deltaZ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
Returns the current time in fractional seconds since startup.
|
||||||
|
*/
|
||||||
|
+ (CPTimeInterval)currentTimestamp
|
||||||
|
{
|
||||||
|
return (new Date().getTime() - _CPEventStartupMilliseconds) / 1000;
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Creates a new keyboard event.
|
Creates a new keyboard event.
|
||||||
|
|
||||||
@@ -389,7 +398,7 @@ var _CPEventPeriodicEventPeriod = 0,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Returns the time the event occurred.
|
Returns the time the event occurred in seconds since startup.
|
||||||
*/
|
*/
|
||||||
- (CPTimeInterval)timestamp
|
- (CPTimeInterval)timestamp
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ _CPMenuManagerScrollingStateUp = -1;
|
|||||||
_CPMenuManagerScrollingStateDown = 1;
|
_CPMenuManagerScrollingStateDown = 1;
|
||||||
_CPMenuManagerScrollingStateNone = 0;
|
_CPMenuManagerScrollingStateNone = 0;
|
||||||
|
|
||||||
var STICKY_TIME_INTERVAL = 500,
|
var STICKY_TIME_INTERVAL = 0.5,
|
||||||
SharedMenuManager = nil;
|
SharedMenuManager = nil;
|
||||||
|
|
||||||
@implementation _CPMenuManager: CPObject
|
@implementation _CPMenuManager: CPObject
|
||||||
@@ -127,7 +127,7 @@ var STICKY_TIME_INTERVAL = 500,
|
|||||||
|
|
||||||
if (_keyBuffer)
|
if (_keyBuffer)
|
||||||
{
|
{
|
||||||
if (([CPDate date] - _startTime) > (STICKY_TIME_INTERVAL + [activeMenu numberOfItems] / 2))
|
if (([anEvent timestamp] - _startTime) > (STICKY_TIME_INTERVAL + [activeMenu numberOfItems] / 2))
|
||||||
[self selectNextItemBeginningWith:_keyBuffer inMenu:menu clearBuffer:YES];
|
[self selectNextItemBeginningWith:_keyBuffer inMenu:menu clearBuffer:YES];
|
||||||
|
|
||||||
if (type === CPPeriodic)
|
if (type === CPPeriodic)
|
||||||
@@ -245,7 +245,7 @@ var STICKY_TIME_INTERVAL = 500,
|
|||||||
|
|
||||||
3. The user clicks, drags and then releases. Tracking ends.
|
3. The user clicks, drags and then releases. Tracking ends.
|
||||||
*/
|
*/
|
||||||
if (_mouseWasDragged || [anEvent timestamp] - _startTime > STICKY_TIME_INTERVAL)
|
if (_mouseWasDragged || ([anEvent timestamp] - _startTime > STICKY_TIME_INTERVAL))
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
Close the menu if:
|
Close the menu if:
|
||||||
|
|||||||
@@ -661,7 +661,7 @@ var ModifierKeyCodes = [
|
|||||||
- (void)keyEvent:(DOMEvent)aDOMEvent
|
- (void)keyEvent:(DOMEvent)aDOMEvent
|
||||||
{
|
{
|
||||||
var event,
|
var event,
|
||||||
timestamp = aDOMEvent.timeStamp || new Date(),
|
timestamp = [CPEvent currentTimestamp],
|
||||||
sourceElement = aDOMEvent.target || aDOMEvent.srcElement,
|
sourceElement = aDOMEvent.target || aDOMEvent.srcElement,
|
||||||
windowNumber = [[CPApp keyWindow] windowNumber],
|
windowNumber = [[CPApp keyWindow] windowNumber],
|
||||||
modifierFlags = (aDOMEvent.shiftKey ? CPShiftKeyMask : 0) |
|
modifierFlags = (aDOMEvent.shiftKey ? CPShiftKeyMask : 0) |
|
||||||
@@ -871,11 +871,11 @@ var ModifierKeyCodes = [
|
|||||||
{
|
{
|
||||||
if ([self _validateCopyCutOrPasteEvent:aDOMEvent flags:CPPlatformActionKeyMask] && !_ignoreNativeCopyOrCutEvent)
|
if ([self _validateCopyCutOrPasteEvent:aDOMEvent flags:CPPlatformActionKeyMask] && !_ignoreNativeCopyOrCutEvent)
|
||||||
{
|
{
|
||||||
//we have to send out a fake copy or cut event so that we can force the copy/cut mechanisms to take place
|
// we have to send out a fake copy or cut event so that we can force the copy/cut mechanisms to take place
|
||||||
var cut = aDOMEvent.type === "beforecut",
|
var cut = aDOMEvent.type === "beforecut",
|
||||||
keyCode = cut ? CPKeyCodes.X : CPKeyCodes.C,
|
keyCode = cut ? CPKeyCodes.X : CPKeyCodes.C,
|
||||||
characters = cut ? "x" : "c",
|
characters = cut ? "x" : "c",
|
||||||
timestamp = aDOMEvent.timeStamp ? aDOMEvent.timeStamp : new Date(),
|
timestamp = [CPEvent currentTimestamp], // fake event, might as well use current timestamp
|
||||||
windowNumber = [[CPApp keyWindow] windowNumber],
|
windowNumber = [[CPApp keyWindow] windowNumber],
|
||||||
modifierFlags = CPPlatformActionKeyMask;
|
modifierFlags = CPPlatformActionKeyMask;
|
||||||
|
|
||||||
@@ -1008,7 +1008,7 @@ var ModifierKeyCodes = [
|
|||||||
var deltaX = 0.0,
|
var deltaX = 0.0,
|
||||||
deltaY = 0.0,
|
deltaY = 0.0,
|
||||||
windowNumber = 0,
|
windowNumber = 0,
|
||||||
timestamp = aDOMEvent.timeStamp ? aDOMEvent.timeStamp : new Date(),
|
timestamp = [CPEvent currentTimestamp],
|
||||||
modifierFlags = (aDOMEvent.shiftKey ? CPShiftKeyMask : 0) |
|
modifierFlags = (aDOMEvent.shiftKey ? CPShiftKeyMask : 0) |
|
||||||
(aDOMEvent.ctrlKey ? CPControlKeyMask : 0) |
|
(aDOMEvent.ctrlKey ? CPControlKeyMask : 0) |
|
||||||
(aDOMEvent.altKey ? CPAlternateKeyMask : 0) |
|
(aDOMEvent.altKey ? CPAlternateKeyMask : 0) |
|
||||||
@@ -1135,7 +1135,7 @@ var ModifierKeyCodes = [
|
|||||||
newEvent.clientX = touch.clientX;
|
newEvent.clientX = touch.clientX;
|
||||||
newEvent.clientY = touch.clientY;
|
newEvent.clientY = touch.clientY;
|
||||||
|
|
||||||
newEvent.timestamp = aDOMEvent.timestamp;
|
newEvent.timestamp = [CPEvent currentTimestamp];
|
||||||
newEvent.target = aDOMEvent.target;
|
newEvent.target = aDOMEvent.target;
|
||||||
|
|
||||||
newEvent.shiftKey = newEvent.ctrlKey = newEvent.altKey = newEvent.metaKey = false;
|
newEvent.shiftKey = newEvent.ctrlKey = newEvent.altKey = newEvent.metaKey = false;
|
||||||
@@ -1179,7 +1179,7 @@ var ModifierKeyCodes = [
|
|||||||
|
|
||||||
var event,
|
var event,
|
||||||
location = _CGPointMake(aDOMEvent.clientX, aDOMEvent.clientY),
|
location = _CGPointMake(aDOMEvent.clientX, aDOMEvent.clientY),
|
||||||
timestamp = aDOMEvent.timeStamp ? aDOMEvent.timeStamp : new Date(),
|
timestamp = [CPEvent currentTimestamp],
|
||||||
sourceElement = (aDOMEvent.target || aDOMEvent.srcElement),
|
sourceElement = (aDOMEvent.target || aDOMEvent.srcElement),
|
||||||
windowNumber = 0,
|
windowNumber = 0,
|
||||||
modifierFlags = (aDOMEvent.shiftKey ? CPShiftKeyMask : 0) |
|
modifierFlags = (aDOMEvent.shiftKey ? CPShiftKeyMask : 0) |
|
||||||
|
|||||||
@@ -41,11 +41,11 @@
|
|||||||
[button setAction:@selector(clickMe:)];
|
[button setAction:@selector(clickMe:)];
|
||||||
[button setKeyEquivalent:"a"];
|
[button setKeyEquivalent:"a"];
|
||||||
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"b" charactersIgnoringModifiers:"b" isARepeat:NO keyCode:0]];
|
characters:"b" charactersIgnoringModifiers:"b" isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:wasClicked];
|
[self assertFalse:wasClicked];
|
||||||
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
||||||
[self assertTrue:wasClicked];
|
[self assertTrue:wasClicked];
|
||||||
}
|
}
|
||||||
@@ -57,11 +57,11 @@
|
|||||||
[button setKeyEquivalent:"a"];
|
[button setKeyEquivalent:"a"];
|
||||||
[button setKeyEquivalentModifierMask:CPAlternateKeyMask];
|
[button setKeyEquivalentModifierMask:CPAlternateKeyMask];
|
||||||
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:wasClicked];
|
[self assertFalse:wasClicked];
|
||||||
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:CPAlternateKeyMask
|
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:CPAlternateKeyMask
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
||||||
[self assertTrue:wasClicked];
|
[self assertTrue:wasClicked];
|
||||||
}
|
}
|
||||||
@@ -73,12 +73,12 @@
|
|||||||
[button setKeyEquivalent:"A"];
|
[button setKeyEquivalent:"A"];
|
||||||
|
|
||||||
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:wasClicked];
|
[self assertFalse:wasClicked];
|
||||||
|
|
||||||
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:CPShiftKeyMask
|
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:CPShiftKeyMask
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"A" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
characters:"A" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
||||||
[self assertTrue:wasClicked];
|
[self assertTrue:wasClicked];
|
||||||
}
|
}
|
||||||
@@ -89,15 +89,15 @@
|
|||||||
[button setAction:@selector(clickMe:)];
|
[button setAction:@selector(clickMe:)];
|
||||||
[button setKeyEquivalent:CPEscapeFunctionKey];
|
[button setKeyEquivalent:CPEscapeFunctionKey];
|
||||||
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:CPDeleteCharacter charactersIgnoringModifiers:CPDeleteCharacter isARepeat:NO keyCode:0]];
|
characters:CPDeleteCharacter charactersIgnoringModifiers:CPDeleteCharacter isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:wasClicked];
|
[self assertFalse:wasClicked];
|
||||||
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:wasClicked];
|
[self assertFalse:wasClicked];
|
||||||
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
[button performKeyEquivalent:[CPEvent keyEventWithType:CPKeyUp location:CGPointMakeZero() modifierFlags:0
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:CPEscapeFunctionKey charactersIgnoringModifiers:CPEscapeFunctionKey isARepeat:NO keyCode:0]];
|
characters:CPEscapeFunctionKey charactersIgnoringModifiers:CPEscapeFunctionKey isARepeat:NO keyCode:0]];
|
||||||
[self assertTrue:wasClicked];
|
[self assertTrue:wasClicked];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,7 +34,7 @@
|
|||||||
[button2 setTarget:self];
|
[button2 setTarget:self];
|
||||||
[button2 setAction:@selector(clicked:)];
|
[button2 setAction:@selector(clicked:)];
|
||||||
[button2 setKeyEquivalent:"a"];
|
[button2 setKeyEquivalent:"a"];
|
||||||
[button2 setKeyEquivalentModifierMask:CPAlternateKeyMask|CPCommandKeyMask];
|
[button2 setKeyEquivalentModifierMask:CPAlternateKeyMask | CPCommandKeyMask];
|
||||||
button2.clicks = 0;
|
button2.clicks = 0;
|
||||||
|
|
||||||
[button3 setTarget:self];
|
[button3 setTarget:self];
|
||||||
@@ -45,16 +45,16 @@
|
|||||||
|
|
||||||
var start = (new Date).getTime();
|
var start = (new Date).getTime();
|
||||||
|
|
||||||
for (var i=0; i<REPEATS; i++)
|
for (var i = 0; i < REPEATS; i++)
|
||||||
{
|
{
|
||||||
[theWindow sendEvent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPControlKeyMask
|
[theWindow sendEvent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPControlKeyMask
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
||||||
[theWindow sendEvent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPAlternateKeyMask|CPCommandKeyMask
|
[theWindow sendEvent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPAlternateKeyMask | CPCommandKeyMask
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
||||||
[theWindow sendEvent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPControlKeyMask|CPShiftKeyMask
|
[theWindow sendEvent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPControlKeyMask | CPShiftKeyMask
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
characters:"a" charactersIgnoringModifiers:"a" isARepeat:NO keyCode:0]];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+10
-10
@@ -74,7 +74,7 @@
|
|||||||
if (!aMenu)
|
if (!aMenu)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
for(var i=0; i<[aMenu numberOfItems]; i++)
|
for (var i = 0; i < [aMenu numberOfItems]; i++)
|
||||||
{
|
{
|
||||||
var item = [aMenu itemAtIndex:i];
|
var item = [aMenu itemAtIndex:i];
|
||||||
[item setTarget:self];
|
[item setTarget:self];
|
||||||
@@ -88,24 +88,24 @@
|
|||||||
|
|
||||||
// Don't match anything.
|
// Don't match anything.
|
||||||
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPPlatformActionKeyMask
|
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPPlatformActionKeyMask
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"b" charactersIgnoringModifiers:"b" isARepeat:NO keyCode:0]];
|
characters:"b" charactersIgnoringModifiers:"b" isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:escapeWasCalled || escapeNoModifierWasCalled || openDocumentWasCalled || undoWasCalled];
|
[self assertFalse:escapeWasCalled || escapeNoModifierWasCalled || openDocumentWasCalled || undoWasCalled];
|
||||||
|
|
||||||
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:0
|
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:0
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"o" charactersIgnoringModifiers:"o" isARepeat:NO keyCode:0]];
|
characters:"o" charactersIgnoringModifiers:"o" isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:escapeWasCalled || escapeNoModifierWasCalled || openDocumentWasCalled || undoWasCalled];
|
[self assertFalse:escapeWasCalled || escapeNoModifierWasCalled || openDocumentWasCalled || undoWasCalled];
|
||||||
|
|
||||||
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPPlatformActionKeyMask
|
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPPlatformActionKeyMask
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:"o" charactersIgnoringModifiers:"o" isARepeat:NO keyCode:0]];
|
characters:"o" charactersIgnoringModifiers:"o" isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:escapeWasCalled || escapeNoModifierWasCalled || undoWasCalled];
|
[self assertFalse:escapeWasCalled || escapeNoModifierWasCalled || undoWasCalled];
|
||||||
[self assertTrue:openDocumentWasCalled message:"expect openDocumentWasCalled"];
|
[self assertTrue:openDocumentWasCalled message:"expect openDocumentWasCalled"];
|
||||||
|
|
||||||
openDocumentWasCalled = NO;
|
openDocumentWasCalled = NO;
|
||||||
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPPlatformActionKeyMask
|
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPPlatformActionKeyMask
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:CPUndoKeyEquivalent charactersIgnoringModifiers:CPUndoKeyEquivalent isARepeat:NO keyCode:0]];
|
characters:CPUndoKeyEquivalent charactersIgnoringModifiers:CPUndoKeyEquivalent isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:escapeWasCalled || escapeNoModifierWasCalled || openDocumentWasCalled];
|
[self assertFalse:escapeWasCalled || escapeNoModifierWasCalled || openDocumentWasCalled];
|
||||||
[self assertTrue:undoWasCalled];
|
[self assertTrue:undoWasCalled];
|
||||||
@@ -116,7 +116,7 @@
|
|||||||
[self _retarget:menu];
|
[self _retarget:menu];
|
||||||
|
|
||||||
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:0
|
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:0
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:CPEscapeFunctionKey charactersIgnoringModifiers:CPEscapeFunctionKey isARepeat:NO keyCode:0]];
|
characters:CPEscapeFunctionKey charactersIgnoringModifiers:CPEscapeFunctionKey isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:escapeWasCalled || openDocumentWasCalled || undoWasCalled];
|
[self assertFalse:escapeWasCalled || openDocumentWasCalled || undoWasCalled];
|
||||||
[self assertTrue:escapeNoModifierWasCalled];
|
[self assertTrue:escapeNoModifierWasCalled];
|
||||||
@@ -124,7 +124,7 @@
|
|||||||
escapeNoModifierWasCalled = NO;
|
escapeNoModifierWasCalled = NO;
|
||||||
|
|
||||||
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPPlatformActionKeyMask
|
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPPlatformActionKeyMask
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:CPEscapeFunctionKey charactersIgnoringModifiers:CPEscapeFunctionKey isARepeat:NO keyCode:0]];
|
characters:CPEscapeFunctionKey charactersIgnoringModifiers:CPEscapeFunctionKey isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:escapeNoModifierWasCalled || openDocumentWasCalled || undoWasCalled];
|
[self assertFalse:escapeNoModifierWasCalled || openDocumentWasCalled || undoWasCalled];
|
||||||
[self assertTrue:escapeWasCalled];
|
[self assertTrue:escapeWasCalled];
|
||||||
@@ -135,15 +135,15 @@
|
|||||||
[self _retarget:menu];
|
[self _retarget:menu];
|
||||||
|
|
||||||
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPPlatformActionKeyMask
|
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPPlatformActionKeyMask
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:@"s" charactersIgnoringModifiers:@"s" isARepeat:NO keyCode:0]];
|
characters:@"s" charactersIgnoringModifiers:@"s" isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:escapeWasCalled || escapeNoModifierWasCalled || openDocumentWasCalled || saveDocumentAsWasCalled || undoWasCalled];
|
[self assertFalse:escapeWasCalled || escapeNoModifierWasCalled || openDocumentWasCalled || saveDocumentAsWasCalled || undoWasCalled];
|
||||||
[self assertTrue:saveDocumentWasCalled message:"saveDocumentWasCalled"];
|
[self assertTrue:saveDocumentWasCalled message:"saveDocumentWasCalled"];
|
||||||
|
|
||||||
saveDocumentWasCalled = NO;
|
saveDocumentWasCalled = NO;
|
||||||
|
|
||||||
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPPlatformActionKeyMask|CPShiftKeyMask
|
[menu performKeyEquivalent:[CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPPlatformActionKeyMask | CPShiftKeyMask
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:@"s" charactersIgnoringModifiers:@"s" isARepeat:NO keyCode:0]];
|
characters:@"s" charactersIgnoringModifiers:@"s" isARepeat:NO keyCode:0]];
|
||||||
[self assertFalse:escapeWasCalled || escapeNoModifierWasCalled || openDocumentWasCalled || saveDocumentWasCalled || undoWasCalled];
|
[self assertFalse:escapeWasCalled || escapeNoModifierWasCalled || openDocumentWasCalled || saveDocumentWasCalled || undoWasCalled];
|
||||||
[self assertTrue:saveDocumentAsWasCalled message:"saveDocumentAsWasCalled"];
|
[self assertTrue:saveDocumentAsWasCalled message:"saveDocumentAsWasCalled"];
|
||||||
|
|||||||
@@ -34,15 +34,15 @@
|
|||||||
CPKeyCodes.TAB, CPTabCharacter, @selector(insertTab:)
|
CPKeyCodes.TAB, CPTabCharacter, @selector(insertTab:)
|
||||||
];
|
];
|
||||||
|
|
||||||
for (var i=0; i<tests.length; i += 3)
|
for (var i = 0; i < tests.length; i += 3)
|
||||||
{
|
{
|
||||||
var keyCode = tests[i],
|
var keyCode = tests[i],
|
||||||
character = tests[i+1],
|
character = tests[i + 1],
|
||||||
selector = tests[i+2];
|
selector = tests[i + 2];
|
||||||
|
|
||||||
responder.doCommandCalls = [];
|
responder.doCommandCalls = [];
|
||||||
keyEvent = [CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:0
|
keyEvent = [CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:0
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:character charactersIgnoringModifiers:character isARepeat:NO keyCode:keyCode];
|
characters:character charactersIgnoringModifiers:character isARepeat:NO keyCode:keyCode];
|
||||||
[responder interpretKeyEvents:[keyEvent]];
|
[responder interpretKeyEvents:[keyEvent]];
|
||||||
[self assert:[selector] equals:responder.doCommandCalls];
|
[self assert:[selector] equals:responder.doCommandCalls];
|
||||||
@@ -53,7 +53,7 @@
|
|||||||
{
|
{
|
||||||
responder.doCommandCalls = [];
|
responder.doCommandCalls = [];
|
||||||
keyEvent = [CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPShiftKeyMask
|
keyEvent = [CPEvent keyEventWithType:CPKeyDown location:CGPointMakeZero() modifierFlags:CPShiftKeyMask
|
||||||
timestamp:nil windowNumber:nil context:nil
|
timestamp:0 windowNumber:0 context:nil
|
||||||
characters:CPLeftArrowFunctionKey charactersIgnoringModifiers:CPLeftArrowFunctionKey isARepeat:NO keyCode:CPKeyCodes.LEFT];
|
characters:CPLeftArrowFunctionKey charactersIgnoringModifiers:CPLeftArrowFunctionKey isARepeat:NO keyCode:CPKeyCodes.LEFT];
|
||||||
[responder interpretKeyEvents:[keyEvent]];
|
[responder interpretKeyEvents:[keyEvent]];
|
||||||
[self assert:[@selector(moveLeftAndModifySelection:)] equals:responder.doCommandCalls];
|
[self assert:[@selector(moveLeftAndModifySelection:)] equals:responder.doCommandCalls];
|
||||||
|
|||||||
Reference in new issue
Block a user