Commit Graph

45 Commits

Author SHA1 Message Date
Carsten Haitzler 4b31fe5050 xkb module - fix possible use of uninitialized var 2016-12-28 19:55:24 +09:00
Chris Michael 3a714c6e04 add missing EINA_UNUSED for unused function parameters
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-12-15 10:17:19 -05:00
Michaël Bouchaud (yoz) 15c0d46050 xkbswitch: rewrite the config panel to improve the gui design 2016-12-11 21:25:17 +01:00
Marcel Hollerbach 1aea5ab079 e_xkb: reconfig when we have set a new set of layouts
When in the config dialog a new set of layouts is created, this set has
to be told to the displayserver. Like at the startup of e, so calling
e_xkb_reconfig().

fix T3072
2016-05-12 21:02:40 +02:00
Mike Blumenkrantz 5d300bcb46 fix usage of e_object_unref in xkbswitch when managing new kbd dialog
probably harmless?
2016-05-11 15:40:09 -04:00
Shuhrat Dehkanov 79e1928427 xkbswitch: establish parent/child relationship
Summary:
There is an edge case that results in SIGFAULT in Enlightenment when
"Keyboard Settings" dialog is closed prior to "Add New Configuration"
dialog and "OK" button is pressed in the latter one.
This makes sure that closing the dialogs follows the parent/child logic.

@fix

Test Plan:
1. Go to Settings -> All -> Input -> Keyboard and press "Add"
2. Observe that "Add New Configuration" dialog is opened
3. Select/highlight any new layout
4. Go back to "Keyboard Settings" dialog and close it
5. Press "OK" in "Keyboard Settings" dialog
6. Observe that Enlightenment sigfaults

Reviewers: zmike, raster

Subscribers: cedric, seoz

Differential Revision: https://phab.enlightenment.org/D3901
2016-04-18 12:00:20 -04:00
Marcel Hollerbach 19db5f256c e_xkb: init before e_comp_wl init
for the case e_xkb gets initialized, we need to init it before ecore_drm
is called, otherwise ecore_drm will create his own context and keymap,
which will be overriden a few moment later when e_xkb is initializied.
So by calling e_comp_wl_input_keymap_set before ecore_drm_init the
correct context and keymap is set and no useless elements are created.

The mainproblem is that the comp_type is set when the compositor is
already running, so we have to pass the type at the init to the e_xkb
to tell for which kind of compositor we are running.
2016-03-24 20:54:03 +01:00
Mike Blumenkrantz bbd4d2fbae force changed when adding or removing keyboard layouts in config
fix T3208
2016-02-26 16:45:44 -05:00
Mike Blumenkrantz 4ef9d9e518 attempt to maintain currently-selected kbd layout when modifying kbd list
the previous behavior would just set up the new layouts, resulting in
the first layout in the list being applied. now it should be the case
that if the current layout has not been deleted, it will continue to
remain in effect; alternatively if the current layout has been modified,
it's now more likely to be picked up and used
2015-09-22 14:17:35 -04:00
Mike Blumenkrantz b2357f73c8 add xkb options scroller as subobj to toolbook widget
ensure chain of e_widgets for cfd changed policy

fix T2146
2015-04-09 18:01:52 -04:00
Mike Blumenkrantz 81584412e1 set xkb dialog as changed after adding a new layout
ref T2271
2015-04-09 15:15:04 -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 ed48508850 use elm scroller for xkb options
fix T2007
2015-02-17 18:16:54 -05:00
Mike Blumenkrantz 3fc96af2dd Revert "revert all the ui breakes in e - going the wrong direction in the"
This reverts commit 3ea6a3569d.
2015-01-15 03:04:42 -05:00
Carsten Haitzler 3ea6a3569d revert all the ui breakes in e - going the wrong direction in the
first place anyway. shoudl replace the entire dialgo one at a time by
an elm version not try and stuff elm widgets into where e widgets used
to be. this doesnt improve e's config dialogs, just makes them buggy
as all hell in the name of a move to elm.

Revert "e_widget_button -> elm_button conversion"
This reverts commit b1c976d80d.

Revert "update widget size hints when setting a resize object"
This reverts commit fdab0218b2.

Revert "remove no-longer-necessary size hinting in list widgets"
This reverts commit 21479f5019.

Revert "e_widget_textblock -> elm_entry conversion"
This reverts commit 8fe2f00f75.

Revert "e frame -> elm_frame conversion"
This reverts commit e9da6a02fc.

Revert "remove unnecessary size hinting"
This reverts commit b596623efd.

Revert "e_label -> elm_label conversion"
This reverts commit 049b318679.

Revert "set evas size hint min in widget min size"
This reverts commit 2f09aa2fda.

Revert "e_table -> elm_table conversion"
This reverts commit 6434012982.

Revert "remove unused vars"
This reverts commit b19e706b23.
2015-01-15 12:13:53 +09:00
Mike Blumenkrantz 6434012982 e_table -> elm_table conversion
if rebases were monopoly money, this commit would be able to buy mediterranean ave.

 #teamborker
2015-01-13 22:44:55 -05:00
Carsten Haitzler 6510e8bd0e Revert "all dialogs are now resizable"
This reverts commit 9157ca8ca7.

this also makes all dialogs that have content in a toolbar that goes
off window at min size resizable - this is actually what you wanted ..
bgut this previous "all dialogs are resizable" thing was uber-lazy.

Conflicts:
	src/modules/bluez4/e_mod_main.c
	src/modules/conf_bindings/e_int_config_signalbindings.c
	src/modules/conf_theme/e_int_config_theme.c
	src/modules/mixer/conf_gadget.c
	src/modules/shot/e_mod_main.c
2014-12-22 23:02:05 +09:00
Mike Blumenkrantz 99589eb5af remove E_Win+e_canvas, convert all internal wins to use elm_win
known issues:

* keybindings for efm windows (eg. ctrl+w) are broken until the rest of the conversion is completed
2014-11-20 15:26:21 -05:00
Chris Michael e8edb6d2ed add missing EINA_UNUSED for function param
Signed-off-by: Chris Michael <devilhorns@comcast.net>
2014-05-17 17:56:25 +01:00
Mike Blumenkrantz 9157ca8ca7 all dialogs are now resizable
any bug reports regarding issues resulting this will be ignored.
2014-05-14 13:00:35 -04:00
Chidambar Zinnoury e045d2c287 e xkbswitch: Add check changed. 2014-04-21 15:56:04 +02:00
Chidambar Zinnoury 2b870ed318 e xkbswitch: Align indentation. 2014-04-21 15:56:04 +02:00
Chidambar Zinnoury 51935ac26d Bugfix: e xkbswitch: Disable both up and down buttons when there is only one configuration. 2014-04-21 15:56:04 +02:00
Mike Blumenkrantz 86656e4df9 compositor rewrite / charlie-foxtrot situation
huge fustercluck commit because there wasn't really a way to separate out the changes. better to just rip it all out at once.

* compositor and window management completely rewritten. this was the goal for E19, but it pretty much required everything existing to be scrapped since it wasn't optimized, streamlined, or sensible. now instead of having the compositor strapped to the window manager like an outboard motor, it's housed more like an automobile engine.

** various comp structs have been merged into other places (eg. E_Comp_Zone is now just part of E_Zone where applicable), leading to a large deduplication of attributes

** awful E_Comp_Win is totally dead, having been replaced with e_comp_object smart objects which work just like normal canvas objects

** protocol-specific window management and compositor functionality is now kept exclusively in backend files

** e_pixmap api provides generic client finding and rendering api

** screen/xinerama screens are now provided directly by compositor on startup and re-set on change

** e_comp_render_update finally replaced with eina_tiler

** wayland compositor no longer creates X windows

** compositor e_layout removed entirely

* e_container is gone. this was made unnecessary in E18, but I kept it to avoid having too much code churn in one release. its sole purpose was to catch some events and handle window stacking, both of which are now just done by the compositor infra

* e_manager is just for screensaver and keybind stuff now, possibly remove later?

* e_border is gone along with a lot of its api. e_client has replaced it, and e_client has been rewritten completely; some parts may be similar, but the design now relies upon having a functional compositor

** window configuration/focus functions are all removed. all windows are now managed solely with evas_object_X functions on the "frame" member of a client, just as any other canvas object can be managed.

*** do NOT set interceptors on a client's comp_object. seriously.

* startup order rewritten: compositor now starts much earlier, other things just use attrs and members of the compositor

* ecore_x_pointer_xy_get usage replaced with ecore_evas_pointer_xy_get

* e_popup is totally gone, existing usage replaced by e_comp_object_util_add where applicable, otherwise just placed normally on the canvas

* deskmirror is (more) broken for now

* illume is totally fucked

* Ecore_X_Window replaced with Ecore_Window in most cases

* edge binding XWindows replaced with regular canvas objects

* some E_Win functionality has changed such that delete callbacks are now correctly called in ALL cases. various dialogs have been updated to not crash as a result

comp files and descriptions:

e_comp.c - overall compositor functions, rendering/update loop, shape cutting

e_comp_x.c - X window management and compositor functionality

e_comp_wl.c - Wayland surface management and compositor functionality

e_comp_canvas.c - general compositor canvas functions and utilities

e_comp_object.c - E_Client->frame member for managing clients as Evas_Objects, utility functions for adding objects to the compositor rendering systems

additional authors: ivan.briano@intel.com

feature: new compositor

removal: e_border, e_container, e_popup
2014-01-14 20:22:02 -05:00
Mike Blumenkrantz 893b867070 add option for disabling all keyboard layout changes
SVN revision: 83674
2013-02-06 10:51:54 +00:00
Mike Blumenkrantz 7846f013c9 reformat xkbswitch config dialog
dear q66,

using scopes randomly does not increase the happiness of readers

sincerely,
your pal,
mike


SVN revision: 83673
2013-02-06 10:30:28 +00:00
Mike Blumenkrantz 271f92f912 ahh never too late for an API/ABI break. e_icon_file_get now returns edje group, which fixes fileman border icons
ticket #rasternaggedme


SVN revision: 81387
2012-12-19 17:00:10 +00:00
Carsten Haitzler d65ddc4d66 ok - so not 2 times...
SVN revision: 80603
2012-12-10 11:59:34 +00:00
Carsten Haitzler ff143d0ad8 xkb keyboard list add dialog resizable++
SVN revision: 80592
2012-12-10 11:00:57 +00:00
Mike Blumenkrantz a682563d94 xkb add new layout dialog now resizable
SVN revision: 80588
2012-12-10 09:45:31 +00:00
Mike Blumenkrantz a83a32a2f9 various config dialogs which contained tall/wide lists are now resizable
SVN revision: 80311
2012-12-06 08:25:47 +00:00
Mike Blumenkrantz 68e6b07cd7 all dialogs are no longer resizable
SVN revision: 80032
2012-12-03 09:24:12 +00:00
Mike Blumenkrantz b247496406 ton of xkb fixes:
* e will no longer lose your currently selected layout on restart
* desklock layout switching now works real güd
* new e_config values to determine current and current user-selected kbd layout
* wasted my entire morning doing this

ticket #1538



SVN revision: 77356
2012-10-03 09:00:12 +00:00
Mike Blumenkrantz 95e28d5c4c fix stringshare usage
SVN revision: 76889
2012-09-20 07:34:07 +00:00
Mike Blumenkrantz 27e182fb59 formatting
SVN revision: 76888
2012-09-20 07:30:07 +00:00
Mike Blumenkrantz 2434f5adbe more PATH_MAX cleanups
SVN revision: 75520
2012-08-22 07:32:12 +00:00
Carsten Haitzler 887dfcf3d9 e17 xkb patch building on ecore new event api. patch from:
http://trac.enlightenment.org/e/ticket/1306

but modified formatting and no theme changes.



SVN revision: 75410
2012-08-18 11:41:23 +00:00
Chidambar Zinnoury d5ff48244f e xkbswitch module: change to keyboard in all user-visible strings.
SVN revision: 73466
2012-07-08 10:36:00 +00:00
Vincent Torri b9bd60aad8 E17: dont mix declaration and code
SVN revision: 71392
2012-05-24 06:02:14 +00:00
Vincent Torri 1aeae0786f whitespaces--
SVN revision: 71390
2012-05-24 05:49:08 +00:00
Carsten Haitzler db7437e047 use E as class, not xkb switcher
SVN revision: 71304
2012-05-22 07:12:51 +00:00
Carsten Haitzler 1994364e64 fix only label option for gadget and filter out kbd layotu swithcing
options - use bindings.



SVN revision: 70612
2012-05-02 07:28:46 +00:00
Carsten Haitzler 5a00507e2b xkb config put into core. xkb layout is set on startup now (last one
used). removed setting up and deletion of keybindings - now its in
normal keybindings config territory. set them up yourself. much more
solid now. happy.



SVN revision: 70552
2012-04-30 09:52:05 +00:00
Carsten Haitzler c90e3c1517 work on some todo items i left for xkbswitch.
gagdte looks nicer now
flags aspect ratio is correct now based on each flag
name of kbd layout only appears on mouseover
fixed buffer overflow possibility in execution.



SVN revision: 70534
2012-04-29 03:47:53 +00:00
Carsten Haitzler c1699d13a0 finally - xkbswitch into core e. needs some polishing work. what i
have done here beyond just "copy the code" is:

1. fix up some code that was useless (didnt need to be done).
2. reformat all the code to be closer to efl/e style guidelines
3. add flags to the gadget popup menu to change keyboard
4. fix lots of warnings
5. fix some correctness in c - () vs (void)
6. added q66 to AUTHORS
7. made it use _() intl macro, not D_() (needed)
8. put xkbswitch module stuff in theme (need some prettying/work)
9. added some XXX: comments on things to do

right now xkbswithc is actually very powerful (thanks q66) but its not
that user-friendly. it lets you add a short-list of "keyboard layouts"
you nee/duse. the gagdet lets you quick-switch between them. this
actually works. it has nice little flaggy things to try help you out.

what we probably need to do is:

1. fix a buffer overflow waiting to happen in the kbdswitch changing.
XXX'd
2. add a wizard page asking for kbd layout
3. double-check that "last used kbdlayout" is actually turned on
4. move xkbd config to core e config (not separate in module)
5. pretty up the gagdet (add a shadow around the flag, some
placeholder if no flag is selected etc.)
6. go over the xkb parser - it looks fragile from a read

:)




SVN revision: 70531
2012-04-28 04:09:56 +00:00