Merge lp:~mir-team/mir/surface-output-events into lp:mir
| Status: | Merged |
|---|---|
| Approved by: | Alexandros Frantzis on 2015-10-07 |
| Approved revision: | 3032 |
| Merged at revision: | 3000 |
| Proposed branch: | lp:~mir-team/mir/surface-output-events |
| Merge into: | lp:mir |
| Prerequisite: | lp:~raof/mir/display-configuration-for-the-shell |
| Diff against target: |
2661 lines (+1280/-110) 47 files modified
include/client/mir/events/event_builders.h (+6/-0) include/client/mir_toolkit/events/event.h (+18/-0) include/client/mir_toolkit/events/surface_output_event.h (+61/-0) include/common/mir_toolkit/common.h (+14/-0) include/platform/mir/graphics/display_configuration.h (+13/-4) include/test/mir/test/doubles/stub_display_configuration.h (+51/-9) include/test/mir/test/empty_deleter.h (+1/-1) src/client/CMakeLists.txt (+1/-0) src/client/event.cpp (+27/-0) src/client/events/event_builders.cpp (+18/-0) src/client/rpc/mir_protobuf_rpc_channel.cpp (+3/-0) src/client/symbols.map (+4/-0) src/include/common/mir/events/event_private.h (+11/-0) src/include/server/mir/scene/surface_event_source.h (+10/-0) src/platform/graphics/display_configuration.cpp (+51/-13) src/platforms/android/server/fb_device.cpp (+3/-1) src/platforms/android/server/hwc_blanking_control.cpp (+7/-1) src/platforms/mesa/server/kms/real_kms_display_configuration.cpp (+5/-4) src/platforms/mesa/server/x11/graphics/display_configuration.cpp (+3/-1) src/server/graphics/nested/nested_display_configuration.cpp (+6/-2) src/server/graphics/offscreen/display_configuration.cpp (+3/-1) src/server/scene/CMakeLists.txt (+2/-0) src/server/scene/application_session.cpp (+31/-3) src/server/scene/application_session.h (+9/-0) src/server/scene/default_configuration.cpp (+4/-0) src/server/scene/output_properties_cache.cpp (+100/-0) src/server/scene/output_properties_cache.h (+66/-0) src/server/scene/session_manager.cpp (+15/-5) src/server/scene/session_manager.h (+18/-8) src/server/scene/surface_event_source.cpp (+20/-0) tests/acceptance-tests/test_client_focus_notification.cpp (+3/-0) tests/acceptance-tests/test_client_surface_events.cpp (+100/-0) tests/acceptance-tests/test_system_compositor_window_manager.cpp (+1/-3) tests/include/mir/test/doubles/stub_surface_factory.h (+5/-2) tests/integration-tests/session_management.cpp (+1/-1) tests/integration-tests/test_session.cpp (+2/-0) tests/mir_test/display_config_matchers.cpp (+6/-2) tests/unit-tests/graphics/mesa/kms/test_cursor.cpp (+9/-3) tests/unit-tests/graphics/mesa/kms/test_display_configuration.cpp (+34/-16) tests/unit-tests/graphics/test_default_display_configuration_policy.cpp (+4/-2) tests/unit-tests/graphics/test_display_configuration.cpp (+29/-1) tests/unit-tests/graphics/test_overlapping_output_grouping.cpp (+4/-2) tests/unit-tests/scene/test_abstract_shell.cpp (+9/-2) tests/unit-tests/scene/test_application_session.cpp (+466/-14) tests/unit-tests/scene/test_session_manager.cpp (+12/-3) tests/unit-tests/scene/test_surface.cpp (+5/-2) tests/unit-tests/scene/test_surface_impl.cpp (+9/-4) |
| To merge this branch: | bzr merge lp:~mir-team/mir/surface-output-events |
| Related bugs: |
| Reviewer | Review Type | Date Requested | Status |
|---|---|---|---|
| PS Jenkins bot | continuous-integration | 2015-09-29 | Approve on 2015-10-07 |
| Alexandros Frantzis (community) | Approve on 2015-10-07 | ||
| Alan Griffiths | 2015-09-29 | Approve on 2015-10-06 | |
|
Review via email:
|
|||
This proposal supersedes a proposal from 2015-09-25.
Commit Message
send events pertaining to the output (dpi, form factor, scale) to the client, available as events.
Description of the Change
Send events pertaining to the output (dpi, form factor, scale) to the client, available as events.
| Kevin DuBois (kdub) wrote : | # |
let me figure that out and restack accordingly...
| Kevin DuBois (kdub) wrote : | # |
@Alan, about half :)
| Alan Griffiths (alan-griffiths) wrote : | # |
+ /// \return the display configuration changer
+ auto the_display_
Why are we making internal wiring part of the API?
~~~~
+#include "src/include/
There's a reason src/include/server/ is not on the include path: Acceptance tests should only use the public API.
| Alan Griffiths (alan-griffiths) wrote : | # |
> +#include "src/include/
>
> There's a reason src/include/server/ is not on the include path: Acceptance
> tests should only use the public API.
OK, maybe it's arguable that this already happens in some acceptance tests.
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:2968
http://
Executed test runs:
SUCCESS: http://
FAILURE: http://
FAILURE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:2968
http://
Executed test runs:
SUCCESS: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| Kevin DuBois (kdub) wrote : | # |
still have to find the fd leak in test, please still review :)
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:2970
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| Alan Griffiths (alan-griffiths) wrote : | # |
display_changer.h is not (and should not be) a public header.
That means the API should not include:
+ /// \return the display configuration changer
+ auto the_display_
as that isn't of any use to library users.
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:2972
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:2973
http://
Executed test runs:
SUCCESS: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:2974
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:2975
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:2976
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| Alan Griffiths (alan-griffiths) wrote : | # |
-)
+ ${CMAKE_
Not our usual placement of parentheses.
| Chris Halse Rogers (raof) wrote : | # |
This is *mostly* ready to review. The exposure of DisplayChanger needs to be replaced by adding a subset of that interface to something in mir::scene and then rebasing on that.
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:3010
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:3014
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:3014
http://
Executed test runs:
SUCCESS: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| Alan Griffiths (alan-griffiths) wrote : | # |
MIR_CLIENT_9.2 { # New functions in Mir 0.16
global:
mir_
+ mir_event_
+ mir_surface_
+ mir_surface_
+ mir_surface_
0.16 has been branched. These should be in a 0.17 stanza
~~~~
+std::string as_string(
+{
Is there any good reason for std::string as opposed to char const*?
~~~~
+ out << "{" << std::endl << "\tid: " << val.id << std::endl << "\tcard_id: " << val.card_id << std::endl
+ << "\ttype: " << output_
+ << "\tmodes: [ ";
We don't need all the flush() calls from the endl manipulator - "\n" would be fine.
~~~~
+ std::function<
I very much prefer defining an interface for the desired functionality over using std::function<>. Even when the interface has a single member function this makes the dependences across the system much clearer.
Instead of MediatingDispla
~~~~
+ [this]() -> std::shared_
+ {
+ return the_frontend_
+ },
I don't think this parameter should be a std::function<> (see previous note) but, given this approach, it ought to capture result of the_frontend_
- 2981. By Chris Halse Rogers on 2015-09-30
-
EventSinkFactory: Delete CopyAssign
- 2982. By Chris Halse Rogers on 2015-09-30
-
Drop changes to MockEventSink
- 2983. By Chris Halse Rogers on 2015-09-30
-
Add shell::
DisplayConfigur ationController . This allows a shell to correctly change the display configuration, notifying clients
as appropriate. - 2984. By Chris Halse Rogers on 2015-09-30
-
MediatingDispla
yChanger: Implement ms::DisplayConf igurationContro ller - 2985. By Chris Halse Rogers on 2015-09-30
-
Augment mt::DisplayConf
igMatches to handle the other client/server comparison order - 2986. By Chris Halse Rogers on 2015-09-30
-
mtd::StubDispla
yConfig: Add a constructor that duplicates an existing mg::DisplayConfig - 2987. By Chris Halse Rogers on 2015-09-30
-
Expose mir::Server:
:the_display_ configuration_ controller( ). Implemented by ms::MediatingDi
splayChanger by default. - 2988. By Chris Halse Rogers on 2015-09-30
-
Acceptance test for set_default_
display_ configuration( )
| Alan Griffiths (alan-griffiths) wrote : | # |
"Diff against target: 0 lines"
Probably not as intended
- 2989. By Chris Halse Rogers on 2015-10-01
-
DisplayConfigur
ationController : Delete CopyAssign - 2990. By Chris Halse Rogers on 2015-10-02
-
First cut at mir_surface_
output_ event acceptance test - 2991. By Chris Halse Rogers on 2015-10-02
-
Add DisplayConfigur
ationOutput unit-test for comparison with new fields - 2992. By Chris Halse Rogers on 2015-10-02
-
StubDisplayConfig: Add a constructor taking a vector<
DisplayConfigur ationOutput> - 2993. By Chris Halse Rogers on 2015-10-02
-
First go at pushing SurfaceOutputEvents from the ApplicationSession
- 2994. By Chris Halse Rogers on 2015-10-02
-
Send output properties appropriate to the display the top-left corner of a surface is on
- 2995. By Chris Halse Rogers on 2015-10-02
-
Send the details of the highest-scale output a surface is partially on
- 2996. By Chris Halse Rogers on 2015-10-02
-
Factor out an OutputPropertie
sCache - 2997. By Chris Halse Rogers on 2015-10-02
-
Make OutputPropertie
sCache: :properties_ for resiliant under failure to set initial config - 2998. By Chris Halse Rogers on 2015-10-02
-
Send SurfaceOutput event in response to moving a surface to a different output
- 2999. By Chris Halse Rogers on 2015-10-02
-
Give surface output events their own test fixture.
It's different enough from ApplicationSess
ionSender to make it worthwhile. - 3000. By Chris Halse Rogers on 2015-10-02
-
Factor out test output configuration setup
- 3001. By Chris Halse Rogers on 2015-10-02
-
Add operator<<(ostream, DisplayConfigur
ation). We've already got pretty-printers for DisplayConfigur
ationCard and DisplayConfigur ationOutput,
let's go the whole hog. - 3002. By Chris Halse Rogers on 2015-10-02
-
client: Dispatch mir_event_
type_surface_ output to the correct MirSurface - 3003. By Chris Halse Rogers on 2015-10-02
-
Improve pretty-printing for DisplayConfigur
ationOutput - 3004. By Chris Halse Rogers on 2015-10-02
-
Slighly generalise mt::EmptyDeleter.
It's fine to take a void const*, which I'll soon want to pass it.
- 3005. By Chris Halse Rogers on 2015-10-02
-
Plumb the initial display configuration through to ApplicationSession.
The next step is to have the application session use this to send a SurfaceOutputEvent
on surface creation. - 3006. By Chris Halse Rogers on 2015-10-02
-
Pass a non-null sender in ApplicationSess
ionSurfaceOutpu t tests. This lets them pass, rather than SEGV when they try to dereference it...
- 3007. By Kevin DuBois on 2015-10-02
-
improve the android code to return the right form factor for external displays
- 3008. By Kevin DuBois on 2015-10-02
-
get tests to compile, and pass
- 3009. By Kevin DuBois on 2015-10-02
-
correct a bit in OutputProperties cache to avoid atomics
- 3010. By Chris Halse Rogers on 2015-10-02
-
Add test for surface-output event on construction
- 3011. By Kevin DuBois on 2015-10-02
-
Ignore the new scaling event in the focus test
- 3012. By Kevin DuBois on 2015-10-02
-
correct the unit tests, which needed some mock behavior added
- 3013. By Kevin DuBois on 2015-10-02
-
correction for integration test, all tests passing
- 3014. By Kevin DuBois on 2015-10-02
-
clean up spacings where possible
- 3015. By Kevin DuBois on 2015-10-02
-
fix up clang
- 3016. By Chris Halse Rogers on 2015-10-02
-
Add mir_form_
factor_ unknown - 3017. By Chris Halse Rogers on 2015-10-02
-
Fix CMakeLists.txt formatting
- 3018. By Chris Halse Rogers on 2015-10-02
-
Make SystemComposito
rWindowManager. if_no_surface_ posts_client_ never_gets_ focus resiliant to non-focus events being sent. If a mock function has an EXPECT_CALL set for it, even if it's .Times(0), then any calls
that *don't* match that specifier become errors.There's no reason to fail that test if the surface receives a non-focus event, and there's
no reason to add expectations for any other surface events we might choose to send now
or in the future. - 3019. By Chris Halse Rogers on 2015-10-02
-
SessionManager: Take a reference to the_display() rather than a std::function<> to get the configuration.
- 3020. By Chris Halse Rogers on 2015-10-02
-
Add new client symbols to new version stanza; 0.17 is being released
- 3021. By Chris Halse Rogers on 2015-10-02
-
We don't need to construct a std::string to print the MirFormFactor
- 3022. By Chris Halse Rogers on 2015-10-02
-
Fewer superfluous flush() calls via std::endl
| Chris Halse Rogers (raof) wrote : | # |
> MIR_CLIENT_9.2 { # New functions in Mir 0.16
> global:
> mir_surface_
> + mir_event_
> + mir_surface_
> + mir_surface_
> + mir_surface_
>
> 0.16 has been branched. These should be in a 0.17 stanza
>
Done.
> ~~~~
>
> +std::string as_string(
> +{
>
> Is there any good reason for std::string as opposed to char const*?
>
No; fixed.
> ~~~~
>
> + out << "{" << std::endl << "\tid: " << val.id << std::endl << "\tcard_id:
> " << val.card_id << std::endl
> + << "\ttype: " << output_
> + << "\tmodes: [ ";
>
> We don't need all the flush() calls from the endl manipulator - "\n" would be
> fine.
But then we won't be portable to platforms that need \r\n! :)
Fixed.
| Chris Halse Rogers (raof) wrote : | # |
> MIR_CLIENT_9.2 { # New functions in Mir 0.16
> global:
> mir_surface_
> + mir_event_
> + mir_surface_
> + mir_surface_
> + mir_surface_
>
> 0.16 has been branched. These should be in a 0.17 stanza
>
Done.
> ~~~~
>
> +std::string as_string(
> +{
>
> Is there any good reason for std::string as opposed to char const*?
>
No; fixed.
> ~~~~
>
> + out << "{" << std::endl << "\tid: " << val.id << std::endl << "\tcard_id:
> " << val.card_id << std::endl
> + << "\ttype: " << output_
> + << "\tmodes: [ ";
>
> We don't need all the flush() calls from the endl manipulator - "\n" would be
> fine.
But then we won't be portable to platforms that need \r\n! :)
Fixed.
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:3019
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:3022
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:3019
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| Alan Griffiths (alan-griffiths) wrote : | # |
> > We don't need all the flush() calls from the endl manipulator - "\n" would
> be
> > fine.
>
> But then we won't be portable to platforms that need \r\n! :)
We'll be just as portable as with endl. (Which by definition is put(widen('\n')) followed by flush().)
| Alan Griffiths (alan-griffiths) wrote : | # |
+MIR_CLIENT_0.18 {
+ mir_event_
+ mir_surface_
+ mir_surface_
+ mir_surface_
+} MIR_CLIENT_9v17;
We've not branched 0.17 yet - these should be in the 0.17 stanza.
- 3023. By Chris Halse Rogers on 2015-10-05
-
Add new client symbols to correct version stanza
| Chris Halse Rogers (raof) wrote : | # |
See, this is why my DSO proposal has a _unreleased stanza :)
Fixed.
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:3023
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
- 3024. By Chris Halse Rogers on 2015-10-05
-
OutputPropertie
sCache: Correctly handle output.connected == false. Disconnected outputs have an empty output.modes vector, and some of their fields
- such as current_mode_index - are uninitialised. Don't try to index into an empty
vector by an uninitialised index. - 3025. By Chris Halse Rogers on 2015-10-05
-
Fix up mg::DisplayConf
igurationOutput ::*_mode_ index. Using size_t in the server doesn't make any sense when we send them over
the wire to clients as uint32_t. - 3026. By Chris Halse Rogers on 2015-10-05
-
OutputPropertie
sCache: Even more paranoia about outputs. Really what we care about is that the current_mode_index is valid.
Just check against the size of the mode vector directly.
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:3025
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| Chris Halse Rogers (raof) wrote : | # |
HOW DID THAT NOT FAIL LOCALLY?
- 3027. By Chris Halse Rogers on 2015-10-05
-
Fix two build issues that *my* gcc-5 doesn't find for some reason
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:3026
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
None: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
None: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:3027
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
None: http://
SUCCESS: http://
deb: http://
FAILURE: http://
FAILURE: http://
None: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:3027
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
None: http://
SUCCESS: http://
deb: http://
FAILURE: http://
FAILURE: http://
None: http://
Click here to trigger a rebuild:
http://
- 3028. By Chris Halse Rogers on 2015-10-06
-
StubDisplayConfig: Ensure the first display is connected and used.
The Android tests assume that the first output of the StubDisplayConfig contains
sane values, which is not true for disconnected outputs.
| PS Jenkins bot (ps-jenkins) wrote : | # |
PASSED: Continuous integration, rev:3028
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| Alan Griffiths (alan-griffiths) wrote : | # |
There's a lot of superfluous flush() calls (from using endl).
| Alexandros Frantzis (afrantzis) wrote : | # |
A couple of concerns:
+ auto new_output_
+ if (new_output_
Unless I overlooked some logic, we will be sending unchanged output properties to the client on every move, flooding the clients unnecessarily. We shouldn't be sending output properties unless there is a change.
Is the 100x100 area we are using to decide on which output the surface belongs to based on some specification or is it completely arbitrary? In any case we should document this decision in the code (name and/or comment).
- 3029. By Chris Halse Rogers on 2015-10-07
-
Factor out a SurfaceOutputEv
entFor matcher - 3030. By Chris Halse Rogers on 2015-10-07
-
Drop some unsatisfying mockery
- 3031. By Chris Halse Rogers on 2015-10-07
-
SurfaceEventSource: Use the surface's actual size for output calculations.
- 3032. By Chris Halse Rogers on 2015-10-07
-
SurfaceEventSource: Only send SurfaceOutputEvents when the surface moves to a different output.
| Chris Halse Rogers (raof) wrote : | # |
> A couple of concerns:
>
> + auto new_output_
> outputs.
> + if (new_output_
>
> Unless I overlooked some logic, we will be sending unchanged output properties
> to the client on every move, flooding the clients unnecessarily. We shouldn't
> be sending output properties unless there is a change.
>
> Is the 100x100 area we are using to decide on which output the surface belongs
> to based on some specification or is it completely arbitrary? In any case we
> should document this decision in the code (name and/or comment).
Urgh, thanks for noticing. These were both artefacts of work half-finished before I needed to go back and hack some prerequisite. Fixed.
| PS Jenkins bot (ps-jenkins) wrote : | # |
PASSED: Continuous integration, rev:3032
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
SUCCESS: http://
deb: http://
FAILURE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://

How much of this diff is the same as lp:~mir-team/mir/surface-event-ordering/+merge/270879