GuiWorkArea::Private::Private(GuiWorkArea * parent)
-: p(parent), buffer_view_(nullptr), lyx_view_(nullptr),
- caret_visible_(false), need_resize_(false), preedit_lines_(1),
- last_pixel_ratio_(1.0), completer_(new GuiCompleter(p, p)),
- dialog_mode_(false), shell_escape_(false), read_only_(false),
- clean_(true), externally_modified_(false), needs_caret_geometry_update_(true)
-{
-/* Qt on macOS and Wayland does not respect the
- * Qt::WA_OpaquePaintEvent attribute and resets the widget backing
- * store at each update. Therefore, we use our own backing store in
- * these two cases. */
-#if QT_VERSION >= 0x050000
+ : p(parent), completer_(new GuiCompleter(p, p))
+{
+ /* Qt on macOS and Wayland does not respect the
+ * Qt::WA_OpaquePaintEvent attribute and resets the widget backing
+ * store at each update. Therefore, we use our own backing store
+ * in these two cases.
+ */
use_backingstore_ = guiApp->platformName() == "cocoa"
|| guiApp->platformName().contains("wayland");
-#else
-# ifdef Q_OS_MAC
- use_backingstore_ = true;
-# else
- use_backingstore_ = false;
-# endif
-#endif
int const time = QApplication::cursorFlashTime() / 2;
if (time > 0) {
void updateScreen(QRectF const & rc);
///
- GuiWorkArea * p;
+ GuiWorkArea * p = nullptr;
///
- BufferView * buffer_view_;
+ BufferView * buffer_view_ = nullptr;
///
- GuiView * lyx_view_;
+ GuiView * lyx_view_ = nullptr;
/// Do we need an intermediate image when painting (for now macOS and Wayland)
- bool use_backingstore_;
+ bool use_backingstore_ = false;
///
QImage screen_;
/// is the caret currently displayed
- bool caret_visible_;
+ bool caret_visible_ = false;
+ ///
+ bool needs_caret_geometry_update_ = true;
///
QTimer caret_timeout_;
DoubleClick dc_event_;
///
- bool need_resize_;
+ bool need_resize_ = false;
/// the current preedit text of the input method
docstring preedit_string_;
/// Number of lines used by preedit text
- int preedit_lines_;
+ int preedit_lines_ = 1;
/// the attributes of the preedit text
QList<QInputMethodEvent::Attribute> preedit_attr_;
/// Ratio between physical pixels and device-independent pixels
/// We save the last used value to detect changes of the
/// current pixel_ratio of the viewport.
- double last_pixel_ratio_;
+ double last_pixel_ratio_ = 1.0;
///
GuiCompleter * completer_;
/// Special mode in which Esc and Enter (with or without Shift)
/// are ignored
- bool dialog_mode_;
+ bool dialog_mode_ = false;
/// store the name of the context menu when the mouse is
/// pressed. This is used to get the correct context menu
/// when the menu is actually shown (after releasing on Windows)
///
support::FileName file_name_;
///
- bool shell_escape_;
+ bool shell_escape_ = false;
///
- bool read_only_;
+ bool read_only_ = false;
///
docstring vc_status_;
///
- bool clean_;
- ///
- bool externally_modified_;
+ bool clean_ = true;
///
- bool needs_caret_geometry_update_;
+ bool externally_modified_ = false;
}; // GuiWorkArea