Commit Graph

9386 Commits

Author SHA1 Message Date
Emmanuel Lepage Vallee 16fe91d5f3 awful.client: Add a new section for layout related functions
The new stateful layout system try to avoid coupling and therefor
doesn't use these methods. It is not planned to deprecate the
stateless layout API, so these functions are just kept as-is with
the old naming convention.
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee d44d83fdb6 awful.client: Refactor all marked function into a property
This is unused internally since Awesome 3.2. There is probably 0 users
of this left, but I don't want to break the API.
2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee 43f1561f26 awful.client: Convert all remaining functions to methods. 2016-04-11 23:54:28 -04:00
Emmanuel Lepage Vallee e15fea6a46 awful.client: Use the explicit @function tag for each helpers
This allow them to be placed in the right category.
2016-04-11 23:54:27 -04:00
Emmanuel Lepage Vallee 0c1e4e3a2b awful.client: Move `urgent` in their own submodule 2016-04-11 23:54:27 -04:00
Emmanuel Lepage Vallee 587fc1fbb4 awful.client.shape: Turn into a client submodule. 2016-04-11 23:54:27 -04:00
Emmanuel Lepage Vallee 608f3eb7cf awful.client: Add an is_fixed property 2016-04-11 23:54:27 -04:00
Emmanuel Lepage Vallee dfdb6aedf7 awful.client: Document the new signals. 2016-04-11 23:54:27 -04:00
Emmanuel Lepage Vallee 9027cabd8c awful.client: Move `dockable` to the property system
Note that the setter is no longer necessary and is implicitly
generated.
2016-04-11 23:54:27 -04:00
Emmanuel Lepage Vallee fad55a868b awful.client: Move the focus related methods into a submodule 2016-04-11 23:54:22 -04:00
Emmanuel Lepage Vallee 29feceb80d documentation: Merge awful.client and client pages
ldoc doesn't allow to specify fields from class "A" into class "B",
so the only solution is to merge the 2.

Also, one of the most common complain on IRC since Awesome 3.0 is
that the client API doc is  confusing since it is in 2 different files.

Also restore the `awful.client` doc link, point to `client`

This will avoid broken links.
2016-04-11 23:46:10 -04:00
Emmanuel Lepage Vallee 82342f055c awful.client: Deprecate .floating.get/set
Begin to formalize the getter/setter syntax into a coherent one
2016-04-11 23:46:10 -04:00
Emmanuel Lepage Vallee 828543c838 gears.object.properties: Support 'obj.is_something'
Used when there a property is set by mutators instead of accessors.
2016-04-11 23:46:10 -04:00
Emmanuel Lepage Vallee 5655521ec3 client: Use the new @property and @beautiful tags.
Also improve the documentation.
2016-04-11 23:46:10 -04:00
Emmanuel Lepage Vallee e5f7a27860 documentation: Add various tags and fix section order.
Previously, the `Signals` section was shown before the `Functions`.
This was confusing and different from other framework documentation.

It partially work. Not all ldoc output display the functions at the
top, but some does. Previously, none did.

This commit also add 3 new sections:

 * property: For object properties, replacing the "fields" table
   from the current documentations.
 * deprecated: For deprecated methods
 * beautiful: For widgets theme options
2016-04-11 23:46:10 -04:00
Emmanuel Lepage Vallee 11f0620d7c awful.key: Add a function to execute keybindings 2016-04-11 23:46:10 -04:00
Uli Schlachter cf9e45e5d9 Merge branch 'randr-stuff' 2016-04-10 11:46:06 +02:00
Emmanuel Lepage Vallee 8d95610363 placement: Fix a minor issue with closest_corner
It was using the wrong matrix in 2x2 mode.
2016-04-10 03:27:20 -04:00
Uli Schlachter 8a63c589a6 Update root window size on RandR notify
The code that claims to do what XRRUpdateConfiguration() would do was actually
wrong. That function does not send any requests to the X11 server, but it just
updates the local, in-memory state.

This commit makes us do the same: We update the size of the root window if it
changed. The code is directly inspired from the code in libXrandr.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-04-09 16:06:21 +02:00
Uli Schlachter cb46a1163e Update root window size on ConfigureNotify
This commit copies part of what XRRUpdateConfiguration() would do. When the root
window is resized, we update the information that the X11 server sent to us when
we connected to it to contain the new size of the root window.

This is 50% ugly, but having our own copy of the root window size would be 51%
ugly, so it's better to write to the XCB-owned structure.

Right now this is all dead code anyway, because we restart anyway, but since the
goal is to get rid of that restart, this is a step in the right direction (e.g.
root.size() will automatically return the new size).

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-04-09 15:56:44 +02:00
Uli Schlachter 80a6f2f510 Clean up static variables in event_handle
This function needs the event numbers for events from some extensions. These are
assigned dynamically by the server. Right now, this is done by having a bunch of
static variables that are initialized when needed.

Refactor this to have a function event_init() instead that sets variable in
globalconf (where all of our state should be saved). Also, a preprocessor macro
is introduced to handle event dispatch which also looks a bit nicer.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-04-09 15:44:54 +02:00
Uli Schlachter 7863a5e65b gears.wallpaper: Use root.size()
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-04-09 15:19:46 +02:00
Uli Schlachter fe11c5abbf Add root.size()
This function returns the size of the root window.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-04-09 15:14:48 +02:00
Emmanuel Lepage Vallée 6e8337e26a Merge pull request #810 from Elv13/del_gears_screen
gears.screen: Merge into awful.screen
2016-04-06 23:44:44 -04:00
Emmanuel Lepage Vallee 8a0738a4bc gears.screen: Merge into awful.screen
gears modules usually don't depend on Awesome C-API. This code has
been placed there for unclear reasons.

Also, there is ongoing work to unify each "concepts" API into one
single page. Having `gears.screen` go against this effort.
2016-04-06 23:32:44 -04:00
Daniel Hahler 5eec87e043 Travis: move BUILD_APIDOC=true (Lua 5.2) to the beginning 2016-04-06 02:12:48 +02:00
Daniel Hahler 7116fda78d Travis: cleanup LGIVER matrix assignment 2016-04-06 02:06:35 +02:00
Daniel Hahler 7cbbfdf181 Travis: move luarocks install into single block 2016-04-06 02:06:35 +02:00
Daniel Hahler 9c76d2dbb6 Travis: build luajit from source (2.0.4 as of now) 2016-04-06 02:06:35 +02:00
Daniel Hahler b6810576b0 tests/run.sh: display number of errors [ci skip] 2016-04-06 01:54:18 +02:00
Uli Schlachter 9ea207afaa Revert "Only define screens after the config is loaded"
This reverts commit e6037b4738. It causes many
issues with non-trivial solutions that we first need to come up with. As a
middle ground, we will for now only emit signals if something changes after the
config is loaded.

See https://github.com/awesomeWM/awesome/issues/799.
2016-04-05 08:53:14 +02:00
Daniel Hahler a0e98c6157 travis-apidoc: shellcheck fixes, especially for non-empty GH_TOKEN 2016-04-05 00:59:29 +02:00
Daniel Hahler c85bbeafdb naughty.notify: handle non-existing screen, print a warning
Ref: https://github.com/awesomeWM/awesome/issues/796
2016-04-05 00:31:45 +02:00
Daniel Hahler b87dac5075 Merge branch 'travis-fix-apidoc-revs'
Closes https://github.com/awesomeWM/awesome/pull/807.
2016-04-05 00:29:06 +02:00
Daniel Hahler c431f06538 travis-apidoc: important note about valid json 2016-04-05 00:28:21 +02:00
Daniel Hahler a10431e7a4 travis-apidoc: reference PR only in merge commit for less noise in the PR 2016-04-05 00:27:57 +02:00
Daniel Hahler 7f17f6bc0f travis-apidoc: add link to pull request to commit messages 2016-04-05 00:23:25 +02:00
Daniel Hahler 755088e87a travis-apidoc: fix old/new revisions in PR comments 2016-04-05 00:23:16 +02:00
Daniel Hahler 742717ec22 doc: improve doc for awful.screen.focused 2016-04-04 23:49:43 +02:00
Daniel Hahler aae81b7e2a docs: add section about gdb to readme
This should maybe get added to a separate section/page altogether

instead, but in this short form it seems to fit here.
2016-04-04 22:44:49 +02:00
Daniel Hahler ce3e6648ac Travis: pin lua-term to 0.4-1 to fix the Lua 5.3 build
Ref: https://github.com/hoelzro/lua-term/issues/16
Ref: https://github.com/awesomeWM/awesome/pull/792#issuecomment-205123319
Closes: https://github.com/awesomeWM/awesome/pull/801
2016-04-04 20:57:28 +02:00
Daniel Hahler 0cbab1320c Travis: update luarocks: 2.2.2 => 2.3.0 2016-04-04 20:41:22 +02:00
Daniel Hahler 6d550d478c Merge pull request #800 from blueyed/doc-fixes
Some minor doc/typo fixes
2016-04-04 20:37:13 +02:00
Daniel Hahler ae17c66e27 Merge pull request #798 from blueyed/fix-crash-in-screen_getbycoord
Fix crash in screen_getbycoord without any screens [ci skip]
2016-04-04 20:34:12 +02:00
Daniel Hahler 187b32630f Merge pull request #797 from blueyed/display-screen-count-with-checkscreen
luaA_checkscreen: display number of existing screens with error

[ci skip]
2016-04-04 20:33:45 +02:00
Daniel Hahler c86c873779 minor: clarify mod-ctrl-shift-X comment; fix typo 2016-04-04 20:30:48 +02:00
Daniel Hahler df21a85a9a doc: fixes for spawn.with_line_callback 2016-04-04 20:30:48 +02:00
Daniel Hahler 5db280ab73 minor: doc / formatting 2016-04-04 20:30:44 +02:00
Uli Schlachter b643279e4a Fix crash in screen_getbycoord without any screens
Ref: https://github.com/awesomeWM/awesome/issues/793#issuecomment-205245346
2016-04-04 20:13:27 +02:00
Daniel Hahler 449974ca61 luaA_checkscreen: display number of existing screens with error
This is meant to be helpful in the case of 0 existing screens, e.g.
during executing the config initially.
2016-04-04 20:04:19 +02:00