Didier Korthoudt
e1daf9467c
Code-style-fixes
2015-11-19 06:13:18 +01:00
Didier Korthoudt
1418dd8b29
First submit for CPTrackingArea
2015-11-06 14:09:23 +01:00
Alexandre Wilhelm
6efe563a69
Fixed: method _initOtherEventWithType: in CPEvent did not save the given windowNumber
2015-04-10 10:51:47 -07:00
Alexandre Wilhelm
2484fb85e9
Fixed: warning raised by the compiler due to unknown type in var declarations
2014-12-01 14:22:06 -08:00
Antoine Mercadal
f9275a70af
FIXED: New warnings reveleaded by ivar type checking
...
This patch fixes all new warnings
2014-11-06 10:17:05 -08:00
Alexander Ljungberg
7470f4ffcf
New: CPEvent scrollingDeltaX, scrollingDeltaY and hasPreciseScrollingDeltas.
...
Refs #2013 .
2014-07-23 15:00:30 +01:00
Alexander Ljungberg
376b3a496e
Fixed: copy and paste by Cappuccino Edit menu not working.
...
When the Edit menu is used to cut or to paste, Cappuccino needs to do all the work of making it happen. But the current code relied on the browser doing part of the work.
This fix adds new state so CPTextField can know if it should expect the browser to do some of the work or not.
Refs #1964 .
2013-08-19 22:31:20 +01:00
Aparajita Fishman
afd5925499
Fixed: _CG and _CP macros were confusing and could degrade performance
...
Previously, Cappuccino was using preprocessor macros internally for the CGPoint/Size/Rect/Inset/Affine functions, as well as for CPRange. These macros had the same name as the corresponding function, but began with _. The functions were actually defined using the macros.
The motivation behind using macros was to increase performance by reducing function calls. However, there were a number of problems with this approach:
- There was an artificial dichotomy between _CG macros and the corresponding CG functions. We never completely replaced CG function calls with _CG macros. In fact, they were often mixed up in the same file. There was an extra burden on the programmer to remember to use the macro instead of the function.
- If a method call was passed as an argument to a macro, performance could actually be significantly *worse* than a function call. For example, _CGGetRectMakeCopy([view frame]) would expand to `{ origin:{ x:[view frame].origin.x, y:[view frame].origin.y }, size:{ width:[view frame].size.width, height:[view frame].size.height } }`. So instead of a single objj_msgSend and a single simple function call, we ended up with 4 objj_msgSend calls, which are way more expensive than simple function calls.
- Because of this expansion problem, to use macros efficiently required us to remember to use variables for all macro parameters. This didn't happen, and shouldn't have to happen.
- Finally, with modern Javascript engines, function call overhead is so small that it really isn't worth using the macros.
This commit eliminates the _CGGeometry, CGAffineTransformation and CPRange macros and replaces them with function calls.
BREAKING CHANGE:
The macros are no longer available. They could only be used with compiled code, but if there is any user code that used them, they will have to be replaced with the corresponding functions.
2013-03-13 12:22:10 -04:00
Aparajita Fishman
93fb849296
Import fixes
2013-01-24 19:18:39 +08:00
Aparajita Fishman
866e1f00f7
Objj2 compiler fixes
...
- Each file compiles individually with no errors or warnings.
- Added missing imports.
- Fixed imports to remove circularity.
- Removed unnecessary imports.
- Added missing headers.
- Added missing action_button.png.
- Replace CPMakeRect with CGRectMake.
2013-01-23 15:48:56 +07:00
Aparajita Fishman
4f377bcebe
Objj2 compiler fixes
...
Compiled all files individually:
- Added missing imports.
- Added @class/@global declarations to break circular dependencies.
- Misc. code cleanup.
Conflicts:
AppKit/CPWindow/_CPWindow.j
AppKit/Platform/DOM/CPPlatformWindow+DOM.j
2013-01-23 15:48:55 +07:00
Aparajita Fishman
7c831fa19d
capp_lint flags deprecated CPPoint/Rect/Size types/functions
...
- Changed to corresponding CG types/functions in all files
- Fixed some demo app bugs
2013-01-19 16:51:56 +07:00
Martin Carlberg
458fa9d02e
Fixed a lot of small bugs found by new warning message from compiler
2013-01-18 14:24:37 +01:00
Alexander Ljungberg
b4cfa8cefb
CPEvent description.
2012-08-02 15:53:27 +01:00
Alexander Ljungberg
6b660a0c76
Fixed: CPEvent data1 and data2 weren't stored right.
...
They were stored in globals instead of ivars, allowing only one data1 or data2 in the whole app.
2012-08-02 15:53:04 +01:00
Blair Duncan
5b5034da63
CPEvent - send a valid timestamp for periodic events
2012-04-23 18:19:37 -04:00
Aparajita Fishman
5763ebdf2b
Fixed CPEvent -timestamp to return seconds since startup, as documented in Cocoa.
...
Miscellaneous cleanup of timestamp usage as well.
2012-04-15 11:30:27 -04:00
Alexander Ljungberg
8f90dbce99
Allow almost anything as a key equivalent unless a text field is the first responder.
...
After testing in Cocoa, even unexpected keys such as tab can be used when a text field isn't selected. Some keys such as the arrow keys and escape act like key equivalents even with a text field active.
2011-11-10 00:52:38 +00:00
Aparajita Fishman
99180ba001
Enable escape as key equivalent.
2011-05-30 23:20:06 -07:00
Aparajita Fishman
acbaa1eec4
Restored space, backspace and escape as key equivalents, but only if the first responder is not a CPTextField. Updated test app to show clearly the effect of this change.
2011-05-23 16:31:52 -07:00
Aparajita Fishman
65b6ff6ecc
Fixed set of keys that can be considered a key equivalent, removed redundant call to performKeyEquivalent, test app
2011-05-22 18:05:48 -07:00
Alexander Ljungberg
2532c760ea
Closes #1202 . Test that CPEvent deltaX, deltaY and deltaZ do work. Also initialise deltas to 0 instead of nil.
2011-03-31 11:11:57 -04:00
Alexander Ljungberg
d3836c2a52
Global fixes.
2011-01-24 13:22:07 -03:00
Alexander Ljungberg
ea8c29356d
More typo and formatting fixes.
2011-01-24 13:17:48 -03:00
Stephen Ierodiaconou
6a942630e4
Fixing spelling mistakes
2011-01-24 11:05:48 +02:00
Alexander Ljungberg
f72749fbd6
Allow home and end function keys as unqualified key equivalents. Manual test for home and end function keys.
2010-12-15 00:26:42 +01:00
Francisco Ryan Tolmasky I
71bbd85ba4
Fix for ctrl not being interpreted as command in Linux.
...
Reviewed by me.
2010-12-04 11:12:28 -08:00
Francisco Ryan Tolmasky I
1cbaea0e3d
Further capp_linting - removing accidental global.
...
Reviewed by me.
2010-12-02 12:11:57 -08:00
Francisco Ryan Tolmasky I
400bdb5103
Further capp_linting.
...
Reviewed by me.
2010-12-02 11:44:42 -08:00
Mike Fellows
f9639eb695
Add the space key as an allowable key equivalent
2010-11-30 23:09:02 -08:00
Francisco Ryan Tolmasky I
52f7844aee
Made it so .h files are automatically included in AppKit (avoiding needing to manually include Platform.h, etc.).
...
Also changed a bunch of <AppKit/*> imports to "*" imports.
Reviewed by me.
2010-11-01 11:10:01 -07:00
Alexander Ljungberg and Ross Boucher
854481e395
Fixes #710 . Treat \r and \n key equivalents as the same key (return).
2010-06-11 10:19:07 -07:00
Alexander Ljungberg and Ross Boucher
dcec14decd
Fixed: delete (backspace) and forward delete were switched as compared to Cocoa. Fixed: delete could not be used as a key equivalent without a modifier.
2010-06-11 09:37:47 -07:00
Ross Boucher
1edb0bcc4a
Fix for null key equivalents.
2010-06-10 16:14:22 -07:00
Alexander Ljungberg and Ross Boucher
5ed475eedd
Slightly faster _couldBeKeyEquivalent (1% of runtime in 3000 calls). Performance test included.
2010-06-10 10:57:42 -07:00
Alexander Ljungberg and Ross Boucher
17669fd09d
Optimized _triggersKeyEquivalent for a 6.5% performance gain in the CPKeyEquivalentPerformance test.
2010-06-10 10:56:02 -07:00
Alexander Ljungberg
c26ebe0bd2
Added support for menu key equivalents such as Escape or Cmd-Delete. Refactored code to recognize key equivalents for reuse between CPMenu and CPButton. Added unit tests for CPMenu key equivalents.
2010-06-07 19:09:15 -04:00
Alexander Ljungberg
381a44148e
Special keys such as backspace and escape can now be used as key equivalents through checking for their unicode representations in [CPEvent characters]. This replaces the earlier raw key code approach.
2010-06-07 19:09:10 -04:00
Alexander Ljungberg
c1f16de441
Defined function and special key constants.
2010-06-07 19:09:01 -04:00
Alexander Ljungberg
44f5086600
Key equivalents for CPButton.
2010-06-07 19:08:44 -04:00
Ross Boucher
70410d6311
Fix the buttonNumber method of CPEvent.
...
Closes #70 .
2010-04-09 14:38:08 -07:00
Francisco Ryan Tolmasky I
119e776ddc
Make scrolling work in submenus.
...
Reviewed by me.
2009-11-23 23:35:58 -08:00
Ross Boucher
392cca1b2a
Look for uppercase charactrs OR shift keys for determining shift key mask status on menu items
2009-11-15 12:51:48 -08:00
Francisco Ryan Tolmasky I
14ad8f6d6d
Cleaned up key equivalent handling and added support for key equivalents
...
to nib2cib.
Reviewed by me.
2009-10-31 18:32:58 -07:00
Francisco Ryan Tolmasky I
ab8add681e
A number of fixes and improvements to the platform window subsystem.
...
Reviewed by me.
2009-08-17 03:50:51 -07:00
lowell vizon and Francisco Ryan Tolmasky I
377f331b47
Documentation Edits: Replaced <code> and <pre> tags with \c; this allows monospaced text to be displayed with formatted text without needing a new line. See AppKit/CPView after generating documentation for examples. Also added - and + signs to the above changes when referring to either an -instanceMethod or a +classMethod. --lowell@cocoastep
...
Signed-off-by: Francisco Ryan Tolmasky I <francisco@280north.com >
2009-08-08 03:50:50 +08:00
Francisco Ryan Tolmasky I
3f496f1a10
Fixed CPEvent returning a direct reference to its location (as opposed to a copy), and CPPlatformWindow doing geometry gymnastics instead of the well defined conversion methods on CPWindow.
...
Reviewed by me.
2009-08-03 01:47:33 -07:00
Francisco Ryan Tolmasky I
f4b4d38165
Coat tailed CPEvents on native DOM events if they exist, saving the creation of many objects.
...
Reviewed by me.
2009-05-30 23:16:18 -07:00
Ross Boucher
850125b8ab
Add documentation groups
2009-05-18 15:43:36 -07:00
Ross Boucher and tlrobinson
9eab840f37
Add mouse simulation using native touch events
2009-02-22 17:17:42 -08:00