Loading src/events.c +1 −2 Original line number Diff line number Diff line Loading @@ -41,7 +41,6 @@ feh_event_handler *ev_handler[LASTEvent]; static void feh_event_handle_ButtonPress(XEvent * ev); static void feh_event_handle_ButtonRelease(XEvent * ev); static void feh_event_handle_ConfigureNotify(XEvent * ev); static void feh_event_handle_LeaveNotify(XEvent * ev); static void feh_event_handle_MotionNotify(XEvent * ev); static void feh_event_handle_ClientMessage(XEvent * ev); Loading Loading @@ -416,7 +415,7 @@ static void feh_event_handle_ButtonRelease(XEvent * ev) return; } static void feh_event_handle_ConfigureNotify(XEvent * ev) void feh_event_handle_ConfigureNotify(XEvent * ev) { while (XCheckTypedWindowEvent(disp, ev->xconfigure.window, ConfigureNotify, ev)); if (!menu_root) { Loading src/events.h +2 −0 Original line number Diff line number Diff line Loading @@ -32,4 +32,6 @@ extern feh_event_handler *ev_handler[]; void feh_event_init(void); void feh_event_handle_ConfigureNotify(XEvent * ev); #endif src/winwidget.c +10 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include "filelist.h" #include "winwidget.h" #include "options.h" #include "events.h" static void winwidget_unregister(winwidget win); static void winwidget_register(winwidget win); Loading Loading @@ -776,6 +777,15 @@ void winwidget_show(winwidget winwid) /* wait for the window to map */ D(("Waiting for window to map\n")); XMaskEvent(disp, StructureNotifyMask, &ev); /* Unfortunately, StructureNotifyMask does not only mask * the events of type MapNotify (which we want to mask here) * but also such of type ConfigureNotify (and others, see * https://tronche.com/gui/x/xlib/events/processing-overview.html), * which should be handled, especially on tiling wm's. To * remedy this, the handler is executed explicitly: */ if (ev.type == ConfigureNotify) feh_event_handle_ConfigureNotify(&ev); D(("Window mapped\n")); winwid->visible = 1; } Loading Loading
src/events.c +1 −2 Original line number Diff line number Diff line Loading @@ -41,7 +41,6 @@ feh_event_handler *ev_handler[LASTEvent]; static void feh_event_handle_ButtonPress(XEvent * ev); static void feh_event_handle_ButtonRelease(XEvent * ev); static void feh_event_handle_ConfigureNotify(XEvent * ev); static void feh_event_handle_LeaveNotify(XEvent * ev); static void feh_event_handle_MotionNotify(XEvent * ev); static void feh_event_handle_ClientMessage(XEvent * ev); Loading Loading @@ -416,7 +415,7 @@ static void feh_event_handle_ButtonRelease(XEvent * ev) return; } static void feh_event_handle_ConfigureNotify(XEvent * ev) void feh_event_handle_ConfigureNotify(XEvent * ev) { while (XCheckTypedWindowEvent(disp, ev->xconfigure.window, ConfigureNotify, ev)); if (!menu_root) { Loading
src/events.h +2 −0 Original line number Diff line number Diff line Loading @@ -32,4 +32,6 @@ extern feh_event_handler *ev_handler[]; void feh_event_init(void); void feh_event_handle_ConfigureNotify(XEvent * ev); #endif
src/winwidget.c +10 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include "filelist.h" #include "winwidget.h" #include "options.h" #include "events.h" static void winwidget_unregister(winwidget win); static void winwidget_register(winwidget win); Loading Loading @@ -776,6 +777,15 @@ void winwidget_show(winwidget winwid) /* wait for the window to map */ D(("Waiting for window to map\n")); XMaskEvent(disp, StructureNotifyMask, &ev); /* Unfortunately, StructureNotifyMask does not only mask * the events of type MapNotify (which we want to mask here) * but also such of type ConfigureNotify (and others, see * https://tronche.com/gui/x/xlib/events/processing-overview.html), * which should be handled, especially on tiling wm's. To * remedy this, the handler is executed explicitly: */ if (ev.type == ConfigureNotify) feh_event_handle_ConfigureNotify(&ev); D(("Window mapped\n")); winwid->visible = 1; } Loading