Last Comment Bug 677712 - Make Qt port support No X11 build
: Make Qt port support No X11 build
Status: RESOLVED FIXED
:
Product: Core Graveyard
Classification: Graveyard
Component: Widget: Qt (show other bugs)
: Trunk
: x86 Linux
: -- normal (vote)
: mozilla9
Assigned To: Oleg Romashin (:romaxa)
:
Mentors:
Depends on: 682327
Blocks: 101172
  Show dependency treegraph
 
Reported: 2011-08-09 15:23 PDT by Oleg Romashin (:romaxa)
Modified: 2016-07-11 21:54 PDT (History)
6 users (show)
See Also:
QA Whiteboard:
Iteration: ---
Points: ---


Attachments
Compile Qt port on Non-X platform (19.86 KB, patch)
2011-08-09 15:26 PDT, Oleg Romashin (:romaxa)
no flags Details | Diff | Splinter Review
Compile Qt port for Non-X platform (24.94 KB, patch)
2011-08-14 13:34 PDT, Oleg Romashin (:romaxa)
no flags Details | Diff | Splinter Review
Fix Qt egl provider to work on nonX11 platform (16.20 KB, patch)
2011-08-14 15:01 PDT, Oleg Romashin (:romaxa)
joe: review+
Details | Diff | Splinter Review
Compile Qt port for Non-X platform (22.20 KB, patch)
2011-08-17 10:45 PDT, Oleg Romashin (:romaxa)
no flags Details | Diff | Splinter Review
Compile Qt port for Non-X platform (22.15 KB, patch)
2011-08-18 18:02 PDT, Oleg Romashin (:romaxa)
dougt: review+
Details | Diff | Splinter Review
Combined patch for push (41.25 KB, patch)
2011-08-23 19:26 PDT, Oleg Romashin (:romaxa)
no flags Details | Diff | Splinter Review
Updated to latest m-c tip (41.61 KB, patch)
2011-08-24 08:30 PDT, Oleg Romashin (:romaxa)
no flags Details | Diff | Splinter Review

Description Oleg Romashin (:romaxa) 2011-08-09 15:23:22 PDT
I think it would be nice to have Qt port compiling on NON-X11 platform like WebOS or something similar
Comment 1 Oleg Romashin (:romaxa) 2011-08-09 15:26:02 PDT
Created attachment 551910 [details] [diff] [review]
Compile Qt port on Non-X platform
Comment 2 Oleg Romashin (:romaxa) 2011-08-10 23:57:59 PDT
Comment on attachment 551910 [details] [diff] [review]
Compile Qt port on Non-X platform

Wolfgang, not sure if dougt have time... could you also check this patch?
Comment 3 Oleg Romashin (:romaxa) 2011-08-14 13:34:27 PDT
Created attachment 553016 [details] [diff] [review]
Compile Qt port for Non-X platform

Removed duplicated define from nsObjectFrame, removed QtDbus (not in use)
Comment 4 Oleg Romashin (:romaxa) 2011-08-14 15:01:50 PDT
Created attachment 553038 [details] [diff] [review]
Fix Qt egl provider to work on nonX11 platform
Comment 5 Oleg Romashin (:romaxa) 2011-08-14 15:03:16 PDT
Try build looks ok, with these patches:
http://tbpl.mozilla.org/?tree=Try&rev=2ba318c7a882
Comment 6 Doug Turner (:dougt) 2011-08-15 12:38:13 PDT
Comment on attachment 553016 [details] [diff] [review]
Compile Qt port for Non-X platform


>+#elif defined(ANDROID) || defined(MOZ_WIDGET_QT)
> #  include "mozilla/plugins/NPEventAndroid.h"

really?
Comment 7 Oleg Romashin (:romaxa) 2011-08-15 13:17:48 PDT
yep, definitely not NPEventX11.h...
Android is actually same as NPEventX11.h but does not include X stuff...
Another option is to rename NPEventX11.h -> NPEventUnix.h and add MOZ_X11 ifdefs inside...
Comment 8 Doug Turner (:dougt) 2011-08-15 18:48:59 PDT
i think renaming might be better.  cc/ jst do you care one way or the other?
Comment 9 Joe Drew (not getting mail) 2011-08-16 12:17:49 PDT
Comment on attachment 553038 [details] [diff] [review]
Fix Qt egl provider to work on nonX11 platform

Review of attachment 553038 [details] [diff] [review]:
-----------------------------------------------------------------

Looks fine as long as it passes try.
Comment 10 Oleg Romashin (:romaxa) 2011-08-17 10:45:27 PDT
Created attachment 553821 [details] [diff] [review]
Compile Qt port for Non-X platform

NPEventX11 renamed into NPEventUnix and ifdefed inside with MOZ_X11
Comment 11 Doug Turner (:dougt) 2011-08-18 17:23:37 PDT
Comment on attachment 553821 [details] [diff] [review]
Compile Qt port for Non-X platform

Review of attachment 553821 [details] [diff] [review]:
-----------------------------------------------------------------

::: dom/plugins/base/nsNPAPIPlugin.cpp
@@ +2009,5 @@
>  
>    switch(variable) {
>  #if defined(XP_UNIX) && !defined(XP_MACOSX)
>    case NPNVxDisplay : {
> +#if defined(MOZ_WIDGET_GTK2) || (defined(MOZ_WIDGET_QT) && defined(MOZ_X11))

Shouldn't this just be:

#ifdef MOZ_X11 now?

::: widget/src/qt/nsToolkit.cpp
@@ +139,3 @@
>      return mSharedGC->handle();
> +#else
> +    return 0;

Is return zero bad?

http://mxr.mozilla.org/mozilla-central/source/widget/src/qt/nsWindow.cpp#803
Comment 12 Oleg Romashin (:romaxa) 2011-08-18 18:02:49 PDT
Created attachment 554276 [details] [diff] [review]
Compile Qt port for Non-X platform

Fixed MOZ_X11 define...
SharedGC returning 0 in not bad, also currently it is used only in ifdef WIN...
http://mxr.mozilla.org/mozilla-central/source/dom/plugins/base/nsPluginInstanceOwner.cpp#2939
http://mxr.mozilla.org/mozilla-central/source/dom/plugins/base/nsPluginInstanceOwner.cpp#2956
Comment 13 Oleg Romashin (:romaxa) 2011-08-23 19:26:09 PDT
Created attachment 555300 [details] [diff] [review]
Combined patch for push
Comment 14 Oleg Romashin (:romaxa) 2011-08-23 19:27:38 PDT
Try build
http://tbpl.allizom.org/?tree=Try&usebuildbot=1&rev=a1998a0f883c
Comment 15 Ed Morley [:emorley] 2011-08-24 07:52:15 PDT
Doesn't apply cleanly to inbound, due to bug 677920 landing. That bug changed the behaviour in that section, so not going to attempt to unbitrot, since I don't know if it changes what you need to do here.
Comment 16 Oleg Romashin (:romaxa) 2011-08-24 08:30:17 PDT
Created attachment 555410 [details] [diff] [review]
Updated to latest m-c tip
Comment 17 Ed Morley [:emorley] 2011-08-24 09:19:14 PDT
Awesome, thanks :-)

http://hg.mozilla.org/integration/mozilla-inbound/rev/206ab0f10adf
Comment 18 Matt Brubeck (:mbrubeck) 2011-08-24 17:27:56 PDT
http://hg.mozilla.org/mozilla-central/rev/206ab0f10adf
Comment 19 Florian Hänel [:heeen] 2011-08-26 06:34:44 PDT
I am getting tons of these from this patch:

###!!! ASSERTION: Failed to make GL context current!: 'succeeded', file mozilla-central/gfx/thebes/GLContextProviderEGL.cpp, line 795
Comment 20 Oleg Romashin (:romaxa) 2011-08-26 09:09:51 PDT
Sounds like mSurface check is not needed in Qt backend MakeCurrentImpl... will check it today quickly.
Comment 21 Oleg Romashin (:romaxa) 2011-08-26 10:18:12 PDT
Ok, problem is in this line:
http://hg.mozilla.org/mozilla-central/rev/6e7449c449ba#l2.33
and mSurface check should not be performed for platform context.
I would suggest to file new bug.

Note You need to log in before you can comment on or make changes to this bug.