Implement the new interface of TerminalInterface for profile handling
ClosedPublic

Authored by mschiller on Apr 1 2019, 3:28 PM.

Details

Reviewers
hindenburg
Group Reviewers
Konsole
Summary

Implements the profile handling functions from the TerminalInterface.
Also registered Profile::Property with the Qt Meta Type System in order
to allow to query these properties from the interface.

Depends on D20169

Diff Detail

Repository
R319 Konsole
Branch
implement-konsolepart-profile (branched from master)
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 12400
Build 12418: arc lint + arc unit
mschiller created this revision.Apr 1 2019, 3:28 PM
Restricted Application added a project: Konsole. · View Herald TranscriptApr 1 2019, 3:28 PM
Restricted Application added a subscriber: konsole-devel. · View Herald Transcript
mschiller requested review of this revision.Apr 1 2019, 3:28 PM

I believe that once the KParts code is committed to frameworks, Konsole needs to add checks the frameworks version. I'd rather not require the new framework version for all of Konsole, just this new code.

I believe that once the KParts code is committed to frameworks, Konsole needs to add checks the frameworks version. I'd rather not require the new framework version for all of Konsole, just this new code.

Yeah, agreed. I'm just waiting for the Interface Api to be finished until I update this. Just opened this to have some kind of reference of how the implementation might look like and also for testing purpose.

Can you update this patch assuming that frameworks 5.60 will have the new code?

https://community.kde.org/Schedules/Frameworks

mschiller updated this revision to Diff 59023.Jun 2 2019, 4:51 PM

Update to the new terminalinterfacev2 version
Use TerminalInterfacV2 depending on kf5 version (>= 5.60.0)

Thanks, do you have time to add some tests? They would be added to autotests/TerminalInterfaceTest.cpp TerminalInterfaceTest.h

mschiller updated this revision to Diff 59086.Jun 3 2019, 7:08 PM

Add some tests for TerminalInterfaceV2

KDE uses spaces instead of tabs. Does the tests past if you manually install the new kde_terminal_interface.h and remove the #IF? I get failures in the QVERIFY(terminal).

mschiller updated this revision to Diff 59138.Jun 4 2019, 4:33 PM
  • resolve moc compile error
  • convert tabs to spaces

If you effectively compile with the InterfaceV2 enabled and an updated kde_terminal_interface.h it should pass. Only issue I had is that the tests don't load the konsolepart.so from the build dir directly which means the actually loaded konsolepart.so is still the old version. This results in the test failure.

hindenburg accepted this revision.Jun 5 2019, 12:39 PM

Thanks, it worked the 2nd time I tried.

This revision is now accepted and ready to land.Jun 5 2019, 12:39 PM