From d028f0b37d12636f1956ad59843d2dec96b12a91 Mon Sep 17 00:00:00 2001 From: ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> Date: Sun, 11 Sep 2022 19:45:48 +0200 Subject: Fix fl_read_image() under hybrid Wayland/X11 platform. Function fl_read_image() obliges to keep a minimal use of global variable fl_window also under the Wayland platform, even if its type (Window) makes little sense for the hybrid library because it has its X11 value (given by X11/X.h) which is not meaningful for the Wayland leg of the hybrid platform. Virtual member function Fl_Surface_Device::as_image_surface() becomes useless. --- FL/Fl_Device.H | 1 - FL/Fl_Image_Surface.H | 2 -- FL/platform.H | 3 --- FL/wayland.H | 2 ++ 4 files changed, 2 insertions(+), 6 deletions(-) (limited to 'FL') diff --git a/FL/Fl_Device.H b/FL/Fl_Device.H index 757aa6581..940ada1fc 100644 --- a/FL/Fl_Device.H +++ b/FL/Fl_Device.H @@ -92,7 +92,6 @@ public: } /** \brief The destructor. */ virtual ~Fl_Surface_Device(); - virtual Fl_Image_Surface *as_image_surface(); static void push_current(Fl_Surface_Device *new_current); static Fl_Surface_Device *pop_current(); }; diff --git a/FL/Fl_Image_Surface.H b/FL/Fl_Image_Surface.H index b09d7d4d3..1fea39604 100644 --- a/FL/Fl_Image_Surface.H +++ b/FL/Fl_Image_Surface.H @@ -82,7 +82,6 @@ public: int printable_rect(int *w, int *h); Fl_Offscreen offscreen(); void rescale(); - Fl_Image_Surface *as_image_surface(); }; @@ -113,7 +112,6 @@ protected: virtual void untranslate() = 0; int printable_rect(int *w, int *h); virtual Fl_RGB_Image *image() = 0; - virtual Fl_Image_Surface *as_image_surface(); /** Each platform implements this function its own way. It returns an object implementing all virtual functions of class Fl_Image_Surface_Driver for the plaform. diff --git a/FL/platform.H b/FL/platform.H index 75ec2f841..fbabca2fb 100644 --- a/FL/platform.H +++ b/FL/platform.H @@ -39,9 +39,6 @@ class Fl_Window; # include "mac.H" # elif defined(FLTK_USE_WAYLAND) # include "wayland.H" -# if !FLTK_USE_X11 - typedef struct wld_window *Window; -# endif # elif defined(FLTK_USE_X11) # include "x11.H" # endif // _WIN32 diff --git a/FL/wayland.H b/FL/wayland.H index 3c16dc22a..615d2afcf 100644 --- a/FL/wayland.H +++ b/FL/wayland.H @@ -45,6 +45,8 @@ extern FL_EXPORT EGLContext fl_wl_glcontext(GLContext rc); # if FLTK_USE_X11 // *********** for X11 component *********** # include "x11.H" +# else + typedef struct wld_window *Window; # endif #endif // FL_DOXYGEN -- cgit v1.2.3