we see it 100's of times during build. disabling this. the comments
etc. are still there, but more value in commenting out than keeping it
so we can see the forest from the trees.
instead of loading them from user32.dll
Summary: current mingw-w64 declare these functions
Test Plan: compilation
Reviewers: zmike, raster, cedric
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8644
Summary:
this is the event which informs an app of its current size
also use the HWND from the msg pointer to avoid invalid access in
the WM_SIZE event which passes different message data
Reviewers: vtorri
Reviewed By: vtorri
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D6033
Summary: This monitor window is just used to receive events when mutiple
monitors are available. it should not be managed by the ecore loop
(creation and destruction events), so initting it earlier means
ecore_win32 attaches less memory/overhead to it as it's just being
used for notifications for devices.
Test Plan: DrMemory to check used memory
Reviewers: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D5736
This fixes cycles of init/shutdown/init where ecore event types would
become invalid, since they are now stored in a dynamic array rather than
a statically stored array.
The risk here is that if a module of EFL tends to init/shutdown in a
"normal" scenario then the event type array will grow in a leaking
manner. This could be fixed by resetting those event ID's only when the
loop actually exits (EFL_EVENT_DEL on the main loop). I'm not using
EFL_EVENT_DEL in this patch as this would add too many event callbacks
to the main loop object, which may result in slightly slower event calls
to it, affecting the overall performance.
Test Plan: run on XP
Reviewers: jpeg, cedric, ajwillia.ms
Reviewed By: ajwillia.ms
Subscribers: ajwillia.ms
Differential Revision: https://phab.enlightenment.org/D5245
Summary:
In case if WM_SYSKEYDOWN or WM_SYSKEYUP events are handled in
DefWindowProc - system doesn't init event for a system shortcuts.
For example any EFL application on Windows couldn't be closed by
Alt+F4 combination.
@fix
Test Plan:
Launch Elemenatry_test app.
Try to close by Alt+F4 combination.
Reviewers: vtorri, raster
Reviewed By: raster
Subscribers: an.kroitor, bowonryu, cedric, jpeg, #eflete
Differential Revision: https://phab.enlightenment.org/D4477
If Ctrl+number combination pressed/unpressed function
_ecore_win32_event_keystroke_get return NULL. It happens because
ToUnicode WinAPI func fails to prepare unicode string for given scancode
and the keyboard state.
This commit add exception for the case with digits keys. In case if
there no translate
string, but the digit key processed - will be created a normal event as
usual.
After the support of the X11 cursors on Windows, the cursors were set for the whole
window (even the borders). Now we let the system use the default cursors for the borders
and we use the cursors set by the API for the client area only
This reverts commit 3ce8860dab.
Apply only to mouse wheel case. Button press/release wans't problem actually.
If I correct, this is caused because of different nature of window systems.
Anyway our Ecore_Event_Mouse values should keep consistency among the various systems.
Ecore_Event_Mouse_* x, y values are relative to the current window position
as well as the root x, y, values are relative to the root window.
previously, x,y is started from the root window and root x, y values are invalid.
fix them
@fix
If "keyname" and "key" are NULL an Ecore_Event_Key is allocated
throught calloc. strlen() is called on these variables, which crashes
the program. As it is not correct to return a key event for NULL
keys to ecore, it is preferrable to return NULL and exit the function
before the key event is allocated, which fixes the crash in the same
time.
@fix
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
To avoid flickering, we have to manage WM_ERASEBKGND. This message
is sent because CS_HREDRAW and CS_VREDRAW are used when registering
the window class. So just omit CS_HREDRAW and CS_VREDRAW.