@breakside/jskit 2024.41.0 → 2024.50.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Frameworks/DOM.jsframework/Info.json +2 -2
- package/Frameworks/DOM.jsframework/io.breakside.JSKit.DOM-bundle.js +2 -2
- package/Frameworks/FontKit.jsframework/Info.json +2 -2
- package/Frameworks/FontKit.jsframework/io.breakside.JSKit.FontKit-bundle.js +2 -2
- package/Frameworks/Foundation.jsframework/Info.json +2 -2
- package/Frameworks/Foundation.jsframework/io.breakside.JSKit.Foundation-bundle.js +2 -2
- package/Frameworks/SecurityKit.jsframework/Info.json +2 -2
- package/Frameworks/SecurityKit.jsframework/JS/SECHTMLDeviceAuthentication.js +3 -3
- package/Frameworks/SecurityKit.jsframework/io.breakside.JSKit.SecurityKit-bundle.js +2 -2
- package/Info.json +2 -2
- package/Node/KeyCommand.js +1 -1
- package/Node/io.breakside.jskit-bundle.js +2 -2
- package/Root/Frameworks/APIKit/Info.yaml +1 -1
- package/Root/Frameworks/APIKitTesting/Info.yaml +1 -1
- package/Root/Frameworks/AuthKit/Info.yaml +1 -1
- package/Root/Frameworks/CSSOM/Info.yaml +1 -1
- package/Root/Frameworks/ChartKit/Info.yaml +1 -1
- package/Root/Frameworks/ConferenceKit/Info.yaml +1 -1
- package/Root/Frameworks/DBKit/Info.yaml +1 -1
- package/Root/Frameworks/DOM/Info.yaml +1 -1
- package/Root/Frameworks/Dispatch/Info.yaml +1 -1
- package/Root/Frameworks/FontKit/Info.yaml +1 -1
- package/Root/Frameworks/Foundation/Info.yaml +1 -1
- package/Root/Frameworks/ImageKit/Info.yaml +1 -1
- package/Root/Frameworks/MediaKit/Info.yaml +1 -1
- package/Root/Frameworks/MediaKitUI/Info.yaml +1 -1
- package/Root/Frameworks/NotificationKit/Info.yaml +1 -1
- package/Root/Frameworks/PDFKit/Info.yaml +1 -1
- package/Root/Frameworks/QRKit/Info.yaml +1 -1
- package/Root/Frameworks/SearchKit/Info.yaml +1 -1
- package/Root/Frameworks/SecurityKit/Info.yaml +1 -1
- package/Root/Frameworks/SecurityKit/SECHTMLDeviceAuthentication.js +3 -3
- package/Root/Frameworks/ServerKit/Info.yaml +1 -1
- package/Root/Frameworks/ServerKitTesting/Info.yaml +1 -1
- package/Root/Frameworks/TestKit/Info.yaml +1 -1
- package/Root/Frameworks/UIKit/Info.yaml +1 -1
- package/Root/Frameworks/UIKit/UILabel.js +4 -4
- package/Root/Frameworks/UIKit/UIMenuBar.js +2 -2
- package/Root/Frameworks/UIKit/UIScrollView.js +2 -2
- package/Root/Frameworks/UIKit/UITextField.js +4 -4
- package/Root/Frameworks/UIKit/UITokenField.js +2 -2
- package/Root/Frameworks/UIKit/UIView.js +2 -2
- package/Root/Frameworks/UIKit/UIWindow.js +4 -4
- package/Root/Frameworks/UIKitTesting/Info.yaml +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"JSBundleType": "framework",
|
|
3
3
|
"JSBundleIdentifier": "io.breakside.JSKit.DOM",
|
|
4
|
-
"JSBundleVersion": "2024.
|
|
4
|
+
"JSBundleVersion": "2024.50.0",
|
|
5
5
|
"JSDevelopmentLanguage": "en",
|
|
6
6
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
7
7
|
"JSBundleEnvironments": {
|
|
@@ -9,5 +9,5 @@
|
|
|
9
9
|
"node": "DOM+Node.js"
|
|
10
10
|
},
|
|
11
11
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
12
|
-
"GitRevision": "
|
|
12
|
+
"GitRevision": "d41ca5ce96d8ee40d56f762f3a14cedafb1f2628"
|
|
13
13
|
}
|
|
@@ -3,7 +3,7 @@ JSBundle.bundles['io.breakside.JSKit.DOM'] = {
|
|
|
3
3
|
"Info": {
|
|
4
4
|
"JSBundleType": "framework",
|
|
5
5
|
"JSBundleIdentifier": "io.breakside.JSKit.DOM",
|
|
6
|
-
"JSBundleVersion": "2024.
|
|
6
|
+
"JSBundleVersion": "2024.50.0",
|
|
7
7
|
"JSDevelopmentLanguage": "en",
|
|
8
8
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
9
9
|
"JSBundleEnvironments": {
|
|
@@ -11,7 +11,7 @@ JSBundle.bundles['io.breakside.JSKit.DOM'] = {
|
|
|
11
11
|
"node": "DOM+Node.js"
|
|
12
12
|
},
|
|
13
13
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
14
|
-
"GitRevision": "
|
|
14
|
+
"GitRevision": "d41ca5ce96d8ee40d56f762f3a14cedafb1f2628"
|
|
15
15
|
},
|
|
16
16
|
"Resources": [],
|
|
17
17
|
"ResourceLookup": {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"JSBundleType": "framework",
|
|
3
3
|
"JSBundleIdentifier": "io.breakside.JSKit.FontKit",
|
|
4
|
-
"JSBundleVersion": "2024.
|
|
4
|
+
"JSBundleVersion": "2024.50.0",
|
|
5
5
|
"JSDevelopmentLanguage": "en",
|
|
6
6
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
7
7
|
"JSBundleEnvironments": {
|
|
8
8
|
"html": "FontKit+HTML.js"
|
|
9
9
|
},
|
|
10
10
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
11
|
-
"GitRevision": "
|
|
11
|
+
"GitRevision": "d41ca5ce96d8ee40d56f762f3a14cedafb1f2628"
|
|
12
12
|
}
|
|
@@ -3,14 +3,14 @@ JSBundle.bundles['io.breakside.JSKit.FontKit'] = {
|
|
|
3
3
|
"Info": {
|
|
4
4
|
"JSBundleType": "framework",
|
|
5
5
|
"JSBundleIdentifier": "io.breakside.JSKit.FontKit",
|
|
6
|
-
"JSBundleVersion": "2024.
|
|
6
|
+
"JSBundleVersion": "2024.50.0",
|
|
7
7
|
"JSDevelopmentLanguage": "en",
|
|
8
8
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
9
9
|
"JSBundleEnvironments": {
|
|
10
10
|
"html": "FontKit+HTML.js"
|
|
11
11
|
},
|
|
12
12
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
13
|
-
"GitRevision": "
|
|
13
|
+
"GitRevision": "d41ca5ce96d8ee40d56f762f3a14cedafb1f2628"
|
|
14
14
|
},
|
|
15
15
|
"Resources": [],
|
|
16
16
|
"ResourceLookup": {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"JSBundleType": "framework",
|
|
3
3
|
"JSBundleIdentifier": "io.breakside.JSKit.Foundation",
|
|
4
|
-
"JSBundleVersion": "2024.
|
|
4
|
+
"JSBundleVersion": "2024.50.0",
|
|
5
5
|
"JSDevelopmentLanguage": "en",
|
|
6
6
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
7
7
|
"JSBundleEnvironments": {
|
|
@@ -9,5 +9,5 @@
|
|
|
9
9
|
"node": "Foundation+Node.js"
|
|
10
10
|
},
|
|
11
11
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
12
|
-
"GitRevision": "
|
|
12
|
+
"GitRevision": "d41ca5ce96d8ee40d56f762f3a14cedafb1f2628"
|
|
13
13
|
}
|
|
@@ -3,7 +3,7 @@ JSBundle.bundles['io.breakside.JSKit.Foundation'] = {
|
|
|
3
3
|
"Info": {
|
|
4
4
|
"JSBundleType": "framework",
|
|
5
5
|
"JSBundleIdentifier": "io.breakside.JSKit.Foundation",
|
|
6
|
-
"JSBundleVersion": "2024.
|
|
6
|
+
"JSBundleVersion": "2024.50.0",
|
|
7
7
|
"JSDevelopmentLanguage": "en",
|
|
8
8
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
9
9
|
"JSBundleEnvironments": {
|
|
@@ -11,7 +11,7 @@ JSBundle.bundles['io.breakside.JSKit.Foundation'] = {
|
|
|
11
11
|
"node": "Foundation+Node.js"
|
|
12
12
|
},
|
|
13
13
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
14
|
-
"GitRevision": "
|
|
14
|
+
"GitRevision": "d41ca5ce96d8ee40d56f762f3a14cedafb1f2628"
|
|
15
15
|
},
|
|
16
16
|
"Resources": [
|
|
17
17
|
{
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"JSBundleType": "framework",
|
|
3
3
|
"JSBundleIdentifier": "io.breakside.JSKit.SecurityKit",
|
|
4
|
-
"JSBundleVersion": "2024.
|
|
4
|
+
"JSBundleVersion": "2024.50.0",
|
|
5
5
|
"JSDevelopmentLanguage": "en",
|
|
6
6
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
7
7
|
"JSBundleEnvironments": {
|
|
@@ -9,5 +9,5 @@
|
|
|
9
9
|
"node": "SecurityKit+Node.js"
|
|
10
10
|
},
|
|
11
11
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
12
|
-
"GitRevision": "
|
|
12
|
+
"GitRevision": "d41ca5ce96d8ee40d56f762f3a14cedafb1f2628"
|
|
13
13
|
}
|
|
@@ -256,7 +256,7 @@ coseAlgorithmsBySignAlgorithm[SECSign.Algorithm.ellipticCurveSHA256] = SECCOSE.A
|
|
|
256
256
|
coseAlgorithmsBySignAlgorithm[SECSign.Algorithm.ellipticCurveSHA384] = SECCOSE.Algorithm.ellipticCurveSHA384;
|
|
257
257
|
coseAlgorithmsBySignAlgorithm[SECSign.Algorithm.ellipticCurveSHA512] = SECCOSE.Algorithm.ellipticCurveSHA512;
|
|
258
258
|
|
|
259
|
-
if (window.PublicKeyCredential){
|
|
259
|
+
if (window.PublicKeyCredential && window.PublicKeyCredential.prototype){
|
|
260
260
|
|
|
261
261
|
if (!window.PublicKeyCredential.prototype.toJSON){
|
|
262
262
|
window.PublicKeyCredential.prototype.toJSON = function PublicKeyCredential_toJSON(){
|
|
@@ -326,7 +326,7 @@ if (window.PublicKeyCredential){
|
|
|
326
326
|
|
|
327
327
|
}
|
|
328
328
|
|
|
329
|
-
if (window.AuthenticatorAttestationResponse){
|
|
329
|
+
if (window.AuthenticatorAttestationResponse && window.AuthenticatorAttestationResponse.prototype){
|
|
330
330
|
|
|
331
331
|
if (!window.AuthenticatorAttestationResponse.prototype.getAuthenticatorData){
|
|
332
332
|
window.AuthenticatorAttestationResponse.prototype.getAuthenticatorData = function AuthenticatorAttestationResponse_getAuthenticatorData(){
|
|
@@ -398,7 +398,7 @@ if (window.AuthenticatorAttestationResponse){
|
|
|
398
398
|
|
|
399
399
|
}
|
|
400
400
|
|
|
401
|
-
if (window.AuthenticatorAssertionResponse){
|
|
401
|
+
if (window.AuthenticatorAssertionResponse && window.AuthenticatorAssertionResponse.prototype){
|
|
402
402
|
|
|
403
403
|
if (!window.AuthenticatorAssertionResponse.prototype.toJSON){
|
|
404
404
|
window.AuthenticatorAssertionResponse.prototype.toJSON = function AuthenticatorAssertionResponse_toJSON(){
|
|
@@ -3,7 +3,7 @@ JSBundle.bundles['io.breakside.JSKit.SecurityKit'] = {
|
|
|
3
3
|
"Info": {
|
|
4
4
|
"JSBundleType": "framework",
|
|
5
5
|
"JSBundleIdentifier": "io.breakside.JSKit.SecurityKit",
|
|
6
|
-
"JSBundleVersion": "2024.
|
|
6
|
+
"JSBundleVersion": "2024.50.0",
|
|
7
7
|
"JSDevelopmentLanguage": "en",
|
|
8
8
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
9
9
|
"JSBundleEnvironments": {
|
|
@@ -11,7 +11,7 @@ JSBundle.bundles['io.breakside.JSKit.SecurityKit'] = {
|
|
|
11
11
|
"node": "SecurityKit+Node.js"
|
|
12
12
|
},
|
|
13
13
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
14
|
-
"GitRevision": "
|
|
14
|
+
"GitRevision": "d41ca5ce96d8ee40d56f762f3a14cedafb1f2628"
|
|
15
15
|
},
|
|
16
16
|
"Resources": [],
|
|
17
17
|
"ResourceLookup": {
|
package/Info.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"JSBundleType": "node",
|
|
3
3
|
"JSBundleIdentifier": "io.breakside.jskit",
|
|
4
|
-
"JSBundleVersion": "2024.
|
|
4
|
+
"JSBundleVersion": "2024.50.0",
|
|
5
5
|
"JSExecutableName": "jskit",
|
|
6
6
|
"NPMOrganization": "breakside",
|
|
7
7
|
"JSResources": [
|
|
8
8
|
"Tests/HTMLTestRunner.js",
|
|
9
9
|
"Tests/NodeTestRunner.js"
|
|
10
10
|
],
|
|
11
|
-
"GitRevision": "
|
|
11
|
+
"GitRevision": "d41ca5ce96d8ee40d56f762f3a14cedafb1f2628"
|
|
12
12
|
}
|
package/Node/KeyCommand.js
CHANGED
|
@@ -37,7 +37,7 @@ JSClass("KeyCommand", Command, {
|
|
|
37
37
|
}[this.arguments.bits];
|
|
38
38
|
var hmac = SECHMAC.initWithAlgorithm(hmacAlgorithm);
|
|
39
39
|
var key = await hmac.createKey();
|
|
40
|
-
var data = key.getData();
|
|
40
|
+
var data = await key.getData();
|
|
41
41
|
var printer = Printer.initWithLabel('key');
|
|
42
42
|
if (this.arguments.format === "jwk"){
|
|
43
43
|
var jwk = {
|
|
@@ -3,14 +3,14 @@ JSBundle.bundles['io.breakside.jskit'] = {
|
|
|
3
3
|
"Info": {
|
|
4
4
|
"JSBundleType": "node",
|
|
5
5
|
"JSBundleIdentifier": "io.breakside.jskit",
|
|
6
|
-
"JSBundleVersion": "2024.
|
|
6
|
+
"JSBundleVersion": "2024.50.0",
|
|
7
7
|
"JSExecutableName": "jskit",
|
|
8
8
|
"NPMOrganization": "breakside",
|
|
9
9
|
"JSResources": [
|
|
10
10
|
"Tests/HTMLTestRunner.js",
|
|
11
11
|
"Tests/NodeTestRunner.js"
|
|
12
12
|
],
|
|
13
|
-
"GitRevision": "
|
|
13
|
+
"GitRevision": "d41ca5ce96d8ee40d56f762f3a14cedafb1f2628"
|
|
14
14
|
},
|
|
15
15
|
"Resources": [
|
|
16
16
|
{
|
|
@@ -256,7 +256,7 @@ coseAlgorithmsBySignAlgorithm[SECSign.Algorithm.ellipticCurveSHA256] = SECCOSE.A
|
|
|
256
256
|
coseAlgorithmsBySignAlgorithm[SECSign.Algorithm.ellipticCurveSHA384] = SECCOSE.Algorithm.ellipticCurveSHA384;
|
|
257
257
|
coseAlgorithmsBySignAlgorithm[SECSign.Algorithm.ellipticCurveSHA512] = SECCOSE.Algorithm.ellipticCurveSHA512;
|
|
258
258
|
|
|
259
|
-
if (window.PublicKeyCredential){
|
|
259
|
+
if (window.PublicKeyCredential && window.PublicKeyCredential.prototype){
|
|
260
260
|
|
|
261
261
|
if (!window.PublicKeyCredential.prototype.toJSON){
|
|
262
262
|
window.PublicKeyCredential.prototype.toJSON = function PublicKeyCredential_toJSON(){
|
|
@@ -326,7 +326,7 @@ if (window.PublicKeyCredential){
|
|
|
326
326
|
|
|
327
327
|
}
|
|
328
328
|
|
|
329
|
-
if (window.AuthenticatorAttestationResponse){
|
|
329
|
+
if (window.AuthenticatorAttestationResponse && window.AuthenticatorAttestationResponse.prototype){
|
|
330
330
|
|
|
331
331
|
if (!window.AuthenticatorAttestationResponse.prototype.getAuthenticatorData){
|
|
332
332
|
window.AuthenticatorAttestationResponse.prototype.getAuthenticatorData = function AuthenticatorAttestationResponse_getAuthenticatorData(){
|
|
@@ -398,7 +398,7 @@ if (window.AuthenticatorAttestationResponse){
|
|
|
398
398
|
|
|
399
399
|
}
|
|
400
400
|
|
|
401
|
-
if (window.AuthenticatorAssertionResponse){
|
|
401
|
+
if (window.AuthenticatorAssertionResponse && window.AuthenticatorAssertionResponse.prototype){
|
|
402
402
|
|
|
403
403
|
if (!window.AuthenticatorAssertionResponse.prototype.toJSON){
|
|
404
404
|
window.AuthenticatorAssertionResponse.prototype.toJSON = function AuthenticatorAssertionResponse_toJSON(){
|
|
@@ -131,8 +131,8 @@ JSClass('UILabel', UIView, {
|
|
|
131
131
|
_selectionAnchorIndex: 0,
|
|
132
132
|
_selectionRange: null,
|
|
133
133
|
|
|
134
|
-
hitTest: function(location){
|
|
135
|
-
var hit = UILabel.$super.hitTest.call(this, location);
|
|
134
|
+
hitTest: function(location, event){
|
|
135
|
+
var hit = UILabel.$super.hitTest.call(this, location, event);
|
|
136
136
|
var index, attachment, attributes, rect, attachmentLocation;
|
|
137
137
|
var attachmentHit = null;
|
|
138
138
|
if (hit === this){
|
|
@@ -144,7 +144,7 @@ JSClass('UILabel', UIView, {
|
|
|
144
144
|
UITextAttachmentView)){
|
|
145
145
|
rect = this.layer.textLayoutManager.rectForCharacterAtIndex(index);
|
|
146
146
|
attachmentLocation = location.subtracting(rect.origin);
|
|
147
|
-
attachmentHit = attachment.view.hitTest(attachmentLocation);
|
|
147
|
+
attachmentHit = attachment.view.hitTest(attachmentLocation, event);
|
|
148
148
|
if (attachmentHit !== null){
|
|
149
149
|
return attachmentHit;
|
|
150
150
|
}
|
|
@@ -158,7 +158,7 @@ JSClass('UILabel', UIView, {
|
|
|
158
158
|
if (attachment && attachment.isKindOfClass(UITextAttachmentView)){
|
|
159
159
|
rect = this.layer.textLayoutManager.rectForCharacterAtIndex(index);
|
|
160
160
|
attachmentLocation = location.subtracting(rect.origin);
|
|
161
|
-
attachmentHit = attachment.view.hitTest(attachmentLocation);
|
|
161
|
+
attachmentHit = attachment.view.hitTest(attachmentLocation, event);
|
|
162
162
|
if (attachmentHit !== null){
|
|
163
163
|
return attachmentHit;
|
|
164
164
|
}
|
|
@@ -448,7 +448,7 @@ JSClass("UIMenuBar", UIWindow, {
|
|
|
448
448
|
}
|
|
449
449
|
},
|
|
450
450
|
|
|
451
|
-
hitTest: function(location){
|
|
451
|
+
hitTest: function(location, event){
|
|
452
452
|
// The menu bar has special consideration for the left and right edges in order
|
|
453
453
|
// to make it easier for users to hit the items even if there is visible padding.
|
|
454
454
|
// - a hit to the left of the leftmost item is still considered to hit the item
|
|
@@ -474,7 +474,7 @@ JSClass("UIMenuBar", UIWindow, {
|
|
|
474
474
|
if (edgeItemView !== null && location.x > edgeItemView.convertPointToView(JSPoint(edgeItemView.bounds.size.width,0), this).x){
|
|
475
475
|
return edgeItemView;
|
|
476
476
|
}
|
|
477
|
-
return UIMenuBar.$super.hitTest.call(this, location);
|
|
477
|
+
return UIMenuBar.$super.hitTest.call(this, location, event);
|
|
478
478
|
},
|
|
479
479
|
|
|
480
480
|
_itemDownTimestamp: UIEvent.minimumTimestamp,
|
|
@@ -467,8 +467,8 @@ JSClass('UIScrollView', UIView, {
|
|
|
467
467
|
// --------------------------------------------------------------------
|
|
468
468
|
// MARK: - Scroll Events
|
|
469
469
|
|
|
470
|
-
hitTest: function(locationInView){
|
|
471
|
-
return UIScrollView.$super.hitTest.call(this, locationInView);
|
|
470
|
+
hitTest: function(locationInView, event){
|
|
471
|
+
return UIScrollView.$super.hitTest.call(this, locationInView, event);
|
|
472
472
|
},
|
|
473
473
|
|
|
474
474
|
_didScroll: function(){
|
|
@@ -381,8 +381,8 @@ JSClass("UITextField", UIControl, {
|
|
|
381
381
|
return this.layer.convertPointFromLayer(JSPoint(0, this._textLayer.firstBaselineOffsetFromTop), this._textLayer).y;
|
|
382
382
|
},
|
|
383
383
|
|
|
384
|
-
hitTest: function(location){
|
|
385
|
-
var hit = UITextField.$super.hitTest.call(this, location);
|
|
384
|
+
hitTest: function(location, event){
|
|
385
|
+
var hit = UITextField.$super.hitTest.call(this, location, event);
|
|
386
386
|
var index, attachment, attributes, rect, attachmentLocation;
|
|
387
387
|
var attachmentHit = null;
|
|
388
388
|
if (hit === this){
|
|
@@ -394,7 +394,7 @@ JSClass("UITextField", UIControl, {
|
|
|
394
394
|
if (attachment && attachment.isKindOfClass(UITextAttachmentView)){
|
|
395
395
|
rect = this._textLayer.textLayoutManager.rectForCharacterAtIndex(index);
|
|
396
396
|
attachmentLocation = locationInText.subtracting(rect.origin);
|
|
397
|
-
attachmentHit = attachment.view.hitTest(attachmentLocation);
|
|
397
|
+
attachmentHit = attachment.view.hitTest(attachmentLocation, event);
|
|
398
398
|
if (attachmentHit !== null){
|
|
399
399
|
return attachmentHit;
|
|
400
400
|
}
|
|
@@ -408,7 +408,7 @@ JSClass("UITextField", UIControl, {
|
|
|
408
408
|
if (attachment && attachment.isKindOfClass(UITextAttachmentView)){
|
|
409
409
|
rect = this._textLayer.textLayoutManager.rectForCharacterAtIndex(index);
|
|
410
410
|
attachmentLocation = locationInText.subtracting(rect.origin);
|
|
411
|
-
attachmentHit = attachment.view.hitTest(attachmentLocation);
|
|
411
|
+
attachmentHit = attachment.view.hitTest(attachmentLocation, event);
|
|
412
412
|
if (attachmentHit !== null){
|
|
413
413
|
return attachmentHit;
|
|
414
414
|
}
|
|
@@ -321,8 +321,8 @@ JSClass("UITokenFieldTokenView", UIView, {
|
|
|
321
321
|
return this.tokenLabel.containsPoint(this.convertPointToView(locationInView, this.tokenLabel));
|
|
322
322
|
},
|
|
323
323
|
|
|
324
|
-
hitTest: function(locationInView){
|
|
325
|
-
return this.tokenLabel.hitTest(this.convertPointToView(locationInView, this.tokenLabel));
|
|
324
|
+
hitTest: function(locationInView, event){
|
|
325
|
+
return this.tokenLabel.hitTest(this.convertPointToView(locationInView, this.tokenLabel), event);
|
|
326
326
|
},
|
|
327
327
|
|
|
328
328
|
mouseDown: function(event){
|
|
@@ -992,7 +992,7 @@ JSClass('UIView', UIResponder, {
|
|
|
992
992
|
return this.layer.containsPoint(point);
|
|
993
993
|
},
|
|
994
994
|
|
|
995
|
-
hitTest: function(locationInView){
|
|
995
|
+
hitTest: function(locationInView, event){
|
|
996
996
|
var subview;
|
|
997
997
|
var locationInSubview;
|
|
998
998
|
var hit = null;
|
|
@@ -1008,7 +1008,7 @@ JSClass('UIView', UIResponder, {
|
|
|
1008
1008
|
subview = subviews[i];
|
|
1009
1009
|
locationInSubview = this.layer.convertPointToLayer(locationInView, subview.layer);
|
|
1010
1010
|
if (!subview.hidden && subview.layer.presentation.alpha > 0 && (!subview.clipsToBounds || subview.containsPoint(locationInSubview))){
|
|
1011
|
-
hit = subview.hitTest(locationInSubview);
|
|
1011
|
+
hit = subview.hitTest(locationInSubview, event);
|
|
1012
1012
|
}
|
|
1013
1013
|
}
|
|
1014
1014
|
if (hit === null && this.userInteractionEnabled && this.containsPoint(locationInView)){
|
|
@@ -932,7 +932,7 @@ JSClass('UIWindow', UIView, {
|
|
|
932
932
|
}
|
|
933
933
|
}
|
|
934
934
|
if (this.mouseEventView === null && event.type == UIEvent.Type.leftMouseDown || event.type == UIEvent.Type.rightMouseDown){
|
|
935
|
-
this.mouseEventView = this.hitTest(event.locationInWindow) || this;
|
|
935
|
+
this.mouseEventView = this.hitTest(event.locationInWindow, event) || this;
|
|
936
936
|
this.mouseDownType = event.type;
|
|
937
937
|
}
|
|
938
938
|
var eventTarget = event.trackingView || this.mouseEventView;
|
|
@@ -1005,7 +1005,7 @@ JSClass('UIWindow', UIView, {
|
|
|
1005
1005
|
},
|
|
1006
1006
|
|
|
1007
1007
|
_sendScrollEvent: function(event){
|
|
1008
|
-
var view = this.hitTest(event.locationInWindow);
|
|
1008
|
+
var view = this.hitTest(event.locationInWindow, event);
|
|
1009
1009
|
if (view){
|
|
1010
1010
|
switch (event.type){
|
|
1011
1011
|
case UIEvent.Type.scrollWheel:
|
|
@@ -1019,7 +1019,7 @@ JSClass('UIWindow', UIView, {
|
|
|
1019
1019
|
if (this._modal !== null){
|
|
1020
1020
|
return;
|
|
1021
1021
|
}
|
|
1022
|
-
var view = this.hitTest(event.locationInWindow);
|
|
1022
|
+
var view = this.hitTest(event.locationInWindow, event);
|
|
1023
1023
|
if (view){
|
|
1024
1024
|
switch (event.type){
|
|
1025
1025
|
case UIEvent.Type.magnify:
|
|
@@ -1091,7 +1091,7 @@ JSClass('UIWindow', UIView, {
|
|
|
1091
1091
|
logger.warn("beginning touch that already has a view");
|
|
1092
1092
|
continue;
|
|
1093
1093
|
}
|
|
1094
|
-
view = this.hitTest(touch.locationInWindow) || this;
|
|
1094
|
+
view = this.hitTest(touch.locationInWindow, event) || this;
|
|
1095
1095
|
// For views that don't support multiple touch, only the first
|
|
1096
1096
|
// seen touch will be associated with the view. If a touch isn't
|
|
1097
1097
|
// associated with a view here on touchesBegan, the touch will
|