Commit Graph

14120 Commits

Author SHA1 Message Date
Mike Blumenkrantz 71b387deea use inlist for wl surface list 2013-08-19 03:31:24 +01:00
Carsten Haitzler 8b65fe069c pollers by default are in 1/8th of a second in ecore.... 32 made no sense. 2013-08-18 21:36:19 +09:00
Carsten Haitzler d861d10042 setenv - store all strings so they continue to work if putenv is used 2013-08-18 21:31:14 +09:00
Carsten Haitzler 2520c73d04 check permissions on socket dirs and complain if they fail - fallback too 2013-08-18 21:28:03 +09:00
Carsten Haitzler 5f4027dbca save inhibit fd from systemd or fd is closed/lost and inhibit is lost! 2013-08-18 19:49:23 +09:00
Chris Michael 9d2b22553a Revert this button_count change for now (breaking move/resize here).
Revert "Remove button increments/decrements from interface callbacks as these"

This reverts commit 2dce6d935f.
2013-08-16 13:26:19 +01:00
Chris Michael 6a8524259a E configs ping interval for clients is in ticks. Wayland event source
timers are in mils ... let's do some multiplication here to stop
clients from pinging out all the time and getting killed.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-16 13:20:59 +01:00
Chris Michael 2dce6d935f Remove button increments/decrements from interface callbacks as these
are done in the mouse up/down callbacks.

NB: Thanks for the report Mike ;)

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-16 13:03:16 +01:00
Chris Michael e4924a5986 When surface gets destroyed, reset the pointer surface.
When calling pointer cursor set, if no current surface is focused then
unmap any existing pointer surface and set to NULL in the structure.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-16 11:56:17 +01:00
Chris Michael 1dca808f98 Get the pointer grab from the compositor's input
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-16 11:55:50 +01:00
Chris Michael 9e371c10c8 Get surface from the surface_resource data using
wl_resource_get_user_data function.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-16 09:55:23 +01:00
Chris Michael bd9da64552 No need to allocate a grab here if we are just setting busy cursor.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-16 09:51:20 +01:00
Chris Michael 9325324c03 Increment/Decrement button count in the button handlers, not in the
border hooks.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-16 09:49:52 +01:00
Chris Michael 85d881d57b On ping timeout, get grab coordinates from compositor, not from surface.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-16 09:46:27 +01:00
José Roberto de Souza c6ea785a86 Use eldbus_proxy to simplify systemd support 2013-08-15 14:21:23 -03:00
Chris Michael 4ea6be012b Remove call to ecore_evas_free (border tries to free this already).
Fix wayland-client application moving and resizing to work again.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-15 14:22:12 +01:00
Chris Michael 0ac1e9b3b9 Add edges to pointer grab for easier access during resize.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-15 14:22:12 +01:00
Mike Blumenkrantz b285449cfa try precise_is_inside for shaped windows...this may further break shaped overrides 2013-08-15 11:52:08 +01:00
Carsten Haitzler ea88d880a7 add systemd support to e_sys for shutdown/reboot/suspend/hibernate 2013-08-15 19:10:08 +09:00
Mike Blumenkrantz 900cc00b35 highlight correct keybinding when modifying an existing binding
T294
2013-08-15 09:46:44 +01:00
Mike Blumenkrantz 3f2a3848bd ensure that zone bg objects always get moved/resized during an update
T296
2013-08-15 09:46:44 +01:00
Mike Blumenkrantz 2679063067 send ibar icon signals even when app instances exist 2013-08-15 09:46:44 +01:00
Mike Blumenkrantz ca76e0f6e3 event mask comp shapes which set repeat_events more accurately 2013-08-15 09:46:44 +01:00
Mike Blumenkrantz 71d6c94b10 use e list macros for pager event handlers 2013-08-15 09:46:44 +01:00
Chris Michael 54d53d82f2 Define wayland compositor variable as externally visible (for people
using -fvisibility=hidden).

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-15 07:23:43 +01:00
Chris Michael 21f267d007 Fix bug in shell which was causing wayland clients to always have
input stuck in upper case if Shift was pressed than released.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-14 14:02:23 +01:00
Mike Blumenkrantz cf76a4b142 remove redundant pager desk selection for pager popups on flip 2013-08-14 13:46:21 +01:00
Mike Blumenkrantz 517d537dfa don't iterate over pager desks to set active/inactive, this is stupid. 2013-08-14 12:53:03 +01:00
Mike Blumenkrantz 5afa40b352 remove some old pre-comp pager cruft 2013-08-14 12:49:17 +01:00
Mike Blumenkrantz 64dff19707 ignore wl shell client move/resize end hooks for now
wayland has no concept of non-pointer-based move/resize, so if these get triggered by, eg. a keyboard action, we're pretty fucked
2013-08-14 08:05:57 +01:00
Mike Blumenkrantz bba1dcfad7 don't wl shell grab on inactive shell surfaces when trying to set busy cursor; fixes infinite loop caused by ping timeout 2013-08-14 07:53:46 +01:00
Chris Michael 37e2134cf7 Fix crash when trying to move wayland client applications.
Add callbacks for e_desktop_shell interface functions (cannot be NULL
anymore).
When we bind the wl_shell, we will create the e_desktop_shell.

NB: The e_desktop_shell was not being created or bound to the display
globals.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-13 14:51:00 +01:00
Chris Michael 3883a82fe9 Move module idler until After the display is connected.
Fix getting keyboard focused resource when a modifier is pressed.
Flush clients before we dispatch events (clients may add events to the
queue).

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-13 14:51:00 +01:00
Mike Blumenkrantz bf3ff4a5d1 gadman checks aspect hints during size hint change callback 2013-08-13 11:28:02 +01:00
Mike Blumenkrantz 3f001ea778 changing aspect on a non-layouted gadcon client sets evas aspect hint instead 2013-08-13 11:27:42 +01:00
Mike Blumenkrantz 1d324abd7a changing gadman gadget orientations using menu now guesses new orientation sizes much more accurately 2013-08-13 11:20:39 +01:00
Mike Blumenkrantz f92175c39f only add gadman menu orient callbacks if orient is not current orient 2013-08-13 11:20:15 +01:00
Mike Blumenkrantz 84dc539ddf ibar obeys max size hint 2013-08-13 11:04:55 +01:00
Mike Blumenkrantz 28cc3f0a0a gadman now respects gadget aspect and sets max size hint while resizing gadgets 2013-08-13 11:04:36 +01:00
Mike Blumenkrantz 0cc522d128 add max(w,h) to gadcon client struct, only used as yet-another-gadman-hack 2013-08-13 11:03:50 +01:00
Mike Blumenkrantz 0bb7ceb97c ibar now sets min size on init and then sets ASPECT on resize, since this is how we get correct sizing without being unable to ensmallen the gadget 2013-08-13 11:02:50 +01:00
Mike Blumenkrantz 3024562fcc bugfix: setting min size on a gadget now propagates to desktop gadgets 2013-08-13 10:22:24 +01:00
Sebastian Dransfeld 9fe06250d8 e: Use same XDG_RUNTIME_DIR template as efreet 2013-08-07 10:46:39 +02:00
Chris Michael 90ea063616 Fix Wayland Client Application Support to work again !! :)
- Add NULL handler for desktop_ready callback
 - Add separate binding callback function for the desktop shell
 - Create desktop shell resource with proper version.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-06 13:27:54 +01:00
Chris Michael 4dfb49a06e Add desktop_ready request to desktop_shell interface.
Fix desktop_shell events for recent protocol changes.
Bump number of desktop_shell requests.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-06 12:38:48 +01:00
Chris Michael e9f740cc47 Add "desktop_ready" function to desktop_shell interface.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-06 12:37:11 +01:00
Chris Michael 711a9c4690 Update desktop_shell xml file for version 2.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-06 12:36:48 +01:00
Chris Michael dfe66d1611 Add functions to surface interface for buffer_transform and
buffer_scale set.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-06 12:35:55 +01:00
Chris Michael 57a3a62981 When we try to re-enable a monitor, check the Crtc Mode (not the smart
object Current mode) to determine if it is already disabled.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-05 08:57:57 +01:00
Chris Michael b6fe0c8ff6 Don't do randr restore if we have fake screens. (requested by release
master) ;)

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-05 08:08:33 +01:00
Mike Blumenkrantz bc7883927e +e_xinerama_fake_screens_exist 2013-08-05 08:06:49 +01:00
Chris Michael 112a4091c4 When we have to calculate screen size, it May actually Help to get the
crtc id that we need to fetch values for.

NB: Phab Ticket T258

NB: /me slaps self

Signed-off-by: Chris Michael <devilhorns@comcast.net>
2013-08-02 17:06:55 +01:00
Chris Michael a7200ae02d Only create primary output frame if we have more than one monitor to
choose from.

Signed-off-by: Chris Michael <devilhorns@comcast.net>
2013-08-02 16:59:11 +01:00
Carsten Haitzler 212cfda19b as of e18 - we now are compositing only, which means we also don't
have to do a revers then forward paass in eval... which can cause ugly
things like reverse-evaluation :)
2013-08-02 23:06:22 +09:00
Chris Michael 6d3751a620 Remove duplicated local variable.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-02 11:36:52 +01:00
Chris Michael a39246c312 Remove return value in function returning void.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-02 11:36:07 +01:00
Chris Michael c48e7d21ce When we have finished creating all monitors, if there is only One
monitor existing, then disable the ability to toggle the indicator.

NB: This is for silly people who (for whatever reason) decide that
it's a good idea to try and turn off their Only monitor.

NB: Fixes Phab Ticket T257

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-02 11:07:52 +01:00
Chris Michael 9046a6b6f0 Add function to allow disable/enable of the indicator toggle.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-02 11:07:52 +01:00
Chris Michael 1aa4f1e39f Add function prototype for disable/enable of the toggle indicator.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-02 11:07:52 +01:00
Carsten Haitzler 7cf4bfd6d0 solve a race condition for stacking of windows if opened at the same
time by the same client.
2013-08-02 16:57:06 +09:00
Chris Michael e2cf7d3485 Handle case of snapping for monitor being moved.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-01 08:58:37 +01:00
Chris Michael 3f2e850259 Big giant Monitor Snapping Fix when we resize or move !! ;)
- Add previous monitor geometry to smart data structure.
- When we set the crtc, also set the monitor current geometry.
- Add function to return the previous monitor geometry.
- On a mouse up, check for monitor location difference versus previous
geometry, if nothing changed then we have no 'move' to do.
- When we start a resize, record the previous geometry and raise the
monitor.
- When a monitor is moved/resized we call the position_update function
which already loops all monitors, so no need to loop them twice.
- Fix position_update function to allow some Snapping Fuzziness so
that on a move/resize any adjoining monitors (within tolerance) will
more reliably snap to each other.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-01 08:25:09 +01:00
Chris Michael d2a0e36c85 Add function prototype for returning previous geometry.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-01 08:25:09 +01:00
maxerba 22f7a34e23 updating desktop files 2013-07-31 12:08:42 +02:00
Chris Michael b0e360599b Implement rudamentary monitor snapping after move.
After a monitor has been moved, snap it to the closest monitor.

NB: This should fix cases where a monitor could not be positioned next
to another monitor which had a resolution of 1368. Previously, the
second monitor could only move to 1366 due to a rounding issue when
converting coordinates to virtual. Now, the second monitor (when
finished moving) will Snap to the proper position.

NB: (Currently) In order for the snapping to work, either the
monitors' X axis or Y axis must be equal. Ideally, this should be
fixed to allow for some percentage of position flexibility.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-31 10:52:06 +01:00
Carsten Haitzler b566b6b2ce THIS like was a dos newline. it switched jed to dos newline mode! aaagh! 2013-07-30 20:30:19 +09:00
Carsten Haitzler 28fa7e84aa Revert "errr. why is git saying every line changed? wth?"
This reverts commit 3c3e076f15.
2013-07-30 20:26:28 +09:00
Carsten Haitzler 3c3e076f15 errr. why is git saying every line changed? wth? 2013-07-30 20:20:49 +09:00
Yossi Kantor ea8a5adad2 Bugfix: ibar popup doent show on additional screens just on main 2013-07-30 10:17:22 +09:00
Chris Michael 7f6285d9fd When we are re-enabling a monitor, do not free the mode info from the
smart data's list of modes. This will get freed when the dialog closes.

Fix some formatting for 80 columns.

NB: Should fix etrunko crash ;)

Signed-off-by: Chris Michael <devilhorns@comcast.net>
2013-07-26 16:36:52 +01:00
Mike Blumenkrantz a11443eb52 shouldn't be setting ignore on systray xembed base, this was needed when we were creating comp wins at the wrong time 2013-07-26 16:13:06 +01:00
Mike Blumenkrantz 37af538391 ensure that comp win's shape is shown when showing windows during comp win update nightmare 2013-07-26 16:11:49 +01:00
Mike Blumenkrantz c9589f53ef missed a comment on this debugging else here which may have broken the world if given the chance 2013-07-26 16:11:18 +01:00
Mike Blumenkrantz 4e7c4ac944 continue to ignore ignored comp wins in show event 2013-07-26 16:11:00 +01:00
Mike Blumenkrantz fa7744b4de fix ibar client menu to track multiple windows per exe 2013-07-26 14:42:48 +01:00
Mike Blumenkrantz 31ef04c0e6 block gadman drags originating from other gadcons
T251
2013-07-26 13:54:53 +01:00
Mike Blumenkrantz e63a3d9600 better fix for border theme remembers that doesn't break all borders... 2013-07-26 13:42:29 +01:00
Mike Blumenkrantz 7b6c705fd2 bugfix: border style remembers
T248
2013-07-26 13:15:48 +01:00
Mike Blumenkrantz d236e2acec bugfix: fileman double click auto-resizing now accounts for toolbar/sidebar and accounts for maximized state
T208
2013-07-26 12:52:57 +01:00
Mike Blumenkrantz 0923848dc1 move comp focus-out color class to Window Manager section in color config
T242
2013-07-26 12:34:11 +01:00
Mike Blumenkrantz f7496d1d35 only show a comp win when it is no longer animating from a hide() call
this should greatly reduce pixmap tearing when mousing through menus quickly
2013-07-26 12:27:48 +01:00
Mike Blumenkrantz 6f1bbcf029 creating comp wins on X win creation is totally broken: no X functions will work here until a window is mapped!
instead, create them after MapRequest event
2013-07-26 12:27:48 +01:00
Mike Blumenkrantz 41b485c1e3 add a bunch of commented debug messages in comp 2013-07-26 12:27:48 +01:00
Mike Blumenkrantz e1507217d9 simplify comp win dmg update adding on show; no functional changes 2013-07-26 12:27:47 +01:00
Mike Blumenkrantz a5f886ca90 a comp win resize is only a damage event if the window is visible 2013-07-26 12:27:47 +01:00
Mike Blumenkrantz 5c5db39068 unset damage updates when hiding window 2013-07-26 12:27:47 +01:00
Mike Blumenkrantz c6c7ef7f2b only update comp win pixmap if there are damage updates since this will fail otherwise 2013-07-26 12:27:47 +01:00
Mike Blumenkrantz ab7d0eea11 get comp win attrs when e_border not present; this is just a simplification and not functionally different 2013-07-26 12:27:47 +01:00
Mike Blumenkrantz 5f6e3017e9 don't set comp dumps/flushes for deleted comp wins 2013-07-26 12:27:47 +01:00
Mike Blumenkrantz d544048b0e add delete flag to e_border to alert us that this client window is dead 2013-07-26 12:27:47 +01:00
Mike Blumenkrantz 9e1d0627bb don't set managed/mapped atoms during hide if window was delete requested 2013-07-26 12:27:47 +01:00
Mike Blumenkrantz 3980c9a3cd only set client hints for withdrawn if client is not dead 2013-07-26 12:27:47 +01:00
Mike Blumenkrantz 07144c6c92 comp pixmap fetching before the window's first map will always fail, so it's enough to just let the render queue handle updating here 2013-07-26 12:27:47 +01:00
Mike Blumenkrantz 9a443b6fec only move/resize client lock_win if it exists 2013-07-26 12:27:47 +01:00
Mike Blumenkrantz b4990c0cd1 don't try sibling stacking the comp canvas to a non-sibling window 2013-07-26 12:27:47 +01:00
Mike Blumenkrantz 2746600db2 make e_hints setup slightly more clue-ful 2013-07-26 12:27:47 +01:00
Chris Michael 9e9651aad5 Setup XDG_RUNTIME_DIR before doing ecore_imf init.
NB: Ecore_IMF (when it uses the wayland module) needs to have
xdg_runtime_dir set. This change ensures that env variable is set
before we init ecore_imf.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-26 12:05:52 +01:00
Chris Michael 85eaf423b4 Use wl_resource_get_link when creating keyboard resource
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-26 12:05:31 +01:00
Stefan Schmidt 9638ed250c wl_screenshot: Remove non-existing file from SOURCES to fix distcheck 2013-07-25 13:37:26 +01:00
Chris Michael 395434a113 Properly check for primary output during new configurations.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-07-25 13:29:59 +01:00