Dana Jansens
a8843b58c5
update the last user interaction timestamp during a move/resize of the focused window
2011-01-24 14:19:22 -05:00
Dana Jansens
5ff0d07aba
update the user-interaction timestamp when running a (non-interactive) action on the focused window
...
update it at the end of running actions instead of multiple times (once for
each action)
2011-01-24 14:19:22 -05:00
Dana Jansens
d614bebf6a
don't steal focus from a window if it was used very recently, when someone uses _NET_ACTIVE request.
2011-01-24 14:19:22 -05:00
Dana Jansens
e737150701
mem leak in config.c
2011-01-24 14:19:22 -05:00
Dana Jansens
001f174cf5
Big rework of image.c and the image cache system.
...
Added a lot of comments, simplified call graphs.
Added full (not second-class) support for images coming from named sources (files, icon themes).
RrImage holds an RrImageSet. RrImageSet holds a bunch of RrImagePic, which are different sizes of a logical image.
RrImageSet objects can be merged if it is discovered they (will) share an RrImagePic. The RrImage objects are updated to use the new merged RrImageSet.
2011-01-24 14:19:22 -05:00
Mikael Magnusson
f458d66c7e
Use >= instead of > when comparing timestamps, or we will ignore some events
2011-01-24 14:19:22 -05:00
Dana Jansens
b1fc19711f
add some tests for obt pieces (binary search, .desktop parsking, linkbase, and inotify watch)
2011-01-24 14:19:22 -05:00
Dana Jansens
7eeae03f06
oops, crash if searching for something smaller than * in the array
2011-01-24 14:19:22 -05:00
Dana Jansens
d3660704f1
less redundant calls to screen_update_areas() and client_move_onscreen()
2011-01-24 14:19:22 -05:00
Mikael Magnusson
6f92931f84
Ignore MotionNotify on menus, it reset the submenudelay timer
...
It also caused the slightest cursor movement to activate the entry under
the cursor when navigating via the keyboard.
2011-01-24 14:19:22 -05:00
Mikael Magnusson
6d0f44e1d1
Use g_list_find instead of weird bouncing loops
2011-01-24 14:19:22 -05:00
Dana Jansens
3ff4162034
Parse multiple keys in one keybind
2011-01-24 14:19:22 -05:00
Dana Jansens
36a437a702
allow the res_class in WM_CLASS to mark a window as a dock app, if it is set to the string "DockApp"
2011-01-24 14:19:21 -05:00
Mikael Magnusson
194bb32cf6
Don't hog the user during the hideDelay
2011-01-24 14:19:21 -05:00
Dana Jansens
5d5714f01e
Handle STRING and COMPOUND_TEXT type text properties.
...
STRING should be latin1 text (plus TAB and LF)
COMPOUND_TEXT should be encoded in the current locale.
2011-01-24 14:19:21 -05:00
Dana Jansens
d3d96b572a
Revert "add an inotify watcher for directories (doesnt work without inotify yet)"
...
This reverts commit c36b89ba12
.
2011-01-24 14:18:09 -05:00
Dana Jansens
27ae9d65c8
fix make distcheck
2010-10-04 17:36:08 -04:00
Dana Jansens
2813d2c161
glib can't handle -Wcast-qual
2010-09-16 14:52:09 -04:00
Dana Jansens
d81f94bf8b
add wmhints test that toggles motif decor hints on a mapped window
2010-09-16 13:50:37 -04:00
Mikael Magnusson
9fcf466aeb
Fix a double free when you have a mousebind without a button attribute
...
Introduced in f307a3feab
2010-09-16 17:24:12 +02:00
Mikael Magnusson
670ff8b4b8
Fix a copypasto that broke interactive keybinds with meta and hyper keys
2010-09-16 17:24:12 +02:00
Dana Jansens
624ffe397b
Revert "add XFlush to g_timeout callbacks"
...
This reverts commit aa3685d16a
.
Mika's commit using a GSource to handle X Events fixes this problem, so this
commit is not needed
2010-09-16 17:24:12 +02:00
Mikael Magnusson
179312f9ae
Fix 3.4 compatibility for SendToDesktop
2010-09-16 17:24:11 +02:00
Mikael Magnusson
eafcc06030
Correct typo occured -> occurred in function name
2010-09-16 17:24:11 +02:00
Dana Jansens
1666d285d7
Add signal handling with the GMainLoop
...
Provided through a very simplistic interface in obt, found in the
obt/signal.[ch] files
2010-09-16 17:24:11 +02:00
Dana Jansens
b79b70620f
add stackabove test, that lets you move a client window just above a specified window in the stacking order
2010-09-16 17:24:11 +02:00
Dana Jansens
6865e538a3
80 cols
2010-09-16 17:24:11 +02:00
Mikael Magnusson
a4a5fc866d
Continue parsing contexts when an unsupported one is encountered
2010-09-16 17:24:11 +02:00
Mikael Magnusson
1ffc002132
Make the dock a context and add actions LowerDock and RaiseDock
2010-09-16 17:24:11 +02:00
Mikael Magnusson
48d36cd587
Move usage of iconh into the branch that assigns it
2010-06-26 13:55:41 +02:00
Mikael Magnusson
128909214a
settings can't be NULL here, or we'd have already crashed anyway
2010-06-26 13:46:55 +02:00
Mikael Magnusson
a1bb01c92e
Use a gsource instead of gio channels for watching x events
...
Fixes not getting some focusin events sometimes.
2010-06-25 13:08:00 +02:00
Dana Jansens
de7c3f466f
obt returns libxml2 structures directly, so anyone linking against it better also link to libxml2
2010-06-16 13:26:11 -04:00
Dana Jansens
aa3685d16a
add XFlush to g_timeout callbacks
...
GMainLoop doesn't cause an flush to occur after handling a timeout.
2010-06-14 13:52:21 -04:00
Dana Jansens
79cf72d17f
Fix the EXTENTS reported on window frames.
...
Change the order things are done on map, so we apply startup state without
any states set first, thus getting all the functions possible for the window
type etc. then change the order states are applied, as some remove the
ability to apply others (ie fullscreen comes last).
Add an oldsize to ObFrame that remembers the size of the frame last reported to
the world through the EXTENTS property. If you frame_adjust_area(FAKE) then
frame_adjust_area(NONFAKE), the EXTENTS would not be updated since the
oldsize wasn't remembered across fake updates.
Make the extentsrequest test ask about windows with states set also.
2010-06-14 12:40:15 -04:00
Dana Jansens
e1a51bdf10
keep stacking_list_tail a pointer to the tail of the stacking list
2010-06-14 12:19:01 -04:00
Dana Jansens
6d95e2441a
allow a user to set "undecorated" on a window without decorations
...
if not based on window type, the app may decide to have decorations again
sometime. this was not always legal but chromium has made it so.
2010-06-14 12:19:01 -04:00
Dana Jansens
c36b89ba12
add an inotify watcher for directories (doesnt work without inotify yet)
2010-06-14 12:19:01 -04:00
Dana Jansens
fd77a0a7b3
Use GMainLoop instead of ObtMainLoop
2010-06-14 12:19:01 -04:00
Dana Jansens
2e94af28e4
save the list of mime types listed as supported by an application
2010-06-03 13:57:47 -04:00
Dana Jansens
b025a0268f
parse app Categories better. parse a list of strings into a gchar**
2010-06-03 13:53:19 -04:00
Dana Jansens
78a8f407a9
parse Categories tag and save them as an array of GQuarks
2010-06-03 13:09:38 -04:00
Dana Jansens
a6141fe7a4
improved .desktop parsing.
...
properly (and quickly) check for existence of required keys
figure out what an app can open from its exec key
validate the %fields in an app's exec key
2010-06-03 12:10:54 -04:00
Dana Jansens
d9d65b7385
free the user's group ids
2010-06-03 11:58:13 -04:00
Dana Jansens
19e051a466
free the path dirs
2010-06-03 11:56:15 -04:00
Dana Jansens
475961e17f
parse Path, Terminal, and StartupNotify
2010-05-21 20:10:34 -04:00
Dana Jansens
0c8c9caba6
parse OnlyShowIn/NotShowIn
2010-05-21 20:03:21 -04:00
Dana Jansens
632eb08227
allow new windows on other desktops to get focused if specified in a per-app rule
...
you can not client_active() with user=false and desktop=true and activate things on other desktops, by the general focus steal restrictions, if you wanted to do that sorta thing
2010-05-21 16:56:09 -04:00
Mikael Magnusson
fa39954c9d
Allow sending windows on other desktops to the current desktop.
2010-05-20 17:19:05 -04:00
Mikael Magnusson
46ca54fd81
Add some more conditions to the If action
...
It can now match on window titles, virtual desktop (number, "current",
"other"),
demands_attention, and undecoratedness.
2010-05-20 16:19:21 -04:00