Commit Graph
2027 Commits
Author SHA1 Message Date
David Richardson 01f7f9b601 Fix CPStackView compile errors and add minimal correctness fixes
CPStackView.j emited warnings during builds and tests which constituted
either real errors or indeterminate state.

These included four types that did not exist: CPUserInterfaceLayoutOrientation, CPLayoutAttribute,
CPEdgeInsets, and CPMapTable.

The missing types are now present.

- Add local typedefs for CPUserInterfaceLayoutOrientation and
  CPLayoutAttribute. Numeric values match the equivalent Cocoa
  constants.
- Add CPEdgeInsets as an alias for the existing CGInset struct.
  Add CPEdgeInsetsMake and CPEdgeInsetsEqualToEdgeInsets.
- Import Foundation/CPMapTable.j. CPMapTable already exists in
  Foundation.

This commit also fixes two logic errors found during review.

- arrangedSubviews did not match the true view order after
  insert or remove. Add _rebuildArrangedSubviews and call it
  from every method that changes view order.
- Trailing-gravity layout added one extra spacing gap past the
  last view. This shifted the returned layout boundary. Spacing
  is now added before each view, not after.

This commit adds one new property.

- Add a distribution property with storage and accessors. It
  has no effect on layout yet. This makes the property honest:
  before this change, the type existed but no property did.

The manual test, ./Tests/Manual/CPStackViewTest, used a Narwhal-era
Jakefile and would not build. This has been updated to reflect
usage under the Node toolchain.

This commit adds CPStackView.j to AppKit.j. The file was never
imported. Only the build script's wildcard file list included
it.

This commit adds a header comment to CPStackView.j. The comment
states that the class is a placeholder. It lists known
limitations. It states that a constraint-solver based
replacement is planned.

Why: CPStackView must compile and pass tests before capp-build
can use this tree as a build reference, and a class with unstated
limits invites misuse.
2026-08-14 20:09:17 -06:00
David Richardson a786418e19 Add test for @accessors(copy)
@accessors(copy) had no test in ./Tests.
The compiler's copy-accessor setter behaviour was unverified.

Add CopyAccessorTest.j to Tests/Objective-J. It asserts three
properties of the generated setter:
- the stored value is not identical to the assigned object
- the stored value is unaffected by later mutation of the original
- the stored value is equal in content to the original at assignment

This is added both as a matter of good coverage for the existing toolchain and so that new tooling has a reference for a piece of foundational behaviour.
2026-08-13 16:42:57 -06:00
David Richardson 1a9a42ff54 Replace #pragma mark with // MARK:
Replace objc directive with native Javascript version // MARK: to facilitate elimination of preproccsing pass.
2026-07-21 15:15:53 -06:00
daboe01 b1fade86fe formatting 2026-07-11 13:51:04 +02:00
daboe01 a93e67662b new: manual test for CPMarkdownParser 2026-06-26 19:42:42 +02:00
daboe01andGitHub 535315485a Merge pull request #3235 from daboe01/paste-as-plain-text
New: standard key binding for pasteAsPlainText:
2026-06-20 14:10:49 +02:00
daboe01 e67c141921 new: color panel 2026-06-18 22:21:50 +02:00
daboe01 de2ffd3aad New: implement baseline offsets and superscript/subscript support 2026-06-18 19:08:45 +02:00
daboe01 873a102872 New: standard key binding for pasteAsPlainText: 2026-06-17 18:24:31 +02:00
daboe01 672f25ce27 New: standard key binding for pasteAsPlainText:
This reverts commit 9731c4b394.
2026-06-17 18:20:39 +02:00
daboe01 9731c4b394 New: standard key binding for pasteAsPlainText: 2026-06-17 18:18:39 +02:00
daboe01 4aaa32833a fixed: table roundtrip 2026-06-15 22:33:03 +02:00
daboe01 2a0cebb851 improved: rtf roundtrip 2026-06-15 19:42:53 +02:00
daboe01 1b23bb8a67 new: CPMarkdownParser 2026-06-15 16:43:58 +02:00
daboe01 5dc66c5b4e fixed: roundtrip 2026-06-14 22:56:23 +02:00
daboe01 1cad83aba8 initial display of the table 2026-06-14 21:06:51 +02:00
daboe01 9115949169 new: Documentation for CPRuleEditor I8N stuff 2026-06-04 21:39:02 +02:00
daboe01andGitHub 0b3aa6aac2 Merge pull request #3221 from daboe01/Fixed-CPRuleEditor-word-by-word-translation-issue
Fixed: CPRuleEditor word-by-word translation issue (#1834)
2026-06-04 14:12:08 +02:00
daboe01 613a2722be new: dynamic mutilanguage demo 2026-06-04 08:15:52 +02:00
daboe01 e9b9d9702e fixed: localizer issues 2026-06-03 21:19:09 +02:00
daboe01 750c123d1e fixed: redraw issues 2026-06-03 19:19:36 +02:00
daboe01 5e0fc1cbb5 fixes + manual test 2026-06-02 22:20:44 +02:00
daboe01 c58a5b520e fixed: tab copypaste 2026-05-29 18:19:03 +02:00
daboe01 7b6cb51f4d fixed: format menu 2026-05-29 11:45:17 +02:00
daboe01 c94ed00f41 fixed: basic ruler view support 2026-05-29 10:46:10 +02:00
daboe01 420f3a538d Update AppController.j 2026-05-28 21:23:01 +02:00
daboe01 57987b6f67 Fixed: CPTableView bug where removing a column breaks internal state 2026-04-06 17:26:38 +02:00
daboe01 2ea11eb5ab formatting 2026-04-06 11:58:00 +02:00
daboe01 7fad67484c new: manual tests 2026-04-06 11:56:23 +02:00
daboe01andGitHub b7ac5272d0 Merge pull request #3193 from daboe01/fixed-right-buttons-in-buttonbar
New: support for right-aligned buttons in CPButtonBar (#745)
2026-04-03 16:00:37 +02:00
daboe01 7fbea7913a new: manual test 2026-04-03 13:39:42 +02:00
daboe01 4b81001330 new: testCollectionOperatorKeyPath 2026-04-03 13:33:06 +02:00
daboe01andGitHub 9ecc739e8d Merge pull request #3186 from daboe01/colorpanel-fixes
Fix CPColorWell drag-and-drop and responder chain integration
2026-03-25 19:33:27 +01:00
daboe01 031e5e7ca3 fixed: selection issues 2026-03-08 19:52:58 +01:00
daboe01 c70079ae71 improved: bindings to CPOutlineView 2026-03-08 18:03:52 +01:00
daboe01 b1f2fb44a8 new: CPOutlineView bindings support 2026-03-07 21:43:41 +01:00
daboe01 cd4c3cffe0 fixed: test cases 2026-03-07 20:05:50 +01:00
daboe01 98c01b88e2 fixed various binding issues 2026-03-07 20:00:09 +01:00
daboe01 12960f8160 new: testcase 2026-03-07 19:27:01 +01:00
daboe01 1bbf87e2cb fixed: testcases 2026-02-28 18:26:47 +01:00
daboe01 8db24fcaf6 new: testcases from enquora 2026-02-28 16:46:34 +01:00
daboe01andGitHub e198fbdc40 Merge pull request #3122 from daboe01/fixed-keycode-management-in-cptextview
fixed: Keyboard-event handling is based on the deprecated charCode
2026-01-28 20:57:07 +01:00
daboe01 b8f63166cd fixed: group animation semantics and test 2026-01-26 07:18:02 +01:00
daboe01andGitHub fc91326a5f Merge pull request #3147 from daboe01/new-caanimationgroup
New: CAAnimationGroup and implement timer-based animations in CALayer
2026-01-25 19:34:34 +01:00
daboe01 0fc2ed7081 new: manual test 2026-01-25 19:33:33 +01:00
daboe01andGitHub 2e15f351a9 Merge branch 'main' into fixed-Main-menus-with-no-items-appear-in-the-menu-bar 2025-12-26 11:48:12 +01:00
daboe01 14a195592a new manual test 2025-12-26 11:43:54 +01:00
daboe01andGitHub 7c81471a3a Merge pull request #3149 from daboe01/new-CPMenu-Item-Change-Reflection
fixed: Update CPMenu immediately when a CPMenuItem changes
2025-12-26 11:36:42 +01:00
daboe01 42ea1a5972 new: manual test 2025-12-26 11:34:40 +01:00
daboe01 b2ada8a76f formatting 2025-12-26 11:16:46 +01:00