<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emacs, branch scratch/ns/performance</title>
<subtitle>Emacs is the extensible, customizable, self-documenting real-time display editor. 
</subtitle>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/'/>
<entry>
<title>Change pixel format</title>
<updated>2020-12-31T15:38:08+00:00</updated>
<author>
<name>Alan Third</name>
</author>
<published>2020-12-28T10:40:50+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=6312a8e9382105196fdf1edddfc68a678acd673e'/>
<id>6312a8e9382105196fdf1edddfc68a678acd673e</id>
<content type='text'>
* src/nsterm.m ([EmacsSurface getContext]): Use BGRA for the IOSurface
and specify the CGContext explicitly for compatibility with a wider
range of Macs.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/nsterm.m ([EmacsSurface getContext]): Use BGRA for the IOSurface
and specify the CGContext explicitly for compatibility with a wider
range of Macs.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix EmacsSurface definitions</title>
<updated>2020-12-31T15:38:08+00:00</updated>
<author>
<name>Alan Third</name>
</author>
<published>2020-12-21T19:49:04+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=aeb2475816bfdf7e52284fedf693d3f36940652a'/>
<id>aeb2475816bfdf7e52284fedf693d3f36940652a</id>
<content type='text'>
* src/nsterm.h:
* src/nsterm.m ([EmacsSurface initWithSize:ColorSpace:]): Objective C
init methods should init the superclass, and return id.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/nsterm.h:
* src/nsterm.m ([EmacsSurface initWithSize:ColorSpace:]): Objective C
init methods should init the superclass, and return id.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix GNUstep warnings</title>
<updated>2020-12-31T15:38:08+00:00</updated>
<author>
<name>Alan Third</name>
</author>
<published>2020-12-19T20:46:55+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=77a07a2f8d16e4f3fa8e0ae23b4349919226ce8b'/>
<id>77a07a2f8d16e4f3fa8e0ae23b4349919226ce8b</id>
<content type='text'>
* src/nsterm.h: EmacsSurface is only required if NS_DRAW_TO_BUFFER is
defined.
* src/nsterm.m (ns_judge_scroll_bars): Remove unused variable.
* src/nsmenu.m (update_frame_tool_bar):
(ns_update_menubar): Remove unused variables.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/nsterm.h: EmacsSurface is only required if NS_DRAW_TO_BUFFER is
defined.
* src/nsterm.m (ns_judge_scroll_bars): Remove unused variable.
* src/nsmenu.m (update_frame_tool_bar):
(ns_update_menubar): Remove unused variables.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix problems with reusing IOSurfaces</title>
<updated>2020-12-31T15:38:07+00:00</updated>
<author>
<name>Alan Third</name>
</author>
<published>2020-12-19T01:19:32+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=690bb687f6f2026e42b878be5fe243c4562e2427'/>
<id>690bb687f6f2026e42b878be5fe243c4562e2427</id>
<content type='text'>
* src/nsterm.h: New EmacsSurface class and update EmacsView
definitions.
* src/nsterm.m ([EmacsView dealloc]):
([EmacsView viewDidResize:]): Handle new EmacsSurface class.
([EmacsView initFrameFromEmacs:]): Remove reference to old method.
([EmacsView createDrawingBuffer]): Remove method.
([EmacsView focusOnDrawingBuffer]):
([EmacsView unfocusDrawingBuffer]):
([EmacsView windowDidChangeBackingProperties:]): Use new EmacsSurface
class.
([EmacsView copyRect:to:]): Get information from the context instead
of direct from the IOSurface.
([EmacsView updateLayer]): Use new EmacsSurface class.
([EmacsSurface initWithSize:ColorSpace:]):
([EmacsSurface dealloc]):
([EmacsSurface getSize]):
([EmacsSurface getContext]):
([EmacsSurface releaseContext]):
([EmacsSurface getSurface]):
([EmacsSurface copyContentsTo:]): New class and methods.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/nsterm.h: New EmacsSurface class and update EmacsView
definitions.
* src/nsterm.m ([EmacsView dealloc]):
([EmacsView viewDidResize:]): Handle new EmacsSurface class.
([EmacsView initFrameFromEmacs:]): Remove reference to old method.
([EmacsView createDrawingBuffer]): Remove method.
([EmacsView focusOnDrawingBuffer]):
([EmacsView unfocusDrawingBuffer]):
([EmacsView windowDidChangeBackingProperties:]): Use new EmacsSurface
class.
([EmacsView copyRect:to:]): Get information from the context instead
of direct from the IOSurface.
([EmacsView updateLayer]): Use new EmacsSurface class.
([EmacsSurface initWithSize:ColorSpace:]):
([EmacsSurface dealloc]):
([EmacsSurface getSize]):
([EmacsSurface getContext]):
([EmacsSurface releaseContext]):
([EmacsSurface getSurface]):
([EmacsSurface copyContentsTo:]): New class and methods.
</pre>
</div>
</content>
</entry>
<entry>
<title>Improve performance of scrolling on NS</title>
<updated>2020-12-31T15:38:07+00:00</updated>
<author>
<name>Alan Third</name>
</author>
<published>2020-12-17T14:18:56+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=ee74dc593b02f4fe8ee234c9ce80b389d682089c'/>
<id>ee74dc593b02f4fe8ee234c9ce80b389d682089c</id>
<content type='text'>
* src/nsterm.m ([EmacsView copyRect:to:]): Use memcpy to copy bits
around instead of using NS image functions.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/nsterm.m ([EmacsView copyRect:to:]): Use memcpy to copy bits
around instead of using NS image functions.
</pre>
</div>
</content>
</entry>
<entry>
<title>Improve drawing performance on macOS</title>
<updated>2020-12-31T15:38:07+00:00</updated>
<author>
<name>Alan Third</name>
</author>
<published>2020-12-16T21:12:04+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=9be0f082fb6ba81abd7a7cf0c926686df78c8ae4'/>
<id>9be0f082fb6ba81abd7a7cf0c926686df78c8ae4</id>
<content type='text'>
* configure.ac: Require IOSurface framework.
* src/nsterm.h: Add new definitions.
* src/nsterm.m (ns_update_end):
(ns_unfocus): Use new unfocusDrawingBuffer method.
(ns_draw_window_cursor): Move ns_focus to before we set colors.
([EmacsView dealloc]): Release the new IOSurface.
([EmacsView createDrawingBuffer]): Use a new IOSurface to draw to
and point a CGBitmapContext to it.
([EmacsView focusOnDrawingBuffer]): Lock the IOSurface for drawing.
([EmacsView unfocusDrawingBuffer]): New function.
([EmacsView updateLayer]): Use the IOSurface.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* configure.ac: Require IOSurface framework.
* src/nsterm.h: Add new definitions.
* src/nsterm.m (ns_update_end):
(ns_unfocus): Use new unfocusDrawingBuffer method.
(ns_draw_window_cursor): Move ns_focus to before we set colors.
([EmacsView dealloc]): Release the new IOSurface.
([EmacsView createDrawingBuffer]): Use a new IOSurface to draw to
and point a CGBitmapContext to it.
([EmacsView focusOnDrawingBuffer]): Lock the IOSurface for drawing.
([EmacsView unfocusDrawingBuffer]): New function.
([EmacsView updateLayer]): Use the IOSurface.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix process-tests on MS-Windows</title>
<updated>2020-12-31T14:50:19+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2020-12-31T14:50:19+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=03608312aee9990fb856ea5f865e3e918050ad21'/>
<id>03608312aee9990fb856ea5f865e3e918050ad21</id>
<content type='text'>
* test/src/process-tests.el (process-tests--fd-setsize-test): On
MS-Windows start the pipe processes in the "stopped" condition.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* test/src/process-tests.el (process-tests--fd-setsize-test): On
MS-Windows start the pipe processes in the "stopped" condition.
</pre>
</div>
</content>
</entry>
<entry>
<title>Must explicitly create unpropertized strings in mode-line</title>
<updated>2020-12-31T14:03:53+00:00</updated>
<author>
<name>João Távora</name>
</author>
<published>2020-12-31T13:40:09+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=1b449af5a1c0585da5b1d30c17a1d4b2d8954ddf'/>
<id>1b449af5a1c0585da5b1d30c17a1d4b2d8954ddf</id>
<content type='text'>
Otherwise, an innocent string like " " will mysteriously
pickup properties from some other minor mode.

Making this a separate commit in hopes of raising attention to this
possible bug.

* lisp/progmodes/flymake.el (flymake--mode-line-counter): Must
explicily create a new string unpropertized string
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Otherwise, an innocent string like " " will mysteriously
pickup properties from some other minor mode.

Making this a separate commit in hopes of raising attention to this
possible bug.

* lisp/progmodes/flymake.el (flymake--mode-line-counter): Must
explicily create a new string unpropertized string
</pre>
</div>
</content>
</entry>
<entry>
<title>Make Flymake mode-line indicator customizable (bug#33740)</title>
<updated>2020-12-31T14:03:53+00:00</updated>
<author>
<name>João Távora</name>
</author>
<published>2020-12-31T13:14:26+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=2e6fbb05b6c17a1481fd6b73491cfa9c66c0c84f'/>
<id>2e6fbb05b6c17a1481fd6b73491cfa9c66c0c84f</id>
<content type='text'>
* lisp/progmodes/flymake.el (flymake-mode): Use
flymake-mode-line-format.
(flymake--mode-line-format): Remove.
(flymake-mode-line-counter-format, flymake-mode-line-format): New
defcustom.
(flymake-mode-line-title, flymake-mode-line-exception)
(flymake-mode-line-counters, flymake-error-counter)
(flymake-warning-counter, flymake-note-counter): New variables.
(flymake--mode-line-title, flymake--mode-line-exception)
(flymake--mode-line-counters, flymake--mode-line-counter): New
helpers.

* doc/misc/flymake.texi (Customizable variables): Mention
flymake-mode-line-format and flymake-mode-line-counter-format

* etc/NEWS: Mention Flymake's customizable mode-line.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/progmodes/flymake.el (flymake-mode): Use
flymake-mode-line-format.
(flymake--mode-line-format): Remove.
(flymake-mode-line-counter-format, flymake-mode-line-format): New
defcustom.
(flymake-mode-line-title, flymake-mode-line-exception)
(flymake-mode-line-counters, flymake-error-counter)
(flymake-warning-counter, flymake-note-counter): New variables.
(flymake--mode-line-title, flymake--mode-line-exception)
(flymake--mode-line-counters, flymake--mode-line-counter): New
helpers.

* doc/misc/flymake.texi (Customizable variables): Mention
flymake-mode-line-format and flymake-mode-line-counter-format

* etc/NEWS: Mention Flymake's customizable mode-line.
</pre>
</div>
</content>
</entry>
<entry>
<title>Protect elisp-flymake-checkdoc against boundless diagnostics</title>
<updated>2020-12-31T14:03:53+00:00</updated>
<author>
<name>João Távora</name>
</author>
<published>2020-12-31T13:24:32+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=f0d2b92f8b7377678231bec502c0f05b26b3a58e'/>
<id>f0d2b92f8b7377678231bec502c0f05b26b3a58e</id>
<content type='text'>
These would be the kind of "This file needs a ;;Code section" and
such.

* lisp/progmodes/elisp-mode.el (elisp-flymake-checkdoc): Resist
checkdoc diagnostics with no end position.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
These would be the kind of "This file needs a ;;Code section" and
such.

* lisp/progmodes/elisp-mode.el (elisp-flymake-checkdoc): Resist
checkdoc diagnostics with no end position.
</pre>
</div>
</content>
</entry>
</feed>
