Apache OpenOffice (AOO) Bugzilla – Full Text Issue Listing |
Summary: | Fail to show color or display incorrectly in Color listboxes | ||||||
---|---|---|---|---|---|---|---|
Product: | General | Reporter: | liuping <doneyourself> | ||||
Component: | ui | Assignee: | Armin Le Grand <Armin.Le.Grand> | ||||
Status: | CLOSED FIXED | QA Contact: | |||||
Severity: | Major | ||||||
Priority: | P2 | CC: | arielch, Armin.Le.Grand, hdu, issues | ||||
Version: | 4.0.0-dev | ||||||
Target Milestone: | 4.0.0 | ||||||
Hardware: | Mac | ||||||
OS: | OS X 10.8 | ||||||
Issue Type: | DEFECT | Latest Confirmation in: | --- | ||||
Developer Difficulty: | --- | ||||||
Attachments: |
|
ALG: Seen that, hdu and me are on it. Looks as if the VirtualDevices used to prepare the previews on mac need some kind of flush() before getting the preview bitmap from them using GetBitmap(). Adding hdu to cc.. ALG: Grepping... ALG: Working through AquaSalGraphics/AquaSalBitmap and Mac CGLayer/CGContext stuff, Cocoa windows and Quartz contexts (Layers and Contexts). Looks as if Contexts can be flushed, but Layers cannot. The basic problem is that when creating a temporary Bitmap from an OutDev, drawing to the bitmap and then drawing pack the bitmap. the initial copying step does not really copy the data. Experimenting with flushing... ALG: I ahve prepared some 'workaround' which avoid fetching the Bitmap from a OutputDevice, but uses BitmapEx mechanisms to achieve the same. It does not solve the basic problem, but avoids it, thus will prepare the way for AOO4.0. Doing some more checks... ALG: Did some more experiments on mac, but I could not track down the reason that GetBitmap fails. Doing one more, but will commit the workaround soon (of course with the workaround, it is no more trackable). ALG: Checked if GetBitmap on mac is used at all when source OutDev is a Window, added code, found no single case after setting a breakpoint there and playing around with the office a while (with the workaround applied). This is in principle good news, read-access to windows is not guaranteed on all systems (and the trend is that this is less supported on more modern systems). Maybe an alternative would be to not try to support these problematic cases, but assert them so that when developing developers will stumble over this guaranteed and know to not use it? Now back-adding one of the error cases to continue tracking... (In reply to Armin Le Grand from comment #6) > This is in principle good news, read-access to windows is not guaranteed on > all systems (and the trend is that this is less supported on more modern > systems). Maybe an alternative would be to not try to support these > problematic cases, but assert them so that when developing developers will > stumble over this guaranteed and know to not use it? Agreed: We should assert such cases where assumptions about the system have been obsoleted, so a developer is alerted if the case happens and can avoid them. XOR operations on graphics will fall into the same category once the remaining current usages have been replaced. ALG: Preparing to commit woraround. Tried to assert when GetBitmap() source is a window, but this happens pretty often (hover over the toolbar UI), so this is not an option, sorry. It is needed and should be repaired. Note: The place to add test code to get the non-working scenario back is svtools/source/control/ctrlbox.cxx:244 ff (ask me). ALG: Preparing updated mac build to check... "alg" committed SVN revision 1489899 into trunk: i122418 Added workaround to not use GetBitmap on windows ALG: Okay, test build done, works as expected. Setting to fixed for 4.0 |
Created attachment 80746 [details] Capture Build Version: AOO400ml(Build:9700) -Rev 14846779 1. New a documnets or presentation or spreadsheet 2. Input and select some text ,then select "character" in context menu 3. Switch "Font Effects" tab , select Overlining is Single , 4. Check "Overline color" drop down menu Issue: Fail to show color in color palette The similiar happen on such as Underline color and Shape Area Fill Color Refer capture in attachment