[Development] api changes

lars.knoll at nokia.com lars.knoll at nokia.com
Mon Apr 16 14:25:52 CEST 2012



On 4/16/12 2:15 PM, "ext Michael Jansen" <info at michael-jansen.biz> wrote:

>On Sunday, April 15, 2012 08:40:38 PM Thiago Macieira wrote:
>> On segunda-feira, 16 de abril de 2012 01.33.31, Stephen Kelly wrote:
>> > > The only applications that should do that are the workspace fixture
>> > > ones:
>> > > kwin and plasma.
>> > 
>> > Yes, those are the ones that were brought up, together with the
>> > KWindowSystem class. Apart from those I don't think KDE uses X11, but
>>even
>> > KWindowSystem might be partially obsoleted by QPA (there is a task to
>> > figure that out, but no one has taken it up yet).
>> 
>> Managing windows is a task only for the workspace applications. Putting
>> those classes in a generic library is a mistake.
>> 
>> > QX11Info is used in many places (including some widgets), and perhaps
>>some
>> > places where it shouldn't be used, but it's still a porting burden
>>even to
>> > figure out how to port the stuff (It's not clear to me how to, and the
>> > changes file doesn't even note that the class is removed).
>> > 
>> > kf5{frameworks}$ grep -roh "QX11Info::[^\)]*)" * | sort | uniq
>> > QX11Info::appDpiX( int )
>> > QX11Info::appDpiY( int )
>> > QX11Info::appRootWindow()
>> > QX11Info::appRootWindow( screen_P )
>> > QX11Info::appScreen()
>> > QX11Info::appTime()
>> > QX11Info::appUserTime()
>> > QX11Info::display()
>> > QX11Info::screen()
>> > QX11Info::setAppDpiX(0, 96)
>> > QX11Info::setAppDpiY(0, 96)
>> > QX11Info::setAppTime(time)
>> > QX11Info::setAppTime(timestamp)
>> > QX11Info::setAppUserTime(time)
>> > QX11Info::setAppUserTime(timestamp)
>> 
>> Porting required for some of them, others need refactoring.
>
>I have one thing to add where we probably need some support from the qt
>project to do it correctly. Global Shortcuts.
>
>Since Qt does not support them we have to implement them ourselves. Which
>means working with X11 KeyCodes. Because there are no exporteded Qt
>Functions 
>that map between X11 KeyCodes and Qt KeyCodes we had to implement the
>mapping 
>ourselves (KKeyServer iirc) but failed to do that correctly because the
>code 
>in question is complex. A source of many kde bugs.
>
>All that descibes Qt4. No idea what changed in Qt5.
>
>But such function or some Qt support for global shortcuts would help us.
>
>The same applies afaik for the mac. No idea about windows.

IMO this ideally belongs as an extension API into the platform plugin
(registering a global shortcut). But it might be a bit late for 5.0, esp.
since we managed to live without it in Qt for so many years.

We should aim to get this working for 5.1 though.

Cheers,
Lars




More information about the Development mailing list