<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emacs/src/w32dwrite.c, branch scratch/cedet-object-name</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>w32: fail gracefully when using invalid glyphs on DWrite</title>
<updated>2025-03-27T13:01:53+00:00</updated>
<author>
<name>Cecilio Pardo</name>
</author>
<published>2025-03-27T12:26:00+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=33a46ff565296b491e808aa63d1dbaa2d994bbb5'/>
<id>33a46ff565296b491e808aa63d1dbaa2d994bbb5</id>
<content type='text'>
* src/w32dwrite.c (text_extents_internal): Return false instead
of crashing with bad glyph indexes.  (Bug#77196)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/w32dwrite.c (text_extents_internal): Return false instead
of crashing with bad glyph indexes.  (Bug#77196)
</pre>
</div>
</content>
</entry>
<entry>
<title>Update copyright year to 2025</title>
<updated>2025-01-01T07:39:17+00:00</updated>
<author>
<name>Paul Eggert</name>
</author>
<published>2025-01-01T07:39:17+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=4da38c632161867e914b3a13dc760f8019255f94'/>
<id>4da38c632161867e914b3a13dc760f8019255f94</id>
<content type='text'>
Run "TZ=UTC0 admin/update-copyright".
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Run "TZ=UTC0 admin/update-copyright".
</pre>
</div>
</content>
</entry>
<entry>
<title>; Fix typos</title>
<updated>2024-11-21T09:06:19+00:00</updated>
<author>
<name>Stefan Kangas</name>
</author>
<published>2024-11-04T21:27:36+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=7cb77385d38b96377d404a2ab0e778b2dfce5c77'/>
<id>7cb77385d38b96377d404a2ab0e778b2dfce5c77</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix Cygw32 build</title>
<updated>2024-11-12T12:41:01+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2024-11-12T12:41:01+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=b54fa15ffbb959e97ea0b77bfeb9ae412a63b4e8'/>
<id>b54fa15ffbb959e97ea0b77bfeb9ae412a63b4e8</id>
<content type='text'>
* src/pdumper.c (dump_mm_heap_cb_release): Avoid NULL pointer
dereference.
* src/w32dwrite.c (INITGUID) [CYGWIN]: Don't define for Cygwin.
* src/w32menu.c (w32_popup_dialog): Fix Cygw32 build.  (Bug#74312)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/pdumper.c (dump_mm_heap_cb_release): Avoid NULL pointer
dereference.
* src/w32dwrite.c (INITGUID) [CYGWIN]: Don't define for Cygwin.
* src/w32menu.c (w32_popup_dialog): Fix Cygw32 build.  (Bug#74312)
</pre>
</div>
</content>
</entry>
<entry>
<title>; * src/w32dwrite.c (syms_of_w32dwrite): Init 'w32-inhibit-dwrite'.</title>
<updated>2024-10-27T06:43:00+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2024-10-27T06:43:00+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=aaefb67f54513e8375ec8356d09bf2e6f25b9116'/>
<id>aaefb67f54513e8375ec8356d09bf2e6f25b9116</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>; Fix problem with DirectWrite (MS-Windows)</title>
<updated>2024-10-27T06:25:06+00:00</updated>
<author>
<name>Cecilio Pardo</name>
</author>
<published>2024-10-26T15:51:22+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=702d5ec56684b87dbe7c46d35c6926a46a0697e9'/>
<id>702d5ec56684b87dbe7c46d35c6926a46a0697e9</id>
<content type='text'>
Negative lbearings were not handled.

* src/w32dwrite.c (w32_dwrite_draw): Modified to handle negative
lbearing.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Negative lbearings were not handled.

* src/w32dwrite.c (w32_dwrite_draw): Modified to handle negative
lbearing.
</pre>
</div>
</content>
</entry>
<entry>
<title>; Fix coding style of Uniscribe files</title>
<updated>2024-10-26T00:39:24+00:00</updated>
<author>
<name>Po Lu</name>
</author>
<published>2024-10-26T00:39:24+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=574e97575f4331f43fc079b3bfa6d74213bc2559'/>
<id>574e97575f4331f43fc079b3bfa6d74213bc2559</id>
<content type='text'>
* src/w32dwrite.c (EMACS_DWRITE_UNUSED, IDWriteFontFaceVtbl)
(IDWriteFontFace, IDWriteRenderingParamsVtbl)
(IDWriteRenderingParams, IDWriteFontVtbl, IDWriteFont)
(IDWriteBitmapRenderTargetVtbl, IDWriteBitmapRenderTarget)
(IDWriteBitmapRenderTarget1, IDWriteGdiInteropVtbl)
(IDWriteGdiInterop, IDWriteFactoryVtbl, IDWriteFactory)
(IDWriteColorGlyphRunEnumeratorVtbl)
(IDWriteColorGlyphRunEnumerator, IDWriteFactory2Vtbl)
(IDWriteFactory2, get_font_face, text_extents_internal)
(w32_initialize_direct_write, w32_dwrite_draw)
(w32_use_direct_write):

* src/w32font.c (w32font_text_extents, w32font_draw):

* src/w32uniscribe.c (uniscribe_open): Correct coding style.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/w32dwrite.c (EMACS_DWRITE_UNUSED, IDWriteFontFaceVtbl)
(IDWriteFontFace, IDWriteRenderingParamsVtbl)
(IDWriteRenderingParams, IDWriteFontVtbl, IDWriteFont)
(IDWriteBitmapRenderTargetVtbl, IDWriteBitmapRenderTarget)
(IDWriteBitmapRenderTarget1, IDWriteGdiInteropVtbl)
(IDWriteGdiInterop, IDWriteFactoryVtbl, IDWriteFactory)
(IDWriteColorGlyphRunEnumeratorVtbl)
(IDWriteColorGlyphRunEnumerator, IDWriteFactory2Vtbl)
(IDWriteFactory2, get_font_face, text_extents_internal)
(w32_initialize_direct_write, w32_dwrite_draw)
(w32_use_direct_write):

* src/w32font.c (w32font_text_extents, w32font_draw):

* src/w32uniscribe.c (uniscribe_open): Correct coding style.
</pre>
</div>
</content>
</entry>
<entry>
<title>; * src/w32dwrite.c (Fw32_dwrite_reinit): Doc fix.</title>
<updated>2024-10-25T11:47:43+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2024-10-25T11:47:43+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=3d508157e03597b00c46c82d42a60742c01a0250'/>
<id>3d508157e03597b00c46c82d42a60742c01a0250</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>; Minor fixes to last changes</title>
<updated>2024-10-25T11:36:41+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2024-10-25T11:36:41+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=222a5207c4d8fa31103637018ae0a7bdb74dd660'/>
<id>222a5207c4d8fa31103637018ae0a7bdb74dd660</id>
<content type='text'>
* src/w32font.h:
* src/w32font.c:
* src/w32dwrite.c:
* etc/NEWS: Minor fixes of last changes.  (Bug#73730)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/w32font.h:
* src/w32font.c:
* src/w32dwrite.c:
* etc/NEWS: Minor fixes of last changes.  (Bug#73730)
</pre>
</div>
</content>
</entry>
<entry>
<title>Implement drawing text with DirectWrite on MS-Windows.</title>
<updated>2024-10-25T11:34:45+00:00</updated>
<author>
<name>Cecilio Pardo</name>
</author>
<published>2024-10-09T09:40:28+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=edf37e811cafa4092b13969613fa83f6e6d69ab3'/>
<id>edf37e811cafa4092b13969613fa83f6e6d69ab3</id>
<content type='text'>
This adds support for color fonts.
* configure.ac: Add src/w32drite to W32_OBJ.
* src/w32dwrite.c: New file.
(w32-initialize-direct-write): New function, initialize the
DirectWrite library if it is available, and required global
variables.
(w32_use_direct_write): New function, check if DirectWrite
is available and activated by the user.
(w32_dwrite_encode_char): New function, replacement for HarfBuzz's
'encode_char'.
(w32_dwrite_text_extents): New function, replacement for w32font
text_extents.
(w32_dwrite_draw): New function, replacement for w32font draw.
(w32_dwrite_free_cached_face): New function, used in the font
deletion process to also delete DirectWrite data.
(verify_hr): New function, verify COM method results.
(release_com): New function, release a COM object.
(w32-dwrite-available): New function, returns true if DirectWrite
is available.
(w32-dwrite-reinit): New function, reinitialize DirectWrite,
optionally setting some rendering parameters.
* src/w32font.c (w32font_text_extents): If DirectWrite is enabled,
call 'w32_dwrite_text_extents'.
(w32font_draw): If DirectWrite is enabled, call 'w32_dwrite_draw'.
* src/w32uniscribe.c: (w32hb_encode_char): If DirectWrite is enabled,
call 'w32_dwrite_encode_char'.
(syms_of_w32uniscribe_for_pdumper): Initialize DirectWrite.
(uniscribe_close): Free DirectWrite data for the font.

Bug#73730
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds support for color fonts.
* configure.ac: Add src/w32drite to W32_OBJ.
* src/w32dwrite.c: New file.
(w32-initialize-direct-write): New function, initialize the
DirectWrite library if it is available, and required global
variables.
(w32_use_direct_write): New function, check if DirectWrite
is available and activated by the user.
(w32_dwrite_encode_char): New function, replacement for HarfBuzz's
'encode_char'.
(w32_dwrite_text_extents): New function, replacement for w32font
text_extents.
(w32_dwrite_draw): New function, replacement for w32font draw.
(w32_dwrite_free_cached_face): New function, used in the font
deletion process to also delete DirectWrite data.
(verify_hr): New function, verify COM method results.
(release_com): New function, release a COM object.
(w32-dwrite-available): New function, returns true if DirectWrite
is available.
(w32-dwrite-reinit): New function, reinitialize DirectWrite,
optionally setting some rendering parameters.
* src/w32font.c (w32font_text_extents): If DirectWrite is enabled,
call 'w32_dwrite_text_extents'.
(w32font_draw): If DirectWrite is enabled, call 'w32_dwrite_draw'.
* src/w32uniscribe.c: (w32hb_encode_char): If DirectWrite is enabled,
call 'w32_dwrite_encode_char'.
(syms_of_w32uniscribe_for_pdumper): Initialize DirectWrite.
(uniscribe_close): Free DirectWrite data for the font.

Bug#73730
</pre>
</div>
</content>
</entry>
</feed>
