home *** CD-ROM | disk | FTP | other *** search
Text File | 1999-06-25 | 4.4 KB | 88 lines | [TEXT/CWIE] |
- Things to Ponder & Known Issues
- -------------------------------
-
- SetOrigin — when called for a window that is transparent, should this change the origin of all the
- sub buffers? Maybe, but does changing the origin of a GWorld screw up CopyBits, etc.?
- I think there is a technote that says this is a possible side effect of using SetOrigin on GWorlds.
- This may be an old issue and be fixed by Mac OS 8.5, however.
-
- How to handle open Picture, Poly, and Region definitions when ports intersect transparent ports?
- Also this intercepts QuickDraw and really mucks with draws
- what should be done when other software also intercepts QD?
- ideally, it would be best if X-Ray loads before all other extensions, therefore it has less
- potential of screwing with other software that patches QuickDraw
-
- QuickTime has its own methods for getting pixel data to screen quickly and doesn't work with X-Ray.
- It just splats over the top of transparent windows
- This may be a problem with QuickDraw 3D, QuickDraw GX and some third party graphics libraries and as well.
- This basically is a video memory direct access problem and occurs when softwre does not use QuickDraw to do drawing.
-
- May crash if an interrrupt based function (a VBL proc for example) calls a QuickDraw function that is also handled by X-Ray.
- Some older games do stuff like this.
-
- There may be issues when apps use their own window dragging routines instead of DragWindow
- X-Ray may interfere with extensions that patch DragWindow to actually move the window instead of its
- outline.
- Maybe this could be a feature that is added to X-Ray so it works properly in all cases.
-
- Hilited text when drawn by TextEdit does not draw correctly in area that intersects a transparent window.
-
- If an app does not properly respond to an update event and the update event intersects a
- transwindow, the underBuffer for that transWin may become stale depending on what the offending app
- does.
-
- When moving a window the visRgns of background windows are not re-calculated immediately
- X-Ray relies on valid visRgns to handle draw clipping
- UPDATE
- may not be a problem anymore due to a change in X-Ray's window drag tracking code
-
- Maybe provide a function that suspends/resumes X-Ray drawing/checking
- This flag would be in effect on a per application basis
-
- ScrollRect
- X-Ray mostly supports the QuickDraw ScrollRect function, but sometimes it looks like crap.
- A more robust version is needed.
-
- FindWindow
- maybe all trans windows can "magically" get their strucRgns back by adding their
- contRgns to their strucRgns right before FindWindow is called and then have them
- subtracted after the call. Also each app's global windows will need to have the
- contRgns added and subtracted, but this may actually require globalized visRgns instead
- UPDATE
- this is a pain in the butt to fix
- tinkering with the global window records doesn't work
-
- Pattern drawing does not work correctly due to SetOrigin problems.
- May require big re-writes/re-work of some X-Ray QD patches.
- UPDATE
- Have tried a few things to address this while trying to keep changes to a minimum, all to no avail.
-
- Crashes on PowerBook G3 series when Mac OS 8.6 Finder windows intersect a transparent window.
- Seems to appear in WDEF shim. More investigation is necessary.
-
- StdBits will crash in some circumstances if VM is off. May crash in same way with RAM Doubler as well.
-
- Dragging desktop items on the desktop under transparent windows screws up the under buffer of windows
- the drag intersects.
-
- Transparent window do not always update properly when being brought out from under normal windows
- UPDATE
- implemented AssureUpdateForTransparent() for some window manager patch functions
- needs to be added to others
-
- When normal windows are moved in front of transparent windows their content are may get blended with the transparnet window
- and their frame may also be blended
- UPDATE
- implemented AssureMovingWindowIsRefreshed() for some window manager patch functions
- needs to be added to others
-
- There may be a problem with a handle not being locked when it should be in StdText() patch
- still looking into this one as sporadic crashes have been known to happen in this function
-
- Some functions in X-RayLib may not actually work, but most do.
-
- I expect there are other unknown misbehaviours in X-Ray. Remember, this is a hack.
-
- Copyright (C) 1999 Eric Roccasecca. All rights reserved.
- nearearth@aol.com
-