Dana Jansens
44d653e3e8
make struts get added to the screen when mapping a window. let the user disable window decorations.
2003-01-29 21:48:46 +00:00
Dana Jansens
2e08c6ce9e
describe -sync better
2003-01-29 09:13:45 +00:00
Dana Jansens
6c5c7fd04b
don't manage override_redirect windows.
...
don't manage windows for whome get attributes fails.
validate the client before managing it.
2003-01-29 08:59:13 +00:00
Dana Jansens
39c6969de2
allow for the client to be validated.
...
don't manage override_redirect windows.
don't manage windows for whome get attributes fails.
validate the client before managing it.
validate the client in functions that query stuff off it: propertyHandler and clientMessageHandler
2003-01-29 08:58:28 +00:00
Dana Jansens
a20c78f789
add comment
2003-01-29 01:38:45 +00:00
Dana Jansens
85706d995c
grab the pointer when grabbing the keyboard to discard pointer events
2003-01-29 00:50:28 +00:00
Dana Jansens
668b2866c2
comment unused variable
2003-01-29 00:46:31 +00:00
Dana Jansens
01a76071df
sync after sending focus
2003-01-29 00:45:28 +00:00
Dana Jansens
3f784100ab
support the aspect ratio hints in the WMNormalHints
2003-01-28 00:26:54 +00:00
Dana Jansens
d600bf8d58
openbox scripting works again! config too!
2003-01-27 15:59:28 +00:00
Dana Jansens
340c4c956e
add new shit
2003-01-27 14:11:56 +00:00
Dana Jansens
49394f1edf
use a built-in module to replace libswigpy
2003-01-27 14:10:49 +00:00
Dana Jansens
5face4c6f3
use otk objects in the ob scripts by importing otk
2003-01-27 13:42:41 +00:00
Dana Jansens
997f94cf86
new/better/cleaner scripting interface
2003-01-25 16:36:55 +00:00
Dana Jansens
02d6362111
change include path to not include otk/
2003-01-25 12:55:46 +00:00
Dana Jansens
b760c46656
remove these at last
2003-01-25 04:25:06 +00:00
Dana Jansens
3682df8ed2
include widgetbase not widget
2003-01-24 19:21:07 +00:00
Dana Jansens
084d6f4e42
some intermediate stage. stacked focus cycling is very broken. dont try it. going to have to change how the python stuff works i think!
2003-01-24 09:25:03 +00:00
Dana Jansens
91c7e5c378
allow python to grab the keyboard. have release events go to the grabs callback. remove the modifier from teh state when a modifier key is the one being released
2003-01-24 07:37:26 +00:00
Dana Jansens
3a5d404a08
wrapper changes
2003-01-24 05:44:27 +00:00
Dana Jansens
02e8107507
fix a comment
2003-01-24 04:19:50 +00:00
Dana Jansens
3e21214a1d
don't make dock type windows auto-omni-present.
...
add some debug prints
2003-01-24 02:27:10 +00:00
Dana Jansens
f7f5f3d08c
add printf for when a window requests its desktop
2003-01-24 01:38:39 +00:00
Dana Jansens
ab2968b3a5
add an UrgentNotify callback type. fire it when a window becomes "urgent"
2003-01-24 00:44:36 +00:00
Dana Jansens
39f19f427b
watch for multiple map requests on the same window. ignore after the first.
2003-01-24 00:08:55 +00:00
Dana Jansens
406c79aea1
out with the blackbox source
2003-01-24 00:02:24 +00:00
Dana Jansens
47fb66e54b
blef
2003-01-23 15:46:29 +00:00
Dana Jansens
f4b87e04a2
be smart about skipping focusing a window from unmap events, watch the unmap_ignore
2003-01-23 15:43:55 +00:00
Dana Jansens
b6defb3c1a
cleanups for how we display iconic state in the hints, and choose it in the mapping process. make things work with gnome-panel's restore-to-native/current-workspace
2003-01-23 14:16:30 +00:00
Dana Jansens
8b4004ac68
make docks and desktops always on all desktops
2003-01-23 13:28:37 +00:00
Dana Jansens
709c747a74
add iconifying!!!!
...
also cleanup the map process a bit, the close action wasn't being set in the allowed actions.
2003-01-23 12:34:11 +00:00
Dana Jansens
9583bb6cb8
add comment, and reformat
2003-01-23 12:13:11 +00:00
Dana Jansens
8d4fe416e5
maprequests do not come here once the window is managed any more. they go to the plate. make events on the plate go to the client for handling, and dont bother looking for clients in the maprequesthandler anymore
2003-01-23 12:12:17 +00:00
Dana Jansens
4c5671eeca
remove unused old handlers
2003-01-23 12:10:57 +00:00
Dana Jansens
707f70682a
linear focus cycling
2003-01-23 09:01:40 +00:00
Dana Jansens
9a64438a5a
set the root window, to a color for now
2003-01-23 07:26:32 +00:00
Dana Jansens
28b8f67562
remove the word "sticky" from everywhere, and replace with "all desktops". change the titlebar layout to use D instead of S for the all-desktops button
2003-01-23 05:20:13 +00:00
Dana Jansens
7b7ae097a0
make the 'toggle all desktops' button work
2003-01-23 04:49:42 +00:00
Dana Jansens
7b9d92b2e7
add decor_sticky to the default decorations list
2003-01-23 04:23:58 +00:00
Dana Jansens
ff3bb7566b
remove debug printfs
2003-01-23 04:20:08 +00:00
Dana Jansens
bb5a07b3e1
check if the window exists before trying to focus it
2003-01-23 03:44:18 +00:00
Dana Jansens
741c68bb87
include algorthm forstd::find
2003-01-23 02:33:42 +00:00
Dana Jansens
bf24a3b7fc
dont use a const_iterator
2003-01-23 02:30:58 +00:00
Dana Jansens
7048f64f45
dont use a const_iterator
2003-01-23 02:29:17 +00:00
Dana Jansens
b99508df01
bitmap masks return!
2003-01-23 02:08:04 +00:00
Dana Jansens
e64d90be4d
new render system in effect. now ot make it look right
2003-01-23 01:44:01 +00:00
Dana Jansens
dd6f906848
compiles with the new render subsystem...
2003-01-23 00:14:44 +00:00
Dana Jansens
0348a2f3ab
add rendercolor class, with a cache of gcs for the colors
2003-01-20 07:07:13 +00:00
Dana Jansens
d9d2e7a509
Some cleanups in the mapping procedure. Apply requested states during the process.
...
Add new function types for new netwm supported actions, i.e. Func_Shade and Func_Fullscreen.
Add support for the _NET_WM_FULLSCREEN state.
2003-01-17 09:15:07 +00:00
Dana Jansens
105e3524a3
add internal_move/resize and wrap them with move() and resize() which are for user use, and make sure that the window is allowed to be moved/resized.
...
add the allowed actions hint setting.
2003-01-17 07:45:07 +00:00
Dana Jansens
8be4541461
add frame.. wrapper changes.
2003-01-17 07:25:34 +00:00
Dana Jansens
a767993e8b
add frame.hh to openbox.i's deps
2003-01-17 07:14:47 +00:00
Dana Jansens
9e8f89b619
provide the strut for the frame's size instead of an area rect
2003-01-17 07:12:21 +00:00
Dana Jansens
940247c3e5
make window placement not go off screen at all
2003-01-17 07:10:52 +00:00
Dana Jansens
5cc40ecc8f
call the place routine after the window is grabbed
2003-01-17 07:06:34 +00:00
Dana Jansens
48741b97c2
call the place window routine after the frame is created
2003-01-17 07:04:30 +00:00
Dana Jansens
6f0581627a
add the Frame class
2003-01-17 07:04:12 +00:00
Dana Jansens
baaaed3dc1
add a drag threshold
2003-01-17 06:52:34 +00:00
Dana Jansens
6a73cff16d
get all the normal hints when mapping again, oops.
2003-01-17 03:03:18 +00:00
Dana Jansens
2b0897234f
centered gravities lose one borderwidth when mapping too
2003-01-17 02:57:42 +00:00
Dana Jansens
619ad666fc
add {}'s
2003-01-17 02:53:06 +00:00
Dana Jansens
53001eebae
add whitespace
2003-01-17 02:52:26 +00:00
Dana Jansens
b8ae2f393f
try use the gravity in the WM_NORMAL hint, and fall back to the attribute
2003-01-17 02:48:29 +00:00
Dana Jansens
4c2f4e7537
add a getGravity function to get the gravity from the window attributes initially
2003-01-17 02:43:31 +00:00
Dana Jansens
d17b86a41f
s/SIGCLD/SIGCHLD/ that was Sysv4 shit
2003-01-17 02:31:46 +00:00
Dana Jansens
f14d74a3ac
test for borders on static grav windows
2003-01-17 02:11:11 +00:00
Dana Jansens
44358dfbaa
reap child processes when they die
2003-01-16 23:38:21 +00:00
Dana Jansens
af1ac846cc
new raise/lower window code. only restacks 2 windows (1 move) at a time, ever. ManMower, u rulz.
2003-01-16 23:32:16 +00:00
Dana Jansens
3a83fe7e6c
exec a requested new process via /bin/sh to allow for command line args, the same way otk::bexec does it.
2003-01-16 23:05:58 +00:00
Dana Jansens
035f7d3ff4
use -export-dynamic when linking libpython.a
2003-01-16 09:30:28 +00:00
Dana Jansens
d8aff44a6a
redo otk::Property. make it static.
2003-01-16 08:44:52 +00:00
Dana Jansens
a8e98570cc
dont allow resizing < 1 (based on increments)
2003-01-16 04:10:12 +00:00
Dana Jansens
8eed9d643c
stacking list on root is bottom to top
2003-01-16 01:54:51 +00:00
Dana Jansens
b267261403
just return if a valid widget isnt found, racey to assert
2003-01-14 22:58:35 +00:00
Dana Jansens
96a9196cbb
otk::Timer-ng!! thanks ManMower for this shizznit!
2003-01-14 09:54:05 +00:00
Dana Jansens
b683a4e0ef
fix indenting
2003-01-13 10:55:28 +00:00
Dana Jansens
63a74632ac
add the global display variable
2003-01-13 10:08:44 +00:00
Dana Jansens
784b879a52
set the global 'display' var to the otk::Display in use
2003-01-13 09:59:38 +00:00
Dana Jansens
cdcc526a02
use the new non-static display
2003-01-13 09:04:57 +00:00
Dana Jansens
9e77a88d26
move the Openbox::instance pointer to simply "openbox".
2003-01-13 08:13:58 +00:00
Dana Jansens
4dba699857
dont use append, dont need to extend ustring!
2003-01-13 07:15:02 +00:00
Dana Jansens
ef02a0c8ae
almost done the ustring conversion
2003-01-13 05:54:40 +00:00
Dana Jansens
4947902d26
more conversion to ustring. added more members
2003-01-13 03:51:48 +00:00
Dana Jansens
2aff07a250
show a warning if we fail to set the locale
2003-01-13 02:42:14 +00:00
Dana Jansens
ecfac5f20c
add more doxygen
2003-01-13 00:56:05 +00:00
Dana Jansens
703ef4df22
check for shutdown before waiting for timers
2003-01-12 23:07:15 +00:00
Dana Jansens
2627b85226
typo.. just PACKAGE
2003-01-12 23:04:21 +00:00
Dana Jansens
88dbe7c248
use the UTF-8 codeset
2003-01-12 23:04:02 +00:00
Dana Jansens
a4d4aaec3f
default to 1 desktop if its not read from the configs
2003-01-12 21:57:08 +00:00
Dana Jansens
c03068ee3a
dispatch events before waiting for timers on startup
2003-01-12 20:52:36 +00:00
Dana Jansens
bd39de609b
use PyInt for vars not PyLong
2003-01-12 20:47:55 +00:00
Dana Jansens
bfa46e06b6
dont assert when given an out-of-range desktop
2003-01-12 19:53:13 +00:00
Dana Jansens
7bfe234d81
clean up childrens' transient_for refs
2003-01-12 18:29:17 +00:00
Dana Jansens
2a6c730f02
add aliases for mouse buttons
2003-01-11 20:48:52 +00:00
Dana Jansens
cc86c196a2
dont need 2 of these comments
2003-01-11 19:44:16 +00:00
Dana Jansens
77ab46d1e3
removing all prefixes completed
2003-01-11 19:42:43 +00:00
Dana Jansens
23c11a151a
old bb shitz
2003-01-11 19:19:14 +00:00
Dana Jansens
261034b354
wrapper updates
2003-01-11 11:25:26 +00:00
Dana Jansens
e8f5cf2940
valgrind fixes, and fixes for writing shit all over the environment. yay~!!!!!!!
2003-01-11 11:16:36 +00:00
Dana Jansens
19bfac5195
broken to all hell. oh no.
2003-01-11 07:13:49 +00:00
Dana Jansens
fd5369cd17
only send configu notify if the window is mapped (has a frame)
2003-01-11 05:45:21 +00:00
Dana Jansens
51ff149748
new autoconf shit woowoo
2003-01-11 04:06:25 +00:00
Dana Jansens
af8b457f40
send configure notify when moving a window
2003-01-11 04:04:42 +00:00
Dana Jansens
d12e655d45
load a global defaults.py if the user.py isnt loaded
2003-01-10 22:42:45 +00:00
Dana Jansens
3dde884d38
dont bother making a copy of the event to change its type
2003-01-10 19:31:44 +00:00
Dana Jansens
a0333b52d8
when i get a button press on the client window, i have to manufacture the release, because i never will get one from the x server
2003-01-10 19:17:26 +00:00
Dana Jansens
7a95b5a949
don't grab for motion/releases on the client window, i don't get them anyways.
2003-01-10 19:16:56 +00:00
Dana Jansens
15a7384d11
add to comment
2003-01-10 10:02:17 +00:00
Dana Jansens
0b12453cf6
updated wrappers
2003-01-10 09:48:30 +00:00
Dana Jansens
007e17d32b
dont define the 'display' global
2003-01-10 08:54:09 +00:00
Dana Jansens
558b55b0c3
add OBDisplay_display()
2003-01-10 08:52:43 +00:00
Dana Jansens
d0c61ebfea
dont need the otk initializer
2003-01-10 08:32:35 +00:00
Dana Jansens
88b7de4aaa
the openbox module has to include shit from otk that it uses, swigs shit doesnt work across modules in the shadow wrappers
2003-01-10 07:43:42 +00:00
Dana Jansens
623de3b0ee
rm printf
2003-01-10 07:40:32 +00:00
Dana Jansens
6d6082dc7d
add some comments to the procedure
2003-01-10 06:43:52 +00:00
Dana Jansens
678bb52123
stop including otk in the openbox module. makes the wm hooger for no good cause. simply import all the otk shit. add otk.hh
2003-01-10 06:40:31 +00:00
Dana Jansens
c8e246f8de
include the all otk stuff into the openbox python module. rename widget.hh to stop conflicting with the one in otk/
2003-01-10 06:16:42 +00:00
Dana Jansens
e0878c9fc2
typosnsuch
2003-01-10 03:15:50 +00:00
Dana Jansens
915b171bef
install the shadow wrappers
2003-01-10 03:15:11 +00:00
Dana Jansens
385de86d90
add the shadow class wrappers
2003-01-10 03:12:42 +00:00
Dana Jansens
b67f5e702e
new python interface! using the .py shadow wrappers from swig
2003-01-10 03:11:48 +00:00
Dana Jansens
0d00827947
include point and rect from otk so that they can have objects returned instead of strings
2003-01-10 03:10:18 +00:00
Dana Jansens
345d957e1e
new python callbacks data, infrastructure. going to rework bindings code. cvs wont work for shit now. but thats life.
2003-01-09 22:54:31 +00:00
Dana Jansens
b1739374a6
change what re-maprequest events do, just convert them to net_active_window messages. make net_active_window unshade/iconify
2003-01-09 04:26:32 +00:00
Dana Jansens
e2274e0f0a
s/False/false
2003-01-09 03:53:26 +00:00
Dana Jansens
4e6e0b8d9b
wrapper updates
2003-01-08 22:41:24 +00:00
Dana Jansens
9dd52dfcc3
make close() and shade() private.
2003-01-08 17:10:35 +00:00
Dana Jansens
cec568b076
state_above/below work now
2003-01-08 17:00:27 +00:00
Dana Jansens
368d981208
add a -single argument which only runs on a single screen
2003-01-08 16:29:39 +00:00
Dana Jansens
dbf58ef2b6
check for python errors a little better i think..
2003-01-08 09:22:14 +00:00
Dana Jansens
bd748f7402
rework focus event handling. does it basically like ob2 did now. and it seems to work too :>
2003-01-08 07:41:17 +00:00
Dana Jansens
9656d1e276
put unmanageWindow back how it used to be. no 'remap' argument
2003-01-08 06:46:21 +00:00
Dana Jansens
3489627803
add some comments
...
clean up the releasing of the client from the frame
2003-01-08 06:45:56 +00:00
Dana Jansens
7e41036491
rm old comment
2003-01-08 06:45:30 +00:00
Dana Jansens
6bad7e676a
map the window if it was reparented, on release
2003-01-08 06:45:21 +00:00
Dana Jansens
f2fa99b33e
make some funcs const, and don't try focus a client if it is not visible
2003-01-08 06:45:01 +00:00
Dana Jansens
889df8a74d
clarify an incorrect comment, and make some funcs const
2003-01-08 06:44:23 +00:00
Dana Jansens
ada98dd585
*** empty log message ***
2003-01-08 06:41:47 +00:00
Dana Jansens
2a40cebfdc
grab the server around key ungrab/grabs to prevent losing keys
2003-01-08 06:41:31 +00:00
Dana Jansens
43c0dc42aa
fix typo
2003-01-08 05:06:21 +00:00
Dana Jansens
0147a61f89
move a comment
2003-01-07 20:21:56 +00:00
Dana Jansens
cc36ecf2f2
don't reparent to root if the client has already reparented since unmapping
2003-01-07 20:21:42 +00:00
Dana Jansens
f11bd1b0cc
better reparent handling, dont fux with the event stack..
2003-01-07 20:20:14 +00:00
Dana Jansens
2ae5aaca65
rm old junk
2003-01-07 20:08:47 +00:00
Dana Jansens
1b13d34c1e
i think im handling reparent events correctly now, by unmanaging the window and then XMapping the client
2003-01-07 20:06:29 +00:00
Dana Jansens
e5eb783aa2
ignore the right about of unmap notifies
2003-01-07 19:54:00 +00:00
Dana Jansens
a2de94e91e
in synch mode, chew up 100% cpu, cuz we cant select on the display's fd
2003-01-07 19:24:38 +00:00
Dana Jansens
6062fe404c
handle unmaps better. all thanks to acroread sending wacky unmap events
2003-01-07 09:30:00 +00:00
Dana Jansens
13f1f39f01
dont move frame if not frame exists while mapping
2003-01-07 07:05:39 +00:00
Dana Jansens
a132968424
don't place the window magically if we're starting (the window was already placed)
2003-01-07 06:56:57 +00:00
Dana Jansens
7990e6fc46
add a PlaceWindow event hook type
2003-01-07 06:50:21 +00:00
Dana Jansens
7ca4d1cf8a
add a check for ShapeBounding shape events
2003-01-07 06:37:02 +00:00
Dana Jansens
6c3aec9e09
dont unset focused client if it is still/already set, that causes bugs!
2003-01-07 06:24:40 +00:00
Dana Jansens
dc532b7661
change the unmanae ordeer around to have the callbacks fire last
2003-01-07 05:48:12 +00:00
Dana Jansens
eccab56a6c
fixed condition that could cause 2 windows to look focused, and bad things to occur
2003-01-07 05:21:12 +00:00
Dana Jansens
9d2ba8205c
sending windows to workspaces works. focus messes up on fast switching
2003-01-07 05:17:39 +00:00
Dana Jansens
4c768d5d63
use client messages to switch desktops/move windows between desktops
2003-01-07 04:51:55 +00:00
Dana Jansens
d833fb1ecc
add python.hh to the openbox.i deps
2003-01-07 03:22:35 +00:00
Dana Jansens
26bef30a57
add startup and shutdown callback events for each screen
2003-01-07 02:43:56 +00:00
Dana Jansens
711a7d8c56
supply python routines for next/prev workspace
2003-01-07 02:24:43 +00:00
Dana Jansens
d7cc09cebd
dont hide windows when switching to the current workspace
2003-01-07 01:58:39 +00:00
Dana Jansens
7175ac2b5a
windows stay on their desktops
2003-01-07 01:54:26 +00:00
Dana Jansens
f71a1fc7d2
grab SIGUSR1
2003-01-07 01:49:32 +00:00
Dana Jansens
3d8ffcc2cb
dont reset focus to the unfocused window!
2003-01-07 01:28:59 +00:00
Dana Jansens
33ddfc7664
desktops
2003-01-07 00:59:41 +00:00
Dana Jansens
e9b48d2f1d
move the shit from OBRootWindow into OBScreen
2003-01-07 00:57:26 +00:00
Dana Jansens
00e2c5aaad
keep track of desktops...
2003-01-07 00:57:00 +00:00
Dana Jansens
40449e199d
allow to bind multiple functions to everything
2003-01-06 19:01:49 +00:00
Dana Jansens
a460f0bc48
add comments for rming masks from the events
2003-01-06 06:03:38 +00:00
Dana Jansens
dbf077a59a
rm debugging comment
2003-01-06 04:58:07 +00:00
Dana Jansens
cc39863363
handle maprequests after mapped correctly. thus making gaim happy again
2003-01-06 04:57:42 +00:00
Dana Jansens
043822f6b6
grab the first known window type
2003-01-06 04:44:00 +00:00
Dana Jansens
1297c7c157
clean up transient's parent's reference in destructor
2003-01-06 04:33:37 +00:00
Dana Jansens
34cd50ec51
gets transients! woot. tested and such.. no groups still tho
2003-01-05 02:32:39 +00:00
Dana Jansens
a93f06f5b3
keep track of transients. however not group transients yet
2003-01-05 02:24:27 +00:00
Dana Jansens
c7b22b4f9c
transient window support..halfway
2003-01-05 01:40:38 +00:00
Dana Jansens
b9a7f6fbcb
SIGHIP not SUGHUP
2003-01-04 23:51:39 +00:00
Dana Jansens
eef665c6b8
only focus new 'normal' windows
2003-01-04 23:51:24 +00:00
Dana Jansens
180cdd0e91
dont restart on HUP. badness. restart on USR1.
2003-01-04 19:22:44 +00:00
Dana Jansens
a5df374fbd
lameass comment from the past
2003-01-04 19:18:44 +00:00
Dana Jansens
cef2672ec8
restart on HUP
2003-01-04 19:18:30 +00:00
Dana Jansens
d13f021b8b
add support for wm_window_role
2003-01-04 19:09:52 +00:00
Dana Jansens
fdb4e652f7
move the approproate code for map request handling to the client class. this will deiconify the window when requested.
2003-01-04 09:27:50 +00:00
Dana Jansens
aef2ab758d
if a dock has the 'below' state set, then it goes in the normal window layer
2003-01-04 08:54:53 +00:00
Dana Jansens
9ec2da72a5
let the user set the above/below stacking layer easily
2003-01-04 08:50:30 +00:00
Dana Jansens
056ff3b50c
better focus passing around for now
2003-01-04 08:41:42 +00:00
Dana Jansens
7bae794382
support net_wm_strut's! nothing to do with them yet however
2003-01-04 08:02:08 +00:00
Dana Jansens
58cd3958a3
decor and functions set set right for !normal windows
2003-01-04 07:36:29 +00:00
Dana Jansens
b02c91caad
more ideas in comments
2003-01-04 07:26:57 +00:00
Dana Jansens
a6f5b33ad9
configure request optimizations
2003-01-04 07:24:40 +00:00
Dana Jansens
8735c12d96
shape works again. updating the delete_window protocol update the decor.
2003-01-04 07:04:23 +00:00
Dana Jansens
7ec03b895e
move where transient shit will be
2003-01-04 06:47:47 +00:00
Dana Jansens
dd7af2419a
use the correct size for buttons even when there is no iconify button in use. (oops)
2003-01-04 06:46:04 +00:00
Dana Jansens
de07cce07a
update comment
2003-01-04 05:53:55 +00:00
Dana Jansens
5e5879a52b
set the window's state so the hint always exists
2003-01-04 05:45:47 +00:00
Dana Jansens
bf404e092b
make the frame window override-redirect
2003-01-04 05:18:33 +00:00
Dana Jansens
e3b50c2d13
kill the printf
2003-01-04 05:09:26 +00:00
Dana Jansens
c33ccf60cb
make the frame window override-redirect
2003-01-04 04:49:53 +00:00
Dana Jansens
ed250c3b74
basedisplay!! GAH NO FUCK OFF!@!(
2003-01-04 02:57:47 +00:00
Dana Jansens
f1f4cf57af
raise when focused with net_active_window message
2003-01-04 02:51:08 +00:00