Summary:
Commit rE5b992bdc4a76 added the free for the list, the list is filed
with static pointers from the .c file, soo free will crash.
This pointer does not need to be freed, just freeing the list.
Test Plan: Just run the wizard
Reviewers: zmike
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1679
Summary:
The module is now working like it is described in T1773.
What the patch really does:
If a join request can not be done cause there is no node in the
direction to join, the join will try to break out the node into the
grand-grand-parent, this means a node can break out of his parent
without walking done each parent.
Issue as described in the original ticket:
Each number represents a different window:
122
134
155
Focus on 3, press Win+Left
I'd expect it to become:
132
134
135
But instead, nothing happens.
Fixes T1773
Reviewers: tasn
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1632
Summary: As pointed out by shiin, this causes an infinite loop due to
e_client_ping already been called in the pre_frame callback. Thanks
for spotting this !! :)
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
The patch will setup e_client_cb_ping_poller and as long as wl_surface is
active it will unset hung
Signed-off-by: vivek <vivek.ellur@samsung.com>
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1608
Summary:
The patch will setup e_client_cb_ping_poller and as long as surface is
active it will unset hung
Signed-off-by: vivek <vivek.ellur@samsung.com>
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1607
Summary:
This implements the possibility to "break out" a node in the tree which
means that the node will be appended or prependen to the parent in the
grandparent.
The other function "joins" the node to the node before or after.
Basically it will be added as a child, and if necessarry the client
of this node will be added in a new Window Tree and also added as a child.
With the new actions you can move the focused window right/left/up/down
with keybindings.
If the window will "break out" or "join" depends on the parent split type.
Sample:
1|4|6
2|4|6
3|5|6
(Same Number means same Window)
1 is focused.
Left Key is pressed.
1 is in a vertical split so the window will "break out".
Result:
2|1|4|6
2|1|5|6
Now another key:
Down Key is pressed.
1 is in a vertical split so the window will "join".
Result:
1|2|4|6
3 3|5|6
@feature
Fixes T1350
Reviewers: tasn
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1382
In preferences we show which external applications can be used for
setting preferences. If several desktop environments are installed, this
list will have several duplicates, as there can be many different apps
for setting a preference.
With this setting we can filter out for one desktop_environment.
@feature
This feature allows to define an external mixer application, which replaces
the internal mixer.
Examples: 'terminology -e alsamixer', 'pavucontrol'
@feature
this re-commits this with tab fixes (no tabs)
This feature allows to define an external mixer application, which replaces the internal mixer.
Examples: 'terminology -e alsamixer', 'pavucontrol'
@feature
Summary:
shell_surface_destroy function is a common destroy function to destroy all type of surfaces and to remove redundancy in code
Signed-off-by: vivek <vivek.ellur@samsung.com>
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1421
users should keep in mind that this is not the fort knox of password storage, and someone who copies your config file could rainbow table a short password stored with this hash very easily. at some point in the future, if someone has the interest and time, perhaps this can be improved
fix T1627
If the function returned a handle to an object, the handle may be lost.
In _e_configure_fill_cat_list: Pointer returned from a function was
never used (CWE-563)
NB: Someone should have read EINA_LIST_FOREACH on this one ;)
Signed-off-by: Chris Michael <cp.michael@samsung.com>
NB: This makes use of newly added ecore_evas_screen_geometry_get of
the ecore_evas_drm code in order to get the current screen size and
adjust the ecore_evas accordingly.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
xdg_shell requires a parent surface in order to create a popup, so we
should check the validity of the parent resource and error out
accordingly
Summary: Signed-off-by: vivek <vivek.ellur@samsung.com>
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1388
bottom line, this is a pile-of-shit protocol to work with if you're compositing. at present, any xembeds which were present before a nocomp event will be permanently destroyed, and they can't be recovered until the app re-creates them. afaik, no app does this unless you restart it.
Summary:
This is a fix for bug T1553: [Teamwork Settings] Sliders Should Be Disabled When Select "Disable remote media fetching"
Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: zmike, devilhorns
Subscribers: cedric
Maniphest Tasks: T1553
Differential Revision: https://phab.enlightenment.org/D1375
Summary: mobile policy module provides user interface for small mobile devices like phones.
Test Plan: N/A
Reviewers: raster, devilhorns, zmike
Subscribers: seoz, zmike, cedric
Differential Revision: https://phab.enlightenment.org/D817
This feature allows to define an external mixer application, which replaces the internal mixer.
Examples: 'terminology -e alsamixer', 'pavucontrol'
@feature
This fix floats all the windows that don't fit because of their min size
restrictions.
It can be made better, at the moment it is very simple. An example
broken case would be the following:
Assume we have 3 windows, A, B and C.
B and C both hand a min width of half the screen.
First we create A, then B. Everything works as they share the screen,
but when we add C, both B's and C's restrictions "fail" so they are both
set to float although in reality, floating C is enough. This can be
fixed by doing a live scan of the tree every time a window is floated,
though it's not essential at the moment.
Fixes T952.
Don't set changes.icon during surface creation. There are functions
that get called when icccm.class changes and That is the place to set
changes.icon.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Additional authors: zmike
This fixes the issue of some wayland applications always showing up
with the e_border visible.
If we get a transient_set from wl_shell or xdg_shell, don't reset the
client's netwm.type. Some wayland applications are sending us
transient_set with parent to NULL....so don't explicitly set the
netwm.type to dialog.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: we also need to clear parent's resource.
Test Plan: N/A
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1238
really an error.
When we call shell_surface_parent_set with a NULL parent resource,
then there is No reason to try and find the pixmap window of a NULL
parent. Avoid that function call and just set the appropriate
properties and get out.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
When the new drm hw accel engine is ready, we can replace this little
bit of code and have hardware-accelerated drm.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
There are no resource free codes in xdg shell destroy handler
and xdg popup destroy handler. e should delete wayland resource as
client requested.
Test Plan:
1. run e as wayland server
2. run weston-stacking in e
3. click with right mouse button to create xdg popup surface
4. click main surface area to delete xdg popup surface
Reviewers: devilhorns, zmike, raster
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1196
Summary:
we need to set ec->parent before eval time.
that's because client can request to commit surface calling shell.configure() before eval time.
in this case, ec->parent isn't set yet, configure(move) will be failed.
in order to fix it, we have to set ec->parent in _e_shell_surface_parent_set() before eval time,
but we should check if ec already have parent, and if so, remove its parent's transients before change the value of ec->parent.
Test Plan: N/A
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1177
Summary: remove EINA_UNUSED from used function parameters
Test Plan: N/A
Reviewers: devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1173
Summary:
the value of "ec->parent" should be set in evaluation time,
therefore ec->parent->transients will be reset automatically.
Reviewers: devilhorns
CC: cedric
Differential Revision: https://phab.enlightenment.org/D1155
Summary: Clear the E_Client's parent if client request to set parent to null.
Test Plan: run weston-stacking.
Reviewers: devilhorns
CC: cedric
Differential Revision: https://phab.enlightenment.org/D1154
NB: This is done for wayland clients where e_client delete function
has already freed the client wl_comp_data Before we get a shell
surface destroy message from wayland. (occurs due to async nature).
Signed-off-by: Chris Michael <cp.michael@samsung.com>
When setting transient, tell the compositor that we need to reset the
window type for this surface.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
client->parent->modal code to the compositor side.
Also, after setting netwm.type, change the set_win_type in the
compositor data field so that the compositor will handle parent->modal
on next property fetch.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: add support for xdg_shell surface transient_for
Test Plan:
1. run e wayland server
2. run weston-stacking and set focus it
3. press 't' for creating transient_for surface
Reviewers: devilhorns, zmike, raster
CC: cedric
Differential Revision: https://phab.enlightenment.org/D1016
@feature
Summary:
there are no geometry restore codes in handler of
wl_shell_surface toplevel_set.
Test Plan:
1. run e wayland only server with devilhons's branch source (devs/devilhorns/e_comp_wl)
2. run terminology
3. make terminlogy surface to be maximized
4. make terminlogy surface to be un-maximized
5. move terminlogy surface
Reviewers: devilhorns, zmike, raster, stefan_schmidt
CC: cedric
Differential Revision: https://phab.enlightenment.org/D965
Summary: fullscreen_set handler for wl_shell_surface
Test Plan:
1. run e wayland only server with devilhons's branch source (devs/devilhorns/e_comp_wl)
2. run elementary_test -to "window states"
3. select fullscreen check box on elementary_test surface
Reviewers: devilhorns, zmike, raster, stefan_schmidt
Reviewed By: devilhorns
CC: cedric
Differential Revision: https://phab.enlightenment.org/D966
This fixes ticket T1526 - Selecting no input method would still allow
the configure button to be pressed, and items selected from the
language list.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Due to stupid_obj_del_workaround_hack, sound comes out during 3sec
even if media has been disappeared. Although the 3sec workaround should be gone,
pause media on close to fix the side effect.
Tiling wasn't being applied when enabling it with a new config because
we were comparing with the old config instead of just always applying.
This fixes T974.
Since icon/video will be drawn into livethumb's image canvas,
icon/video would be deleted on livethumb's deletion.
Therefore, don't register icon/video as comp object's del list.(duplicated deletion)
"frame_decode" callback shouldn't be invoked multiple time.
Summary:
add check new_gcc into the gadman's gadget add handler to prevent invalid ref_count increase
while moving between two zones. and also add object clean code for new_gcc and drag_gcc
when gadget is dropped.
Fixes T722
Test Plan:
1. create clock module on gadcon desktop (settings->gadgets, select "background" under layers, click "configure layer" and add a clock gadget).
2. drag clock gadget from one screen to the other. drop it there.
3. drag clock back to first screen
4. right click on clock and select "clock->remove".
Reviewers: raster, devilhorns, zmike
Subscribers: cedric
Maniphest Tasks: T722
Differential Revision: https://phab.enlightenment.org/D1256
this has been just way too confusing. i her user problems all the time
and they just cant see differences between connman module+gadget and
python econnman app.
we do need to have these settings in e in the end anyway... but until
then - disable
this dialog had a singl option in it - use shaped windows... and we
don't even use it anymore. remove the dialog to avoid confusion and
set use shaeped window to 0 - maybe config val could go entirely?
this will mean all users upgrading from e18 to e19 get the new preview
pager. thoose wanting the older plain pager can switch ti pager_plain.
anyon using git will find pager16 remove (or if still installed not
updated) so switch back to pager from pager16. :)