Merge lp:~albaguirre/qtubuntu/use-mir-surface-apis into lp:qtubuntu
| Status: | Superseded |
|---|---|
| Proposed branch: | lp:~albaguirre/qtubuntu/use-mir-surface-apis |
| Merge into: | lp:qtubuntu |
| Diff against target: |
892 lines (+369/-277) 5 files modified
src/ubuntumirclient/integration.cpp (+14/-15) src/ubuntumirclient/nativeinterface.cpp (+5/-5) src/ubuntumirclient/screen.cpp (+6/-6) src/ubuntumirclient/window.cpp (+338/-243) src/ubuntumirclient/window.h (+6/-8) |
| To merge this branch: | bzr merge lp:~albaguirre/qtubuntu/use-mir-surface-apis |
| Related bugs: |
| Reviewer | Review Type | Date Requested | Status |
|---|---|---|---|
| PS Jenkins bot | continuous-integration | Approve on 2015-07-31 | |
| Gerry Boland | 2015-06-17 | Needs Fixing on 2015-07-29 | |
|
Review via email:
|
|||
This proposal has been superseded by a proposal from 2015-08-06.
Commit Message
Use apis provided by mir to translate some QT window types into mir surface types.
Description of the Change
Use apis provided by mir to translate some QT window types into mir surface types.
Some refactoring and cleanup.
Support geometry size changes.
- 270. By Alberto Aguirre on 2015-07-01
-
merge lp:qtubuntu, fix conflicts
- 271. By Alberto Aguirre on 2015-07-01
-
Fix conflict resolution
| PS Jenkins bot (ps-jenkins) wrote : | # |
PASSED: Continuous integration, rev:271
http://
Executed test runs:
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
- 272. By Alberto Aguirre on 2015-07-08
- 273. By Alberto Aguirre on 2015-07-08
-
merge lp:qtubuntu
| PS Jenkins bot (ps-jenkins) wrote : | # |
PASSED: Continuous integration, rev:273
http://
Executed test runs:
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
- 274. By Alberto Aguirre on 2015-07-28
-
merge lp:qtubuntu
| PS Jenkins bot (ps-jenkins) wrote : | # |
PASSED: Continuous integration, rev:274
http://
Executed test runs:
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
| Gerry Boland (gerboland) wrote : | # |
+++ src/ubuntumircl
+ MirSurface * const mirSurface_;
+ EGLSurface eglSurface_;
Class members are named mSomething in qtubuntu, please adopt that naming scheme.
+MirPixelFormat defaultPixelFor
....
+ return format;
+}
+}
That last brace is the end of the namespace, would you please stick a comment like "// namespace" after it, helps me see the namespace end more clearly.
+ if (state == Qt::WindowFullS
+ auto displayConfig = mir_connection_
+ if (displayConfig-
+ auto outputId = displayConfig-
Think we should add a FIXME here, as we're guessing there's only 1 display at the moment.
+void UbuntuWindowPri
+{
+ mir_wait_
Does this need to be sync?
+ geom.setY(
/me wants to kill this so badly! :)
#if !defined(
- LOG("panelHeight: '%d'", panelHeight);
+ DLOG("[
The QT_NO_DEBUG should do the same things as DLOG - only print when compiled in debug mode. So can probably drop the !defined(
The fun part is testing, I'll be at that soon. While I know we're missing the window management side of things, should I give some real apps a try? What would you consider fair testing?
| Alberto Aguirre (albaguirre) wrote : | # |
@Gerry, yeah any real apps. I tried QtCreator in the desktop and mir_demo_server. It's not quite there yet - the big one is the relative positioning for the embedded window.
| Alberto Aguirre (albaguirre) wrote : | # |
>+ geom.setY(
>/me wants to kill this so badly! :)
Can we? We added a debug mirclient library to support autopilot testing a while back (mir_toolkit/
- 275. By Alberto Aguirre on 2015-07-30
-
Address feedback comments.
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:275
http://
Executed test runs:
FAILURE: http://
Click here to trigger a rebuild:
http://
- 276. By Alberto Aguirre on 2015-07-31
-
More hungarian notation
| Alberto Aguirre (albaguirre) wrote : | # |
>+void UbuntuWindowPri
>+{
>+ mir_wait_
>Does this need to be sync?
As in does the call really need to wait for the wait handle? or call a mir_surface_
In any case the wait for set_state is pre-existing, so I didn't change it.
The rest should be fixed now.
| PS Jenkins bot (ps-jenkins) wrote : | # |
PASSED: Continuous integration, rev:276
http://
Executed test runs:
SUCCESS: http://
deb: http://
Click here to trigger a rebuild:
http://
- 277. By Alberto Aguirre on 2015-08-06
- 278. By Alberto Aguirre on 2015-08-10
-
Fix typo made during camel case renaming.
- 279. By Alberto Aguirre on 2015-08-25
-
Separate visibility from mir surface state
- 280. By Alberto Aguirre on 2015-10-15
-
merge lp:qtubuntu, fix conflict
- 281. By Alberto Aguirre on 2015-10-16
-
Ignore unfocusing events
- 282. By Alberto Aguirre on 2015-10-21
-
Remove tab chars
- 283. By Alberto Aguirre on 2015-10-21
-
Do not remove framenumber debug logs
- 284. By Alberto Aguirre on 2015-10-21
-
Restore TODO to use mir_surface_
state_hidden - 285. By Alberto Aguirre on 2015-10-21
-
Send expose event if Qt resizes a window after its visible.
Some window types created in QML are made visible before their final geometry is set. If the content of the window does not update, the first frame will be grey unless we inform Qt of the new exposed size.
- 286. By Alberto Aguirre on 2015-10-21
-
When a window is made visible expose the correct region in local coordinates.
- 287. By Alberto Aguirre on 2015-10-22
-
Track the last surface to receive input.
The last surface to receive input can be used as a parent when QT decides to create popups without parent information (such as the menubar menus in qtcreator).
- 288. By Alberto Aguirre on 2015-10-22
-
More cleanup.
Go back to creating surfaces at window creation time. On older QT releases, some menu surfaces
did not have transientParent information at create time. - 289. By Alberto Aguirre on 2015-10-22
-
Fix usage of mutex to protect private state.
Previously "QMutexLocker(
&d->mMutex) " was used which is just a temporary that gets immedietely deleted so there was no mutex protection. - 290. By Alberto Aguirre on 2015-10-22
-
Initialize egl surface at construction time.
Windows are created at construction time again, so eglsurfaces are safe to be constructed there too.
- 291. By Alberto Aguirre on 2015-10-23
-
More cleanup
- 292. By Alberto Aguirre on 2015-10-23
-
Fix resize handling behavior.
We discard old accumulated resize events to avoid issuing too many redraw events greatly
improving resize performance. - 293. By Alberto Aguirre on 2015-10-23
-
Use screen output id when creating a fullscreen mir surface.
- 294. By Alberto Aguirre on 2015-10-24
-
Avoid telling Qt that no windows have focus when receiving a focus lost/gained pair.
Mir may send a focus lost/gained pair of events whenever a new surface gains focus (previous surface loses focus).
Qt's handleWindowActivated API however only supports focusing a single window or not focusing anything.
When processing the surface focus lost message we need to peek into the pending events to check for any posted focus gained event so that only a single handleWindowActivated call is made. - 295. By Alberto Aguirre on 2015-10-25
-
Support morphing non-modal to modal dialog.
QML dialogs are not parented when created. The transientParent will be set after creation but before the window is made visible.
Update the mir surface with the new parent information when the window is made visible - 296. By Alberto Aguirre on 2015-10-25
-
Support updating title
- 297. By Alberto Aguirre on 2015-10-25
-
Add support for propagateSizeHints
- 298. By Alberto Aguirre on 2015-10-25
-
Update log message
- 299. By Alberto Aguirre on 2015-10-25
-
Slight cleanup
- 300. By Alberto Aguirre on 2015-10-26
-
Fix resize corner case
- 301. By Alberto Aguirre on 2015-10-26
-
merge lp:qtubuntu, fix conflicts
- 302. By Alberto Aguirre on 2015-10-27
-
Don't create 0x0 mir surfaces
Seems to be a bug in the pixmap window that is created for the drag and drop default platform implementation.
- 303. By Alberto Aguirre on 2015-11-16
- 304. By Alberto Aguirre on 2015-11-16

PASSED: Continuous integration, rev:269 jenkins. qa.ubuntu. com/job/ qtubuntu- ci/215/ jenkins. qa.ubuntu. com/job/ qtubuntu- wily-armhf- ci/6 jenkins. qa.ubuntu. com/job/ qtubuntu- wily-armhf- ci/6/artifact/ work/output/ *zip*/output. zip
http://
Executed test runs:
SUCCESS: http://
deb: http://
Click here to trigger a rebuild: s-jenkins. ubuntu- ci:8080/ job/qtubuntu- ci/215/ rebuild
http://