While invesigating some clip & map issues, I found some very
strange piece of code:
{
tmp = a;
a = c;
a = tmp;
}
This actually comes from a very old code refactoring where a
line in-between was removed:
tobj = obj->cur.map_parent;
obj->cur.map_parent = obj->cur.clipper->cur.map_parent;
- evas_object_clip_recalc(obj);
obj->cur.map_parent = tobj;
Adding this line back there doesn't seem to do anything anyways.
So, let's just remove useless code.
For the record (legacy evas):
commit e1f6f3c5f239dfd95a307949acd5f98831c0c3c0
Date: Fri Aug 17 06:16:04 2012 +0000
evas/render - code refactoring.
SVN revision: 75351
The functions to take or release a session no longer accept session
name as a parameter, so fix calls to those functions
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
The session take/release functions no longer need the session name
paramater, so remove that.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
The session take/release functions no longer require the name of the
session, so remove the function parameter
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: These functions have been moved to the private header file
now, and thus this file is no longer needed.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Ecore_Drm_Device
Summary: This moves storing the session name and VT fields inside the
device structure. This also adds a field so we can store the keyboard
mode of the tty, and restore it on close.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This moves the logind function prototypes to the private
header and thus removes the need for a separate logind header file.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This moves the VT switch handling code to the tty file, and
sets the proper flags on the VT when opened.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This fixes a few issues with the logind code such as: Getting
the VT from systemd (if available), Properly setup the VT using proper
'open' flags, adding a 'restore' function to reset the tty properly,
and handle take/release session.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This cleans up the tty code a bit, and makes it the
responsibility of the tty code to handle VT switching signals
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This sets the default session to NULL when a device is
created. Also a formatting fix
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
take/release session control inside dbus functions
Summary: These changes move the storage of session name to inside the
Ecore_Drm_Device structure and remove calls to take/release session
control to outside of the dbus code
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Some complex examples of masking with mapped smart objects
would fail miserably, rendering the object without any mask,
and/or showing the mask itself somewhere in white color...
This @fix the parsing of dirs from the xdg env vars. Now always remove
the leading / char from the paths.
This was causing lots of trouble on my system, where XDG_DATA_DIRS is:
/usr/local/share/enlightenment:/usr/local/share:/usr/local/share/:/usr/share/
At first /usr/local/share was added 2 times in the list, one with the / and one
witout, causing a double lookup for each file.
Secondly the icon cache was totally unusable as the cached paths ended up
as: /usr/share//icons/Mint-X/places/32/folder.svg. The double / in there
was making the cache lookup to fail and anways return the biggest icon
available. Causing a big system slowdown whe searching for icons.
As a bonus the function now use eina_str_split instead of the custom splitting
code that require a bad special handling for the last item.
actually have a grabbed button
Summary: If we don't have an actual grabbed mouse button, then don't
send a mouse up event. Caught this while adding e_grabinput support to
Enlightenment.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
The memory usage graph was going up and to the right!
I was told this is always a good thing!
... maybe not this time :)
Hopefully I didn't forget a case. An intense session of
genlist scrolling with masks all over the place and masks
of masks didn't show any glitch, crash or memory leak.
The main difference between 1.12 and 1.13 memory foot print is actually
related to this two pointer to mask. I am wondering if there is not an
issue here also has we do have a duplicated pointer. We have prev_mask
and mask in both cur and prev state of an Evas_Object, but only mask
and prev_mask from the cur state seems to be accessed.
If we can remove two pointers from those state, we should have a decent
win in expedite benchmark. Hopefully 300KB to win there (Close to half
the additional cost in memory).
Summary: It turns out we don't need to handle open & setup of the tty
unless we are Not using systemd. This fixes an issue during
enlightenment restart where we are unable to reopen the tty.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: When we shutdown outputs, we should reset the hardware cursor
state and the saved crtc mode in order to reset things back to normal.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: When we are shutting down a tty, restore the old keyboard
mode that we retain from tty_setup.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: If we are using a touchscreen, there will be no pointer and
thus no cursor_name to use. Trap for that case by checking if
input->cursor_name is valid.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
The flag should be set on the mask itself.
Checking for (x,y) being inside the mask can be an expensive operation,
so further optimization will be required.
there are possible security implications by not checking values of
size fields to see if they are within the data range AND are not 0 or
negative. so do this.
@fix
Macros should be surrounded with do {} while() statements,
otherwise there can be issues, like the macro not requiring a semicolon
after the statement or etc.
@fix