Commit 981c7b91 authored by Clément Stenac's avatar Clément Stenac

Don't continously resize mozilla plugin window - Closes #139

parent e1b29a6a
...@@ -92,6 +92,9 @@ ...@@ -92,6 +92,9 @@
# define VOUT_PLUGINS "xvideo,x11,dummy" # define VOUT_PLUGINS "xvideo,x11,dummy"
# define AOUT_PLUGINS "oss,dummy" # define AOUT_PLUGINS "oss,dummy"
static int i_previous_height = -1;
static int i_previous_width = -1;
static void Redraw( Widget w, XtPointer closure, XEvent *event ); static void Redraw( Widget w, XtPointer closure, XEvent *event );
static void Resize( Widget w, XtPointer closure, XEvent *event ); static void Resize( Widget w, XtPointer closure, XEvent *event );
#endif #endif
...@@ -661,6 +664,7 @@ NPError NPP_SetWindow( NPP instance, NPWindow* window ) ...@@ -661,6 +664,7 @@ NPError NPP_SetWindow( NPP instance, NPWindow* window )
XResizeWindow( p_plugin->p_display, p_plugin->window, XResizeWindow( p_plugin->p_display, p_plugin->window,
p_plugin->i_width, p_plugin->i_height ); p_plugin->i_width, p_plugin->i_height );
Widget w = XtWindowToWidget( p_plugin->p_display, p_plugin->window ); Widget w = XtWindowToWidget( p_plugin->p_display, p_plugin->window );
XtAddEventHandler( w, ExposureMask, FALSE, XtAddEventHandler( w, ExposureMask, FALSE,
(XtEventHandler)Redraw, p_plugin ); (XtEventHandler)Redraw, p_plugin );
XtAddEventHandler( w, StructureNotifyMask, FALSE, XtAddEventHandler( w, StructureNotifyMask, FALSE,
...@@ -943,6 +947,14 @@ static void Resize ( Widget w, XtPointer closure, XEvent *event ) ...@@ -943,6 +947,14 @@ static void Resize ( Widget w, XtPointer closure, XEvent *event )
event->xconfigure.height, event->xconfigure.height,
event->xconfigure.send_event ? "TRUE" : "FALSE" ); event->xconfigure.send_event ? "TRUE" : "FALSE" );
} }
if( p_plugin->i_height == i_previous_height &&
p_plugin->i_width == i_previous_width )
{
return;
}
i_previous_height = p_plugin->i_height;
i_previous_width = p_plugin->i_width;
#endif /* X11_RESIZE_DEBUG */ #endif /* X11_RESIZE_DEBUG */
i_ret = XResizeWindow( p_plugin->p_display, p_plugin->window, i_ret = XResizeWindow( p_plugin->p_display, p_plugin->window,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment