Commit Graph

718 Commits

Author SHA1 Message Date
Sotaro Ikeda
ecd0fc423c Backed out changeset 29d01ad10d0b (bug 1152135) 2015-04-13 12:28:06 -07:00
Sotaro Ikeda
42ad3c4bc5 Bug 1152135 - Split EGLSurface buffer swap and HWC buffer swap r=mwu,nical,jgilbert 2015-04-12 11:23:46 -07:00
Michael Vines
d57072e693 Bug 1152361 - Ensure outbufAcquireFenceFd is initialized during boot animation. r=mwu 2015-04-08 22:17:28 -07:00
Sotaro Ikeda
9094a4b26f Bug 1150518 - Remove glClear() on blit composition r=Sushil 2015-04-02 20:26:47 -07:00
Jonathan Watt
4316694605 Bug 1147491, part 2 - Disable use of BaseTimeDuration::operator/ with floating point values. r=ehsan 2015-04-02 14:03:40 +01:00
Mason Chang
9b22454361 Bug 1149646 - Delete non-uniform vsync interval warning. r=kats 2015-03-31 14:38:51 -07:00
Kartikaya Gupta
0f800a9ac5 Bug 1149412 - Remove bad assertion. r=mchang 2015-03-31 11:12:01 -04:00
Kartikaya Gupta
e00255b75b Bug 1146987 - Deal with cases where we get a batch of interleaved move and non-move events on the libui thread before anything is processed, with resampling disabled. r=mchang 2015-03-30 14:09:26 -04:00
Michael Vines
735d66b22a Bug 1144515 - ConsumerListener interface changes. r=mwu,sotaro.ikeda.g
From ae4139a7b5dfb0b0326c84070e52fa58e43a54fe Mon Sep 17 00:00:00 2001
Change-Id: I3a3e4d6f58a42576197356ba4b7301c670298c74
---
 widget/gonk/libdisplay/FramebufferSurface.cpp            |  4 ++++
 widget/gonk/libdisplay/FramebufferSurface.h              |  4 ++++
 .../nativewindow/GonkBufferQueueLL/GonkBufferQueueLL.cpp | 16 ++++++++++++++++
 .../nativewindow/GonkBufferQueueLL/GonkBufferQueueLL.h   |  5 +++++
 .../GonkBufferQueueLL/GonkBufferQueueProducer.cpp        |  9 ++++++++-
 widget/gonk/nativewindow/GonkConsumerBaseLL.cpp          |  4 ++++
 widget/gonk/nativewindow/GonkConsumerBaseLL.h            |  5 +++++
 widget/gonk/nativewindow/GonkNativeWindowLL.cpp          |  5 +++++
 widget/gonk/nativewindow/GonkNativeWindowLL.h            |  4 ++++
 9 files changed, 55 insertions(+), 1 deletion(-)
2015-03-18 15:03:15 -07:00
Andrea Marchesini
b212600c95 Bug 1148527 - Indentation fix after bug 1145631, r=ehsan 2015-03-27 18:52:19 +00:00
David Anderson
412129bebc Allow dispatching to the APZ controller thread from any thread. (bug 1147681 part 1, r=kats) 2015-03-26 14:23:02 -07:00
Maksim Lebedev
2947df3cef Bug 1143655 - Add sending NS_TOUCH_CANCEL event. r=kats 2015-03-25 12:20:20 -04:00
Ehsan Akhgari
33bb32f549 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Kartikaya Gupta
1e28ba299b Bug 1143518 - Remove the TryCapture path which is now obsolete. r=smaug 2015-03-16 12:32:17 -04:00
Gabriele Svelto
38240b4580 Bug 852925 - Freeze priority changes when the screen is turned off. r=khuey 2015-03-09 16:33:33 +01:00
Sotaro Ikeda
45f6dc0032 Bug 1141311 - Add async mode support to GonkNativeWindow on Lollipop Gonk r=pchang 2015-03-10 20:39:23 -07:00
Wes Kocher
f303b4d81c Merge b2g-inbound to m-c a=merge CLOSED TREE 2015-03-10 15:44:53 -07:00
Thomas Zimmermann
772c1cacaa Bug 1137151: Marked destructor of |nsScreenManagerGonk| as protected, r=mwu 2015-03-10 13:44:02 +01:00
Thomas Zimmermann
14d0513a9c Bug 1137151: Marked destructor of |nsWindow| as protected, r=mwu 2015-03-10 13:44:02 +01:00
Thomas Zimmermann
0a5083875f Bug 1137151: Marked destructor of |nsClipboard| as protected, r=mwu 2015-03-10 13:44:02 +01:00
Thomas Zimmermann
834d40197a Bug 1137151: Marked destructor of |GeckoTouchDispatcher| as protected, r=mwu 2015-03-10 13:44:02 +01:00
Thomas Zimmermann
61f73aa096 Bug 1137151: Marked destructor of |MemoryPressureWatcher| as protected, r=dhylands 2015-03-10 13:44:02 +01:00
Milan Sreckovic
50350de860 Bug 1140113 - Catch direct (and some indirect) callers of CreateDrawTarget* and deal with failure. r=mstange 2015-03-09 15:48:20 -04:00
Kartikaya Gupta
ddd3cbd924 Bug 1140578 - Prevent resampling moves across non-move touch events. r=mchang 2015-03-09 12:46:04 -04:00
Kartikaya Gupta
fb688f687c Bug 1140578 - Add a explicit flag to track if we have pending touch moves to process. r=mchang 2015-03-09 12:46:04 -04:00
Kartikaya Gupta
a7d9fcaed7 Bug 1140578 - Simplify some code. r=mchang 2015-03-09 12:46:04 -04:00
Kartikaya Gupta
47aecf73bc Bug 1140578 - Remove some redundant code and an unused return value. r=mchang 2015-03-09 12:46:04 -04:00
dvander@alliedmods.net
70d90515b1 Factor out how APZ-aware events are dispatched from widgets. (bug 1126090 part 2, r=kats) 2015-03-06 14:26:59 -08:00
Kartikaya Gupta
b68a6e6feb Bug 1139541 - Make HWC skip opacity=0 layers. r=sotaro 2015-03-06 16:52:34 -05:00
Mason Chang
1470e52e97 Bug 1129133 - Clean up GeckoTouchDispatcher so that it's a real singleton. r=kats,mwu 2015-02-24 12:52:16 -08:00
Masayuki Nakano
0b52432e63 Bug 1119609 part.3 Implement converting methods from key/code value to key/code name index r=smaug 2015-02-19 15:50:19 +09:00
David Anderson
2147691b41 Add weak reference support to nsBaseWidget. (bug 1133150, r=roc) 2015-02-17 22:27:53 -08:00
Botond Ballo
daadb3f902 Bug 1127066 - Add weak reference support to the gonk nsWindow type. r=kats
--HG--
extra : source : 2c81ee3e4c61c82770fad9f3eac9c64abb6ab4ec
2015-02-09 13:50:51 -05:00
Ryan VanderMeulen
817924eff7 Merge inbound to m-c. a=merge
CLOSED TREE
2015-02-10 16:03:15 -05:00
Sushil Chauhan
739f066742 Bug 1122850 - Use setPowerMode interface for HWC 1.4 and above. r=dwilson 2015-02-05 12:30:54 -08:00
Kartikaya Gupta
837a435159 Bug 930939 - Switch the B2G controller thread from the main thread to the compositor thread. r=botond,mwu 2015-02-10 08:24:23 -05:00
Robert O'Callahan
74edebf611 Bug 1129774. Part 5: Remove aContext parameter from nsIWidget::Create. r=jmathies
--HG--
extra : rebase_source : 517ff800c0307e69465a37da7e52605d2fcda0d1
2015-02-05 20:35:25 +13:00
Robert O'Callahan
378416b9f9 Bug 1129774. Part 3: Remove aContext parameter from BaseCreate and make it nonvirtual. r=jmathies
--HG--
extra : rebase_source : 9fd0a3e071b7d3ad273667f144889938bc5d9dc4
2015-02-05 18:18:30 +13:00
Carsten "Tomcat" Book
8e200698b0 merge mozilla-inbound to mozilla-central a=merge 2015-02-05 14:47:16 +01:00
Mason Chang
b9b3f8e601 Bug 1129210. Always enable vsync when touch events occur. r=kats 2015-02-04 22:10:56 -08:00
Mason Chang
5e43031fe5 Bug 1129632. Resample touch events based on the current touch. r=mwu 2015-02-04 17:06:09 -08:00
Mason Chang
40d73c2e10 Bug 1128691. Part 2: Consolidate touch resampilng pref checks. r=kats 2015-02-04 13:08:40 -08:00
David Zbarsky
32c35eeb2a Bug 1125040: Use LayoutDeviceIntPoint for nsIWidget::WidgetToScreen r=botond 2015-02-04 15:21:03 -05:00
Sushil Chauhan
39fff70c79 Bug 1127585 - Update HWC_BLIT composition-type value. r=sotaro 2015-02-03 10:38:21 -08:00
Botond Ballo
5250d0e98b Bug 950934 - Do not generate mouse events from touch events at the gonk widget layer. r=kats 2015-01-14 18:05:46 -05:00
Phil Ringnalda
f55829d7eb Back out 5167196c4b98 (bug 1125040) for not compiling on Linux
CLOSED TREE
2015-02-01 15:27:14 -08:00
David Zbarsky
058ba6807f Bug 1125040: Use LayoutDeviceIntPoint for nsIWidget::WidgetToScreen r=botond 2015-02-01 17:27:41 -05:00
Masayuki Nakano
6e75a14df0 Bug 936313 part.2 Compute DOM key location from code value on Android and Gonk r=smaug+mwu+cpeterson 2015-01-28 22:36:53 +09:00
Masayuki Nakano
f1abe83b3f Bug 936313 part.1 Remove DOM_KEY_LOCATION_MOBILE and DOM_KEY_LOCATION_JOYSTICK r=smaug+mwu+cpeterson, sr=smaug 2015-01-28 22:36:53 +09:00
Kartikaya Gupta
e116db3134 Bug 1121353 - Implement SynthesizeNativeTouchPoint in the gonk widget to allow injecting touch events into APZ. r=mwu 2015-01-20 00:38:00 +01:00
JerryShih
6345dac672 Bug 1123734 - Notify global VsyncSource in hwc. r=mwu, r=mchang 2015-01-20 08:21:00 -05:00
Chris Peterson
7140283ea9 Bug 1123553 - Fix -Wuninitialized warning in GonkDisplayJB.cpp by removing unnecessary error check. r=mwu 2015-01-19 21:44:27 -08:00
Mason Chang
548d2b21b5 Bug 1095242. Part 1: Ensure Vsync Is Enabled on b2g. r=mwu 2015-01-20 08:31:10 -08:00
Mason Chang
388c580a7f Bug 1120753 - Fallback to software vsync if hardware vsync fails to initialize on b2g. r=kats,mwu 2015-01-15 07:56:12 -08:00
Kartikaya Gupta
8bf3d6904d Bug 920036 - Send touch inputs through the APZ before sending them to the gecko thread. r=mwu,dvander,smaug 2015-01-15 10:37:54 -05:00
Kartikaya Gupta
4942ecc965 Back out bug 1119497 and one patch from bug 920036 for causing bug 1121033. r=me 2015-01-13 21:16:51 -05:00
Carsten "Tomcat" Book
df1fe14c36 merge b2g-inbound to mozilla-central a=merge 2015-01-12 14:59:45 +01:00
Masatoshi Kimura
f70d08c5aa Bug 1120062 - Part 1: Remove most Nullptr.h includes. r=waldo 2015-01-11 11:34:52 +09:00
Kartikaya Gupta
29de747eff Bug 920036 - Send touch inputs through the APZ before sending them to the gecko thread. r=mwu,dvander,smaug 2015-01-10 13:54:24 -05:00
Kartikaya Gupta
992e9e1aa0 Bug 920036 - Move ToWidgetMouseEvent into MultiTouchInput. r=mwu 2015-01-10 13:54:24 -05:00
Kartikaya Gupta
93f87b5463 Bug 1119811 - Fold the gonk ParentProcessController into the reusable ChromeProcessController. r=dvander 2015-01-09 13:41:23 -05:00
Viral Wang
b4e92b753d Bug 1107760 - add new keycode mapping for L, r=mwu 2015-01-08 01:14:00 +01:00
Nicholas Nethercote
0696849cfd Bug 1117623 - Fix undefined value error in TouchInputMapper::configureSurface(). r=mwu.
--HG--
extra : rebase_source : 6a6fe5eefda60df9b42bcc6212ecdd763f548495
2015-01-06 19:31:03 -08:00
Jeff Gilbert
e2cd335ec4 Bug 1100699 - Use OriginPos instead of isInverted. - r=mattwoodrow,snorp 2014-11-17 17:02:19 -08:00
Boris Chiou
94cf6fd68f Bug 1098970 - Part 5: Fix link errors casued by symbol visibility. r=sotaro
Use the NO_VISIBILITY_FLAGS flag to fix the hidden symbol visibility and
some warnings.
2014-12-18 18:08:00 +01:00
Boris Chiou
2ab82dd9c3 Bug 1098970 - Part 4: Fix naming problems and buffer allocation. r=sotaro
1. Fix class naming by adding "Gonk" prefix, and rename Surface
   & BufferItemConsumer.
2. Revise the buffer allocation
2014-12-21 22:01:00 +01:00
Boris Chiou
140ea74227 Bug 1098970 - Part 3: Add new files for Nativewindow. r=sotaro
1. Copied Surface.* and rename them as GonkNativeWindowClientLL.*
2. Copied BufferItemConsumer.* and rename them as GonkNativeWindowLL.*
3. Add new IGonkGraphicBufferConsumer.h to control the version
4. Fix the file mode for some JB files (remove execute permission)
2014-12-17 22:30:00 +01:00
Boris Chiou
511504dba6 Bug 1098970 - Part 2: Rename files. r=sotaro
Add the "Gonk" prefix & "LL" suffix, and collect all BufferQueue
related files on Lollipop in one directory.

--HG--
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferItem.cpp => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferItem.cpp
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferItem.h => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferItem.h
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferQueueConsumer.cpp => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferQueueConsumer.cpp
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferQueueConsumer.h => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferQueueConsumer.h
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferQueueCore.cpp => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferQueueCore.cpp
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferQueueCore.h => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferQueueCore.h
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferQueueDefs.h => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferQueueDefs.h
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferQueue.cpp => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferQueueLL.cpp
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferQueue.h => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferQueueLL.h
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferQueueProducer.cpp => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferQueueProducer.cpp
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferQueueProducer.h => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferQueueProducer.h
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferSlot.cpp => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferSlot.cpp
rename : widget/gonk/nativewindow/GonkBufferQueueLL/BufferSlot.h => widget/gonk/nativewindow/GonkBufferQueueLL/GonkBufferSlot.h
rename : widget/gonk/nativewindow/GonkBufferQueueLL/ConsumerBase.cpp => widget/gonk/nativewindow/GonkConsumerBaseLL.cpp
rename : widget/gonk/nativewindow/GonkBufferQueueLL/ConsumerBase.h => widget/gonk/nativewindow/GonkConsumerBaseLL.h
rename : widget/gonk/nativewindow/IGonkGraphicBufferConsumer.cpp => widget/gonk/nativewindow/IGonkGraphicBufferConsumerKK.cpp
rename : widget/gonk/nativewindow/IGonkGraphicBufferConsumer.h => widget/gonk/nativewindow/IGonkGraphicBufferConsumerKK.h
rename : widget/gonk/nativewindow/GonkBufferQueueLL/IGraphicBufferConsumer.cpp => widget/gonk/nativewindow/IGonkGraphicBufferConsumerLL.cpp
rename : widget/gonk/nativewindow/GonkBufferQueueLL/IGraphicBufferConsumer.h => widget/gonk/nativewindow/IGonkGraphicBufferConsumerLL.h
2014-12-17 22:29:00 +01:00
Boris Chiou
33b88b3371 Bug 1098970 - Part 1: Add new LL native files. r=sotaro
Copied from aosp/framework/native/gui.
2014-12-17 18:26:00 +01:00
Mason Chang
31ac06c046 Bug 1113725. Rename VsyncDispatcher to CompositorVsyncDispatcher. r=kats 2014-12-19 12:52:42 -08:00
Mason Chang
f19d8cf4e3 Bug 1101974. Part 6. Create VsyncSource on b2g. r=kats 2014-12-18 08:30:06 -08:00
Carsten "Tomcat" Book
4e287fabda Merge mozilla-central to mozilla-inbound 2014-12-18 13:54:52 +01:00
Chih-Kai (Patrick) Wang
6f55b02411 Bug 970307: Part 1: Report status of each thread to find when all the threads are idle. r=nfroyd 2014-12-18 17:00:39 +08:00
Mason Chang
239244bb4f bug 1102453. Read HwcComposer vsync status on main thread. r=mwu 2014-12-17 21:25:09 -08:00
Michael Wu
6f1e52b724 Bug 1104661 - Import sha1.c for libui, r=m1 2014-12-16 20:43:41 -05:00
David Anderson
104a98a38b Move APZC initialization into nsBaseWidget. (bug 1110540 part 1, r=kats) 2014-12-15 01:47:15 -08:00
Botond Ballo
550ec2d464 Bug 1073081 - Fix -Woverloaded-virtual warnings in gonk code. r=sotaro
--HG--
extra : source : c1ae176debd74464094cbb6db1254c7fbd55a271
2014-11-24 20:03:27 -05:00
Botond Ballo
8296035077 Bug 1073081 - Fix -Wunused-result, -Wunused-variable, and -Wunused-but-set-variable warnings. r=ehsan
--HG--
extra : source : a1ac7acfcf14207706eca29be3a20c576c8fae06
2014-11-26 18:13:49 -05:00
Botond Ballo
7a90ff53d7 Bug 1073081 - Fix -Wattribute warnings by disabling them. r=ehsan,ted
--HG--
extra : source : 8393f458463ff465c0862209a7bef284e5ce6b48
2014-11-24 19:43:19 -05:00
Botond Ballo
81bbb8a3de Bug 1073081 - Fix -Wattribute warnings by removing MOZ_EXPORT from forward declarations. r=ehsan
--HG--
extra : source : 25145aa73cb75faa067ec96114968bc55bf7bbac
2014-11-24 19:40:59 -05:00
Botond Ballo
b08ca88b2a Bug 1073081 - Fix -Wsign-compare and -Wsign-conversion warnings. r=ehsan
--HG--
extra : source : 88c58a8cc276a4691ed23fd8b8f2f6c0713b50fd
2014-11-24 19:54:33 -05:00
Sotaro Ikeda
018c04a66a Bug 1109226 - Do not use HwComposer when layer has MaskLayer r=nical 2014-12-11 07:15:52 -08:00
Sotaro Ikeda
0fb912bbcc Bug 1100110 - Fix ScaleMode handling of ImageLayer and HwcComposer2D r=mattwoodrow 2014-12-06 17:12:50 -08:00
Ryan VanderMeulen
240fa20d5e Backed out changesets 9beb53e53951, 4420bb4e5e7c, de1da65301a8, and cd9c2aaf1343 (bug 970307) for causing frequent B2G debug mochitest-11 crashes. 2014-11-24 17:18:27 -05:00
Patrick Wang (Chih-Kai Wang)
dac64ab9df Bug 970307: Part 1: Report status of each thread to find when all the threads are idle. r=nfroyd 2014-11-24 15:21:52 +08:00
Wes Kocher
6f52860db6 Merge inbound to m-c a=merge 2014-11-21 16:35:57 -08:00
Wes Kocher
17b0884718 Backed out changeset 82e94c16732d (bug 1101974) 2014-11-21 10:52:24 -08:00
Boris Chiou
ea235593c4 Bug 1100727 - Port LL FrameBufferSurface to gonk. r=mwu
Use the new API, BufferQueue::createBufferQueue() to new the consumer
and the producer on LL.
2014-11-19 23:03:00 +01:00
Mason Chang
bebd67962c Bug 1101974. Part 1. Move VsyncDispatcher to CompositorParent. r=roc 2014-11-21 09:16:19 -08:00
Vladimir Vukicevic
ac4942d083 Bug 1036597 - extend widget's MakeFullScreen method to take an optional nsIScreen indicating the target; r=karlt 2014-07-09 12:29:28 -07:00
Mason Chang
a88f78597a bug 552020 Part 3: Enable Creation of mozilla::TimeStamp from system timestamps. r=roc 2014-11-18 13:28:42 -08:00
Mason Chang
e356eb5ca2 Bug 552020. Part 2. Enable Vsync Profiler Markers across platforms. r=benwa 2014-11-18 13:28:42 -08:00
Ryan VanderMeulen
57225618ce Backed out changesets a99bd0b3b075, a7fb851f823a, and 9fc2d99376cd (bug 552020) for non-unified bustage and OSX 10.6 tsvgr crashes.
CLOSED TREE
2014-11-14 15:57:35 -05:00
Mason Chang
97966e77aa Bug 552020. Part 3: Enable creation of mozilla::TimeStamp from system Timestamps. r=roc 2014-11-14 08:31:04 -08:00
Mason Chang
a2d6748143 Bug 552020. Part 2. Enable Vsync Profiler Markers across platforms. r=benwa 2014-11-14 08:31:04 -08:00
Mason Chang
1a25033767 Bug 1085512 - Improve touch resampling heuristics. r=mwu 2014-11-11 15:39:00 +01:00
Michael Wu
eb5c2cbf8b Bug 1094525 - Simplify touch resampling code in GeckoTouchDispatcher, r=kats 2014-11-10 12:02:00 +01:00
Chris Jones
5b68f94ba7 Bug 1087943 - Have nsWindow pose as a "normal" window manager when using BasicCompositor. r=mwu 2014-11-06 11:39:48 -08:00
Mason Chang
046d1df085 bug 1094058. Include timer.h for nsecs_t definition on flatfish builds. r=mwu 2014-11-05 14:16:52 -08:00
Robert O'Callahan
31a7de5340 Bug 1092543. Intersect bufferRect with visibleRect to ensure that the gralloc buffer offset is taken into account. r=sotaro
The patch in bug 1073252 assumed that the gralloc buffer is always at
(0,0,w,h) in layer coordinates, which is incorrect. When intersecting
the gralloc buffer bounds with the visible rect, we need to take the gralloc
buffer's offset (state.mOffset) into account. Fortunately bufferRect already
contains this, so let's just use that.

--HG--
extra : rebase_source : 6187200b29ed2913e335d5a710f1ba38d7b1cf18
2014-11-06 09:59:10 +13:00