Various requests

This forum is for general developer support questions.
User avatar
alfkil
Posts: 67
Joined: Mon Oct 24, 2011 9:46 pm
Location: Denmark

Various requests

Post by alfkil »

When creating BananaBar, I have run into several issues, that got in the way of doing what I wanted.

1) Compositing to an ALPHA8 bitmap only works on RadeonHD. Hans has explained to me, that it was never intended to work for alpha bitmaps, so this is somewhat puzzling. Anyways, to be able to animate windows with transparency, it is absolutely cruzial, that it is somehow possible to quickly render to an ALPHA8 bitmap, because there is no other way to control the transparency (ie. clipregion). Another possibility would be to be able to control the transparency directly from the alpha channel of the window bitmap (if this is RGB32). But I guess that would be a somewhat big intervention into the api/concept. Conclusion: As Hans has suggested, it would be very wise to officially support compositing to ALPHA8 bitmaps, which at present means to implement this possibility in (at least) the old radeon drivers.

2) When doing drag&drop of workbench items, the entire event handling system seems to be put on hold (except for appwindow hover events?). This is unfortunate for the BananaBar case, because I really want to be able to animate the whole dock, as the potential drop is hovering over it (ie. create space at the hover spot and moving everything else in the window accordingly). This is not possible at all because

a) my input handler only receives the mouse events after the drop has been done or canceled (at which point it crashes, probably because there is overload in the event queue) and
b) when handling hover events (ie. DropZone events) and trying to update the transparency with SetWindowAttrs, BananaBar hangs the entire system.

I know this is all very fancy, but it could have an impact at other future apps as well. I am not sure how to solve it, though, because I don't know the internals of intuition in said case (or in any case, really).

3) When adding DropZones, there seems to be a problem with drop zone priorities. What I want is an individual dropzone for every individual icon PLUS a dropzone for the entire window (for adding icons to the dock). The final drop events seem to get the dropzone right, but the hover events don't (either it only gives events for the icons or only for the whole dock (when creating the main zone before or after the icon zones)). I have had to solve this by manually calculating the "inbetweens" (with a Region) and adding many, many dropzones to represent the main dock area. This is pretty dumb, though. I wonder how AmiDock does it?

4) This one may already have been solved: Sometimes BananaBar crashes, when going into the settings window. The settings window is opened from a popupmenu. zzd10h has told me, that there was a problem with popupmenu.library, which has been solved in the meantime, but never released. I would be very happy, if that fix could be released soon!
zzd10h
Posts: 546
Joined: Sun Sep 16, 2012 6:40 am
Location: France

Re: Various requests

Post by zzd10h »

4) for PopupMenu.library DSI :
Yes, OS4Team please, it crashs AmiDock with CPUDock and x1ktemp and sometimes banana :

DSI from banana :
http://zzd10h.amiga-ng.org/Divers/Crash ... -40-28.txt

But seems to works well on, at least for CPUDock / x1ktemp.docky problem, 2 x1000 betatest systems...except if they use the public popupmenu.

You still have the fix to remove an annoying bug, thank you to take care of your simples users ;)
http://apps.amistore.net/zTools
X1000 - AmigaOS 4.1.6 / 4.1 FE
chris
Posts: 564
Joined: Sat Jun 18, 2011 12:05 pm
Contact:

Re: Various requests

Post by chris »

@alfkil

1) I'd like to composite *from* an ALPHA8 bitmap, specifying a base colour to be used for the destination.
3) It probably just creates an AppWindow and then figures out itself where the pointer is hovering (I didn't even know you could get hover events)
4) http://forum.hyperion-entertainment.biz ... f=26&t=121
User avatar
alfkil
Posts: 67
Joined: Mon Oct 24, 2011 9:46 pm
Location: Denmark

Re: Various requests

Post by alfkil »

@chris

3) No, because as of 2) in my previous post, the event system seems to be blocked during drag. I am pretty sure it must be doing something along the same lines as I, that is a drop zone for every icon and one (or more) for the entire dock. I could of course be doing something wrong, and that explains why I have to use my dumb, many-area solution for the main area.
chris
Posts: 564
Joined: Sat Jun 18, 2011 12:05 pm
Contact:

Re: Various requests

Post by chris »

alfkil wrote:@chris

3) No, because as of 2) in my previous post, the event system seems to be blocked during drag. I am pretty sure it must be doing something along the same lines as I, that is a drop zone for every icon and one (or more) for the entire dock. I could of course be doing something wrong, and that explains why I have to use my dumb, many-area solution for the main area.
Ok, I've had a look at the autodoc. The only thing I can see is that it gives the events when entering or leaving a dropzone. What if the zones overlap? Have you try ensuring there is a pixel gap between each of your zones?
User avatar
Ami603
Beta Tester
Beta Tester
Posts: 151
Joined: Mon Dec 20, 2010 2:39 pm
Location: Valencia, Spain

Re: Various requests

Post by Ami603 »

@alfkil:

may i ask what you need compositing to alpha8 bitmap for?

i think i may have a solution for your problem, but then i need to understand what you're trying to achieve.
Vicente Gimeno

Betatester Number: A1-X1096
Fractal Design Define R3 (without branding and boingball)
GFX Card: Club3D Radeon HD4650, 512Mb DDR2 128Bit, Passive cooling.
PSU: OCZ StealthxStream pro 500W Modular
4Gb RAM
500Gb SATA +160Gb PATA WD Hardisks
Sony SATA DVDRW
4Gb UDMA Hi Speed Compact Flash.
User avatar
alfkil
Posts: 67
Joined: Mon Oct 24, 2011 9:46 pm
Location: Denmark

Re: Various requests

Post by alfkil »

@ami603
I need it to do animation of objects in a transparent window. In this case icons, ie. I use compositing to draw the color parts of the icon image to a temp bitmap, which is then blitted to the window, and then I need some way to get the alpha part of the icon image into the ALPHA8 bitmap of my ClipRegion for the window.
Raziel

Re: Various requests

Post by Raziel »

@alfkil

The AmiDock popupmenu crash has been fixed with the latest update...time to check your bananabar :-)
zzd10h
Posts: 546
Joined: Sun Sep 16, 2012 6:40 am
Location: France

Re: Various requests

Post by zzd10h »

@raziel
For the CPUDock / x1ktemp problem it doesn't fix totally the problem.
Now the RMB is impossible.
But it works on betatest systems...
Nevertheless, thank you OS4 team to have released it
http://apps.amistore.net/zTools
X1000 - AmigaOS 4.1.6 / 4.1 FE
Raziel

Re: Various requests

Post by Raziel »

zzd10h wrote:@raziel
For the CPUDock / x1ktemp problem it doesn't fix totally the problem.
Now the RMB is impossible.
But it works on betatest systems...
Nevertheless, thank you OS4 team to have released it
It fixed it for me though :-)
RMB in the main dock bar is working, as is RMB on single dockys.
It does not work on the CPU-, GFX-, RAM- and NetDock dockies, but that may be because they are opening it's own activated info windows (and i never tried to RMB on those dockies before)
Post Reply