diff options
| author | ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> | 2023-05-22 09:05:07 +0200 |
|---|---|---|
| committer | ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> | 2023-05-22 09:05:07 +0200 |
| commit | 7020356df90630b93cf6be49681cc1547057f2ae (patch) | |
| tree | 8dddacdd2892fef31dafa9160a907cad247b4f58 /src/drivers | |
| parent | 60440632eeabaf8e9611d6a83b8b2ca958c2ea5b (diff) | |
Slightly re-organize class Fl_Wayland_Window_Driver
Diffstat (limited to 'src/drivers')
| -rw-r--r-- | src/drivers/Wayland/Fl_Wayland_Window_Driver.H | 5 | ||||
| -rw-r--r-- | src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx | 14 |
2 files changed, 9 insertions, 10 deletions
diff --git a/src/drivers/Wayland/Fl_Wayland_Window_Driver.H b/src/drivers/Wayland/Fl_Wayland_Window_Driver.H index 37e430c8f..ebcdfea5f 100644 --- a/src/drivers/Wayland/Fl_Wayland_Window_Driver.H +++ b/src/drivers/Wayland/Fl_Wayland_Window_Driver.H @@ -48,7 +48,6 @@ class Fl_Wayland_Plugin; class Fl_Wayland_Window_Driver : public Fl_Window_Driver { friend class Fl_Wayland_Gl_Window_Driver; - friend class Fl_Wayland_Screen_Driver; private: struct shape_data_type { int lw_; ///< width of shape image @@ -57,8 +56,7 @@ private: cairo_pattern_t *mask_pattern_; } *shape_data_; cairo_rectangle_int_t *subRect_; // makes sure subwindow remains inside its parent window - static bool in_flush; // useful for progressive window drawing - static Fl_Wayland_Plugin *gl_plugin(); + static bool in_flush_; // useful for progressive window drawing Fl_Cursor standard_cursor_; // window's standard custom kind void delete_cursor_(struct wld_window *, bool delete_rgb = true); struct gl_start_support *gl_start_support_; // for support of gl_start/gl_finish @@ -87,6 +85,7 @@ public: static inline Fl_Wayland_Window_Driver* driver(const Fl_Window *w) {return (Fl_Wayland_Window_Driver*)Fl_Window_Driver::driver(w);} static void resize_after_screen_change(void *data); + static Fl_Wayland_Plugin *gl_plugin(); // --- window data int decorated_w() FL_OVERRIDE; diff --git a/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx b/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx index 166628e99..3630ab06e 100644 --- a/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx +++ b/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx @@ -339,7 +339,7 @@ void Fl_Wayland_Window_Driver::make_current() { } // to support progressive drawing - if ( (!Fl_Wayland_Window_Driver::in_flush) && window->buffer && (!window->buffer->cb) && + if ( (!Fl_Wayland_Window_Driver::in_flush_) && window->buffer && (!window->buffer->cb) && !wait_for_expose_value ) { //fprintf(stderr, "direct make_current: new cb=%p\n", window->buffer->cb); Fl_Wayland_Graphics_Driver::buffer_commit(window); @@ -382,9 +382,9 @@ void Fl_Wayland_Window_Driver::flush() { int W = pWindow->w(); int H = pWindow->h(); float scale = fl_graphics_driver->scale(); - Fl_Wayland_Window_Driver::in_flush = true; + Fl_Wayland_Window_Driver::in_flush_ = true; Fl_Window_Driver::flush(); - Fl_Wayland_Window_Driver::in_flush = false; + Fl_Wayland_Window_Driver::in_flush_ = false; gl_plugin()->do_swap(pWindow); // useful only for GL win with overlay if (scale != fl_graphics_driver->scale() || W != pWindow->w() || H != pWindow->h()) gl_plugin()->invalidate(pWindow); return; @@ -396,9 +396,9 @@ void Fl_Wayland_Window_Driver::flush() { struct flCairoRegion* r = (struct flCairoRegion*)ip->region; if (!window->buffer || pWindow->as_overlay_window()) r = NULL; - Fl_Wayland_Window_Driver::in_flush = true; + Fl_Wayland_Window_Driver::in_flush_ = true; Fl_Window_Driver::flush(); - Fl_Wayland_Window_Driver::in_flush = false; + Fl_Wayland_Window_Driver::in_flush_ = false; if (window->buffer->cb) wl_callback_destroy(window->buffer->cb); Fl_Wayland_Graphics_Driver::buffer_commit(window, r); } @@ -475,7 +475,7 @@ void Fl_Wayland_Window_Driver::hide() { //fprintf(stderr, "After hide: sub=%p frame=%p xdg=%p top=%p pop=%p surf=%p\n", wld_win->subsurface, wld_win->frame, wld_win->xdg_surface, wld_win->xdg_toplevel, wld_win->xdg_popup, wld_win->wl_surface); free(wld_win); } - if (pWindow->as_gl_window() && in_flush) { + if (pWindow->as_gl_window() && in_flush_) { ip->xid = 0; ip->next = NULL; // to end the loop in calling Fl::flush() Fl::add_timeout(.01, (Fl_Timeout_Handler)delayed_delete_Fl_X, ip); @@ -990,7 +990,7 @@ static const struct xdg_popup_listener popup_listener = { .popup_done = popup_done, }; -bool Fl_Wayland_Window_Driver::in_flush = false; +bool Fl_Wayland_Window_Driver::in_flush_ = false; // Compute the parent window of the transient scale window static Fl_Window *calc_transient_parent(int ¢er_x, int ¢er_y) { |
