bugGNUstep - Bugs: bug #16440, GNUstep should support...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #16440: GNUstep should support _NET_REQUEST_FRAME_EXTENTS and _NET_FRAME_EXTENTS

Submitted by:  -Deleted Account- <yjchen>
Submitted on:  Wed 26 Apr 2006 05:11:40 AM UTC  
 
Category: BackendSeverity: 3 - Normal
Item Group: Change RequestStatus: Fixed
Privacy: PublicAssigned to: Fred Kiefer <FredKiefer>
Open/Closed: Closed

(Jump to the original submission Jump to the original submission)

Tue 11 Jul 2006 09:03:51 PM UTC, comment #7:

I was a bit reluctant to switch this patch to closed, but as the original reporter is satisfied with his own patch, we have to count the problem as resolved. This should not stop anybody else from improving on what is there now.

Fred Kiefer <FredKiefer>
Project MemberIn charge of this item.
Wed 03 May 2006 10:47:56 PM UTC, comment #6:

I have to say I am not an expert on backend.
That's why you can see some strange thing. :)
So you can treat this patch as a reference.
Feel free to make it better.
It just shows a way to make GNUstep fit better into EWMH.
I didn't know GNUstep need this information before being mapped.
But based on my observation with metacity and WindowMaker,
it does behave correctly without _NET_REQUEST_FRAME_EXTENT.
So I assume even the frame is wrong before being mapped,
it is somehow corrected after being mapped.

Yen-Ju

-Deleted Account- <yjchen>
Wed 03 May 2006 10:29:53 PM UTC, comment #5:

You are correct that GNUstep uses this method for both cases, when the window is already mapped and when it isn't. In the later case your code wont help anything, in the former it would improve the estimated result for the frame.
In that case the parent_offset could also be set to something usable already, but this value may be wrong. (We should keep that values on a per window base, not just once)

The handling of _NET_REQUEST_FRAME_EXTENTS will be the only way to have the unmapped case treated correctly. That's why I asked for that.

In the meantime your patch is surely an improvment. Perhaps we could get the code in the window decorationview classed to hand on the window ID as well, when asking for the offset. At least in the cases, where the window already exists.
I also noted that the method to convert o xhints in the backend is rather strange. Here we always convert an xframe to an OS frame and then the later to X hints. Why not convert the xframe to x hints directly.
I will apply your patch for now and hope for follow ups.

Fred Kiefer <FredKiefer>
Project MemberIn charge of this item.
Wed 03 May 2006 08:10:44 PM UTC, comment #4:

To my understanding, window manager MUST set _NET_FRAME_EXTENTS no matter what, according to the specification.
_NET_REQUEST_FRAME_EXTENTS is only used when window is not mapped yet.
Therefore, to me, the patch is correct on the client side,
and GNUstep applications do not need to use _NET_REQUEST_FRAME_EXTENTS because they only care about frame after mapping.

Yen-Ju

-Deleted Account- <yjchen>
Wed 03 May 2006 07:19:37 PM UTC, comment #3:

Is it possible that you still have the wrone patch included? As I understand the specification at http://standards.freedesktop.org/wm-spec/1.3/ar01s04.html that the window manager will set the _NET_FRAME_EXTENTS property in response to a _NET_REQUEST_FRAME_EXTENTS event. It is possible that some window managers do this anyway, but even then we will only get the frame information for windows that have already been mapped. It would be great, if you could complete this patch to fully handle all the functionality of this feature.

Fred Kiefer <FredKiefer>
Project MemberIn charge of this item.
Wed 26 Apr 2006 07:44:49 PM UTC, comment #2:

Sorry. put the wrong patch.
This one is the correct one.

-Deleted Account- <yjchen>
Wed 26 Apr 2006 07:43:27 PM UTC, comment #1:

Here is the patch.
Work for Metacity.
WindowMaker doesn't support _NET_FRAME_EXTENTS.
So it falls back to original codes.

-Deleted Account- <yjchen>
Wed 26 Apr 2006 05:11:40 AM UTC, original submission:

Currently, GNUstep ask the styleoffset
(GSDisplayServer -styleoffset::::) solely based on window style
and guess the result mostly.
But in EWMH, there are _NET_REQUEST_FRAME_EXTENTS
and _NET_FRAME_EXTENTS which ask the styleoffset.
It will make offset more accurate.
These two hints require window information, which is not available throught -styleoffset::::.

-Deleted Account- <yjchen>

 

Attached Files
file #9841:  XGServerWindow.m.diff added by yjchen (2KiB - text/x-patch)
file #9840:  XGServerWindow.m.diff added by yjchen (968B - text/x-patch)

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

Do you think this task is very important?
If so, you can click here to add your encouragement to it.
This task has 0 encouragements so far.

Only logged-in users can vote.

 

Please enter the title of George Orwell's famous dystopian book (it's a date):

 

 

Follow 5 latest changes.

Date Changed By Updated Field Previous Value => Replaced By
Tue 11 Jul 2006 09:03:51 PM UTCFredKieferStatusNone=>Fixed
  Assigned toNone=>FredKiefer
  Open/ClosedOpen=>Closed
Wed 26 Apr 2006 07:44:49 PM UTCyjchenAttached File-=>Added XGServerWindow.m.diff, #9841
Wed 26 Apr 2006 07:43:27 PM UTCyjchenAttached File-=>Added XGServerWindow.m.diff, #9840

Back to the top


Powered by Savane 3.1-cleanup1