Dana Jansens
55b84316bb
make an event queue for X events. the queue's min size is 16 XEvents (~3k)
2010-04-28 12:58:42 -04:00
Dana Jansens
029628087f
don't put reparent events back on the stack. the window is no longer being managed anyways. and it messes up the order of events in the queue
2010-04-23 11:57:26 -04:00
Dana Jansens
f6e423399d
putting events on the event queue does not send them back to the server. it was just going to get ignored the next time around cuz the window wouldnt be in our list of clients
2010-04-23 11:54:09 -04:00
Dana Jansens
bb97a20777
don't use XPutBackEvent and mess up timestamp order in the event queue
2010-04-23 11:50:24 -04:00
Dana Jansens
72fe65fd22
add asserts to make sure we don't add things to stacking list that are not managed
2010-04-20 15:22:58 -04:00
Dana Jansens
a16449adb6
don't change stacking stuff on windows when moving them during the unmanage phase.
2010-04-20 15:20:46 -04:00
Dana Jansens
197ee0ad47
event_curtime is replaced (publicly) by event_time()
...
This function never returns CurrentTime, which is nice, cuz using CurrentTime for XSetFocus always sucks.
If the current XEvent did not have a timestamp, then event_time() will find one. It finds the first timestamp available in the X event queue, meaning the earliest timestamp >= the current (nontimestamped) event. All future events should have a timestamp >= event_time(), so using this in XSetFocus() should not mess up any future calls we make to it.
This change seems to work well, as it appears to fix bug #3648 .
2010-04-16 22:23:37 -04:00
Dana Jansens
171e476ba3
When determining the current timestamp, try get something a lil more accurate
...
Get the first timestamp from the event queue, rather than (potentially) the
last.
also treat it as the actual event_curtime, meaning it is used when focusing a
newly mapped window etc.
2010-04-16 21:32:38 -04:00
Dana Jansens
550e961c0e
when client removes its transient_for hint, don't keep the window as transient for the group when it shouldn't be (fixes bug #4586 )
2010-04-16 21:32:38 -04:00
Dana Jansens
77ee361f5c
allow warping the mouse pointer when switching desktops by bumping into the edge of the monitor with a window
...
based on a patch by Nathaniel Gephart <computinchuck@gmail.com>
2010-04-16 21:32:38 -04:00
Dana Jansens
b05ac359b8
show the focus cycle popup's icons in linear order when cycling in linear order (bug #2319 )
2010-04-16 21:32:37 -04:00
Dana Jansens
56fface3a4
add an option to next/previous window to only include hilited/flashing/urgent windows (feature req/bug #4341 )
2010-04-16 21:32:31 -04:00
Mikael Magnusson
fde5d8601a
Link libobrender, not openbox, to imlib2
2010-04-16 20:56:27 +02:00
Dana Jansens
3997d7aef5
add some comments for binary search
2010-04-16 20:56:27 +02:00
Dana Jansens
3afa20de54
stat() can give an error, handle that
2010-04-16 20:56:24 +02:00
Dana Jansens
34178097d5
use const Rect* not Rect const*
2010-04-16 11:37:21 -04:00
Dana Jansens
262591ec1a
add BSEARCH() macros in obt/bsearch.h that to a binary search on an array, use it when searching for a group in obt_paths_try_exec()
2010-03-29 23:24:15 -04:00
Dana Jansens
3121146ecc
parse some of the .desktop stuff into an ObtLink structure
...
localized names still don't work.
most of the app-specific stuff isn't done yet.
categories aren't handled yet (to only show in/not show in some category)
2010-03-29 22:38:05 -04:00
Dana Jansens
67bed35b7c
add obt_paths_try_exec() that will see if an executable exists
2010-03-29 22:32:07 -04:00
Dana Jansens
d356058237
save the LC_MESSAGES locale category
2010-03-29 21:22:19 -04:00
Dana Jansens
d826971d72
if a launch time isnt there (like for client_activate) assume the window launched before the last desktop switch, not after. ie don't change desktops if you're not sure.
2010-03-29 20:37:20 -04:00
Dana Jansens
e7d5ef8418
make keypad enter do the same thing as return
2010-03-25 22:18:37 -04:00
Dana Jansens
11bb31d3bc
figure out what type the value should be for each known .desktop key, and watch for invalid keys
2010-03-25 22:04:48 -04:00
Dana Jansens
0d90bd57ab
Add a new ObtLink type, which is going to be a generalization of a .desktop entry.
...
Move the .desktop file parsing details into obt/ddparse.c, which generates
some hash tables holding the data of the file.
Add a new obt/link.c which will build an ObtLink from a parsed .desktop file,
and may support other ways to create these links in the unforseeable future
2010-03-25 21:11:15 -04:00
Dana Jansens
fbc0597d3f
ignore the rendertest executable
2010-03-25 21:09:20 -04:00
Dana Jansens
1ea83ccff1
ignore generated autostart script
2010-03-25 21:08:55 -04:00
Dana Jansens
749d6f0938
save key values based on their value, but we dont know what values they have yet
2010-03-25 19:31:57 -04:00
Dana Jansens
a1fa5dca08
add an empty function to parse the Desktop Entry group in a .desktop file
2010-03-25 18:11:13 -04:00
Dana Jansens
00fb4d392f
parse key/value pairs from the .desktop file and save them in a hashtable
2010-03-25 18:11:13 -04:00
Dana Jansens
448cc6620e
close the .desktop file after parsing it
2010-03-25 18:11:13 -04:00
Dana Jansens
159a3cb3b1
free the path after done with it
2010-03-25 18:11:13 -04:00
Dana Jansens
4e70343b3e
g_warning adds a \n
2010-03-25 18:11:13 -04:00
Dana Jansens
5ca9c2e03c
watch for groups in .desktop files and remember the current group. validate the names, and make sure no duplicates and "Desktop Entry" comes first
2010-03-25 18:11:13 -04:00
Dana Jansens
4968f7c62a
avoid ascii control characters in strings
2010-03-25 18:11:13 -04:00
Dana Jansens
70e819a905
add beginning of .desktop file parsing, grabs a line of text from the input file at a time and strips out any \0 characters
2010-03-25 18:11:13 -04:00
Dana Jansens
4f28035639
make enum values match numbers in the spec, and make the .desktop file reader function take a list of paths to look for the file in
2010-03-25 18:11:13 -04:00
Dana Jansens
1861350f55
install the obt/ddfile.h header
2010-03-25 18:11:13 -04:00
Dana Jansens
4cff6c0e3b
add function to give the list of autostart directories
2010-03-25 18:11:13 -04:00
Dana Jansens
0b9910b442
add some functions for parsing a value in a .desktop file
2010-03-25 18:11:13 -04:00
Dana Jansens
e02f788409
allow non-normal windows to go to 0,0. and remove a debugging g_print
2010-03-25 18:11:13 -04:00
David Barr
15d7f7103e
Add menu seperator style to Clearlooks
...
The default themerc is quite old and does not include the slightly newer
option to theme the menu seperator, here is a patch to fix that and some
very trivial tweaks to overall theme to better match the metacity/gtk
version.
2010-03-09 13:01:48 +01:00
Dana Jansens
64adc0eeba
add a function client_is_oldfullscreen() that determines if a window is an "oldschool fullscreen window" or not. use this throughout. and allow oldschool fullscreen windows to move to 0,0 even with a strut there.
2010-03-01 16:32:27 -05:00
Dana Jansens
28df6162a9
when an app tries to move to 0,0 and there is a strut there (java swing!), move it to inside the strut instead (unless it is an oldschool fullscreen app)
2010-03-01 16:32:23 -05:00
Dana Jansens
cfce98840a
missing a g_slice_free
2010-02-26 15:36:44 -05:00
Dana Jansens
daa2e0ab71
libexecdir is provided by automake, and gnome-settings-daemon is not always in /usr/libexecdir, use the dir from automake
2010-02-24 13:32:32 -05:00
Dana Jansens
115039fb49
Type is a mandatory field of a .desktop, so add it to the old gnome-interfacing-desktop file
2010-02-24 13:32:32 -05:00
Dana Jansens
6976f4198b
Show client menu on right click anywhere on a window frame (left and right were excluded)
2010-02-21 13:40:22 -05:00
Tobias Gläßer
54a808fe42
Added shade-icon to client-menu
2010-02-21 16:35:30 +01:00
Dana Jansens
59c831642a
make array large enough
2010-02-19 17:17:14 -05:00
Dana Jansens
b7ddaa5728
get the modifier mask for a modifier key that is pressed/released more accurately, using the table we built already for other purposes
2010-02-19 16:59:28 -05:00