From: Alexei S. <ale...@gm...> - 2009-10-18 15:58:53
|
Interesting. The other issue I was seeing (which is partly addressed in my last commit) is the fact that SheepShaver would clear the (system) clipboard on every call to PutScrap - which didn't work if the App did something like ZeroScrap(); PutScrap(...); ...; PutScrap(...); to include multiple data types on the clipboard. The logical solution is to patch the ZeroScrap() trap in the ROM in the same way that both GetScrap() and PutScrap() get patched and only clear the system clipboard when the app calls ZeroScrap(). I tried to do this, but it does not seem to be working (ZeroScrap() isn't being called). I'm wondering if that trap is bypassed by applications that use newer Mac APIs. On the subject of your change, if it indeed fixes some apps, would there be a way to add your code to SheepShaver itself? -Alexei On Sun, Oct 18, 2009 at 11:40 AM, Joshua Juran <jj...@gm...> wrote: > On Oct 18, 2009, at 6:50 AM, Ronald P. Regensburg wrote: > > > I built SS MacOSX from current CVS (Intel only and I forgot to reverse > > the SDL-audio patch). > > > > Clearly improved (tested with AppleWorks, Tex-Edit Plus and SimpleText > > in MacOS9): > > - Copying and pasting of styled text between different applications > > within MacOS9 in SheepShaver works (when copied from SimpleText, > > styles are lost) > > - Copying and pasting of styled text from MacOSX to MacOS9 in > > SheepShaver works (with anomalies when pasted in SimpleText) > > - Copying and pasting from MacOS9 in SheepShaver to MacOSX works only > > when copied from a SimpleText document and with styles lost. > > One of the issues you and others may have run into is the latency > occurring between use of the TextEdit scrap and synchronization with > the desk scrap, i.e. the clipboard. Prior to Carbon, developers were > instructed to synchronize the two scraps on layer switch -- when an > application became or ceased to be frontmost. The problem with this > approach is that it doesn't play well with screen-in-a-window > arrangements where switching to another app in OS X doesn't cause an > OS 9 layer switch and consequently gets stale clipboard data. > > I've written a system extension called TESyncScrap that patches TECut > () and TECopy() to flush the TE scrap and TEPaste() to update it. I > invite you to try it out and see if it's useful. The source code is > also available.[1] > > TESyncScrap > http://jjuran.dyndns.org/~jjuran/experimental/TESyncScrap.mbin > > TESyncScrap.cc > <http://github.com/jjuran/metamage_1/blob/ > bd25287ac1551371da0fcf4fd9815b5d14e707db/pedestal/Hacks/TESyncScrap/ > TESyncScrap.cc> > > You'll need a MacBinary decoder. There are several in the > 'experimental' directory. > > Josh > > [1] The location may move as things get reorganized, but it will > remain on github. > > > > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry(R) Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9 - 12, 2009. Register now! > http://p.sf.net/sfu/devconference > _______________________________________________ > basilisk-devel mailing list > bas...@li... > https://lists.sourceforge.net/lists/listinfo/basilisk-devel > |