[108894] trunk/dports/graphics
mojca at macports.org
mojca at macports.org
Sun Aug 4 08:59:03 PDT 2013
Revision: 108894
https://trac.macports.org/changeset/108894
Author: mojca at macports.org
Date: 2013-08-04 08:59:03 -0700 (Sun, 04 Aug 2013)
Log Message:
-----------
wxWidgets30, wxWidgets-devel: fix wrong commit
Modified Paths:
--------------
trunk/dports/graphics/wxWidgets-devel/files/patch-src-osx-cocoa-window.mm.diff
trunk/dports/graphics/wxWidgets30/files/patch-src-osx-cocoa-window.mm.diff
Modified: trunk/dports/graphics/wxWidgets-devel/files/patch-src-osx-cocoa-window.mm.diff
===================================================================
--- trunk/dports/graphics/wxWidgets-devel/files/patch-src-osx-cocoa-window.mm.diff 2013-08-04 15:55:47 UTC (rev 108893)
+++ trunk/dports/graphics/wxWidgets-devel/files/patch-src-osx-cocoa-window.mm.diff 2013-08-04 15:59:03 UTC (rev 108894)
@@ -1,500 +1,114 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-
-
-
-
-
-
-
-
- <head>
- <title>
- patch-src-osx-cocoa-window.mm.diff on Ticket #38850 – Attachment
- – MacPorts
- </title>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <!--[if IE]><script type="text/javascript">window.location.hash = window.location.hash;</script><![endif]-->
- <link rel="search" href="/search" />
- <link rel="help" href="/wiki/TracGuide" />
- <link rel="alternate" href="/raw-attachment/ticket/38850/patch-src-osx-cocoa-window.mm.diff" type="text/x-diff; charset=utf-8" title="Original Format" />
- <link rel="up" href="/ticket/38850" title="Ticket #38850" />
- <link rel="start" href="/wiki" />
- <link rel="stylesheet" href="/chrome/common/css/trac.css" type="text/css" /><link rel="stylesheet" href="/chrome/common/css/diff.css" type="text/css" /><link rel="stylesheet" href="/chrome/common/css/code.css" type="text/css" />
- <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
- <link rel="icon" href="/favicon.ico" type="image/x-icon" />
- <link type="application/opensearchdescription+xml" rel="search" href="/search/opensearch" title="Search MacPorts" />
- <script type="text/javascript" src="/chrome/common/js/jquery.js"></script><script type="text/javascript" src="/chrome/common/js/babel.js"></script><script type="text/javascript" src="/chrome/common/js/messages/en_US.js"></script><script type="text/javascript" src="/chrome/common/js/trac.js"></script><script type="text/javascript" src="/chrome/common/js/search.js"></script><script type="text/javascript" src="/chrome/common/js/diff.js"></script>
- <!--[if lt IE 7]>
- <script type="text/javascript" src="/chrome/common/js/ie_pre7_hacks.js"></script>
- <![endif]-->
- <script type="text/javascript" src="/chrome/common/js/folding.js"></script>
- <script type="text/javascript">
- jQuery(document).ready(function($) {
- $('#preview table.code').enableCollapsibleColumns($('#preview table.code thead th.content'));
- });
- </script>
- <link rel="stylesheet" type="text/css" href="/static/css/style_v4.css" />
- </head>
- <body>
- <div id="forge-body">
- <div id="forge-header">
- <div id="forge-logo">
- <a href="http://www.macosforge.org/"><img alt="macosforge logo" src="http://www.macosforge.org/static/images/logo_v2.png" /></a>
- </div>
- <div id="forge-project">
- <a id="forge-project-logo" href="http://www.macports.org/">
- <img alt="project logo" src="http://www.macosforge.org/files/logos/MacPorts.png" />
- </a>
- </div>
- <div id="auth-nav">
- <a href="/auth/register/">Register</a>
- <a href="/auth/password/lost/">Lost Password</a>
- <a href="/auth/login/">Login</a>
- </div>
- </div>
- <div id="forge-outter">
- <div id="left-nav">
- <div class="project-nav">
- <ul>
- <li>
- <a href="http://www.macports.org/" class="navlink-item">Home</a>
- </li>
- <li>
- <a href="/news/" class="navlink-item">News</a>
- </li>
- <li>
- <a href="http://guide.macports.org/" class="navlink-item">Guide</a>
- </li>
- <li>
- <a href="https://trac.macports.org/wiki/MailingLists" class="navlink-item">Mailing Lists</a>
- </li>
- <li>
- <a href="/newticket" class="navlink-item">New Ticket</a>
- </li>
- <li>
- <a href="/report" class="navlink-item">Ticket Reports</a>
- </li>
- <li>
- <a href="https://trac.macports.org/search?portsummarysearch=on" class="navlink-item">Ticket Search</a>
- </li>
- <li>
- <a href="https://trac.macports.org/query?status=assigned&status=new&status=reopened&port=&summary=&port_mode=~&summary_mode=~" class="navlink-item">Ticket Query</a>
- </li>
- </ul>
- </div>
- <div class="heading" id="projects-list-heading">Projects</div>
-<div id="project-list" class="project-list">
- <ul>
- <li>
- <a class="navlink-item" href="http://alac.macosforge.org/">Apple Lossless Audio Codec</a>
- </li>
- <li>
- <a class="navlink-item" href="http://calendarserver.org/">Calendar and Contacts Server</a>
- </li>
- <li>
- <a class="navlink-item" href="http://darwinbuild.macosforge.org/">DarwinBuild</a>
- </li>
- <li>
- <a class="navlink-item" href="http://dss.macosforge.org/">Darwin Streaming Server</a>
- </li>
- <li>
- <a class="navlink-item" href="http://www.dcerpc.org/">DCERPC</a>
- </li>
- <li>
- <a class="navlink-item" href="http://fstools.macosforge.org/">FS Tools</a>
- </li>
- <li>
- <a class="navlink-item" href="http://libdispatch.macosforge.org/">libdispatch</a>
- </li>
- <li>
- <a class="navlink-item" href="http://www.macports.org/">MacPorts</a>
- </li>
- <li>
- <a class="navlink-item" href="http://scap-on-apple.macosforge.org/">SCAP-on-Apple</a>
- </li>
- <li>
- <a class="navlink-item" href="http://smartcardservices.macosforge.org/">SmartCard Services</a>
- </li>
- <li>
- <a class="navlink-item" href="http://www.webkit.org/">WebKit</a>
- </li>
- <li>
- <a class="navlink-item" href="http://xquartz.macosforge.org/">XQuartz</a>
- </li>
- </ul>
-</div>
- <div id="forge-footer">
- <div id="footerlinks">
- <a href="http://www.macosforge.org/contact/">Contact</a><br />
- <a href="http://www.macosforge.org/terms/">Terms of Use</a><br />
- <a href="http://www.apple.com/legal/privacy/">Privacy Policy</a><br />
- </div>
- <div id="footertext">
- <br />
- All user-submitted text and content on this website is licensed under a
- <a href="http://creativecommons.org/licenses/by/2.5/">
- Creative Commons Attribution 2.5 License
- </a>
- unless otherwise noted.
- Copyright © 2011 Apple Inc. All rights reserved.
- </div>
- </div>
- </div>
- <div id="forge-inner">
- <div id="top-nav">
- <a href="/newticket">New Ticket</a>
-
- <a href="https://trac.macports.org/wiki/Tickets">Tickets</a>
-
- <a href="/wiki">Wiki</a>
-
- <a href="/browser">Browse Source</a>
-
- <a href="/timeline">Timeline</a>
-
- <a href="/roadmap">Roadmap</a>
-
- <a href="/report">Ticket Reports</a>
-
- <a href="/search">Search</a>
- </div>
- <div id="forge-content">
- <div id="banner">
- <div id="header">
- <a id="logo" href="https://trac.macports.org/"><img src="/chrome/common/trac_banner.png" alt="MacPorts" height="73" width="236" /></a>
- </div>
- <form id="search" action="/search" method="get">
- <div>
- <label for="proj-search">Search:</label>
- <input type="text" id="proj-search" name="q" size="18" value="" />
- <input type="submit" value="Search" />
- </div>
- </form>
- <div id="metanav" class="nav">
- </div>
- </div>
- <div id="main">
- <div id="ctxtnav" class="nav">
- <h2>Context Navigation</h2>
- <ul>
- <li class="last first"><a href="/ticket/38850">Back to Ticket #38850</a></li>
- </ul>
- <hr />
- </div>
- <div id="content" class="attachment">
- <h1><a href="/ticket/38850">Ticket #38850</a>: patch-src-osx-cocoa-window.mm.diff</h1>
- <table id="info" summary="Description">
- <tbody>
- <tr>
- <th scope="col">File patch-src-osx-cocoa-window.mm.diff,
- <span title="3285 bytes">3.2 KB</span>
- (added by mk@…, <a class="timeline" href="/timeline?from=2013-08-04T07%3A17%3A09-07%3A00&precision=second" title="2013-08-04T07:17:09-07:00 in Timeline">49 minutes</a> ago)</th>
- </tr>
- <tr>
- <td class="message searchable">
- <p>
-patch from <a class="ext-link" href="http://trac.wxwidgets.org/changeset/74613"><span class="icon"></span>http://trac.wxwidgets.org/changeset/74613</a>
-</p>
-
- </td>
- </tr>
- </tbody>
- </table>
- <div id="preview" class="searchable">
-
- <div class="diff">
- <ul class="entries">
- <li class="entry">
- <h2>
- <a>src/osx/cocoa/window.mm</a>
- </h2>
- <table class="trac-diff inline" summary="Differences" cellspacing="0">
- <colgroup><col class="lineno" /><col class="lineno" /><col class="content" /></colgroup>
- <thead>
- <tr>
- <th title="File src/osx/cocoa/window.mm (revision 74602)">
- </th>
- <th title="File src/osx/cocoa/window.mm (revision 74613)">
- </th>
- <td><em></em> </td>
- </tr>
- </thead>
- <tbody class="unmod">
- <tr>
- <th>109</th><th>109</th><td class="l"><span></span> </td>
- </tr><tr>
- <th>110</th><th>110</th><td class="l"><span>@end // wxNSView</span> </td>
- </tr>
- </tbody><tbody class="add">
- <tr class="first">
- <th> </th><th>111</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>112</th><td class="r"><ins>@interface wxNSView(TextInput) <NSTextInputClient></ins> </td>
- </tr><tr>
- <th> </th><th>113</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>114</th><td class="r"><ins>- (void)insertText:(id)aString replacementRange:(NSRange)replacementRange;</ins> </td>
- </tr><tr>
- <th> </th><th>115</th><td class="r"><ins>- (void)doCommandBySelector:(SEL)aSelector;</ins> </td>
- </tr><tr>
- <th> </th><th>116</th><td class="r"><ins>- (void)setMarkedText:(id)aString selectedRange:(NSRange)selectedRange replacementRange:(NSRange)replacementRange;</ins> </td>
- </tr><tr>
- <th> </th><th>117</th><td class="r"><ins>- (void)unmarkText;</ins> </td>
- </tr><tr>
- <th> </th><th>118</th><td class="r"><ins>- (NSRange)selectedRange;</ins> </td>
- </tr><tr>
- <th> </th><th>119</th><td class="r"><ins>- (NSRange)markedRange;</ins> </td>
- </tr><tr>
- <th> </th><th>120</th><td class="r"><ins>- (BOOL)hasMarkedText;</ins> </td>
- </tr><tr>
- <th> </th><th>121</th><td class="r"><ins>- (NSAttributedString *)attributedSubstringForProposedRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange;</ins> </td>
- </tr><tr>
- <th> </th><th>122</th><td class="r"><ins>- (NSArray*)validAttributesForMarkedText;</ins> </td>
- </tr><tr>
- <th> </th><th>123</th><td class="r"><ins>- (NSRect)firstRectForCharacterRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange;</ins> </td>
- </tr><tr>
- <th> </th><th>124</th><td class="r"><ins>- (NSUInteger)characterIndexForPoint:(NSPoint)aPoint;</ins> </td>
- </tr><tr>
- <th> </th><th>125</th><td class="r"><ins></ins> </td>
- </tr><tr class="last">
- <th> </th><th>126</th><td class="r"><ins>@end</ins> </td>
- </tr>
- </tbody><tbody class="unmod">
- <tr>
- <th>111</th><th>127</th><td class="l"><span></span> </td>
- </tr><tr>
- <th>112</th><th>128</th><td class="l"><span>@interface NSView(PossibleMethods)</span> </td>
- </tr>
- </tbody>
- <tbody class="skipped">
- <tr>
- <th><a href="#L837">…</a></th>
- <th><a href="#L853">…</a></th>
- <td><em></em> </td>
- </tr>
- </tbody>
- <tbody class="unmod">
- <tr>
- <th>837</th><th>853</th><td class="l"><span>@end // wxNSView</span> </td>
- </tr><tr>
- <th>838</th><th>854</th><td class="l"><span></span> </td>
- </tr>
- </tbody><tbody class="add">
- <tr class="first">
- <th> </th><th>855</th><td class="r"><ins>// We need to adopt NSTextInputClient protocol in order to interpretKeyEvents: to work.</ins> </td>
- </tr><tr>
- <th> </th><th>856</th><td class="r"><ins>// Currently, only insertText:(replacementRange:) is</ins> </td>
- </tr><tr>
- <th> </th><th>857</th><td class="r"><ins>// implemented here, and the rest of the methods are stubs.</ins> </td>
- </tr><tr>
- <th> </th><th>858</th><td class="r"><ins>// It is hoped that someday IME-related functionality is implemented in</ins> </td>
- </tr><tr>
- <th> </th><th>859</th><td class="r"><ins>// wxWidgets and the methods of this protocol are fully working.</ins> </td>
- </tr><tr>
- <th> </th><th>860</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>861</th><td class="r"><ins>@implementation wxNSView(TextInput)</ins> </td>
- </tr><tr>
- <th> </th><th>862</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>863</th><td class="r"><ins>void wxOSX_insertText(NSView* self, SEL _cmd, NSString* text);</ins> </td>
- </tr><tr>
- <th> </th><th>864</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>865</th><td class="r"><ins>- (void)insertText:(id)aString replacementRange:(NSRange)replacementRange</ins> </td>
- </tr><tr>
- <th> </th><th>866</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>867</th><td class="r"><ins> wxOSX_insertText(self, @selector(insertText:), aString);</ins> </td>
- </tr><tr>
- <th> </th><th>868</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>869</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>870</th><td class="r"><ins>- (void)doCommandBySelector:(SEL)aSelector</ins> </td>
- </tr><tr>
- <th> </th><th>871</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>872</th><td class="r"><ins> // these are already caught in the keyEvent handler</ins> </td>
- </tr><tr>
- <th> </th><th>873</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>874</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>875</th><td class="r"><ins>- (void)setMarkedText:(id)aString selectedRange:(NSRange)selectedRange replacementRange:(NSRange)replacementRange</ins> </td>
- </tr><tr>
- <th> </th><th>876</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>877</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>878</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>879</th><td class="r"><ins>- (void)unmarkText</ins> </td>
- </tr><tr>
- <th> </th><th>880</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>881</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>882</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>883</th><td class="r"><ins>- (NSRange)selectedRange</ins> </td>
- </tr><tr>
- <th> </th><th>884</th><td class="r"><ins>{ </ins> </td>
- </tr><tr>
- <th> </th><th>885</th><td class="r"><ins> return NSMakeRange(NSNotFound, 0);</ins> </td>
- </tr><tr>
- <th> </th><th>886</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>887</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>888</th><td class="r"><ins>- (NSRange)markedRange</ins> </td>
- </tr><tr>
- <th> </th><th>889</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>890</th><td class="r"><ins> return NSMakeRange(NSNotFound, 0);</ins> </td>
- </tr><tr>
- <th> </th><th>891</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>892</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>893</th><td class="r"><ins>- (BOOL)hasMarkedText</ins> </td>
- </tr><tr>
- <th> </th><th>894</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>895</th><td class="r"><ins> return NO;</ins> </td>
- </tr><tr>
- <th> </th><th>896</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>897</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>898</th><td class="r"><ins>- (NSAttributedString *)attributedSubstringForProposedRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange</ins> </td>
- </tr><tr>
- <th> </th><th>899</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>900</th><td class="r"><ins> return nil;</ins> </td>
- </tr><tr>
- <th> </th><th>901</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>902</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>903</th><td class="r"><ins>- (NSArray*)validAttributesForMarkedText</ins> </td>
- </tr><tr>
- <th> </th><th>904</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>905</th><td class="r"><ins> return nil;</ins> </td>
- </tr><tr>
- <th> </th><th>906</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>907</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>908</th><td class="r"><ins>- (NSRect)firstRectForCharacterRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange</ins> </td>
- </tr><tr>
- <th> </th><th>909</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>910</th><td class="r"><ins> return NSMakeRect(0, 0, 0, 0);</ins> </td>
- </tr><tr>
- <th> </th><th>911</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>912</th><td class="r"><ins>- (NSUInteger)characterIndexForPoint:(NSPoint)aPoint</ins> </td>
- </tr><tr>
- <th> </th><th>913</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>914</th><td class="r"><ins> return NSNotFound;</ins> </td>
- </tr><tr>
- <th> </th><th>915</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>916</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>917</th><td class="r"><ins>@end // wxNSView(TextInput)</ins> </td>
- </tr><tr>
- <th> </th><th>918</th><td class="r"><ins></ins> </td>
- </tr><tr class="last">
- <th> </th><th>919</th><td class="r"><ins></ins> </td>
- </tr>
- </tbody><tbody class="unmod">
- <tr>
- <th>839</th><th>920</th><td class="l"><span>//</span> </td>
- </tr><tr>
- <th>840</th><th>921</th><td class="l"><span>// event handlers</span> </td>
- </tr>
- </tbody>
- <tbody class="skipped">
- <tr>
- <th><a href="#L2555">…</a></th>
- <th><a href="#L2636">…</a></th>
- <td><em></em> </td>
- </tr>
- </tbody>
- <tbody class="unmod">
- <tr>
- <th>2555</th><th>2636</th><td class="l"><span>bool wxWidgetCocoaImpl::DoHandleCharEvent(NSEvent *event, NSString *text)</span> </td>
- </tr><tr>
- <th>2556</th><th>2637</th><td class="l"><span>{</span> </td>
- </tr>
- </tbody><tbody class="mod">
- <tr class="first">
- <th>2557</th><th> </th><td class="l"><span> wxKeyEvent wxevent(wxEVT_CHAR);</span> </td>
- </tr><tr>
- <th>2558</th><th> </th><td class="l"><span> SetupKeyEvent( wxevent, event, text );</span> </td>
- </tr><tr>
- <th>2559</th><th> </th><td class="l"><span></span> </td>
- </tr><tr>
- <th>2560</th><th> </th><td class="l"><span> return GetWXPeer()->OSXHandleKeyEvent(wxevent);</span> </td>
- </tr>
- <tr>
- <th> </th><th>2638</th><td class="r"><span> bool result = false;</span> </td>
- </tr><tr>
- <th> </th><th>2639</th><td class="r"><span> </span> </td>
- </tr><tr>
- <th> </th><th>2640</th><td class="r"><span> for (NSUInteger i = 0; i < [text length]; ++i)</span> </td>
- </tr><tr>
- <th> </th><th>2641</th><td class="r"><span> {</span> </td>
- </tr><tr>
- <th> </th><th>2642</th><td class="r"><span> wxKeyEvent wxevent(wxEVT_CHAR);</span> </td>
- </tr><tr>
- <th> </th><th>2643</th><td class="r"><span> unichar c = [text characterAtIndex:i];</span> </td>
- </tr><tr>
- <th> </th><th>2644</th><td class="r"><span> SetupKeyEvent( wxevent, event, [NSString stringWithCharacters:&c length:1]);</span> </td>
- </tr><tr>
- <th> </th><th>2645</th><td class="r"><span></span> </td>
- </tr><tr>
- <th> </th><th>2646</th><td class="r"><span> result = GetWXPeer()->OSXHandleKeyEvent(wxevent) || result;</span> </td>
- </tr><tr>
- <th> </th><th>2647</th><td class="r"><span> }</span> </td>
- </tr><tr>
- <th> </th><th>2648</th><td class="r"><span> </span> </td>
- </tr><tr class="last">
- <th> </th><th>2649</th><td class="r"><span> return result;</span> </td>
- </tr>
- </tbody><tbody class="unmod">
- <tr>
- <th>2561</th><th>2650</th><td class="l"><span>}</span> </td>
- </tr><tr>
- <th>2562</th><th>2651</th><td class="l"><span></span> </td>
- </tr>
- </tbody>
- </table>
- </li>
- </ul>
-</div>
-
- </div>
- </div>
- <div id="altlinks">
- <h3>Download in other formats:</h3>
- <ul>
- <li class="last first">
- <a rel="nofollow" href="/raw-attachment/ticket/38850/patch-src-osx-cocoa-window.mm.diff">Original Format</a>
- </li>
- </ul>
- </div>
- </div>
- </div>
- </div>
- </div>
- <script type="text/javascript" src="http://www.macosforge.org/static/js/jquery.js"></script>
- <script type="text/javascript" src="http://www.macosforge.org/static/js/main.js"></script>
- </div>
- </body>
-</html>
\ No newline at end of file
+--- src/osx/cocoa/window.mm (revision 74602)
++++ src/osx/cocoa/window.mm (revision 74613)
+@@ -109,4 +109,20 @@
+
+ @end // wxNSView
++
++ at interface wxNSView(TextInput) <NSTextInputClient>
++
++- (void)insertText:(id)aString replacementRange:(NSRange)replacementRange;
++- (void)doCommandBySelector:(SEL)aSelector;
++- (void)setMarkedText:(id)aString selectedRange:(NSRange)selectedRange replacementRange:(NSRange)replacementRange;
++- (void)unmarkText;
++- (NSRange)selectedRange;
++- (NSRange)markedRange;
++- (BOOL)hasMarkedText;
++- (NSAttributedString *)attributedSubstringForProposedRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange;
++- (NSArray*)validAttributesForMarkedText;
++- (NSRect)firstRectForCharacterRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange;
++- (NSUInteger)characterIndexForPoint:(NSPoint)aPoint;
++
++ at end
+
+ @interface NSView(PossibleMethods)
+@@ -837,4 +853,69 @@
+ @end // wxNSView
+
++// We need to adopt NSTextInputClient protocol in order to interpretKeyEvents: to work.
++// Currently, only insertText:(replacementRange:) is
++// implemented here, and the rest of the methods are stubs.
++// It is hoped that someday IME-related functionality is implemented in
++// wxWidgets and the methods of this protocol are fully working.
++
++ at implementation wxNSView(TextInput)
++
++void wxOSX_insertText(NSView* self, SEL _cmd, NSString* text);
++
++- (void)insertText:(id)aString replacementRange:(NSRange)replacementRange
++{
++ wxOSX_insertText(self, @selector(insertText:), aString);
++}
++
++- (void)doCommandBySelector:(SEL)aSelector
++{
++ // these are already caught in the keyEvent handler
++}
++
++- (void)setMarkedText:(id)aString selectedRange:(NSRange)selectedRange replacementRange:(NSRange)replacementRange
++{
++}
++
++- (void)unmarkText
++{
++}
++
++- (NSRange)selectedRange
++{
++ return NSMakeRange(NSNotFound, 0);
++}
++
++- (NSRange)markedRange
++{
++ return NSMakeRange(NSNotFound, 0);
++}
++
++- (BOOL)hasMarkedText
++{
++ return NO;
++}
++
++- (NSAttributedString *)attributedSubstringForProposedRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange
++{
++ return nil;
++}
++
++- (NSArray*)validAttributesForMarkedText
++{
++ return nil;
++}
++
++- (NSRect)firstRectForCharacterRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange
++{
++ return NSMakeRect(0, 0, 0, 0);
++}
++- (NSUInteger)characterIndexForPoint:(NSPoint)aPoint
++{
++ return NSNotFound;
++}
++
++ at end // wxNSView(TextInput)
++
++
+ //
+ // event handlers
+@@ -2555,8 +2636,16 @@
+ bool wxWidgetCocoaImpl::DoHandleCharEvent(NSEvent *event, NSString *text)
+ {
+- wxKeyEvent wxevent(wxEVT_CHAR);
+- SetupKeyEvent( wxevent, event, text );
+-
+- return GetWXPeer()->OSXHandleKeyEvent(wxevent);
++ bool result = false;
++
++ for (NSUInteger i = 0; i < [text length]; ++i)
++ {
++ wxKeyEvent wxevent(wxEVT_CHAR);
++ unichar c = [text characterAtIndex:i];
++ SetupKeyEvent( wxevent, event, [NSString stringWithCharacters:&c length:1]);
++
++ result = GetWXPeer()->OSXHandleKeyEvent(wxevent) || result;
++ }
++
++ return result;
+ }
+
Modified: trunk/dports/graphics/wxWidgets30/files/patch-src-osx-cocoa-window.mm.diff
===================================================================
--- trunk/dports/graphics/wxWidgets30/files/patch-src-osx-cocoa-window.mm.diff 2013-08-04 15:55:47 UTC (rev 108893)
+++ trunk/dports/graphics/wxWidgets30/files/patch-src-osx-cocoa-window.mm.diff 2013-08-04 15:59:03 UTC (rev 108894)
@@ -1,500 +1,114 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-
-
-
-
-
-
-
-
- <head>
- <title>
- patch-src-osx-cocoa-window.mm.diff on Ticket #38850 – Attachment
- – MacPorts
- </title>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <!--[if IE]><script type="text/javascript">window.location.hash = window.location.hash;</script><![endif]-->
- <link rel="search" href="/search" />
- <link rel="help" href="/wiki/TracGuide" />
- <link rel="alternate" href="/raw-attachment/ticket/38850/patch-src-osx-cocoa-window.mm.diff" type="text/x-diff; charset=utf-8" title="Original Format" />
- <link rel="up" href="/ticket/38850" title="Ticket #38850" />
- <link rel="start" href="/wiki" />
- <link rel="stylesheet" href="/chrome/common/css/trac.css" type="text/css" /><link rel="stylesheet" href="/chrome/common/css/diff.css" type="text/css" /><link rel="stylesheet" href="/chrome/common/css/code.css" type="text/css" />
- <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
- <link rel="icon" href="/favicon.ico" type="image/x-icon" />
- <link type="application/opensearchdescription+xml" rel="search" href="/search/opensearch" title="Search MacPorts" />
- <script type="text/javascript" src="/chrome/common/js/jquery.js"></script><script type="text/javascript" src="/chrome/common/js/babel.js"></script><script type="text/javascript" src="/chrome/common/js/messages/en_US.js"></script><script type="text/javascript" src="/chrome/common/js/trac.js"></script><script type="text/javascript" src="/chrome/common/js/search.js"></script><script type="text/javascript" src="/chrome/common/js/diff.js"></script>
- <!--[if lt IE 7]>
- <script type="text/javascript" src="/chrome/common/js/ie_pre7_hacks.js"></script>
- <![endif]-->
- <script type="text/javascript" src="/chrome/common/js/folding.js"></script>
- <script type="text/javascript">
- jQuery(document).ready(function($) {
- $('#preview table.code').enableCollapsibleColumns($('#preview table.code thead th.content'));
- });
- </script>
- <link rel="stylesheet" type="text/css" href="/static/css/style_v4.css" />
- </head>
- <body>
- <div id="forge-body">
- <div id="forge-header">
- <div id="forge-logo">
- <a href="http://www.macosforge.org/"><img alt="macosforge logo" src="http://www.macosforge.org/static/images/logo_v2.png" /></a>
- </div>
- <div id="forge-project">
- <a id="forge-project-logo" href="http://www.macports.org/">
- <img alt="project logo" src="http://www.macosforge.org/files/logos/MacPorts.png" />
- </a>
- </div>
- <div id="auth-nav">
- <a href="/auth/register/">Register</a>
- <a href="/auth/password/lost/">Lost Password</a>
- <a href="/auth/login/">Login</a>
- </div>
- </div>
- <div id="forge-outter">
- <div id="left-nav">
- <div class="project-nav">
- <ul>
- <li>
- <a href="http://www.macports.org/" class="navlink-item">Home</a>
- </li>
- <li>
- <a href="/news/" class="navlink-item">News</a>
- </li>
- <li>
- <a href="http://guide.macports.org/" class="navlink-item">Guide</a>
- </li>
- <li>
- <a href="https://trac.macports.org/wiki/MailingLists" class="navlink-item">Mailing Lists</a>
- </li>
- <li>
- <a href="/newticket" class="navlink-item">New Ticket</a>
- </li>
- <li>
- <a href="/report" class="navlink-item">Ticket Reports</a>
- </li>
- <li>
- <a href="https://trac.macports.org/search?portsummarysearch=on" class="navlink-item">Ticket Search</a>
- </li>
- <li>
- <a href="https://trac.macports.org/query?status=assigned&status=new&status=reopened&port=&summary=&port_mode=~&summary_mode=~" class="navlink-item">Ticket Query</a>
- </li>
- </ul>
- </div>
- <div class="heading" id="projects-list-heading">Projects</div>
-<div id="project-list" class="project-list">
- <ul>
- <li>
- <a class="navlink-item" href="http://alac.macosforge.org/">Apple Lossless Audio Codec</a>
- </li>
- <li>
- <a class="navlink-item" href="http://calendarserver.org/">Calendar and Contacts Server</a>
- </li>
- <li>
- <a class="navlink-item" href="http://darwinbuild.macosforge.org/">DarwinBuild</a>
- </li>
- <li>
- <a class="navlink-item" href="http://dss.macosforge.org/">Darwin Streaming Server</a>
- </li>
- <li>
- <a class="navlink-item" href="http://www.dcerpc.org/">DCERPC</a>
- </li>
- <li>
- <a class="navlink-item" href="http://fstools.macosforge.org/">FS Tools</a>
- </li>
- <li>
- <a class="navlink-item" href="http://libdispatch.macosforge.org/">libdispatch</a>
- </li>
- <li>
- <a class="navlink-item" href="http://www.macports.org/">MacPorts</a>
- </li>
- <li>
- <a class="navlink-item" href="http://scap-on-apple.macosforge.org/">SCAP-on-Apple</a>
- </li>
- <li>
- <a class="navlink-item" href="http://smartcardservices.macosforge.org/">SmartCard Services</a>
- </li>
- <li>
- <a class="navlink-item" href="http://www.webkit.org/">WebKit</a>
- </li>
- <li>
- <a class="navlink-item" href="http://xquartz.macosforge.org/">XQuartz</a>
- </li>
- </ul>
-</div>
- <div id="forge-footer">
- <div id="footerlinks">
- <a href="http://www.macosforge.org/contact/">Contact</a><br />
- <a href="http://www.macosforge.org/terms/">Terms of Use</a><br />
- <a href="http://www.apple.com/legal/privacy/">Privacy Policy</a><br />
- </div>
- <div id="footertext">
- <br />
- All user-submitted text and content on this website is licensed under a
- <a href="http://creativecommons.org/licenses/by/2.5/">
- Creative Commons Attribution 2.5 License
- </a>
- unless otherwise noted.
- Copyright © 2011 Apple Inc. All rights reserved.
- </div>
- </div>
- </div>
- <div id="forge-inner">
- <div id="top-nav">
- <a href="/newticket">New Ticket</a>
-
- <a href="https://trac.macports.org/wiki/Tickets">Tickets</a>
-
- <a href="/wiki">Wiki</a>
-
- <a href="/browser">Browse Source</a>
-
- <a href="/timeline">Timeline</a>
-
- <a href="/roadmap">Roadmap</a>
-
- <a href="/report">Ticket Reports</a>
-
- <a href="/search">Search</a>
- </div>
- <div id="forge-content">
- <div id="banner">
- <div id="header">
- <a id="logo" href="https://trac.macports.org/"><img src="/chrome/common/trac_banner.png" alt="MacPorts" height="73" width="236" /></a>
- </div>
- <form id="search" action="/search" method="get">
- <div>
- <label for="proj-search">Search:</label>
- <input type="text" id="proj-search" name="q" size="18" value="" />
- <input type="submit" value="Search" />
- </div>
- </form>
- <div id="metanav" class="nav">
- </div>
- </div>
- <div id="main">
- <div id="ctxtnav" class="nav">
- <h2>Context Navigation</h2>
- <ul>
- <li class="last first"><a href="/ticket/38850">Back to Ticket #38850</a></li>
- </ul>
- <hr />
- </div>
- <div id="content" class="attachment">
- <h1><a href="/ticket/38850">Ticket #38850</a>: patch-src-osx-cocoa-window.mm.diff</h1>
- <table id="info" summary="Description">
- <tbody>
- <tr>
- <th scope="col">File patch-src-osx-cocoa-window.mm.diff,
- <span title="3285 bytes">3.2 KB</span>
- (added by mk@…, <a class="timeline" href="/timeline?from=2013-08-04T07%3A17%3A09-07%3A00&precision=second" title="2013-08-04T07:17:09-07:00 in Timeline">49 minutes</a> ago)</th>
- </tr>
- <tr>
- <td class="message searchable">
- <p>
-patch from <a class="ext-link" href="http://trac.wxwidgets.org/changeset/74613"><span class="icon"></span>http://trac.wxwidgets.org/changeset/74613</a>
-</p>
-
- </td>
- </tr>
- </tbody>
- </table>
- <div id="preview" class="searchable">
-
- <div class="diff">
- <ul class="entries">
- <li class="entry">
- <h2>
- <a>src/osx/cocoa/window.mm</a>
- </h2>
- <table class="trac-diff inline" summary="Differences" cellspacing="0">
- <colgroup><col class="lineno" /><col class="lineno" /><col class="content" /></colgroup>
- <thead>
- <tr>
- <th title="File src/osx/cocoa/window.mm (revision 74602)">
- </th>
- <th title="File src/osx/cocoa/window.mm (revision 74613)">
- </th>
- <td><em></em> </td>
- </tr>
- </thead>
- <tbody class="unmod">
- <tr>
- <th>109</th><th>109</th><td class="l"><span></span> </td>
- </tr><tr>
- <th>110</th><th>110</th><td class="l"><span>@end // wxNSView</span> </td>
- </tr>
- </tbody><tbody class="add">
- <tr class="first">
- <th> </th><th>111</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>112</th><td class="r"><ins>@interface wxNSView(TextInput) <NSTextInputClient></ins> </td>
- </tr><tr>
- <th> </th><th>113</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>114</th><td class="r"><ins>- (void)insertText:(id)aString replacementRange:(NSRange)replacementRange;</ins> </td>
- </tr><tr>
- <th> </th><th>115</th><td class="r"><ins>- (void)doCommandBySelector:(SEL)aSelector;</ins> </td>
- </tr><tr>
- <th> </th><th>116</th><td class="r"><ins>- (void)setMarkedText:(id)aString selectedRange:(NSRange)selectedRange replacementRange:(NSRange)replacementRange;</ins> </td>
- </tr><tr>
- <th> </th><th>117</th><td class="r"><ins>- (void)unmarkText;</ins> </td>
- </tr><tr>
- <th> </th><th>118</th><td class="r"><ins>- (NSRange)selectedRange;</ins> </td>
- </tr><tr>
- <th> </th><th>119</th><td class="r"><ins>- (NSRange)markedRange;</ins> </td>
- </tr><tr>
- <th> </th><th>120</th><td class="r"><ins>- (BOOL)hasMarkedText;</ins> </td>
- </tr><tr>
- <th> </th><th>121</th><td class="r"><ins>- (NSAttributedString *)attributedSubstringForProposedRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange;</ins> </td>
- </tr><tr>
- <th> </th><th>122</th><td class="r"><ins>- (NSArray*)validAttributesForMarkedText;</ins> </td>
- </tr><tr>
- <th> </th><th>123</th><td class="r"><ins>- (NSRect)firstRectForCharacterRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange;</ins> </td>
- </tr><tr>
- <th> </th><th>124</th><td class="r"><ins>- (NSUInteger)characterIndexForPoint:(NSPoint)aPoint;</ins> </td>
- </tr><tr>
- <th> </th><th>125</th><td class="r"><ins></ins> </td>
- </tr><tr class="last">
- <th> </th><th>126</th><td class="r"><ins>@end</ins> </td>
- </tr>
- </tbody><tbody class="unmod">
- <tr>
- <th>111</th><th>127</th><td class="l"><span></span> </td>
- </tr><tr>
- <th>112</th><th>128</th><td class="l"><span>@interface NSView(PossibleMethods)</span> </td>
- </tr>
- </tbody>
- <tbody class="skipped">
- <tr>
- <th><a href="#L837">…</a></th>
- <th><a href="#L853">…</a></th>
- <td><em></em> </td>
- </tr>
- </tbody>
- <tbody class="unmod">
- <tr>
- <th>837</th><th>853</th><td class="l"><span>@end // wxNSView</span> </td>
- </tr><tr>
- <th>838</th><th>854</th><td class="l"><span></span> </td>
- </tr>
- </tbody><tbody class="add">
- <tr class="first">
- <th> </th><th>855</th><td class="r"><ins>// We need to adopt NSTextInputClient protocol in order to interpretKeyEvents: to work.</ins> </td>
- </tr><tr>
- <th> </th><th>856</th><td class="r"><ins>// Currently, only insertText:(replacementRange:) is</ins> </td>
- </tr><tr>
- <th> </th><th>857</th><td class="r"><ins>// implemented here, and the rest of the methods are stubs.</ins> </td>
- </tr><tr>
- <th> </th><th>858</th><td class="r"><ins>// It is hoped that someday IME-related functionality is implemented in</ins> </td>
- </tr><tr>
- <th> </th><th>859</th><td class="r"><ins>// wxWidgets and the methods of this protocol are fully working.</ins> </td>
- </tr><tr>
- <th> </th><th>860</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>861</th><td class="r"><ins>@implementation wxNSView(TextInput)</ins> </td>
- </tr><tr>
- <th> </th><th>862</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>863</th><td class="r"><ins>void wxOSX_insertText(NSView* self, SEL _cmd, NSString* text);</ins> </td>
- </tr><tr>
- <th> </th><th>864</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>865</th><td class="r"><ins>- (void)insertText:(id)aString replacementRange:(NSRange)replacementRange</ins> </td>
- </tr><tr>
- <th> </th><th>866</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>867</th><td class="r"><ins> wxOSX_insertText(self, @selector(insertText:), aString);</ins> </td>
- </tr><tr>
- <th> </th><th>868</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>869</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>870</th><td class="r"><ins>- (void)doCommandBySelector:(SEL)aSelector</ins> </td>
- </tr><tr>
- <th> </th><th>871</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>872</th><td class="r"><ins> // these are already caught in the keyEvent handler</ins> </td>
- </tr><tr>
- <th> </th><th>873</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>874</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>875</th><td class="r"><ins>- (void)setMarkedText:(id)aString selectedRange:(NSRange)selectedRange replacementRange:(NSRange)replacementRange</ins> </td>
- </tr><tr>
- <th> </th><th>876</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>877</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>878</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>879</th><td class="r"><ins>- (void)unmarkText</ins> </td>
- </tr><tr>
- <th> </th><th>880</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>881</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>882</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>883</th><td class="r"><ins>- (NSRange)selectedRange</ins> </td>
- </tr><tr>
- <th> </th><th>884</th><td class="r"><ins>{ </ins> </td>
- </tr><tr>
- <th> </th><th>885</th><td class="r"><ins> return NSMakeRange(NSNotFound, 0);</ins> </td>
- </tr><tr>
- <th> </th><th>886</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>887</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>888</th><td class="r"><ins>- (NSRange)markedRange</ins> </td>
- </tr><tr>
- <th> </th><th>889</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>890</th><td class="r"><ins> return NSMakeRange(NSNotFound, 0);</ins> </td>
- </tr><tr>
- <th> </th><th>891</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>892</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>893</th><td class="r"><ins>- (BOOL)hasMarkedText</ins> </td>
- </tr><tr>
- <th> </th><th>894</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>895</th><td class="r"><ins> return NO;</ins> </td>
- </tr><tr>
- <th> </th><th>896</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>897</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>898</th><td class="r"><ins>- (NSAttributedString *)attributedSubstringForProposedRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange</ins> </td>
- </tr><tr>
- <th> </th><th>899</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>900</th><td class="r"><ins> return nil;</ins> </td>
- </tr><tr>
- <th> </th><th>901</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>902</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>903</th><td class="r"><ins>- (NSArray*)validAttributesForMarkedText</ins> </td>
- </tr><tr>
- <th> </th><th>904</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>905</th><td class="r"><ins> return nil;</ins> </td>
- </tr><tr>
- <th> </th><th>906</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>907</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>908</th><td class="r"><ins>- (NSRect)firstRectForCharacterRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange</ins> </td>
- </tr><tr>
- <th> </th><th>909</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>910</th><td class="r"><ins> return NSMakeRect(0, 0, 0, 0);</ins> </td>
- </tr><tr>
- <th> </th><th>911</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>912</th><td class="r"><ins>- (NSUInteger)characterIndexForPoint:(NSPoint)aPoint</ins> </td>
- </tr><tr>
- <th> </th><th>913</th><td class="r"><ins>{</ins> </td>
- </tr><tr>
- <th> </th><th>914</th><td class="r"><ins> return NSNotFound;</ins> </td>
- </tr><tr>
- <th> </th><th>915</th><td class="r"><ins>}</ins> </td>
- </tr><tr>
- <th> </th><th>916</th><td class="r"><ins></ins> </td>
- </tr><tr>
- <th> </th><th>917</th><td class="r"><ins>@end // wxNSView(TextInput)</ins> </td>
- </tr><tr>
- <th> </th><th>918</th><td class="r"><ins></ins> </td>
- </tr><tr class="last">
- <th> </th><th>919</th><td class="r"><ins></ins> </td>
- </tr>
- </tbody><tbody class="unmod">
- <tr>
- <th>839</th><th>920</th><td class="l"><span>//</span> </td>
- </tr><tr>
- <th>840</th><th>921</th><td class="l"><span>// event handlers</span> </td>
- </tr>
- </tbody>
- <tbody class="skipped">
- <tr>
- <th><a href="#L2555">…</a></th>
- <th><a href="#L2636">…</a></th>
- <td><em></em> </td>
- </tr>
- </tbody>
- <tbody class="unmod">
- <tr>
- <th>2555</th><th>2636</th><td class="l"><span>bool wxWidgetCocoaImpl::DoHandleCharEvent(NSEvent *event, NSString *text)</span> </td>
- </tr><tr>
- <th>2556</th><th>2637</th><td class="l"><span>{</span> </td>
- </tr>
- </tbody><tbody class="mod">
- <tr class="first">
- <th>2557</th><th> </th><td class="l"><span> wxKeyEvent wxevent(wxEVT_CHAR);</span> </td>
- </tr><tr>
- <th>2558</th><th> </th><td class="l"><span> SetupKeyEvent( wxevent, event, text );</span> </td>
- </tr><tr>
- <th>2559</th><th> </th><td class="l"><span></span> </td>
- </tr><tr>
- <th>2560</th><th> </th><td class="l"><span> return GetWXPeer()->OSXHandleKeyEvent(wxevent);</span> </td>
- </tr>
- <tr>
- <th> </th><th>2638</th><td class="r"><span> bool result = false;</span> </td>
- </tr><tr>
- <th> </th><th>2639</th><td class="r"><span> </span> </td>
- </tr><tr>
- <th> </th><th>2640</th><td class="r"><span> for (NSUInteger i = 0; i < [text length]; ++i)</span> </td>
- </tr><tr>
- <th> </th><th>2641</th><td class="r"><span> {</span> </td>
- </tr><tr>
- <th> </th><th>2642</th><td class="r"><span> wxKeyEvent wxevent(wxEVT_CHAR);</span> </td>
- </tr><tr>
- <th> </th><th>2643</th><td class="r"><span> unichar c = [text characterAtIndex:i];</span> </td>
- </tr><tr>
- <th> </th><th>2644</th><td class="r"><span> SetupKeyEvent( wxevent, event, [NSString stringWithCharacters:&c length:1]);</span> </td>
- </tr><tr>
- <th> </th><th>2645</th><td class="r"><span></span> </td>
- </tr><tr>
- <th> </th><th>2646</th><td class="r"><span> result = GetWXPeer()->OSXHandleKeyEvent(wxevent) || result;</span> </td>
- </tr><tr>
- <th> </th><th>2647</th><td class="r"><span> }</span> </td>
- </tr><tr>
- <th> </th><th>2648</th><td class="r"><span> </span> </td>
- </tr><tr class="last">
- <th> </th><th>2649</th><td class="r"><span> return result;</span> </td>
- </tr>
- </tbody><tbody class="unmod">
- <tr>
- <th>2561</th><th>2650</th><td class="l"><span>}</span> </td>
- </tr><tr>
- <th>2562</th><th>2651</th><td class="l"><span></span> </td>
- </tr>
- </tbody>
- </table>
- </li>
- </ul>
-</div>
-
- </div>
- </div>
- <div id="altlinks">
- <h3>Download in other formats:</h3>
- <ul>
- <li class="last first">
- <a rel="nofollow" href="/raw-attachment/ticket/38850/patch-src-osx-cocoa-window.mm.diff">Original Format</a>
- </li>
- </ul>
- </div>
- </div>
- </div>
- </div>
- </div>
- <script type="text/javascript" src="http://www.macosforge.org/static/js/jquery.js"></script>
- <script type="text/javascript" src="http://www.macosforge.org/static/js/main.js"></script>
- </div>
- </body>
-</html>
\ No newline at end of file
+--- src/osx/cocoa/window.mm (revision 74602)
++++ src/osx/cocoa/window.mm (revision 74613)
+@@ -109,4 +109,20 @@
+
+ @end // wxNSView
++
++ at interface wxNSView(TextInput) <NSTextInputClient>
++
++- (void)insertText:(id)aString replacementRange:(NSRange)replacementRange;
++- (void)doCommandBySelector:(SEL)aSelector;
++- (void)setMarkedText:(id)aString selectedRange:(NSRange)selectedRange replacementRange:(NSRange)replacementRange;
++- (void)unmarkText;
++- (NSRange)selectedRange;
++- (NSRange)markedRange;
++- (BOOL)hasMarkedText;
++- (NSAttributedString *)attributedSubstringForProposedRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange;
++- (NSArray*)validAttributesForMarkedText;
++- (NSRect)firstRectForCharacterRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange;
++- (NSUInteger)characterIndexForPoint:(NSPoint)aPoint;
++
++ at end
+
+ @interface NSView(PossibleMethods)
+@@ -837,4 +853,69 @@
+ @end // wxNSView
+
++// We need to adopt NSTextInputClient protocol in order to interpretKeyEvents: to work.
++// Currently, only insertText:(replacementRange:) is
++// implemented here, and the rest of the methods are stubs.
++// It is hoped that someday IME-related functionality is implemented in
++// wxWidgets and the methods of this protocol are fully working.
++
++ at implementation wxNSView(TextInput)
++
++void wxOSX_insertText(NSView* self, SEL _cmd, NSString* text);
++
++- (void)insertText:(id)aString replacementRange:(NSRange)replacementRange
++{
++ wxOSX_insertText(self, @selector(insertText:), aString);
++}
++
++- (void)doCommandBySelector:(SEL)aSelector
++{
++ // these are already caught in the keyEvent handler
++}
++
++- (void)setMarkedText:(id)aString selectedRange:(NSRange)selectedRange replacementRange:(NSRange)replacementRange
++{
++}
++
++- (void)unmarkText
++{
++}
++
++- (NSRange)selectedRange
++{
++ return NSMakeRange(NSNotFound, 0);
++}
++
++- (NSRange)markedRange
++{
++ return NSMakeRange(NSNotFound, 0);
++}
++
++- (BOOL)hasMarkedText
++{
++ return NO;
++}
++
++- (NSAttributedString *)attributedSubstringForProposedRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange
++{
++ return nil;
++}
++
++- (NSArray*)validAttributesForMarkedText
++{
++ return nil;
++}
++
++- (NSRect)firstRectForCharacterRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange
++{
++ return NSMakeRect(0, 0, 0, 0);
++}
++- (NSUInteger)characterIndexForPoint:(NSPoint)aPoint
++{
++ return NSNotFound;
++}
++
++ at end // wxNSView(TextInput)
++
++
+ //
+ // event handlers
+@@ -2555,8 +2636,16 @@
+ bool wxWidgetCocoaImpl::DoHandleCharEvent(NSEvent *event, NSString *text)
+ {
+- wxKeyEvent wxevent(wxEVT_CHAR);
+- SetupKeyEvent( wxevent, event, text );
+-
+- return GetWXPeer()->OSXHandleKeyEvent(wxevent);
++ bool result = false;
++
++ for (NSUInteger i = 0; i < [text length]; ++i)
++ {
++ wxKeyEvent wxevent(wxEVT_CHAR);
++ unichar c = [text characterAtIndex:i];
++ SetupKeyEvent( wxevent, event, [NSString stringWithCharacters:&c length:1]);
++
++ result = GetWXPeer()->OSXHandleKeyEvent(wxevent) || result;
++ }
++
++ return result;
+ }
+
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20130804/ac18c184/attachment-0001.html>
More information about the macports-changes
mailing list