Commit Graph

10068 Commits

Author SHA1 Message Date
Mike Blumenkrantz df4ada7e75 fix ecore-x cflags/libs inclusion for e binary
these variables will always exist
2015-04-22 21:18:53 -04:00
Mike Blumenkrantz e383b5b55a always register E_EVENT_RANDR_CHANGE
failing to register this will cause event handlers for it to fail
on creation
2015-04-22 21:18:53 -04:00
Mike Blumenkrantz e1181c4d03 create e_comp during e_comp_init, set comp_type automatically
this simplifies comp creation slightly
2015-04-22 21:18:53 -04:00
Mike Blumenkrantz de0b1b2d39 add E_PIXMAP_TYPE_NONE
null type currently only used during comp init
2015-04-22 21:18:42 -04:00
Mike Blumenkrantz 881e0ab805 move all x11-related randr code into e_comp_x_randr.c 2015-04-22 16:16:05 -04:00
Mike Blumenkrantz 7104e637ef _config_screen_find() -> e_randr2_config_screen_find() 2015-04-22 16:07:58 -04:00
Mike Blumenkrantz b4e65519d1 move acpi lid status tracking from e_randr to e_acpi 2015-04-22 16:05:16 -04:00
Mike Blumenkrantz 853d04592e move e_randr internal screen changing timer -> e_randr2_screen_refresh_queue() 2015-04-22 16:04:36 -04:00
Mike Blumenkrantz 98068e9b9c add e_acpi_lid_is_closed() for returning cached state of computer lid 2015-04-22 15:50:05 -04:00
Chris Michael 57611c6d2f e-comp-wl: Init randr if we are not wayland only
This is needed for the wl-x11 module

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-22 10:46:41 -04:00
Mike Blumenkrantz 0bad7b6025 unadjust frame coords when calculating wl surface placement during commit
ec->y -> unadjust -> ec->client.y
2015-04-21 16:19:30 -04:00
Mike Blumenkrantz f254531182 use pointer hash for wl pixmaps 2015-04-21 15:57:18 -04:00
Mike Blumenkrantz f276023e71 pass surface resource when creating wl surface pixmaps 2015-04-21 15:41:10 -04:00
Mike Blumenkrantz e869cb9649 disable client color editor for non-X clients for now 2015-04-21 15:21:19 -04:00
Mike Blumenkrantz 96f07bff8a wl client pixmaps now use a different method for creating the pixmap id 2015-04-21 15:19:20 -04:00
Mike Blumenkrantz 6e222cede8 add wl client event callbacks at lower priority
this ensures that bindings will activate before events are passed to clients
2015-04-21 15:17:56 -04:00
Mike Blumenkrantz b825af34cf use client geom for comp object centering functions if ec->new_client is set 2015-04-21 15:05:25 -04:00
Chris Michael 9b7358aa32 e-comp-wl: Don't crash if we fail to create a new e_client
This "should" fix T2344 crashing, however I suppose a better question
is ... why is e_client_new returning NULL when it Does find the client
already in the hash...

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-21 09:38:00 -04:00
Conrad Meyer 90fe5a4d0d e_auth: Add suid helper for lokker own-pw checking on FreeBSD
Summary:
PAM on FreeBSD, unlike on Linux, does not allow users to check their own
password. Instead, we need a suid helper to do it for us. Add such a
helper on FreeBSD.

For now, it is limited to checking users in the local password database
(traditional Unix passwd file). This could and should be extended to use
PAM in a later patch.

Test Plan:
Tested empty pw, wrong pw, correct pw at lock screen; observed correct behavior
in each instance.

Reviewers: q66, zmike

Reviewed By: q66, zmike

Subscribers: cedric, seoz

Differential Revision: https://phab.enlightenment.org/D2355
2015-04-21 13:11:56 +01:00
Tom Hacohen 99b8d84485 Auth: try harder when clearing passwords.
Based on http://www.daemonology.net/blog/2014-09-04-how-to-zero-a-buffer.html

Thanks again to Matthew Garrett, for pointing this out on twitter.
2015-04-21 10:45:01 +01:00
Tom Hacohen acfdda6c7f E auth: improve clearing out passwords from memory.
Optimising compilers (like gcc/clang with -O1 or above) were optimising
out the memset(). Until link time optimisations are good enough, this
will prevent them from doing so. The best solution would be to use
memset_s() (c11), though it's not readily available yet. This is the
first step towards using memset_s() with a fallback for systems who
don't have it. A better solution, is to put it in Eina, to prevent LTO
completely. This will have to be done after the EFL release.
Even this is not entirely safe though, but at least it protects us from
some memory disclosure issues.

This doesn't solve the fact that we may store a copy of the password in
other places, like the input system. We need to address that too.

Thanks to Matthew Garrett for pointing this out or Twitter.
2015-04-21 10:19:48 +01:00
Carsten Haitzler 9eaac75ae2 e - e_client - fix added printf
665caad451 fix added a printf i didn't
notice - fix.
2015-04-21 11:00:24 +09:00
Carsten Haitzler 665caad451 e client - desk wait - ref it properly and clean up delfn
delfn's on desks being referred to as profile.wait_desk were never
cleared when client was freed. als the desk itself never got an obj
reference - fix that and ref/unref it.
2015-04-21 09:36:33 +09:00
Carsten Haitzler c746beb202 e - xsettings - calloc buffer since we leave 3 of 4 bytes unset
the first 4 bytes is a msb/lsb thing for xsetttings - we ignore 3 of
the 4 bytes. thus we should just calloc the whole buffer to ensure its 0
2015-04-21 08:52:19 +09:00
Derek Foreman 1fb1f17db0 Fix wayland compositor on 32 bit systems
Summary:
_e_elm_win_trap_show() treats Ecore_Window as a 64bit data type when
it's actually the same size as the system's pointer type.

 #24HourFullPowerNoToiletNoShower

Reviewers: devilhorns, zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2388

fix T2194
2015-04-20 18:18:20 -04:00
Mike Blumenkrantz 12d6cf8f3b fix submenu visibility during scroll
sometimes while quickly moving the cursor through menu items with submenus
the visibility flag would toggle more quickly than the menu object's visibility.
this is no longer the case
2015-04-20 18:08:07 -04:00
Jean Guyomarc'h ba975e702f e_backlight_main: fix compiling when not having Eeze
Summary:
EINA_UNUSED is defined in Eina. Since we are not using the program at all,
let's void main()'s arguments instead of trying to ignore them.

Test Plan: tested only on OSX, unbreaks the build.

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2387
2015-04-20 17:03:22 -04:00
Mike Blumenkrantz ea7ec93af8 clear app menu cache any time a desktop is edited internally
ref T2271
2015-04-20 16:04:48 -04:00
Mike Blumenkrantz 3eaf4e8638 add function for clearing app menu cache
ref T2271
2015-04-20 16:04:31 -04:00
Mike Blumenkrantz 934d541795 use client geometry for starting unmaximize calculations
the resize operations in this function operate off client geometry, so
stop using frame geometry

fix T2170
2015-04-20 14:32:21 -04:00
Mike Blumenkrantz 14f44ef6e3 fix pixmap image clearing based on pixmap type
!@%!@$#!# borkerhorns!!!!!!

invalidates T2291
2015-04-16 14:39:09 -04:00
Stefan Schmidt 83572a3edb e_client: Remove self assignment from e_comp
Hopefully the last one of these self assignments.

CID 1291840
2015-04-16 17:00:08 +02:00
Mike Blumenkrantz af59e95b28 fix return value in backlight helper exe on non-freebsd systems
ref D2337
2015-04-14 20:37:47 -04:00
Mike Blumenkrantz 5dd146e7e4 fix nocomp_override conditional which would inaccurately toggle nocomp
hooray gcc 5.0
2015-04-14 20:26:21 -04:00
Conrad Meyer 4fc5495f4e backlight: Use basic ACPI sysctl knob on FreeBSD (kernel)
Summary:
Unconditionally build the suid-helper _backlight program; conditionalize
behavior on Eeze, FreeBSD (doing nothing on neither). Add logic to set
the FreeBSD sysctl in a similar manner to udev devices on Linux.

Add _bl_sys_find/_get helpers for FreeBSD that check for and consult the
video ACPI sysctl.

Test Plan:
Seems to work okay on my laptop (with EINA_CPU_FAKE=1 to workaround a threadq
race that I believe is unrelated -- T2287).

Reviewers: zmike, q66

Reviewed By: q66

Subscribers: cedric, seoz

Differential Revision: https://phab.enlightenment.org/D2337
2015-04-14 14:20:33 +01:00
Mike Blumenkrantz 785cb47b89 set E_Exec_Instance desktop during client idler if none present
ref T2284
2015-04-13 16:16:37 -04:00
Mike Blumenkrantz 668de186ac fix desktop editor entry widget parenting
fix T2283
2015-04-13 15:46:00 -04:00
Mike Blumenkrantz db9348c16f do not attempt to re-center fullscreen/maximized internal windows
fix T2279
2015-04-13 15:39:30 -04:00
Mike Blumenkrantz f1438a4187 toggle comp_hidden and grab input while client color editor is active 2015-04-13 13:20:29 -04:00
Chris Michael 4d46aae57c e-comp-wl: Remove unused variable
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-12 09:28:26 -04:00
Mike Blumenkrantz 128338952e remove cslider widget
no longer used
2015-04-09 16:37:16 -04:00
Mike Blumenkrantz e569758fef remove csel widget
no longer used
2015-04-09 16:36:41 -04:00
Mike Blumenkrantz aeca417ebe redo color dialog to use elm colorselector
this is waaaaaaay less functional and good-looking, but at least it doesn't
crash
2015-04-09 16:34:00 -04:00
Mike Blumenkrantz 155a678ff4 make entry widget call changed callbacks on "changed" again
this caused infinite loops before, but now I'm removing the things that looped.

fixes a lot of config dialogs

ref T2271
2015-04-09 16:32:24 -04:00
Mike Blumenkrantz daf7f19837 don't redo min size hints on e_dialog show
these are guaranteed to be wrong because elm won't provide accurate size
hints without some arm twisting
2015-04-09 16:31:32 -04:00
Mike Blumenkrantz 01d27333b0 force dialogs to recalc content sizes before setting min size 2015-04-09 16:16:33 -04:00
Mike Blumenkrantz 5b2ab97ffc fix entry sizing in file props dialog
ref T2271
2015-04-09 15:19:10 -04:00
Mike Blumenkrantz 7ef480d1a6 set desktop editor appselector dialog to be resizable
ref T2271
2015-04-09 15:12:47 -04:00
Mike Blumenkrantz 276706ab9d match client dialogs to client's layer
a small annoyance for literally over a decade has been that window
dialogs would sometimes start behind their owners. now they don't.
2015-04-09 14:40:41 -04:00
Mike Blumenkrantz 57ade8c5ae raise deskmirror windows on startup
these get added bottom -> top on creation, so ensure that they are raised
2015-04-09 14:20:28 -04:00
Mike Blumenkrantz a3c6b7ada4 always lower e_layout children upon packing
fixes issues where a new child added would appear above other child objects
if the new child was meant to be stacked below other children

mostly noticeable in deskmirror
2015-04-09 14:20:28 -04:00
Mike Blumenkrantz 59b49538b1 remove layer setting from deskmirror
smart child objects can't have layers. apparently.
2015-04-09 14:20:28 -04:00
Carsten Haitzler da4d1ecfe8 add options to randr2 to ignore acpi and hotplug randr events. 2015-04-09 15:44:07 +09:00
Mike Blumenkrantz a73d2583c5 don't crash on wl shutdown
devilhorns? more like crasherhorns imo
2015-04-08 14:56:05 -04:00
Chris Michael fa68ec127d e_comp: Only need 'type' variable if we are building with HAVE_WAYLAND
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-08 14:49:17 -04:00
Mike Blumenkrantz 93e0ebd4e1 only call e_comp_wl_shutdown() for wayland compositors 2015-04-07 19:30:44 -04:00
Chidambar Zinnoury b637a4f586 Bugfix: e dialog: don’t crash when using the escape key to close.
Commit 99589eb5af introduced this bug as the callback creation wasn’t changed to suit the new prototype and stil passed a window object.
2015-04-06 21:53:21 +02:00
Mike Blumenkrantz 6e4710cc91 remove e_color_class 2015-04-06 15:26:36 -04:00
Mike Blumenkrantz 2fc7b0169c move colorclass config to use elm infra, redo cc dialog to use new editor
this will allow all colorclasses present in the current theme to be edited
instead of only the hardcoded ones in the module. it will also require
completely new translations, for which translators will need to read the edc
files of the default theme (cleverly located in another repo) and provide
translations to the _translate() callback in the theme module

the editor currently lacks indicators for active/type on the colorclass
list, but this can be added in time. meanwhile, a large amount of code is
no longer duplicated or maintained in this repo
2015-04-06 15:26:36 -04:00
Mike Blumenkrantz bdc0a6ab8b fix wl randr error message string 2015-04-06 14:29:47 -04:00
Mike Blumenkrantz e62ca8c671 make application color editor follow client geometry on move/resize 2015-04-06 12:39:07 -04:00
Mike Blumenkrantz 3498c6caf8 add colorclass editor to app menu 2015-04-05 16:27:18 -04:00
Mike Blumenkrantz da149ba021 block ignored clients from lost client list 2015-04-03 20:57:52 -04:00
Carsten Haitzler c85c02ab0d e - lost windows menu is back. no windows menu does not handle it.
fix lack of lost windows submenu. no - windows menu does not handle
it. lost windows lists windows that are LOST - out of screen bounds.
this happens a lot with some apps asking to be placed out of bounds
for whatever silly reasons they have. you literally cannot get these
windows back without this menu. bring it back!

@fix
2015-04-03 17:53:26 +09:00
Stefan Schmidt f848a8abec e_module: Whitelist geolocation module 2015-04-02 15:14:11 -04:00
Mike Blumenkrantz 617c2d96ff move wl E_Client creation to same place as E_Pixmap creation
ensure that surface manipulation functions will succeed even with no shell surface
2015-03-30 12:13:04 -04:00
Mike Blumenkrantz 73abc46c61 remove useless wl comp code for shape exports 2015-03-30 11:07:29 -04:00
Mike Blumenkrantz fbbc508430 decrement e_comp->new_clients counter when unsetting new_client flag on wl cursor clients 2015-03-25 12:33:35 -04:00
Chris Michael 4c541d3b32 fix debug message for wl_output_bind
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-03-21 16:59:48 -04:00
Chris Michael 5916823f79 add debugging when output gets bound, and fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-03-21 16:30:11 -04:00
Derek Foreman 73db701a92 wayland compositor: remove _e_comp_wl_client_focus()
Summary:
We now have a subset of that functionality in e_comp_wl_input.c, so use
that function instead.  The missing bits are moved into the one remaining
caller.

Reviewers: zmike, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2207
2015-03-20 15:26:09 -04:00
Derek Foreman 3f7bbaa5ef wayland compositor: Send keyboard enter events on get keyboard
Summary:
Now when a client gets the keyboard global it will immediately be sent
a keyboard enter event if appropriate.

Reviewers: zmike, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2206
2015-03-20 15:21:40 -04:00
Derek Foreman def3ac82ae wayland compositor: Remove focus_update from compositor client data
Summary:
The only use for this was sending keyboard enter events on first commit
after a focus during app startup, and this has proven to be unreliable.

NOTE: Focus before an app requests the keyboard global is now broken and
will be fixed in a following patch.

Reviewers: zmike, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2205
2015-03-20 15:13:25 -04:00
Mike Blumenkrantz 24887ddccc move comp fake layer init into canvas init for non-X compositors 2015-03-20 15:12:59 -04:00
Mike Blumenkrantz 9986311035 move E_Comp->root window setting into e_comp_wl_init() for wl compositors 2015-03-20 15:08:28 -04:00
Mike Blumenkrantz 85376125e0 remove e_util_head_exec() 2015-03-20 15:04:58 -04:00
Mike Blumenkrantz 736b6e587f remove E_Remember->prop.head
head is always 0
2015-03-20 15:03:45 -04:00
Mike Blumenkrantz c727545bb2 remove E_Comp->num
num is always 0
2015-03-20 14:59:19 -04:00
Mike Blumenkrantz dedf4cd896 remove manager references in desk name/profile configs 2015-03-19 17:10:26 -04:00
Mike Blumenkrantz a94668927c remove shelf manager/container references in config 2015-03-19 17:03:44 -04:00
Mike Blumenkrantz 8ed4ee3b38 remove E_Comp->x/y
canvas coords start at 0,0...always
2015-03-19 16:59:59 -04:00
Mike Blumenkrantz b6eb319146 remove manager/container id from bg/wallpaper things 2015-03-19 16:54:50 -04:00
Mike Blumenkrantz 58447e9508 completely remove E_Manager
the final step in flattening all the canvas/screen apis
2015-03-19 16:53:32 -04:00
Mike Blumenkrantz dbcd03044e remove manager number from e_bg functions
this is no longer relevant; related code will be removed soon
2015-03-18 19:12:32 -04:00
Mike Blumenkrantz 471dcb24cb __UNUSED__ -> EINA_UNUSED
this has been bugging me forever. __UNUSED__ is no longer a valid macro here.
2015-03-18 18:09:09 -04:00
Mike Blumenkrantz f9fc4b13de remove E_Comp usage from fileman/fwin 2015-03-18 17:40:04 -04:00
Mike Blumenkrantz eb029f94f7 remove E_Comp usage from internal menus 2015-03-18 17:31:56 -04:00
Mike Blumenkrantz d466fe3824 remove E_Comp usage from e_comp_wl 2015-03-18 17:30:49 -04:00
Mike Blumenkrantz ef7ad52521 remove E_Comp usage from e_font 2015-03-18 17:25:20 -04:00
Mike Blumenkrantz 8f15e7c89f remove E_Comp usage from e_comp_canvas 2015-03-18 17:24:00 -04:00
Mike Blumenkrantz 2faae1d5f1 remove most E_Comp usage from e_comp_x 2015-03-18 17:20:36 -04:00
Mike Blumenkrantz 138e84370d remove most E_Comp usage from e_comp 2015-03-18 17:14:54 -04:00
Mike Blumenkrantz 089ef5aa14 remove E_Comp from e_configure registry callbacks 2015-03-18 16:33:47 -04:00
Mike Blumenkrantz 75c9d9babd remove E_Comp from e_resist apis 2015-03-18 16:28:24 -04:00
Mike Blumenkrantz 2454621bcd remove E_Comp from e_fm_prop_file() 2015-03-18 16:17:11 -04:00
Mike Blumenkrantz 6805ec3a72 remove E_Comp from color dialog 2015-03-18 16:10:35 -04:00
Derek Foreman 1ed503281f wayland-compositor: Clamp to 1, 1 on drag resize
Summary:
Apparently negative values mean "pick a size", though this is
undocumented.

Reviewers: devilhorns, zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2191
2015-03-18 15:53:44 -04:00
Mike Blumenkrantz e330067acb remove E_Comp from object/about dialogs 2015-03-18 11:48:46 -04:00
Mike Blumenkrantz 2cb00285fd remove E_Comp from E_Client_Layout_Cb 2015-03-18 11:37:27 -04:00
Mike Blumenkrantz 33f341c75d e_desktop_border_edit -> e_desktop_client_edit 2015-03-18 11:36:12 -04:00