Commit graph

7234 commits

Author SHA1 Message Date
fredkiefer
f2ebe775d9 * Headers/AppKit/NSKeyValueBinding.h,
* Source/NSKeyValueBinding.m: Add helper function NSIsControllerMarker.
2018-02-26 00:13:15 +01:00
fredkiefer
41e02a5ed5 * Source/GSDisplayServer.m: Store the current display server in a
static variable and not in a thread variable.
Idea by Yavor Doganov  <yavor@gnu.org>
2018-02-09 21:31:03 +01:00
fredkiefer
caa58cf72b Tiny fix for bug found by valgrind.
Make sure nominal gets always set for a glyph.
2018-02-05 23:25:36 +01:00
fredkiefer
712e7a4e15 Close sheet before removing from parent.
* Source/NSAlert.m (NSBeginAlertSheet): Move closing the sheet from
here...
* Source/NSApplication.m (-beginSheet:...:contextInfo:): ...to here.
2018-02-04 21:18:43 +01:00
fredkiefer
9451330883 * Source/NSApplication.m (-targetForAction:to:from:): Warn about
the target not responding to the action.
* Source/NSSavePanel.m (_initWithoutGModel): Don't set the OK
button as the target of the browser. Use helper method instead.
2018-01-23 20:56:52 +01:00
fredkiefer
618e31ff42 * Source/NSMenu.m (-update): Restructure by splitting up into two
helper methods.
* Source/NSMenu.m (-performKeyEquivalent:): Use new helper method
to only autoenable menu item with matching key equivalent.
2018-01-14 18:41:23 +01:00
fredkiefer
d31ae5f49b * Source/GSLayoutManager.m
(-glyphRangeForCharacterRange:actualCharacterRange:): Try to
handle attachments at the end of the file more graceful.
2018-01-14 18:17:05 +01:00
fredkiefer
85ba90244b * Source/NSView.m (-_rebuildCoordinates): Use simple path only
when both window and superview are nil. Set the visibleRect in
this case to bounds.
2018-01-07 16:47:36 +01:00
fredkiefer
0c46bc4380 * Source/NSApplication.m (-targetForAction:to:from:): Return nil
if the target is non-nil but does not respond to the action.
2018-01-07 15:09:57 +01:00
Richard Frith-Macdonald
ec19a2de9a Workaround for apparent clang bug calculating ivar offset into NSThread object. 2017-12-27 12:15:31 +00:00
Ivan Vučica
280c3e0095 Clean up -[NSImage initWithCoder:], reduce amount of releases of self.
Some context available in PR #12 and  PR #13.
2017-12-07 19:07:43 +00:00
fredkiefer
7270f8efc7 Add new backingScaleFactor method on NSScreen. 2017-12-03 22:02:06 +01:00
Ivan Vučica
350ba62d7d
Cleanup: Replace tabs with spaces in NSImage.m. 2017-10-29 14:25:47 +00:00
Graham Lee
aff13d41bb correct decoding of named images from keyed archivers
As @tedge noted on the original pull request for this work, I didn't return the correct object in the keyed archiver case.
2017-10-29 14:23:35 +00:00
Graham Lee
2c34ae8fe5 revert spurious whitespace change 2017-10-28 08:48:36 +01:00
Graham Lee
5e3ed6dff7 If an unknown named image is unarchived, keep the name 2017-10-28 08:45:05 +01:00
fredkiefer
e3d51643ca Protect against [window screen] returning nil. 2017-10-05 23:05:28 +02:00
fredkiefer
3ac7a369c5 * Source/NSStepperCell.m (-trackMouse:...untilMouseUp:): Adjust
to changes in super class.
2017-08-31 23:57:41 +02:00
fredkiefer
c72d2df3ff * Source/NSButtonCell.m (-setButtonType:): Warn about unsupported
button types.
* Source/NSCell.m (-performClickWithFrame:inView:): Highlight the
cell only if drawing is possible.
2017-08-27 11:23:43 +02:00
fredkiefer
e853f4fdbf Rewrote mouse tracking logic to be closer to the Cocoa definition. 2017-08-27 11:13:17 +02:00
Daniel Ferreira
3a1bec5d1f Externs: add private string attribute definitions
Define some private NSAttributedString attribute name definitions. Their
functionality is not yet implemented.
2017-08-27 01:42:00 +01:00
Daniel Ferreira
471a81ddb8 NSSpellChecker: implement stub for +isAutomaticQuoteSubstitutionEnabled
Implement stub for +[NSSpellChecker isAutomaticQuoteSubstitutionEnabled]
for compatibility purposes.
2017-08-27 01:42:00 +01:00
Daniel Ferreira
39d9105d35 NSSpellChecker: implement stub for +isAutomaticDashSubstitutionEnabled
Implement stub for +[NSSpellChecker isAutomaticDashSubstitutionEnabled]
for compatibility purposes.
2017-08-27 01:42:00 +01:00
Daniel Ferreira
9e8ef84b54 NSGestureRecognizer: implement stub for -locationInView:
Implement stub for -[NSGestureRecognizer locationInView:] for
compatibility purposes.
2017-08-27 01:42:00 +01:00
Daniel Ferreira
3e9cdce801 NSWindow: add stub for +windowNumberAtPoint:belowWindowWithWindowNumber:
Add stub for +[NSWindow windowNumberAtPoint:belowWindowWithWindowNumber:]
for compatibility purposes.
2017-08-27 01:42:00 +01:00
Daniel Ferreira
10d0dce115 NSSpellChecker: add stub for -checkGrammarOfString:...
Add a stub for the -checkGrammarOfString:... method for compatibility
purposes.
2017-08-27 01:42:00 +01:00
Daniel Ferreira
677572bef1 NSSpellChecker: add stub for +isAutomaticTextReplacementEnabled
Add stub for +[NSSpellChecker isAutomaticTextReplacementEnabled] for
compatibility purposes.
2017-08-27 01:42:00 +01:00
Daniel Ferreira
9ce55e08ca NSSpellChecker: add missing definitions
Add definitions for the NSCorrectionResponse enum for increased
compatibility, as well as some spell checking notification constants.
2017-08-27 01:42:00 +01:00
Daniel Ferreira
4f4db46c87 NSWindow: add stub for -backingScaleFactor
Add stub for -[NSWindow backingScaleFactor] for compatibility purposes.
2017-08-27 01:42:00 +01:00
Daniel Ferreira
07d0f2002f NS{Application,Window}: define modal constants
Define constants and stubs related to modal sheets in GUI for increased
compatibility.
2017-08-27 01:42:00 +01:00
Daniel Ferreira
5e8b278e93 NSFont: define font weight constants
Define font weight constants introduced in macOS 10.11.
2017-08-27 01:42:00 +01:00
Daniel Ferreira
5a66de7139 Externs: export the _NXSmartPaste constant
Export the private _NXSmartPaste constant for compatibility purposes.
2017-08-27 01:42:00 +01:00
Daniel Ferreira
1560978a60 NSAttributedString: add private attribute stub
Add a stub for NSTextInsertionUndoableAttributeName, a private
NSAttributedString attribute.
2017-08-27 01:42:00 +01:00
Riccardo Mottola
78be5ef0ea Initialize density to 0, so that in case it is unset (72dpi) it is not a random value in case the struct is not zeroed 2017-08-25 14:20:58 +02:00
fredkiefer
b713d0c023 Clean up NSPasteboardItem files. 2017-07-31 23:21:59 +02:00
Daniel Ferreira
257017c65f NSGraphicsContext: create -CGContext methods
Create methods which allow a graphics context to be created with a
CGContext as an equivalent to a graphics port. The context set through
this property will be used in gnustep-back.
2017-07-31 11:41:11 +01:00
Ivan Vučica
1cb15c2735 Remove RETAIN() when returning -[NSPasteboardItem types].
Objective-C memory management policy specifies that methods named with
alloc, new, copy and mutableCopy are the ones that return objects with
refcount 1.

Additionally, `@property (..., copy, ...)` only modifies the setter; the getter
still returns the object as-is. While it should be correct to create
a new immutable object every time, we should not create an object
with refcount 1, but an autoreleased object.
2017-07-31 11:36:15 +01:00
Ivan Vučica
4026fbc2be Add _startingItemNumber-related TODOs to NSTextList. 2017-07-31 11:26:43 +01:00
Daniel Ferreira
6d4302cd97 NSTextList: create startingItemNumber property
Add the `startingItemNumber` property to NSTextList introduced in macOS
10.6.
2017-07-31 11:22:59 +01:00
Daniel Ferreira
5403e47b60 NSPasteboardItem: create base implementation
Implement the NSPasteboardItem class. For now, it remains relatively
useless since NSPasteboard does not yet know how to use it. However, it
should be pluggable into NSPasteboard once NSPasteboard learns about
NSPasteboardReading and NSPasteboardWriting.
2017-07-31 11:22:59 +01:00
Daniel Ferreira
ac26b6725b NSTextAlternatives: implement text alternatives class
Implement NSTextAlternatives, a class usually used for choosing
alternatives from a basic string usually for dictation purposes.
2017-07-31 11:22:59 +01:00
Daniel Ferreira
fcb11edca8 NSScroller: define scroller styles
As of macOS 10.7, scrollers gained two types: Legacy and Overlay. Here,
we define these styles as well as a method to determine which is the
"default" style to be used.
2017-07-31 11:22:59 +01:00
fredkiefer
e85a1a0664 * Source/NSMenuView.m (-attachSubmenuForItemAtIndex:): We should
not use [NSMenu display] for NSWindows95InterfaceStyle as there we
	have two NSMenuViews for the NSMenu.
2017-07-28 19:24:45 +02:00
Riccardo Mottola
5627b69f1a Do not initialize a string constant with another string constant or it breaks GCC build as is. Better proposals to ensure the exact same string pointer is used welcome. 2017-07-26 14:23:00 +02:00
Daniel Ferreira
fbdea829c0 NSAttributedString: define writing direction attribute
Define an (unimplemented) NSAttributedString attribute for Unicode
writing direction.
2017-07-25 22:33:12 +01:00
Daniel Ferreira
b29d85f451 NSAttributedString: define NSTextAlternatives attribute
Define an (unimplemented) NSAttributedString attribute for an
NSTextAlternatives object.
2017-07-25 22:33:12 +01:00
Daniel Ferreira
758d524547 NS{Cell,View}: implement stubs for layout direction handling
Implement stubs for the layout direction properties in NSCell and
NSView. Currently, they default to left-to-right layouting.
2017-07-25 22:33:12 +01:00
Daniel Ferreira
05c58fe023 NSAccessibility: declare base Accessibility APIs
Declare base NSAccessibility functions and constants, which have been
implemented as stubs.

In the near future, we could begin supporting some NSAccessibility
informal protocol features (for instance, elements ignored in the
accessible view hierarchy). However, for even considering thorough
accessibility support we would require, at least:

* A proper implementation of the AX* API in gnustep-boron;
* Design integration with screen reading software and other components
for an accessible graphic environment.

which are most certainly long-term tasks.
2017-07-25 22:33:12 +01:00
Daniel Ferreira
e9b0367207 NSControl: create stub for -sizeThatFits:
Create a stub for the -[NSControl sizeThatFits:] function.
2017-07-25 22:33:12 +01:00
Daniel Ferreira
16b0299916 NSVisualEffectView: create class stub
Create stub for the NSVisualEffectView class.
2017-07-25 22:33:12 +01:00