Commit graph

7270 commits

Author SHA1 Message Date
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
Dana Jansens
9734564889 don't need a force_reply when changing the decor for a window
it will send a configurenotify if the client's rootwindow position changed
2010-05-20 16:18:04 -04:00
Dana Jansens
4eb9a0c59e client_update_protocols() doesnt change anything that would affect a client's decor or functions 2010-05-20 16:18:03 -04:00
Dana Jansens
da6753973f allows a window to unmax by resizing.
makes "clever" use of the client's pre_max_area values to allow this to happen
without flashing, and preserving them in case the user cancels the resize
after it has become unmaximized.
2010-05-20 16:18:03 -04:00
Dana Jansens
c129c23691 set the frame's initial size to something invalid so the extents hint will be
set for sure the first time.
2010-05-19 21:38:46 -04:00
Dana Jansens
53430914f0 set the interactive action to NULL before doing its cleanup phase
if the cleanup ends up cancelling the "current interactive action", it would
cause the end function to be called again, which sucks.  for instance if the
cleanup function uses the Focus action. this prevents the unwanted loop
into the interactive action cleanup.
2010-05-17 21:58:44 -04:00
Dana Jansens
9a826d8c3d fix focus when starting up, especially when replacing another instance of openbox
adds a function event_reset_time() that forces event_time() to look for a new (future) timestamp
2010-05-17 20:10:31 -04:00
Dana Jansens
ab7673c816 remove a debug print in the keyboard obt stuff 2010-05-17 19:34:41 -04:00
Dana Jansens
5450618297 avoid new gcc warning (casting ** to const** is not valid for good reason) 2010-05-17 19:31:57 -04:00
Dana Jansens
4463bb6e2f merge some contexts together in the default rc.xml mouse bindings 2010-05-17 19:31:57 -04:00
Dana Jansens
f307a3feab allow multiple contexts separated by space in a mouse binding
example: context="Top Left Right Bottom"
2010-05-17 19:31:51 -04:00
Dana Jansens
09d1d0434b turn off focuslast and on undermouse in mouse focus config example 2010-05-17 19:31:21 -04:00
Mikael Magnusson
3374fb2a88 Remove some unneeded stdlib.h includes 2010-05-17 19:31:21 -04:00
Mikael Magnusson
7a679dd198 Add support for using relative expressions in move and resize actions
Have MoveResizeTo use config_parse_gravity_coord instead of duplicating it locally
Allow MoveResizeTo positions and sizes and per app positions to be relative to screen size
Rename to config_parse_relative_number so it can be used for sizes too
Add relative numbers to width/height in MoveResizeTo
Add relative numbers to MoveRelative
Add relative numbers to ResizeRelative, these are for the client size, not screen size
2010-05-17 19:31:21 -04:00
Dana Jansens
1c637efcbb new enum values need to be handled in switches
(the new enum values were added to count the number of entries in the enums)
2010-05-17 19:31:21 -04:00
Dana Jansens
925e4c5979 fix typo in enum 2010-05-17 19:31:21 -04:00
Derek Foreman
48ad5f6ccd add _NUM_TYPES to obrender enums, to allow enumeration of the enum values 2010-05-13 15:10:02 -04:00
Dana Jansens
87443c956c show empty properties in obxprop 2010-05-11 23:43:29 -04:00
Dana Jansens
dd623f5b2f parse number values write in a hex string in obxprop 2010-05-11 23:31:03 -04:00
Dana Jansens
013df404a8 advance while parsing a hex input in obxprop 2010-05-11 23:29:18 -04:00
Dana Jansens
6e799ad40d add cleanup functions to the client list menus that removes everything from them when they are not being shown (saves iterating thru the list uselessly when a client is unmanaged) 2010-05-11 19:01:46 -04:00
Dana Jansens
3fd74abb3c add cleanup function for menus that fires when the menu is no longer visible 2010-05-11 19:01:33 -04:00
Dana Jansens
523a726c6c don't try go to selected submenu when there is nothing selected 2010-04-29 16:14:16 -04:00
Dana Jansens
b9b0284e3e use clicks in prompts 2010-04-28 22:05:44 -04:00