Dmitry Timoshkov
4328e51b1a
Fixed some dll separation issues.
2001-05-22 19:18:06 +00:00
Francois Gouget
ee285b7ac8
Remove unnecessary single quoting of debugstr_xxx strings.
2001-05-11 20:03:40 +00:00
Francois Gouget
e76218dd61
Add '\n' at the end of traces.
2001-05-09 17:31:31 +00:00
Marcus Meissner
67f0be15c5
Implemented GetCharABCWidths with GetCharWidth.
2001-04-23 18:11:58 +00:00
Marcus Meissner
a0f9e71875
Extracted MEMCHECK into an extra function to avoid a gcc-2.95.2
...
compiler bug.
2001-04-23 18:11:41 +00:00
Andreas Mohr
f32f918123
Spelling fixes.
2001-04-20 18:36:05 +00:00
Andreas Mohr
92205aaf98
Take a stab at implementing SetSolidBrush16.
2001-04-20 18:29:45 +00:00
Dmitry Timoshkov
96cda94483
Add NULL check for lpnFit in GetTextExtentExPointW.
2001-04-16 19:33:51 +00:00
Dmitry Timoshkov
270bc587d8
Move implementation of CreateDC16 to CreateDCA.
2001-04-16 18:56:45 +00:00
Gavriel State
035d454d8d
Allocate bitmap objects in the large heap area.
2001-04-16 18:56:27 +00:00
Francois Gouget
4f44845da3
GetDeviceCaps: make sure the devCaps field is not NULL before
...
dereferencing it.
2001-04-09 18:34:10 +00:00
Huw D M Davies
26ee2ca445
Fix member names in NEWTEXTMETRICEX structs.
2001-04-04 00:09:53 +00:00
Alexandre Julliard
9515336378
Small dll separation fixes.
2001-03-23 19:13:23 +00:00
Ove Kaaven
27398d4966
Implemented Get/SetDeviceGammaRamp.
2001-03-20 01:55:18 +00:00
Huw D M Davies
39f54283fc
Moved GetTextMetrics to unicode.
2001-03-16 16:43:14 +00:00
Huw D M Davies
916a1a6c72
Fix typo in OUTLINETEXTMETRIC definition.
2001-03-13 23:31:40 +00:00
Francois Gouget
282f7270c1
Small 'typos in comments' fixes.
2001-02-28 05:31:02 +00:00
Alexandre Julliard
ea2a9a8974
Removed a few Callout functions by doing a GetProcAddress at the time
...
we actually need the function.
2001-02-20 00:55:17 +00:00
Dmitry Timoshkov
651332ee84
Better implementation of EMF record EMR_EXTSELECTCLIPRGN.
2001-02-20 00:48:13 +00:00
Patrik Stridvall
d0a41774a3
Documentation ordinal fixes.
2001-02-14 23:11:17 +00:00
Huw D M Davies
2aa85eed18
Change FONTOBJ to use LOGFONTW rather than LOGFONT16.
...
Updated parameters of DEVICEFONTENUMPROC.
2001-02-14 22:56:38 +00:00
James Abbatiello
c559f3fc69
In CreateDIBSection, the offset into the file mapping does not have to
...
be a multiple of the memory allocation granularity.
2001-02-12 19:40:28 +00:00
Dmitry Timoshkov
c5276fd37f
Implement playing of EMR_BITBLT, EMR_STRETCHBLT, EMR_MASKBLT,
...
EMR_PLGBLT, EMR_SETDIBITSTODEVICE, EMR_POLYTEXTOUTA, EMR_POLYTEXTOUTW,
EMR_FILLRGN, EMR_FRAMERGN, EMR_INVERTRGN, EMR_PAINTRGN enhanced
metafile record types according to specs.
2001-02-12 19:34:07 +00:00
Huw D M Davies
4c2a14daff
Remove unused outXform.
2001-02-12 18:09:07 +00:00
Huw D M Davies
4f5838fbb8
Fix EMF positioning when rclFrame has a non-zero origin.
2001-02-12 03:36:36 +00:00
Dmitry Timoshkov
c2b32a73c9
Add support for EMR_EXTTEXTOUTA and EMR_CREATEMONOBRUSH enhanced
...
metafile records. Better implementation of EMR_STRETCHDIBITS and
EMR_EXTTEXTOUTW.
2001-02-12 01:19:23 +00:00
Eric Kohl
9977e53eb4
Disabled setting of window origin from an EMF.
2001-01-29 00:31:31 +00:00
James Juran
f4d5fefb0a
Add <string.h> to files that needed it.
2001-01-26 20:43:40 +00:00
Eric Kohl
0711df6217
Disabled setting of viewport origin from an EMF.
2001-01-25 21:46:52 +00:00
Eric Kohl
d40ef6bfe4
Several fixes for playing enhanced metafiles in a given rectangle.
2001-01-24 19:38:38 +00:00
Andreas Mohr
c9ec884645
Documentation updates.
2001-01-24 19:37:13 +00:00
Francois Gouget
05fc3cdf9a
Typo fixes in comments.
2001-01-22 02:22:26 +00:00
Alexandre Julliard
a41b2cfdd0
Moved tweak support to USER dll. Removed tweak.h and cache.h.
2001-01-15 20:12:55 +00:00
Joerg Mayer
4d75640d79
Fixed some signed/unsigned warnings.
2001-01-10 22:45:33 +00:00
François Gouget
da2b6a9f26
Fixed some HFILE vs. HANDLE mismatches.
...
If not used the last parameter of CreateFile must be 0, not -1.
2001-01-06 01:29:18 +00:00
Marcus Meissner
46384145ed
CreateFontIndirect() can get NULL pointers.
2000-12-29 19:40:43 +00:00
Alexandre Julliard
5801723b50
Replaced WIN16_GlobalLock16 by "official" function K32WOWGlobalLock16.
2000-12-22 01:09:26 +00:00
Eric Kohl
02919df4c4
Use handle to palette instead of index for EMR_SELECTPALETTE.
...
Implemented simple case for EMR_EXTSELECTCLIPRGN.
2000-12-21 20:16:56 +00:00
Alexandre Julliard
db0747d095
Removed some unnecessary includes.
...
Got rid of ldt.h.
2000-12-13 20:23:41 +00:00
Alexandre Julliard
982a223f36
Replaced PTR_SEG_TO_LIN macro by exported MapSL function.
...
Fixed a few ptr/segptr mismatches.
Moved CONV_RECT/POINT macros to wingdi16.h.
2000-12-13 20:20:09 +00:00
Alexandre Julliard
f6168db690
Fixed some warnings.
2000-12-13 20:03:53 +00:00
Francois Gouget
519346a47e
Fixed miscellaneous typos, syntactic and grammatical errors.
2000-12-02 20:18:08 +00:00
Patrik Stridvall
2b3aa616e8
Added/modified documentation for function arguments.
2000-12-01 23:58:28 +00:00
Brian Teague
161bc83164
Add a stub for the CAPS1 capability in GetDeviceCaps.
...
Define the CAPS1 bit flags in wingdi.h
Make various calls to GetDeviceCaps in DLLS use #defined values.
2000-11-29 20:02:46 +00:00
Lionel Ulmer
5687823cbb
Fixed the size of the large_handles array.
2000-11-29 17:42:20 +00:00
Alexandre Julliard
24a62ab9b0
Got rid of the Wine internal lstrcpy* functions and of winestring.h.
2000-11-28 22:40:56 +00:00
Dimitrie O. Paun
529da54394
Require {DECLARE,DEFAULT}_DEBUG_CHANNEL statements to end in a ;
2000-11-27 23:54:25 +00:00
Ove Kaaven
a32ddc0f8d
Implemented Get/SetDIBColorTable.
2000-11-25 21:42:00 +00:00
Alexandre Julliard
ab687979fd
Moved standard syslevel APIs declaration to winbase.h.
...
Use exported syslevel function wherever possible.
Moved SEGPTR declaration to windef16.h.
2000-11-15 23:41:46 +00:00
Alexandre Julliard
914406f854
Moved LDT handling to libwine.so. Changed the interface to use the
...
exported LDT_ENTRY structure.
2000-11-14 01:54:49 +00:00
Alexandre Julliard
4e951ea25b
Check all Callouts function pointers for NULL before using them.
...
Don't load USER dll if not needed by the application.
2000-11-08 22:47:53 +00:00
Alexandre Julliard
2239abb9f9
Allocate DC objects on the process heap, and removed WIN_DC_INFO
...
structure (based on a patch by Ken Coleman).
2000-11-05 02:05:07 +00:00
Andreas Mohr
826de2bbcc
Use GDISelectPalette16 instead of SelectPalette and
...
GDIRealizePalette16 instead of RealizePalette in order to get rid of
possible deadlocks.
2000-11-01 21:35:00 +00:00
Alexandre Julliard
908464d448
Authors: Andreas Mohr <amohr@codeweavers.com>, Dimitrie O. Paun <dimi@cs.toronto.edu>, Patrik Stridvall <ps@leissner.se>
...
Various warning fixes.
2000-11-01 03:11:12 +00:00
Francois Gouget
b8d450f99a
Allow pens with styles greater than PS_INSIDEFRAME to be created with
...
CreatePenIndirect and ExtCreatePen.
2000-10-31 02:03:56 +00:00
Francois Gouget
78767e6dd3
Set the thickness of stock pens to 0 so that they are not scaled.
2000-10-31 01:36:09 +00:00
Alexandre Julliard
4c18636d4e
Use GetStockObject() instead of the magic STOCK_* handles.
2000-10-29 01:22:15 +00:00
Aviad Pineles
bbdb9dbba6
Avoid infinite loop in CreateRoundRectRgn().
2000-10-25 21:20:25 +00:00
Patrik Stridvall
f87b96e711
- Explicitly initialize structures.
...
- Fixed strange code probably caused by a merge conflict.
2000-10-24 02:20:31 +00:00
Dmitry Timoshkov
ff59c33d49
Make EnumEnhMetaFile work.
2000-10-24 01:37:49 +00:00
Ulrich Weigand
409eb44eb0
Fixed painting problems in non-MM_TEXT modes.
2000-10-23 00:35:28 +00:00
Marcus Meissner
97827ead5b
Stubbed GetDeviceGammaRamp.
2000-10-13 20:22:59 +00:00
Marcus Meissner
bcbb6ec92b
Return values are reversed in failure/rgdata == NULL case in
...
GetRegionData (was merge error by me).
2000-10-12 20:39:31 +00:00
Andreas Mohr
ea8795b99c
GDISelectPalette16 checked GetObjectType() return value for
...
PALETTE_MAGIC instead of OBJ_PAL.
2000-09-29 01:03:57 +00:00
Alexandre Julliard
15bfcd0398
Moved $(MODULE).o rule out of Make.rules into the individual
...
Makefiles.
2000-09-29 00:28:25 +00:00
Sergei Ivanov
3b216de5cd
Fixed return values of GetRegionData.
2000-09-29 00:25:18 +00:00
Marcus Meissner
13de9b3579
WORD is unsigned, so we need to transalte 0xffff into -1.
2000-09-26 22:45:05 +00:00
Gerald Pfeifer
1b490b42bf
Fixed format strings.
2000-09-24 03:05:11 +00:00
Alexandre Julliard
ab86a9e563
Henning Hoffmann
...
Avoid deadlocks in EnumMetaFile.
2000-09-19 02:37:48 +00:00
Alexandre Julliard
3993216776
Moved Select/RealizePalette implementation to USER and use
...
pfnSelect/RealizePalette function pointers in GDI.
Make sure the palette handle is valid in GDISelectPalette16 (thanks to
Uwe Bonnes).
2000-09-16 20:57:39 +00:00
Andreas Mohr
007fb24088
Added support for non-deletable system brushes and pens created by
...
USER.
2000-09-16 20:53:51 +00:00
Eric Pouech
26501596da
Fixed fallback code for StretchBlt on RLE DIBs with gaps.
2000-09-10 03:13:41 +00:00
Gerard Patel
feb87374ba
Make GetDeviceCaps16 (hdc, NUMCOLORS) not return -1 for 16 bits programs.
2000-09-07 18:37:52 +00:00
Gerard Patel
5faa5d74c3
Restored the hPseudoBitmap hack for programs deleting the 1x1 bitmap
...
in memory DCs.
2000-08-25 21:54:23 +00:00
Alexandre Julliard
2ad1a94d28
Backed out font codepage change.
2000-08-25 21:35:11 +00:00
Andreas Mohr
024e881230
GetObjectA: unlock the object again even in case of failure.
2000-08-25 21:30:34 +00:00
Hidenori Takeshima
7901c0b505
Handle the codepage of fonts if supported by the graphics driver.
2000-08-20 20:08:35 +00:00
Alexandre Julliard
9bfb173c22
Fixed GDI locking in GetDeviceCaps.
2000-08-20 18:49:08 +00:00
Huw D M Davies
c7acd78070
Implemented playback of EMR_POLYBEZIER{TO}16, EMR_POLYLINE16 and
...
EMR_POLYPOLYLINE.
2000-08-20 03:40:04 +00:00
Alexandre Julliard
2a2321bbca
Authors: Alexandre Julliard <julliard@codeweavers.com> (for Corel), Albert den Haan <albertd@corel.com>
...
Added syslevel locking for GDI operations.
Propagate the changes through the graphics code.
2000-08-19 21:38:55 +00:00
Alexandre Julliard
c7e7df8b17
Replaced all lstr* calls from inside Wine code by their str* equivalent.
2000-08-14 14:41:19 +00:00
Alexandre Julliard
5ab9d860f2
Removed some unnecessary #includes and dll dependencies.
2000-08-09 22:35:05 +00:00
Alexandre Julliard
4fef2f1917
Removed obsolete SHMDATA parameter in GLOBAL_CreateBlock.
2000-08-09 22:27:11 +00:00
Alexandre Julliard
cb10fdab99
Replaced lstrlen/lstrcmp by libc equivalents everywhere we don't need
...
to trap exceptions.
2000-08-06 02:41:16 +00:00
Alexandre Julliard
93652e1a68
Moved a bunch of functions out of libwine/kernel/gdi into USER.
2000-08-04 04:21:02 +00:00
Alexandre Julliard
b0efe28f6c
Removed a few dependencies on GDI internals from USER dll.
2000-08-04 04:18:04 +00:00
Alexandre Julliard
15467bfb1f
Moved MulDiv() and VGA routines out of GDI.
2000-08-01 22:03:18 +00:00
Phillip Ezolt
3c41fabc6a
Fixed CreateDC to work properly when it is called with a device.
2000-08-01 02:15:34 +00:00
Alexandre Julliard
946a4448af
Cleaned up a few USER dependencies.
2000-07-30 13:50:27 +00:00
Alexandre Julliard
58d5a0a786
Removed some unnecessary inclusions of wingdi.h and winuser.h
2000-07-29 21:58:17 +00:00
Stephane Lussier
23259ce5c9
In CreateDIBSection function, if hdc is NULL it now uses the desktop DC
...
instead of failing.
2000-07-11 22:04:44 +00:00
Gerard Patel
5131f21fb2
hookThunk was not initialized in GetDcState.
2000-06-12 21:52:58 +00:00
James Abbatiello
355c523624
Don't print uiLengthDrawn in the FIXME in DrawTextExA. Its an output
...
variable, not an input variable.
2000-06-11 19:58:49 +00:00
Alexandre Julliard
a660c7903f
Moved DIB_FixColorsToLoadflags to cursoricon.c.
2000-06-03 20:45:20 +00:00
Patrik Stridvall
e4174d5d57
GetRelAbs for some reason takes 2 parameters, even though the second
...
one is ignored at least on Windows NT 3.51 according to Marcus Meissner.
2000-05-18 00:51:52 +00:00
Alexandre Julliard
6725dc61eb
Fixed DrawTextW length handling.
2000-05-03 17:43:42 +00:00
Dimitrie O. Paun
4d48dd3048
Removed HEAP_xalloc.
2000-04-30 12:22:18 +00:00
Ove Kaaven
8b9f33851a
Added DIB_CreateDIBSection with extra parameter ovr_pitch, added
...
ovr_pitch to pCreateDIBSection in DC_FUNCS. If ovr_pitch is nonzero,
it is a pitch override (specifies bytes per line), and tells to treat
the offset parameter as an already-mapped virtual memory address (if
the section parameter is zero). Fixed a DIB status init bug in
creating DIB sections from file mappings (if created from mapping, the
DIB is *not* really InSync).
2000-04-29 16:47:07 +00:00
Huw D M Davies
f46e1d8a51
Fix return value for OffsetRgn if x and y are 0.
2000-04-18 11:54:29 +00:00
Huw D M Davies
c9315fe820
Tidy up of PlayEnhMetaFileRecord - fixes PolyPoly* functions.
2000-04-18 11:52:58 +00:00
Huw D M Davies
2cf4ebc1aa
Fixes and cleans up some of the GetEnhMetaFile* functions.
...
Fixes scaling of EMFs in playback. Will probably be right
when World Transforms work properly...
2000-04-13 15:57:34 +00:00
Patrik Stridvall
54fe8380a1
Fixed some issues reported by winapi_check.
2000-04-06 20:21:16 +00:00
Junichi Kuchinishi
34b7b3f74f
Added conversion from DBCS lpDx to WCHAR lpDx.
2000-04-06 20:12:16 +00:00
Huw D M Davies
280aeb9689
Delete objects after use in EnumEnhMetaFile.
...
Make PlayEnhMetaFile call EnumEnhMetaFile.
Move EnumEnhMetaFile prototype to wingdi.h.
2000-03-30 20:22:41 +00:00
Patrik Stridvall
2d6457c11a
Added/fixed some documentation reported by winapi_check.
2000-03-28 20:22:59 +00:00
Alexandre Julliard
a7116b0559
Fixed memory allocations.
2000-03-28 20:02:37 +00:00
Alexandre Julliard
a08e2cf19f
Merged DDBitmap and physBitmap into the generic bitmap structure
...
(suggested by Andrew Lewycky).
2000-03-28 13:37:50 +00:00
Hidenori Takeshima
e2905ea478
Fixes for i18n.
2000-03-26 14:43:22 +00:00
Francois Gouget
6d77d3a1df
Use min/max instead of MIN/MAX.
2000-03-25 21:44:35 +00:00
Alexandre Julliard
b52aed4e10
Moved LoadImage and related functions to cursoricon.c.
2000-03-24 21:40:30 +00:00
Alexandre Julliard
d6c0d8642c
Moved gdi/user thunking functions into their respective dlls.
...
Moved keyboard.spec into user dll.
2000-03-24 21:38:30 +00:00
Alexandre Julliard
28c3a1baf3
Moved graphics initialisation to the x11drv/ttydrv dll init code.
...
Merged event, keyboard and mouse drivers into USER driver.
2000-03-20 18:21:19 +00:00
Alexandre Julliard
aafd54dab9
Moved font resource functions out of the X11 driver.
2000-03-19 21:20:54 +00:00
Alexandre Julliard
07e4213642
Added GetDCOrgEx in graphics device interface and removed X11 code
...
from dc.c.
2000-03-19 21:19:21 +00:00
Dimitrie O. Paun
9ad9636725
Removed most calls to xmalloc/xrealloc.
2000-03-19 14:29:50 +00:00
Alexandre Julliard
1dac57f05f
Created separate dlls for user,gdi,ttydrv,x11drv.
...
Fixed Winelib argc handling (thanks to Eric Pouech).
2000-03-19 12:08:09 +00:00
Alexandre Julliard
62f824f7cb
Avoid calling the *Rect USER functions from inside GDI.
...
Moved a few USER functions to a more appropriate location.
2000-03-18 22:12:33 +00:00
Rein Klazes
ad5d10f223
Correct rounding of the result in MulDiv16().
2000-03-12 21:12:38 +00:00
Alexandre Julliard
09f8a751e8
Lilia Roumiantseva
...
cbCountSizeOfEnhMetafile callback function instead of increasing a
contents of the pointer to the size increased the pointer itself.
2000-03-04 19:18:23 +00:00
Serge Ivanov
15f86464c0
CURSORICON_IconToCursor: inconsistent Lock/Unlock
2000-03-04 19:07:08 +00:00
Patrik Stridvall
0ee98cc39f
Fixed ANSI C violations.
2000-02-26 13:17:55 +00:00
Juergen Schmied
44016841cf
Fixed allocation of 16x16 icons.
2000-02-25 20:52:01 +00:00
Serge Ivanov
ed5ac5f60b
Not all region functions updated 'type' field to reflect current
...
region state.
2000-02-25 20:42:11 +00:00
Alexandre Julliard
90476d6b4a
Moved SystemHeap allocations to the process heap.
2000-02-16 22:47:24 +00:00
Matthew Cline
20512fd854
GetObjectA() now rejects GDI handles which are invalid.
2000-02-13 16:00:17 +00:00
Alexandre Julliard
fc296da4e2
Removed extra includes from ole.h and wingdi.h.
2000-02-10 19:39:48 +00:00
Jeremy White
d3e22d9d55
Removed #include of wingdi.h and windef.h from winuser.h (and resolved
...
the resulting compilation failures).
2000-02-10 19:03:02 +00:00
Marcus Meissner
382354e687
GetDeviceCaps: spot yet unsupported accesses to the DeviceCaps struct.
2000-01-30 22:19:08 +00:00
Alexandre Julliard
0dd3655fd0
Removed debugstr.h.
2000-01-29 19:49:58 +00:00
Marcus Meissner
718b0e4059
Corrected arguments in DIB_DeleteDIBSection.
2000-01-23 02:18:52 +00:00
Peter Hunnisett
f2b8492285
- Added some missing EMR record types and updated and fixed others
...
- Added stubs and headers for CreateColorSpace,DeleteColorSpace and SetColorSpace
- Added header for SetICMMode
- Added ability to play more enhanced metafile records
2000-01-15 22:17:49 +00:00
Gerard Patel
82f37be914
Removed DeleteObject call left over from previous patch.
2000-01-15 22:11:21 +00:00
Gerard Patel
d1795f674c
Avoid deleting of the default 1x1 bitmap for memory DCs.
2000-01-09 20:52:53 +00:00
Huw D M Davies
c553924ddd
Move DCFuncs ExtTextOut and GetTextExtentPoint to Unicode.
...
Map a few Unicode chars to the first 0xff in psdrv.
Don't expect x11drv to display Unicode chars yet.
1999-12-26 00:47:03 +00:00
Peter Hunnisett
27548eeb4a
Added support for playing more record types (still more to come).
1999-12-25 22:58:59 +00:00
Huw D M Davies
7c57a72c57
PlayMetaFile and EnumMetaFile should work if the hdc is a
...
(enh)metafile DC.
1999-12-20 03:56:09 +00:00
Eric Pouech
a35e345c04
Allows DrawText(16|A|W) to get a NULL string as parameter.
1999-12-12 19:38:17 +00:00
Peter Hunnisett
0cdc4d9307
- Implemented GetEnhMetaFilePaletteEntries
...
- Added fixme stubs for SetMetaRgn and GetMetaRgn
- Added support for playing several enhanced metafile records
- Added beginnings of implementation for playing the rest of the
enhanced metafile records
1999-12-11 23:18:10 +00:00
Dimitrie O. Paun
dd03cc19fd
Make use of the DEFAULT_DEBUG_CHANNEL where appropriate.
...
Use the default version of FIXME, ERR, WARN, TRACE for the default
channel.
1999-12-08 03:56:23 +00:00
Peter Hunnisett
c821a75b9c
- Added stub for conversion from meta to enhance meta files.
...
- Implemented GetEnhMetaFileBits for enhanced meta files.
1999-12-04 03:56:53 +00:00
Ulrich Weigand
d1682aab05
Removed some unaligned accesses.
1999-11-21 02:21:17 +00:00
Huw D M Davies
cdf191a205
Stub for GetFontData16.
1999-11-21 02:01:41 +00:00
Huw D M Davies
f64e0d7e37
Add stubs for Get/SetLayout().
1999-11-21 00:49:50 +00:00
Lionel Ulmer
acc7467c03
Added the possibility to have mouse movements reported relative to
...
Wine's mouse driver.
1999-11-07 21:25:57 +00:00
Ian Schmidt
e04b3e9a02
Removed unnecessary USER call from GetFontMetrics. Fixes native USER.
1999-11-04 01:45:53 +00:00
Francis Beaudet
12668f5e2f
Return correct height and width for stock fonts in GetObject.
1999-10-31 17:32:26 +00:00
Patrik Stridvall
3a9c476a03
Fixed documentation.
1999-10-31 02:07:05 +00:00
Patrik Stridvall
96336324cf
- Added missing configuration #if:s and #includes:s.
...
- Minor configuration related changes.
1999-10-24 22:13:47 +00:00
Patrik Stridvall
900290aa9f
Added Win16 variants of existing Win32 functions.
1999-10-24 21:32:43 +00:00
Matthew J. Francis
ed744e787c
Fixed top-down DIB handling in StretchDIBits32().
1999-10-24 17:28:23 +00:00