qwidgetwindow.cpp

Absolute File Name:/home/qt/qt5_coco/qt5/qtbase/src/widgets/kernel/qwidgetwindow.cpp
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7__attribute__((visibility("default"))) extern bool qt_tab_all_widgets();-
8-
9QWidget *qt_button_down = 0;-
10-
11-
12QWidget *qt_popup_down = 0;-
13extern int openPopupCount;-
14bool qt_replay_popup_mouse_event = false;-
15extern bool qt_try_modal(QWidget *widget, QEvent::Type type);-
16-
17class QWidgetWindowPrivate : public QWindowPrivate-
18{-
19 inline QWidgetWindow* q_func() { return static_cast<QWidgetWindow *>(q_ptr); } inline const QWidgetWindow* q_func() const { return static_cast<const QWidgetWindow *>(q_ptr); } friend class QWidgetWindow;-
20public:-
21 QWindow *eventReceiver() override {-
22 QWidgetWindow * const q = q_func();-
23 QWindow *w = q;-
24 while (w->parent()
w->parent()Description
TRUEnever evaluated
FALSEnever evaluated
&& qobject_cast<QWidgetWindow *>(w)
qobject_cast<Q...etWindow *>(w)Description
TRUEnever evaluated
FALSEnever evaluated
&& qobject_cast<QWidgetWindow *>(w->parent())
qobject_cast<Q...>(w->parent())Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
25 w = w->parent();-
26 }
never executed: end of block
0
27 return
never executed: return w;
w;
never executed: return w;
0
28 }-
29-
30 void clearFocusObject() override-
31 {-
32 QWidgetWindow * const q = q_func();-
33 QWidget *widget = q->widget();-
34 if (widget
widgetDescription
TRUEnever evaluated
FALSEnever evaluated
&& widget->focusWidget()
widget->focusWidget()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
35 widget->focusWidget()->clearFocus();
never executed: widget->focusWidget()->clearFocus();
0
36 }
never executed: end of block
0
37-
38 QRectF closestAcceptableGeometry(const QRectF &rect) const override;-
39};-
40-
41QRectF QWidgetWindowPrivate::closestAcceptableGeometry(const QRectF &rect) const-
42{-
43 const QWidgetWindow * const q = q_func();-
44 const QWidget *widget = q->widget();-
45 if (!widget
!widgetDescription
TRUEnever evaluated
FALSEnever evaluated
|| !widget->isWindow()
!widget->isWindow()Description
TRUEnever evaluated
FALSEnever evaluated
|| !widget->hasHeightForWidth()
!widget->hasHeightForWidth()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
46 return
never executed: return QRect();
QRect();
never executed: return QRect();
0
47 const QSize oldSize = rect.size().toSize();-
48 const QSize newSize = QLayout::closestAcceptableSize(widget, oldSize);-
49 if (newSize == oldSize
newSize == oldSizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
50 return
never executed: return QRectF();
QRectF();
never executed: return QRectF();
0
51 const int dw = newSize.width() - oldSize.width();-
52 const int dh = newSize.height() - oldSize.height();-
53 QRectF result = rect;-
54 const QRectF currentGeometry(widget->geometry());-
55 const qreal topOffset = result.top() - currentGeometry.top();-
56 const qreal bottomOffset = result.bottom() - currentGeometry.bottom();-
57 if (qAbs(topOffset) > qAbs(bottomOffset)
qAbs(topOffset...(bottomOffset)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
58 result.setTop(result.top() - dh);
never executed: result.setTop(result.top() - dh);
0
59 else-
60 result.setBottom(result.bottom() + dh);
never executed: result.setBottom(result.bottom() + dh);
0
61 const qreal leftOffset = result.left() - currentGeometry.left();-
62 const qreal rightOffset = result.right() - currentGeometry.right();-
63 if (qAbs(leftOffset) > qAbs(rightOffset)
qAbs(leftOffse...s(rightOffset)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
64 result.setLeft(result.left() - dw);
never executed: result.setLeft(result.left() - dw);
0
65 else-
66 result.setRight(result.right() + dw);
never executed: result.setRight(result.right() + dw);
0
67 return
never executed: return result;
result;
never executed: return result;
0
68}-
69-
70QWidgetWindow::QWidgetWindow(QWidget *widget)-
71 : QWindow(*new QWidgetWindowPrivate(), 0)-
72 , m_widget(widget)-
73{-
74 updateObjectName();-
75-
76-
77 if (QGuiApplicationPrivate::platformIntegration()->hasCapability(QPlatformIntegration::RasterGLSurface)
QGuiApplicatio...sterGLSurface)Description
TRUEnever evaluated
FALSEnever evaluated
0
78 && !QApplication::testAttribute(Qt::AA_ForceRasterWidgets)
!QApplication:...RasterWidgets)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
79 setSurfaceType(QSurface::RasterGLSurface);-
80 }
never executed: end of block
0
81 connect(widget, &QObject::objectNameChanged, this, &QWidgetWindow::updateObjectName);-
82 connect(this, qFlagLocation("2""screenChanged(QScreen*)" "\0" __FILE__ ":" "127"), this, qFlagLocation("1""handleScreenChange()" "\0" __FILE__ ":" "127"));-
83}
never executed: end of block
0
84-
85QWidgetWindow::~QWidgetWindow()-
86{-
87}-
88-
89-
90QAccessibleInterface *QWidgetWindow::accessibleRoot() const-
91{-
92 if (m_widget
m_widgetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
93 return
never executed: return QAccessible::queryAccessibleInterface(m_widget);
QAccessible::queryAccessibleInterface(m_widget);
never executed: return QAccessible::queryAccessibleInterface(m_widget);
0
94 return
never executed: return 0;
0;
never executed: return 0;
0
95}-
96-
97-
98QObject *QWidgetWindow::focusObject() const-
99{-
100 QWidget *windowWidget = m_widget;-
101 if (!windowWidget
!windowWidgetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
102 return
never executed: return nullptr;
nullptr;
never executed: return nullptr;
0
103-
104 QWidget *widget = windowWidget->focusWidget();-
105-
106 if (!widget
!widgetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
107 widget = windowWidget;
never executed: widget = windowWidget;
0
108-
109 QObject *focusObj = QWidgetPrivate::get(widget)->focusObject();-
110 if (focusObj
focusObjDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
111 return
never executed: return focusObj;
focusObj;
never executed: return focusObj;
0
112-
113 return
never executed: return widget;
widget;
never executed: return widget;
0
114}-
115-
116static inline bool shouldBePropagatedToWidget(QEvent *event)-
117{-
118 switch (event->type()) {-
119-
120 case
never executed: case QEvent::Show:
QEvent::Show:
never executed: case QEvent::Show:
0
121 case
never executed: case QEvent::Hide:
QEvent::Hide:
never executed: case QEvent::Hide:
0
122 case
never executed: case QEvent::Timer:
QEvent::Timer:
never executed: case QEvent::Timer:
0
123 case
never executed: case QEvent::DynamicPropertyChange:
QEvent::DynamicPropertyChange:
never executed: case QEvent::DynamicPropertyChange:
0
124 case
never executed: case QEvent::ChildAdded:
QEvent::ChildAdded:
never executed: case QEvent::ChildAdded:
0
125 case
never executed: case QEvent::ChildRemoved:
QEvent::ChildRemoved:
never executed: case QEvent::ChildRemoved:
0
126 return
never executed: return false;
false;
never executed: return false;
0
127 default
never executed: default:
:
never executed: default:
0
128 return
never executed: return true;
true;
never executed: return true;
0
129 }-
130}-
131-
132bool QWidgetWindow::event(QEvent *event)-
133{-
134 if (!m_widget
!m_widgetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
135 return
never executed: return QWindow::event(event);
QWindow::event(event);
never executed: return QWindow::event(event);
0
136-
137 if (m_widget->testAttribute(Qt::WA_DontShowOnScreen)
m_widget->test...tShowOnScreen)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
138-
139-
140 if (!shouldBePropagatedToWidget(event)
!shouldBePropa...oWidget(event)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
141 return
never executed: return true;
true;
never executed: return true;
0
142 return
never executed: return QCoreApplication::sendEvent(m_widget, event);
QCoreApplication::sendEvent(m_widget, event);
never executed: return QCoreApplication::sendEvent(m_widget, event);
0
143 }-
144-
145 switch (event->type()) {-
146 case
never executed: case QEvent::Close:
QEvent::Close:
never executed: case QEvent::Close:
0
147 handleCloseEvent(static_cast<QCloseEvent *>(event));-
148 return
never executed: return true;
true;
never executed: return true;
0
149-
150 case
never executed: case QEvent::Enter:
QEvent::Enter:
never executed: case QEvent::Enter:
0
151 case
never executed: case QEvent::Leave:
QEvent::Leave:
never executed: case QEvent::Leave:
0
152 handleEnterLeaveEvent(event);-
153 return
never executed: return true;
true;
never executed: return true;
0
154-
155-
156-
157 case
never executed: case QEvent::FocusIn:
QEvent::FocusIn:
never executed: case QEvent::FocusIn:
0
158 handleFocusInEvent(static_cast<QFocusEvent *>(event));-
159-
160 case
never executed: case QEvent::FocusOut:
QEvent::FocusOut:
never executed: case QEvent::FocusOut:
code before this statement never executed: case QEvent::FocusOut:
{
0
161-
162 QAccessible::State state;-
163 state.active = true;-
164 QAccessibleStateChangeEvent ev(m_widget, state);-
165 QAccessible::updateAccessibility(&ev);-
166-
167 return
never executed: return false;
false;
never executed: return false;
}
0
168-
169 case
never executed: case QEvent::FocusAboutToChange:
QEvent::FocusAboutToChange:
never executed: case QEvent::FocusAboutToChange:
0
170 if (QApplicationPrivate::focus_widget
QApplicationPr...::focus_widgetDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
171 if (QApplicationPrivate::focus_widget->testAttribute(Qt::WA_InputMethodEnabled)
QApplicationPr...MethodEnabled)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
172 QGuiApplication::inputMethod()->commit();
never executed: QGuiApplication::inputMethod()->commit();
0
173-
174 QGuiApplication::sendSpontaneousEvent(QApplicationPrivate::focus_widget, event);-
175 }
never executed: end of block
0
176 return
never executed: return true;
true;
never executed: return true;
0
177-
178 case
never executed: case QEvent::KeyPress:
QEvent::KeyPress:
never executed: case QEvent::KeyPress:
0
179 case
never executed: case QEvent::KeyRelease:
QEvent::KeyRelease:
never executed: case QEvent::KeyRelease:
0
180 case
never executed: case QEvent::ShortcutOverride:
QEvent::ShortcutOverride:
never executed: case QEvent::ShortcutOverride:
0
181 handleKeyEvent(static_cast<QKeyEvent *>(event));-
182 return
never executed: return true;
true;
never executed: return true;
0
183-
184 case
never executed: case QEvent::MouseMove:
QEvent::MouseMove:
never executed: case QEvent::MouseMove:
0
185 case
never executed: case QEvent::MouseButtonPress:
QEvent::MouseButtonPress:
never executed: case QEvent::MouseButtonPress:
0
186 case
never executed: case QEvent::MouseButtonRelease:
QEvent::MouseButtonRelease:
never executed: case QEvent::MouseButtonRelease:
0
187 case
never executed: case QEvent::MouseButtonDblClick:
QEvent::MouseButtonDblClick:
never executed: case QEvent::MouseButtonDblClick:
0
188 handleMouseEvent(static_cast<QMouseEvent *>(event));-
189 return
never executed: return true;
true;
never executed: return true;
0
190-
191 case
never executed: case QEvent::NonClientAreaMouseMove:
QEvent::NonClientAreaMouseMove:
never executed: case QEvent::NonClientAreaMouseMove:
0
192 case
never executed: case QEvent::NonClientAreaMouseButtonPress:
QEvent::NonClientAreaMouseButtonPress:
never executed: case QEvent::NonClientAreaMouseButtonPress:
0
193 case
never executed: case QEvent::NonClientAreaMouseButtonRelease:
QEvent::NonClientAreaMouseButtonRelease:
never executed: case QEvent::NonClientAreaMouseButtonRelease:
0
194 case
never executed: case QEvent::NonClientAreaMouseButtonDblClick:
QEvent::NonClientAreaMouseButtonDblClick:
never executed: case QEvent::NonClientAreaMouseButtonDblClick:
0
195 handleNonClientAreaMouseEvent(static_cast<QMouseEvent *>(event));-
196 return
never executed: return true;
true;
never executed: return true;
0
197-
198 case
never executed: case QEvent::TouchBegin:
QEvent::TouchBegin:
never executed: case QEvent::TouchBegin:
0
199 case
never executed: case QEvent::TouchUpdate:
QEvent::TouchUpdate:
never executed: case QEvent::TouchUpdate:
0
200 case
never executed: case QEvent::TouchEnd:
QEvent::TouchEnd:
never executed: case QEvent::TouchEnd:
0
201 case
never executed: case QEvent::TouchCancel:
QEvent::TouchCancel:
never executed: case QEvent::TouchCancel:
0
202 handleTouchEvent(static_cast<QTouchEvent *>(event));-
203 return
never executed: return true;
true;
never executed: return true;
0
204-
205 case
never executed: case QEvent::Move:
QEvent::Move:
never executed: case QEvent::Move:
0
206 handleMoveEvent(static_cast<QMoveEvent *>(event));-
207 return
never executed: return true;
true;
never executed: return true;
0
208-
209 case
never executed: case QEvent::Resize:
QEvent::Resize:
never executed: case QEvent::Resize:
0
210 handleResizeEvent(static_cast<QResizeEvent *>(event));-
211 return
never executed: return true;
true;
never executed: return true;
0
212-
213-
214 case
never executed: case QEvent::Wheel:
QEvent::Wheel:
never executed: case QEvent::Wheel:
0
215 handleWheelEvent(static_cast<QWheelEvent *>(event));-
216 return
never executed: return true;
true;
never executed: return true;
0
217-
218-
219-
220 case
never executed: case QEvent::DragEnter:
QEvent::DragEnter:
never executed: case QEvent::DragEnter:
0
221 case
never executed: case QEvent::DragMove:
QEvent::DragMove:
never executed: case QEvent::DragMove:
0
222 handleDragEnterMoveEvent(static_cast<QDragMoveEvent *>(event));-
223 return
never executed: return true;
true;
never executed: return true;
0
224 case
never executed: case QEvent::DragLeave:
QEvent::DragLeave:
never executed: case QEvent::DragLeave:
0
225 handleDragLeaveEvent(static_cast<QDragLeaveEvent *>(event));-
226 return
never executed: return true;
true;
never executed: return true;
0
227 case
never executed: case QEvent::Drop:
QEvent::Drop:
never executed: case QEvent::Drop:
0
228 handleDropEvent(static_cast<QDropEvent *>(event));-
229 return
never executed: return true;
true;
never executed: return true;
0
230-
231-
232 case
never executed: case QEvent::Expose:
QEvent::Expose:
never executed: case QEvent::Expose:
0
233 handleExposeEvent(static_cast<QExposeEvent *>(event));-
234 return
never executed: return true;
true;
never executed: return true;
0
235-
236 case
never executed: case QEvent::WindowStateChange:
QEvent::WindowStateChange:
never executed: case QEvent::WindowStateChange:
0
237 handleWindowStateChangedEvent(static_cast<QWindowStateChangeEvent *>(event));-
238 return
never executed: return true;
true;
never executed: return true;
0
239-
240 case
never executed: case QEvent::ThemeChange:
QEvent::ThemeChange:
never executed: case QEvent::ThemeChange:
{
0
241 QEvent widgetEvent(QEvent::ThemeChange);-
242 QGuiApplication::sendSpontaneousEvent(m_widget, &widgetEvent);-
243 }-
244 return
never executed: return true;
true;
never executed: return true;
0
245-
246-
247 case
never executed: case QEvent::TabletPress:
QEvent::TabletPress:
never executed: case QEvent::TabletPress:
0
248 case
never executed: case QEvent::TabletMove:
QEvent::TabletMove:
never executed: case QEvent::TabletMove:
0
249 case
never executed: case QEvent::TabletRelease:
QEvent::TabletRelease:
never executed: case QEvent::TabletRelease:
0
250 handleTabletEvent(static_cast<QTabletEvent *>(event));-
251 return
never executed: return true;
true;
never executed: return true;
0
252-
253-
254-
255 case
never executed: case QEvent::NativeGesture:
QEvent::NativeGesture:
never executed: case QEvent::NativeGesture:
0
256 handleGestureEvent(static_cast<QNativeGestureEvent *>(event));-
257 return
never executed: return true;
true;
never executed: return true;
0
258-
259-
260-
261 case
never executed: case QEvent::ContextMenu:
QEvent::ContextMenu:
never executed: case QEvent::ContextMenu:
0
262 handleContextMenuEvent(static_cast<QContextMenuEvent *>(event));-
263 return
never executed: return true;
true;
never executed: return true;
0
264-
265-
266 case
never executed: case QEvent::WindowBlocked:
QEvent::WindowBlocked:
never executed: case QEvent::WindowBlocked:
0
267 qt_button_down = 0;-
268 break;
never executed: break;
0
269-
270 case
never executed: case QEvent::UpdateRequest:
QEvent::UpdateRequest:
never executed: case QEvent::UpdateRequest:
0
271-
272-
273 m_widget->repaint();-
274 return
never executed: return true;
true;
never executed: return true;
0
275-
276 default
never executed: default:
:
never executed: default:
0
277 break;
never executed: break;
0
278 }-
279-
280 if (shouldBePropagatedToWidget(event)
shouldBePropag...oWidget(event)Description
TRUEnever evaluated
FALSEnever evaluated
&& QCoreApplication::sendEvent(m_widget, event)
QCoreApplicati...widget, event)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
281 return
never executed: return true;
true;
never executed: return true;
0
282-
283 return
never executed: return QWindow::event(event);
QWindow::event(event);
never executed: return QWindow::event(event);
0
284}-
285-
286QPointer<QWidget> qt_last_mouse_receiver = 0;-
287-
288void QWidgetWindow::handleEnterLeaveEvent(QEvent *event)-
289{-
290-
291-
292-
293-
294-
295 if (QApplicationPrivate::inPopupMode()
QApplicationPr...:inPopupMode()Description
TRUEnever evaluated
FALSEnever evaluated
&& m_widget != QApplication::activePopupWidget()
m_widget != QA...ePopupWidget()Description
TRUEnever evaluated
FALSEnever evaluated
&& !m_widget->underMouse()
!m_widget->underMouse()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
296 return;
never executed: return;
0
297-
298 if (event->type() == QEvent::Leave
event->type() == QEvent::LeaveDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
299 QWidget *enter = 0;-
300-
301-
302-
303 QWindowSystemInterfacePrivate::EnterEvent *systemEvent =-
304 static_cast<QWindowSystemInterfacePrivate::EnterEvent *>-
305 (QWindowSystemInterfacePrivate::peekWindowSystemEvent(QWindowSystemInterfacePrivate::Enter));-
306 const QPointF globalPosF = systemEvent
systemEventDescription
TRUEnever evaluated
FALSEnever evaluated
? systemEvent->globalPos : QGuiApplicationPrivate::lastCursorPosition;
0
307 if (systemEvent
systemEventDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
308 if (QWidgetWindow *enterWindow = qobject_cast<QWidgetWindow *>(systemEvent->enter)
QWidgetWindow ...mEvent->enter)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
309 {-
310 QWindow *thisParent = this;-
311 QWindow *enterParent = enterWindow;-
312 while (thisParent->parent()
thisParent->parent()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
313 thisParent = thisParent->parent();
never executed: thisParent = thisParent->parent();
0
314 while (enterParent->parent()
enterParent->parent()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
315 enterParent = enterParent->parent();
never executed: enterParent = enterParent->parent();
0
316 if (thisParent == enterParent
thisParent == enterParentDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
317 QGuiApplicationPrivate::currentMouseWindow = enterWindow;-
318 enter = enterWindow->widget();-
319 QWindowSystemInterfacePrivate::removeWindowSystemEvent(systemEvent);-
320 }
never executed: end of block
0
321 }
never executed: end of block
0
322 }
never executed: end of block
0
323-
324-
325-
326 if (!enter
!enterDescription
TRUEnever evaluated
FALSEnever evaluated
|| !QWidget::mouseGrabber()
!QWidget::mouseGrabber()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
327-
328-
329 QWidget *leave = m_widget;-
330 if (qt_last_mouse_receiver
qt_last_mouse_receiverDescription
TRUEnever evaluated
FALSEnever evaluated
&& !qt_last_mouse_receiver->internalWinId()
!qt_last_mouse...nternalWinId()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
331 leave = qt_last_mouse_receiver.data();
never executed: leave = qt_last_mouse_receiver.data();
0
332 QApplicationPrivate::dispatchEnterLeave(enter, leave, globalPosF);-
333 qt_last_mouse_receiver = enter;-
334 }
never executed: end of block
0
335 }
never executed: end of block
else {
0
336 const QEnterEvent *ee = static_cast<QEnterEvent *>(event);-
337 QWidget *child = m_widget->childAt(ee->pos());-
338 QWidget *receiver = child
childDescription
TRUEnever evaluated
FALSEnever evaluated
? child : m_widget.data();
0
339 QWidget *leave = nullptr;-
340 if (QApplicationPrivate::inPopupMode()
QApplicationPr...:inPopupMode()Description
TRUEnever evaluated
FALSEnever evaluated
&& receiver == m_widget
receiver == m_widgetDescription
TRUEnever evaluated
FALSEnever evaluated
0
341 && qt_last_mouse_receiver != m_widget
qt_last_mouse_...er != m_widgetDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
342-
343-
344 leave = qt_last_mouse_receiver;-
345 }
never executed: end of block
0
346 QApplicationPrivate::dispatchEnterLeave(receiver, leave, ee->screenPos());-
347 qt_last_mouse_receiver = receiver;-
348 }
never executed: end of block
0
349}-
350-
351QWidget *QWidgetWindow::getFocusWidget(FocusWidgets fw)-
352{-
353 QWidget *tlw = m_widget;-
354 QWidget *w = tlw->nextInFocusChain();-
355-
356 QWidget *last = tlw;-
357-
358 uint focus_flag = qt_tab_all_widgets()
qt_tab_all_widgets()Description
TRUEnever evaluated
FALSEnever evaluated
? Qt::TabFocus : Qt::StrongFocus;
0
359-
360 while (w != tlw
w != tlwDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
361 {-
362 if (((
((w->focusPoli...== focus_flag)Description
TRUEnever evaluated
FALSEnever evaluated
w->focusPolicy() & focus_flag) == focus_flag)
((w->focusPoli...== focus_flag)Description
TRUEnever evaluated
FALSEnever evaluated
0
363 && w->isVisibleTo(m_widget)
w->isVisibleTo(m_widget)Description
TRUEnever evaluated
FALSEnever evaluated
&& w->isEnabled()
w->isEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
364 {-
365 last = w;-
366 if (fw == FirstFocusWidget
fw == FirstFocusWidgetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
367 break;
never executed: break;
0
368 }
never executed: end of block
0
369 w = w->nextInFocusChain();-
370 }
never executed: end of block
0
371-
372 return
never executed: return last;
last;
never executed: return last;
0
373}-
374-
375void QWidgetWindow::handleFocusInEvent(QFocusEvent *e)-
376{-
377 QWidget *focusWidget = 0;-
378 if (e->reason() == Qt::BacktabFocusReason
e->reason() ==...tabFocusReasonDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
379 focusWidget = getFocusWidget(LastFocusWidget);
never executed: focusWidget = getFocusWidget(LastFocusWidget);
0
380 else if (e->reason() == Qt::TabFocusReason
e->reason() ==...TabFocusReasonDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
381 focusWidget = getFocusWidget(FirstFocusWidget);
never executed: focusWidget = getFocusWidget(FirstFocusWidget);
0
382-
383 if (focusWidget != 0
focusWidget != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
384 focusWidget->setFocus();
never executed: focusWidget->setFocus();
0
385}
never executed: end of block
0
386-
387void QWidgetWindow::handleNonClientAreaMouseEvent(QMouseEvent *e)-
388{-
389 QApplication::sendSpontaneousEvent(m_widget, e);-
390}
never executed: end of block
0
391-
392void QWidgetWindow::handleMouseEvent(QMouseEvent *event)-
393{-
394 static const QEvent::Type contextMenuTrigger =-
395 QGuiApplicationPrivate::platformTheme()->themeHint(QPlatformTheme::ContextMenuOnMouseRelease).toBool() ?-
396 QEvent::MouseButtonRelease : QEvent::MouseButtonPress;-
397 if ((static_cast<
(static_cast<Q...>inPopupMode()Description
TRUEnever evaluated
FALSEnever evaluated
QApplication *>(QCoreApplication::instance()))->d_func()->inPopupMode()
(static_cast<Q...>inPopupMode()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
398 QWidget *activePopupWidget = (static_cast<QApplication *>(QCoreApplication::instance()))->activePopupWidget();-
399 QPoint mapped = event->pos();-
400 if (activePopupWidget != m_widget
activePopupWidget != m_widgetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
401 mapped = activePopupWidget->mapFromGlobal(event->globalPos());
never executed: mapped = activePopupWidget->mapFromGlobal(event->globalPos());
0
402 bool releaseAfter = false;-
403 QWidget *popupChild = activePopupWidget->childAt(mapped);-
404-
405 if (activePopupWidget != qt_popup_down
activePopupWid... qt_popup_downDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
406 qt_button_down = 0;-
407 qt_popup_down = 0;-
408 }
never executed: end of block
0
409-
410 switch (event->type()) {-
411 case
never executed: case QEvent::MouseButtonPress:
QEvent::MouseButtonPress:
never executed: case QEvent::MouseButtonPress:
0
412 case
never executed: case QEvent::MouseButtonDblClick:
QEvent::MouseButtonDblClick:
never executed: case QEvent::MouseButtonDblClick:
0
413 qt_button_down = popupChild;-
414 qt_popup_down = activePopupWidget;-
415 break;
never executed: break;
0
416 case
never executed: case QEvent::MouseButtonRelease:
QEvent::MouseButtonRelease:
never executed: case QEvent::MouseButtonRelease:
0
417 releaseAfter = true;-
418 break;
never executed: break;
0
419 default
never executed: default:
:
never executed: default:
0
420 break;
never executed: break;
0
421 }-
422-
423 int oldOpenPopupCount = openPopupCount;-
424-
425 if (activePopupWidget->isEnabled()
activePopupWidget->isEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
426-
427 qt_replay_popup_mouse_event = false;-
428 QWidget *receiver = activePopupWidget;-
429 QPoint widgetPos = mapped;-
430 if (qt_button_down
qt_button_downDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
431 receiver = qt_button_down;
never executed: receiver = qt_button_down;
0
432 else if (popupChild
popupChildDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
433 receiver = popupChild;
never executed: receiver = popupChild;
0
434 if (receiver != activePopupWidget
receiver != activePopupWidgetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
435 widgetPos = receiver->mapFromGlobal(event->globalPos());
never executed: widgetPos = receiver->mapFromGlobal(event->globalPos());
0
436-
437-
438 const bool reallyUnderMouse = activePopupWidget->rect().contains(mapped);-
439 const bool underMouse = activePopupWidget->underMouse();-
440 if (underMouse != reallyUnderMouse
underMouse != reallyUnderMouseDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
441 if (reallyUnderMouse
reallyUnderMouseDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
442 const QPoint receiverMapped = receiver->mapFromGlobal(event->screenPos().toPoint());-
443-
444-
445 if (receiverMapped.x() >= 0
receiverMapped.x() >= 0Description
TRUEnever evaluated
FALSEnever evaluated
&& receiverMapped.y() >= 0
receiverMapped.y() >= 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
446 QApplicationPrivate::dispatchEnterLeave(receiver, nullptr, event->screenPos());-
447 qt_last_mouse_receiver = receiver;-
448 }
never executed: end of block
0
449 }
never executed: end of block
else {
0
450 QApplicationPrivate::dispatchEnterLeave(nullptr, qt_last_mouse_receiver, event->screenPos());-
451 qt_last_mouse_receiver = receiver;-
452 receiver = activePopupWidget;-
453 }
never executed: end of block
0
454 }-
455-
456-
457 QMouseEvent e(event->type(), widgetPos, event->windowPos(), event->screenPos(),-
458 event->button(), event->buttons(), event->modifiers(), event->source());-
459 e.setTimestamp(event->timestamp());-
460 QApplicationPrivate::sendMouseEvent(receiver, &e, receiver, receiver->window(), &qt_button_down, qt_last_mouse_receiver);-
461 qt_last_mouse_receiver = receiver;-
462 }
never executed: end of block
else {
0
463-
464 switch (event->type()) {-
465 case
never executed: case QEvent::MouseButtonPress:
QEvent::MouseButtonPress:
never executed: case QEvent::MouseButtonPress:
0
466 case
never executed: case QEvent::MouseButtonDblClick:
QEvent::MouseButtonDblClick:
never executed: case QEvent::MouseButtonDblClick:
0
467 case
never executed: case QEvent::MouseButtonRelease:
QEvent::MouseButtonRelease:
never executed: case QEvent::MouseButtonRelease:
0
468 activePopupWidget->close();-
469 break;
never executed: break;
0
470 default
never executed: default:
:
never executed: default:
0
471 break;
never executed: break;
0
472 }-
473 }-
474-
475 if ((static_cast<
(static_cast<Q...ivePopupWidgetDescription
TRUEnever evaluated
FALSEnever evaluated
QApplication *>(QCoreApplication::instance()))->activePopupWidget() != activePopupWidget
(static_cast<Q...ivePopupWidgetDescription
TRUEnever evaluated
FALSEnever evaluated
0
476 && qt_replay_popup_mouse_event
qt_replay_popup_mouse_eventDescription
TRUEnever evaluated
FALSEnever evaluated
0
477 && QGuiApplicationPrivate::platformIntegration()->styleHint(QPlatformIntegration::ReplayMousePressOutsidePopup).toBool()
QGuiApplicatio...opup).toBool()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
478 if (m_widget->windowType() != Qt::Popup
m_widget->wind...) != Qt::PopupDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
479 qt_button_down = 0;
never executed: qt_button_down = 0;
0
480 if (event->type() == QEvent::MouseButtonPress
event->type() ...useButtonPressDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
481-
482 QWidget *w = QApplication::widgetAt(event->globalPos());-
483 if (w
wDescription
TRUEnever evaluated
FALSEnever evaluated
&& !QApplicationPrivate::isBlockedByModal(w)
!QApplicationP...ckedByModal(w)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
484-
485 if (!w->isActiveWindow()
!w->isActiveWindow()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
486 w->activateWindow();-
487 w->window()->raise();-
488 }
never executed: end of block
0
489-
490 QWindow *win = w->windowHandle();-
491 if (!win
!winDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
492 win = w->nativeParentWidget()->windowHandle();
never executed: win = w->nativeParentWidget()->windowHandle();
0
493 if (win
winDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
494 const QRect globalGeometry = win->isTopLevel()
win->isTopLevel()Description
TRUEnever evaluated
FALSEnever evaluated
0
495 ? win->geometry()-
496 : QRect(win->mapToGlobal(QPoint(0, 0)), win->size());-
497 if (globalGeometry.contains(event->globalPos())
globalGeometry...->globalPos())Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
498-
499 const QPoint localPos = win->mapFromGlobal(event->globalPos());-
500 QMouseEvent *e = new QMouseEvent(QEvent::MouseButtonPress, localPos, localPos, event->globalPos(),-
501 event->button(), event->buttons(), event->modifiers(), event->source());-
502 QCoreApplicationPrivate::setEventSpontaneous(e, true);-
503 e->setTimestamp(event->timestamp());-
504 QCoreApplication::postEvent(win, e);-
505 }
never executed: end of block
0
506 }
never executed: end of block
0
507 }
never executed: end of block
0
508 }
never executed: end of block
0
509 qt_replay_popup_mouse_event = false;-
510-
511 }
never executed: end of block
else if (event->type() == contextMenuTrigger
event->type() ...extMenuTriggerDescription
TRUEnever evaluated
FALSEnever evaluated
0
512 && event->button() == Qt::RightButton
event->button(...t::RightButtonDescription
TRUEnever evaluated
FALSEnever evaluated
0
513 && (
(openPopupCoun...penPopupCount)Description
TRUEnever evaluated
FALSEnever evaluated
openPopupCount == oldOpenPopupCount)
(openPopupCoun...penPopupCount)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
514 QWidget *popupEvent = activePopupWidget;-
515 if (qt_button_down
qt_button_downDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
516 popupEvent = qt_button_down;
never executed: popupEvent = qt_button_down;
0
517 else if(popupChild
popupChildDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
518 popupEvent = popupChild;
never executed: popupEvent = popupChild;
0
519 QContextMenuEvent e(QContextMenuEvent::Mouse, mapped, event->globalPos(), event->modifiers());-
520 QApplication::sendSpontaneousEvent(popupEvent, &e);-
521-
522 }
never executed: end of block
0
523-
524 if (releaseAfter
releaseAfterDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
525 qt_button_down = 0;-
526 qt_popup_down = 0;-
527 }
never executed: end of block
0
528 return;
never executed: return;
0
529 }-
530-
531-
532 if (QApplicationPrivate::instance()->modalState()
QApplicationPr...->modalState()Description
TRUEnever evaluated
FALSEnever evaluated
&& !qt_try_modal(m_widget, event->type())
!qt_try_modal(...event->type())Description
TRUEnever evaluated
FALSEnever evaluated
)
0
533 return;
never executed: return;
0
534-
535-
536 QWidget *widget = m_widget->childAt(event->pos());-
537 QPoint mapped = event->pos();-
538-
539 if (!widget
!widgetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
540 widget = m_widget;
never executed: widget = m_widget;
0
541-
542 if (event->type() == QEvent::MouseButtonPress
event->type() ...useButtonPressDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
543 qt_button_down = widget;
never executed: qt_button_down = widget;
0
544-
545 QWidget *receiver = QApplicationPrivate::pickMouseReceiver(m_widget, event->windowPos().toPoint(), &mapped, event->type(), event->buttons(),-
546 qt_button_down, widget);-
547-
548 if (!receiver
!receiverDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
549 if (event->type() == QEvent::MouseButtonRelease
event->type() ...eButtonReleaseDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
550 QApplicationPrivate::mouse_buttons &= ~event->button();
never executed: QApplicationPrivate::mouse_buttons &= ~event->button();
0
551 return;
never executed: return;
0
552 }-
553 if ((
(event->type()...seButtonPress)Description
TRUEnever evaluated
FALSEnever evaluated
event->type() != QEvent::MouseButtonPress)
(event->type()...seButtonPress)Description
TRUEnever evaluated
FALSEnever evaluated
0
554 || !(event->flags().testFlag(Qt::MouseEventCreatedDoubleClick))
!(event->flags...dDoubleClick))Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
555-
556-
557-
558 QMouseEvent translated(event->type(), mapped, event->windowPos(), event->screenPos(),-
559 event->button(), event->buttons(), event->modifiers(), event->source());-
560 translated.setTimestamp(event->timestamp());-
561 QApplicationPrivate::sendMouseEvent(receiver, &translated, widget, m_widget,-
562 &qt_button_down, qt_last_mouse_receiver);-
563 event->setAccepted(translated.isAccepted());-
564 }
never executed: end of block
0
565-
566 if (event->type() == contextMenuTrigger
event->type() ...extMenuTriggerDescription
TRUEnever evaluated
FALSEnever evaluated
&& event->button() == Qt::RightButton
event->button(...t::RightButtonDescription
TRUEnever evaluated
FALSEnever evaluated
0
567 && m_widget->rect().contains(event->pos())
m_widget->rect...(event->pos())Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
568 QContextMenuEvent e(QContextMenuEvent::Mouse, mapped, event->globalPos(), event->modifiers());-
569 QGuiApplication::sendSpontaneousEvent(receiver, &e);-
570 }
never executed: end of block
0
571-
572}
never executed: end of block
0
573-
574void QWidgetWindow::handleTouchEvent(QTouchEvent *event)-
575{-
576 if (event->type() == QEvent::TouchCancel
event->type() ...t::TouchCancelDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
577 QApplicationPrivate::translateTouchCancel(event->device(), event->timestamp());-
578 event->accept();-
579 }
never executed: end of block
else if ((static_cast<
(static_cast<Q...>inPopupMode()Description
TRUEnever evaluated
FALSEnever evaluated
QApplication *>(QCoreApplication::instance()))->d_func()->inPopupMode()
(static_cast<Q...>inPopupMode()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
580-
581-
582 event->ignore();-
583 }
never executed: end of block
else {
0
584 event->setAccepted(QApplicationPrivate::translateRawTouchEvent(m_widget, event->device(), event->touchPoints(), event->timestamp()));-
585 }
never executed: end of block
0
586}-
587-
588void QWidgetWindow::handleKeyEvent(QKeyEvent *event)-
589{-
590 if (QApplicationPrivate::instance()->modalState()
QApplicationPr...->modalState()Description
TRUEnever evaluated
FALSEnever evaluated
&& !qt_try_modal(m_widget, event->type())
!qt_try_modal(...event->type())Description
TRUEnever evaluated
FALSEnever evaluated
)
0
591 return;
never executed: return;
0
592-
593 QObject *receiver = QWidget::keyboardGrabber();-
594 if (!receiver
!receiverDescription
TRUEnever evaluated
FALSEnever evaluated
&& QApplicationPrivate::inPopupMode()
QApplicationPr...:inPopupMode()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
595 QWidget *popup = QApplication::activePopupWidget();-
596 QWidget *popupFocusWidget = popup->focusWidget();-
597 receiver = popupFocusWidget
popupFocusWidgetDescription
TRUEnever evaluated
FALSEnever evaluated
? popupFocusWidget : popup;
0
598 }
never executed: end of block
0
599 if (!receiver
!receiverDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
600 receiver = focusObject();
never executed: receiver = focusObject();
0
601 QGuiApplication::sendSpontaneousEvent(receiver, event);-
602}
never executed: end of block
0
603-
604bool QWidgetWindow::updateSize()-
605{-
606 bool changed = false;-
607 if (m_widget->testAttribute(Qt::WA_OutsideWSRange)
m_widget->test...utsideWSRange)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
608 return
never executed: return changed;
changed;
never executed: return changed;
0
609 if (m_widget->data->crect.size() != geometry().size()
m_widget->data...metry().size()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
610 changed = true;-
611 m_widget->data->crect.setSize(geometry().size());-
612 }
never executed: end of block
0
613-
614 updateMargins();-
615 return
never executed: return changed;
changed;
never executed: return changed;
0
616}-
617-
618bool QWidgetWindow::updatePos()-
619{-
620 bool changed = false;-
621 if (m_widget->testAttribute(Qt::WA_OutsideWSRange)
m_widget->test...utsideWSRange)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
622 return
never executed: return changed;
changed;
never executed: return changed;
0
623 if (m_widget->data->crect.topLeft() != geometry().topLeft()
m_widget->data...ry().topLeft()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
624 changed = true;-
625 m_widget->data->crect.moveTopLeft(geometry().topLeft());-
626 }
never executed: end of block
0
627 updateMargins();-
628 return
never executed: return changed;
changed;
never executed: return changed;
0
629}-
630-
631void QWidgetWindow::updateMargins()-
632{-
633 const QMargins margins = frameMargins();-
634 QTLWExtra *te = m_widget->d_func()->topData();-
635 te->posIncludesFrame= false;-
636 te->frameStrut.setCoords(margins.left(), margins.top(), margins.right(), margins.bottom());-
637 m_widget->data->fstrut_dirty = false;-
638}
never executed: end of block
0
639-
640static void sendScreenChangeRecursively(QWidget *widget)-
641{-
642 QEvent e(QEvent::ScreenChangeInternal);-
643 QApplication::sendEvent(widget, &e);-
644 QWidgetPrivate *d = QWidgetPrivate::get(widget);-
645 for (int i = 0; i < d->children.size()
i < d->children.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
646 QWidget *w = qobject_cast<QWidget *>(d->children.at(i));-
647 if (w
wDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
648 sendScreenChangeRecursively(w);
never executed: sendScreenChangeRecursively(w);
0
649 }
never executed: end of block
0
650}
never executed: end of block
0
651-
652void QWidgetWindow::handleScreenChange()-
653{-
654-
655 sendScreenChangeRecursively(m_widget);-
656-
657-
658 if (screen()
screen()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
659 repaintWindow();
never executed: repaintWindow();
0
660}
never executed: end of block
0
661-
662void QWidgetWindow::repaintWindow()-
663{-
664 if (!m_widget->isVisible()
!m_widget->isVisible()Description
TRUEnever evaluated
FALSEnever evaluated
|| !m_widget->updatesEnabled()
!m_widget->updatesEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
|| !m_widget->rect().isValid()
!m_widget->rect().isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
665 return;
never executed: return;
0
666-
667 QTLWExtra *tlwExtra = m_widget->window()->d_func()->maybeTopData();-
668 if (tlwExtra
tlwExtraDescription
TRUEnever evaluated
FALSEnever evaluated
&& !tlwExtra->inTopLevelResize
!tlwExtra->inTopLevelResizeDescription
TRUEnever evaluated
FALSEnever evaluated
&& tlwExtra->backingStore
tlwExtra->backingStoreDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
669 tlwExtra->backingStoreTracker->markDirty(m_widget->rect(), m_widget,
never executed: tlwExtra->backingStoreTracker->markDirty(m_widget->rect(), m_widget, QWidgetBackingStore::UpdateNow, QWidgetBackingStore::BufferInvalid);
0
670 QWidgetBackingStore::UpdateNow, QWidgetBackingStore::BufferInvalid);
never executed: tlwExtra->backingStoreTracker->markDirty(m_widget->rect(), m_widget, QWidgetBackingStore::UpdateNow, QWidgetBackingStore::BufferInvalid);
0
671}
never executed: end of block
0
672-
673Qt::WindowState effectiveState(Qt::WindowStates state);-
674-
675-
676void QWidgetWindow::updateNormalGeometry()-
677{-
678 QTLWExtra *tle = m_widget->d_func()->maybeTopData();-
679 if (!tle
!tleDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
680 return;
never executed: return;
0
681-
682 QRect normalGeometry;-
683 if (const
const QPlatfor...*pw = handle()Description
TRUEnever evaluated
FALSEnever evaluated
QPlatformWindow *pw = handle()
const QPlatfor...*pw = handle()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
684 normalGeometry = QHighDpi::fromNativePixels(pw->normalGeometry(), this);
never executed: normalGeometry = QHighDpi::fromNativePixels(pw->normalGeometry(), this);
0
685 if (!normalGeometry.isValid()
!normalGeometry.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
&& effectiveState(m_widget->windowState()) == Qt::WindowNoState
effectiveState...:WindowNoStateDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
686 normalGeometry = m_widget->geometry();
never executed: normalGeometry = m_widget->geometry();
0
687 if (normalGeometry.isValid()
normalGeometry.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
688 tle->normalGeometry = normalGeometry;
never executed: tle->normalGeometry = normalGeometry;
0
689}
never executed: end of block
0
690-
691void QWidgetWindow::handleMoveEvent(QMoveEvent *event)-
692{-
693 if (updatePos()
updatePos()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
694 QGuiApplication::sendSpontaneousEvent(m_widget, event);
never executed: QGuiApplication::sendSpontaneousEvent(m_widget, event);
0
695}
never executed: end of block
0
696-
697void QWidgetWindow::handleResizeEvent(QResizeEvent *event)-
698{-
699 QSize oldSize = m_widget->data->crect.size();-
700-
701 if (updateSize()
updateSize()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
702 QGuiApplication::sendSpontaneousEvent(m_widget, event);-
703-
704 if (m_widget->d_func()->paintOnScreen()
m_widget->d_fu...aintOnScreen()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
705 QRegion updateRegion(geometry());-
706 if (m_widget->testAttribute(Qt::WA_StaticContents)
m_widget->test...taticContents)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
707 updateRegion -= QRect(0, 0, oldSize.width(), oldSize.height());
never executed: updateRegion -= QRect(0, 0, oldSize.width(), oldSize.height());
0
708 m_widget->d_func()->syncBackingStore(updateRegion);-
709 }
never executed: end of block
else {
0
710 m_widget->d_func()->syncBackingStore();-
711 }
never executed: end of block
0
712 }-
713}
never executed: end of block
0
714-
715void QWidgetWindow::handleCloseEvent(QCloseEvent *event)-
716{-
717 bool is_closing = m_widget->d_func()->close_helper(QWidgetPrivate::CloseWithSpontaneousEvent);-
718 event->setAccepted(is_closing);-
719}
never executed: end of block
0
720-
721-
722-
723void QWidgetWindow::handleWheelEvent(QWheelEvent *event)-
724{-
725 if (QApplicationPrivate::instance()->modalState()
QApplicationPr...->modalState()Description
TRUEnever evaluated
FALSEnever evaluated
&& !qt_try_modal(m_widget, event->type())
!qt_try_modal(...event->type())Description
TRUEnever evaluated
FALSEnever evaluated
)
0
726 return;
never executed: return;
0
727-
728 QWidget *rootWidget = m_widget;-
729 QPoint pos = event->pos();-
730-
731-
732-
733 QWidget *activePopupWidget = QApplication::activePopupWidget();-
734 if (activePopupWidget
activePopupWidgetDescription
TRUEnever evaluated
FALSEnever evaluated
&& activePopupWidget != m_widget
activePopupWidget != m_widgetDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
735 rootWidget = activePopupWidget;-
736 pos = rootWidget->mapFromGlobal(event->globalPos());-
737 }
never executed: end of block
0
738-
739-
740 QWidget *widget = rootWidget->childAt(pos);-
741-
742 if (!widget
!widgetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
743 widget = rootWidget;
never executed: widget = rootWidget;
0
744-
745 QPoint mapped = widget->mapFrom(rootWidget, pos);-
746-
747 QWheelEvent translated(mapped, event->globalPos(), event->pixelDelta(), event->angleDelta(), event->delta(), event->orientation(), event->buttons(), event->modifiers(), event->phase(), event->source());-
748 QGuiApplication::sendSpontaneousEvent(widget, &translated);-
749}
never executed: end of block
0
750-
751-
752-
753-
754-
755void QWidgetWindow::handleDragEnterMoveEvent(QDragMoveEvent *event)-
756{-
757 ((!(event->type() ==QEvent::DragMove || !m_dragTarget)) ? qt_assert("event->type() ==QEvent::DragMove || !m_dragTarget",__FILE__,802) : qt_noop());-
758-
759 QWidget *widget = m_widget->childAt(event->pos());-
760 if (!widget
!widgetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
761 widget = m_widget;
never executed: widget = m_widget;
0
762 for ( ; widget
widgetDescription
TRUEnever evaluated
FALSEnever evaluated
&& !widget->isWindow()
!widget->isWindow()Description
TRUEnever evaluated
FALSEnever evaluated
&& !widget->acceptDrops()
!widget->acceptDrops()Description
TRUEnever evaluated
FALSEnever evaluated
; widget = widget->parentWidget()) ;
never executed: ;
0
763 if (widget
widgetDescription
TRUEnever evaluated
FALSEnever evaluated
&& !widget->acceptDrops()
!widget->acceptDrops()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
764 widget = 0;
never executed: widget = 0;
0
765-
766 if (widget
widgetDescription
TRUEnever evaluated
FALSEnever evaluated
&& widget == m_dragTarget.data()
widget == m_dragTarget.data()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
767 ((!(event->type() == QEvent::DragMove)) ? qt_assert("event->type() == QEvent::DragMove",__FILE__,812) : qt_noop());-
768 const QPoint mapped = widget->mapFromGlobal(m_widget->mapToGlobal(event->pos()));-
769 QDragMoveEvent translated(mapped, event->possibleActions(), event->mimeData(), event->mouseButtons(), event->keyboardModifiers());-
770 translated.setDropAction(event->dropAction());-
771 if (event->isAccepted()
event->isAccepted()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
772 translated.accept();-
773 translated.setDropAction(event->dropAction());-
774 }
never executed: end of block
0
775 QGuiApplication::sendSpontaneousEvent(widget, &translated);-
776 if (translated.isAccepted()
translated.isAccepted()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
777 event->accept();-
778 }
never executed: end of block
else {
0
779 event->ignore();-
780 }
never executed: end of block
0
781 event->setDropAction(translated.dropAction());-
782 return;
never executed: return;
0
783 }-
784-
785 if (m_dragTarget.data()
m_dragTarget.data()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
786 QDragLeaveEvent le;-
787 QGuiApplication::sendSpontaneousEvent(m_dragTarget.data(), &le);-
788 m_dragTarget = 0;-
789 }
never executed: end of block
0
790 if (!widget
!widgetDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
791 event->ignore();-
792 return;
never executed: return;
0
793 }-
794 m_dragTarget = widget;-
795 const QPoint mapped = widget->mapFromGlobal(m_widget->mapToGlobal(event->pos()));-
796 QDragEnterEvent translated(mapped, event->possibleActions(), event->mimeData(), event->mouseButtons(), event->keyboardModifiers());-
797 QGuiApplication::sendSpontaneousEvent(widget, &translated);-
798 if (translated.isAccepted()
translated.isAccepted()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
799 event->accept();-
800 }
never executed: end of block
else {
0
801 event->ignore();-
802 }
never executed: end of block
0
803 event->setDropAction(translated.dropAction());-
804}
never executed: end of block
0
805-
806void QWidgetWindow::handleDragLeaveEvent(QDragLeaveEvent *event)-
807{-
808 if (m_dragTarget
m_dragTargetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
809 QGuiApplication::sendSpontaneousEvent(m_dragTarget.data(), event);
never executed: QGuiApplication::sendSpontaneousEvent(m_dragTarget.data(), event);
0
810 m_dragTarget = 0;-
811}
never executed: end of block
0
812-
813void QWidgetWindow::handleDropEvent(QDropEvent *event)-
814{-
815 if (m_dragTarget.isNull()
m_dragTarget.isNull()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
816 QMessageLogger(__FILE__, 861, __PRETTY_FUNCTION__).warning() << m_widget << ": No drag target set.";-
817 event->ignore();-
818 return;
never executed: return;
0
819 }-
820 const QPoint mapped = m_dragTarget.data()->mapFromGlobal(m_widget->mapToGlobal(event->pos()));-
821 QDropEvent translated(mapped, event->possibleActions(), event->mimeData(), event->mouseButtons(), event->keyboardModifiers());-
822 QGuiApplication::sendSpontaneousEvent(m_dragTarget.data(), &translated);-
823 if (translated.isAccepted()
translated.isAccepted()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
824 event->accept();
never executed: event->accept();
0
825 event->setDropAction(translated.dropAction());-
826 m_dragTarget = 0;-
827}
never executed: end of block
0
828-
829-
830-
831void QWidgetWindow::handleExposeEvent(QExposeEvent *event)-
832{-
833 QWidgetPrivate *wPriv = m_widget->d_func();-
834 const bool exposed = isExposed();-
835-
836 if (wPriv->childrenHiddenByWState
wPriv->childrenHiddenByWStateDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
837-
838-
839 if (exposed
exposedDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
840-
841 if (!wPriv->childrenShownByExpose
!wPriv->childrenShownByExposeDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
842-
843 wPriv->showChildren(true);-
844 QShowEvent showEvent;-
845 QCoreApplication::sendSpontaneousEvent(m_widget, &showEvent);-
846 wPriv->childrenShownByExpose = true;-
847 }
never executed: end of block
0
848 }
never executed: end of block
else {
0
849-
850 if (wPriv->childrenShownByExpose
wPriv->childrenShownByExposeDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
851-
852-
853-
854-
855 wPriv->hideChildren(true);-
856 QHideEvent hideEvent;-
857 QCoreApplication::sendSpontaneousEvent(m_widget, &hideEvent);-
858 wPriv->childrenShownByExpose = false;-
859 }
never executed: end of block
0
860 }
never executed: end of block
0
861 }-
862-
863 if (exposed
exposedDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
864 m_widget->setAttribute(Qt::WA_Mapped);-
865 if (!event->region().isNull()
!event->region().isNull()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
866 wPriv->syncBackingStore(event->region());
never executed: wPriv->syncBackingStore(event->region());
0
867 }
never executed: end of block
else {
0
868 m_widget->setAttribute(Qt::WA_Mapped, false);-
869 }
never executed: end of block
0
870}-
871-
872void QWidgetWindow::handleWindowStateChangedEvent(QWindowStateChangeEvent *event)-
873{-
874-
875 Qt::WindowStates eventState = event->oldState();-
876 Qt::WindowStates widgetState = m_widget->windowState();-
877 if (widgetState & Qt::WindowActive
widgetState & Qt::WindowActiveDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
878 eventState |= Qt::WindowActive;
never executed: eventState |= Qt::WindowActive;
0
879-
880-
881-
882 switch (windowState()) {-
883 case
never executed: case Qt::WindowNoState:
Qt::WindowNoState:
never executed: case Qt::WindowNoState:
0
884 widgetState &= ~(Qt::WindowMinimized | Qt::WindowMaximized | Qt::WindowFullScreen);-
885 break;
never executed: break;
0
886 case
never executed: case Qt::WindowMinimized:
Qt::WindowMinimized:
never executed: case Qt::WindowMinimized:
0
887 widgetState |= Qt::WindowMinimized;-
888 break;
never executed: break;
0
889 case
never executed: case Qt::WindowMaximized:
Qt::WindowMaximized:
never executed: case Qt::WindowMaximized:
0
890 updateNormalGeometry();-
891 widgetState |= Qt::WindowMaximized;-
892 widgetState &= ~(Qt::WindowMinimized | Qt::WindowFullScreen);-
893 break;
never executed: break;
0
894 case
never executed: case Qt::WindowFullScreen:
Qt::WindowFullScreen:
never executed: case Qt::WindowFullScreen:
0
895 updateNormalGeometry();-
896 widgetState |= Qt::WindowFullScreen;-
897 widgetState &= ~(Qt::WindowMinimized);-
898 break;
never executed: break;
0
899 case
never executed: case Qt::WindowActive:
Qt::WindowActive:
never executed: case Qt::WindowActive:
0
900 break;
never executed: break;
0
901 }-
902-
903-
904-
905 if (widgetState != int(m_widget->data->window_state)
widgetState !=...>window_state)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
906 m_widget->data->window_state = widgetState;-
907 QWindowStateChangeEvent widgetEvent(eventState);-
908 QGuiApplication::sendSpontaneousEvent(m_widget, &widgetEvent);-
909 }
never executed: end of block
0
910}
never executed: end of block
0
911-
912bool QWidgetWindow::nativeEvent(const QByteArray &eventType, void *message, long *result)-
913{-
914 return
never executed: return m_widget->nativeEvent(eventType, message, result);
m_widget->nativeEvent(eventType, message, result);
never executed: return m_widget->nativeEvent(eventType, message, result);
0
915}-
916-
917-
918void QWidgetWindow::handleTabletEvent(QTabletEvent *event)-
919{-
920 static QPointer<QWidget> qt_tablet_target = 0;-
921 if (event->type() == QEvent::TabletPress
event->type() ...t::TabletPressDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
922 QWidget *widget = m_widget->childAt(event->pos());-
923 if (!widget
!widgetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
924 widget = m_widget;
never executed: widget = m_widget;
0
925-
926 qt_tablet_target = widget;-
927 }
never executed: end of block
0
928-
929 if (qt_tablet_target
qt_tablet_targetDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
930 QPointF delta = event->globalPosF() - event->globalPos();-
931 QPointF mapped = qt_tablet_target->mapFromGlobal(event->globalPos()) + delta;-
932 QTabletEvent ev(event->type(), mapped, event->globalPosF(), event->device(), event->pointerType(),-
933 event->pressure(), event->xTilt(), event->yTilt(), event->tangentialPressure(),-
934 event->rotation(), event->z(), event->modifiers(), event->uniqueId(), event->button(), event->buttons());-
935 ev.setTimestamp(event->timestamp());-
936 QGuiApplication::sendSpontaneousEvent(qt_tablet_target, &ev);-
937 }
never executed: end of block
0
938-
939 if (event->type() == QEvent::TabletRelease
event->type() ...:TabletReleaseDescription
TRUEnever evaluated
FALSEnever evaluated
&& event->buttons() == Qt::NoButton
event->buttons...= Qt::NoButtonDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
940 qt_tablet_target = 0;
never executed: qt_tablet_target = 0;
0
941}
never executed: end of block
0
942-
943-
944-
945void QWidgetWindow::handleGestureEvent(QNativeGestureEvent *e)-
946{-
947-
948 QObject *receiver = 0;-
949 if (QApplicationPrivate::inPopupMode()
QApplicationPr...:inPopupMode()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
950 QWidget *popup = QApplication::activePopupWidget();-
951 QWidget *popupFocusWidget = popup->focusWidget();-
952 receiver = popupFocusWidget
popupFocusWidgetDescription
TRUEnever evaluated
FALSEnever evaluated
? popupFocusWidget : popup;
0
953 }
never executed: end of block
0
954 if (!receiver
!receiverDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
955 receiver = QApplication::widgetAt(e->globalPos());
never executed: receiver = QApplication::widgetAt(e->globalPos());
0
956 if (!receiver
!receiverDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
957 receiver = m_widget;
never executed: receiver = m_widget;
0
958-
959 QApplication::sendSpontaneousEvent(receiver, e);-
960}
never executed: end of block
0
961-
962-
963-
964void QWidgetWindow::handleContextMenuEvent(QContextMenuEvent *e)-
965{-
966-
967-
968 if (e->reason() != QContextMenuEvent::Keyboard
e->reason() !=...vent::KeyboardDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
969 return;
never executed: return;
0
970-
971 QWidget *fw = QWidget::keyboardGrabber();-
972 if (!fw
!fwDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
973 if (QApplication::activePopupWidget()
QApplication::...ePopupWidget()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
974 fw = (QApplication::activePopupWidget()->focusWidget()
QApplication::...>focusWidget()Description
TRUEnever evaluated
FALSEnever evaluated
0
975 ? QApplication::activePopupWidget()->focusWidget()-
976 : QApplication::activePopupWidget());-
977 }
never executed: end of block
else if (QApplication::focusWidget()
QApplication::focusWidget()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
978 fw = QApplication::focusWidget();-
979 }
never executed: end of block
else {
0
980 fw = m_widget;-
981 }
never executed: end of block
0
982 }-
983 if (fw
fwDescription
TRUEnever evaluated
FALSEnever evaluated
&& fw->isEnabled()
fw->isEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
984 QPoint pos = fw->inputMethodQuery(Qt::ImMicroFocus).toRect().center();-
985 QContextMenuEvent widgetEvent(QContextMenuEvent::Keyboard, pos, fw->mapToGlobal(pos),-
986 e->modifiers());-
987 QGuiApplication::sendSpontaneousEvent(fw, &widgetEvent);-
988 }
never executed: end of block
0
989}
never executed: end of block
0
990-
991-
992void QWidgetWindow::updateObjectName()-
993{-
994 QString name = m_widget->objectName();-
995 if (name.isEmpty()
name.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
996 name = QString::fromUtf8(m_widget->metaObject()->className()) + ([]() -> QString { enum { Size = sizeof(u"" "Class")/2 - 1 }; static const QStaticStringData<Size> qstring_literal = { { { { -1 } }, Size, 0, 0, sizeof(QStringData) }, u"" "Class" }; QStringDataPtr holder = { qstring_literal.data_ptr() }; const QString qstring_literal_temp(holder); return
never executed: return qstring_literal_temp;
qstring_literal_temp;
never executed: return qstring_literal_temp;
}());
never executed: name = QString::fromUtf8(m_widget->metaObject()->className()) + ([]() -> QString { enum { Size = sizeof(u"" "Class")/2 - 1 }; static const QStaticStringData<Size> qstring_literal = { { { { -1 } }, Size, 0, 0, sizeof(QStringData) }, u"" "Class" }; QStringDataPtr holder = { qstring_literal.data_ptr() }; const QString qstring_literal_temp(holder); return qstring_literal_temp; }());
0
997 name += ([]() -> QString { enum { Size = sizeof(u"" "Window")/2 - 1 }; static const QStaticStringData<Size> qstring_literal = { { { { -1 } }, Size, 0, 0, sizeof(QStringData) }, u"" "Window" }; QStringDataPtr holder = { qstring_literal.data_ptr() }; const QString qstring_literal_temp(holder); return
never executed: return qstring_literal_temp;
qstring_literal_temp;
never executed: return qstring_literal_temp;
}());
0
998 setObjectName(name);-
999}
never executed: end of block
0
1000-
1001-
1002-
Switch to Source codePreprocessed file

Generated by Squish Coco Non-Commercial 4.3.0-BETA-master-30-08-2018-4cb69e9