Source Activity
BView: Move tooltip release and fix small coding style issues.
This is only an optical change.
This is only an optical change.
Categories: Development
BView: Fix destruction order of layout items.
Because of the virtual hooks a BLayout must never be destroyed while it
still has layout items. If these items are only removed from the layout
in its destructor, the subclass version of hooks like ItemRemoved() are
not called anymore. This lead to leaks because many BLayout subclasses
use the ItemRemoved() hook to clean up associated data (as is suggested
explicitly in the BLayout documentation).
In the same line of thought, a BLayoutItem must never be deleted when it
is still attached to a layout, as it similarly has virtual hooks like
DetachedFromLayout() that can not be called at this point anymore.
The destructors of BLayout and BLayoutItem now have debugger calls in
case these conditions are not met which should help to avoid
accidentally introducing such hard to debug issues.
To ensure the correct destruction order the sequence is now:
* Destroy the child views first. This cleans up their layout items while
the layout tree is still intact.
* Unset the view layout before removing layout items so it can properly
detach from the layout instead of just deleting it.
Because of the virtual hooks a BLayout must never be destroyed while it
still has layout items. If these items are only removed from the layout
in its destructor, the subclass version of hooks like ItemRemoved() are
not called anymore. This lead to leaks because many BLayout subclasses
use the ItemRemoved() hook to clean up associated data (as is suggested
explicitly in the BLayout documentation).
In the same line of thought, a BLayoutItem must never be deleted when it
is still attached to a layout, as it similarly has virtual hooks like
DetachedFromLayout() that can not be called at this point anymore.
The destructors of BLayout and BLayoutItem now have debugger calls in
case these conditions are not met which should help to avoid
accidentally introducing such hard to debug issues.
To ensure the correct destruction order the sequence is now:
* Destroy the child views first. This cleans up their layout items while
the layout tree is still intact.
* Unset the view layout before removing layout items so it can properly
detach from the layout instead of just deleting it.
Categories: Development
Debugger: Restrict registers via CPU feature detection.
DebuggerInterface,Architecture{X86,X8664}:
- Add hook function for retrieving a feature flag mask for the target CPU,
and corresponding implementation in Architecture-specific classes.
ArchitectureX86:
- Read CPU features on init, and use them to restrict the exposed set of
registers such that the MMX and SSE registers will only be visible
if the target CPU actually supports the respective instructions.
DebuggerInterface,Architecture{X86,X8664}:
- Add hook function for retrieving a feature flag mask for the target CPU,
and corresponding implementation in Architecture-specific classes.
ArchitectureX86:
- Read CPU features on init, and use them to restrict the exposed set of
registers such that the MMX and SSE registers will only be visible
if the target CPU actually supports the respective instructions.
Categories: Development
BBufferGroup: Check for duplicated buffer id
* This exclude some possible cheating cases.
It impose to have only a buffer_id per thread,
so instances will not be duplicated if not needed.
* This exclude some possible cheating cases.
It impose to have only a buffer_id per thread,
so instances will not be duplicated if not needed.
Categories: Development
BLayoutItem: Add RemoveSelf() convenience method.
It works analoguous to BView::RemoveSelf(), i.e. it removes itself from
the parent (layout in this case) and returns whether or not it had and
was successfully removed from said parent.
It works analoguous to BView::RemoveSelf(), i.e. it removes itself from
the parent (layout in this case) and returns whether or not it had and
was successfully removed from said parent.
Categories: Development
BView: Remove old TODO comment.
The BShelf is not owned by the BView (nor the BWindow for that matter)
and so must not be deleted on destruction.
The BShelf is not owned by the BView (nor the BWindow for that matter)
and so must not be deleted on destruction.
Categories: Development
BGridLayout: Fix leak of grid.
Categories: Development
Whitespace cleanup only.
Categories: Development
53c8xx: build fixes.
Categories: Development
BufferConsumer: rework SetOutputBuffersFor
* Use MemoryDeleter.
* Avoid use of dynamic allocation.
* Use MemoryDeleter.
* Avoid use of dynamic allocation.
Categories: Development
Set the corret ID when unregistering the buffer.
Follow-up fix to hrev49035.
Follow-up fix to hrev49035.
Categories: Development
BufferCache: Don't find anonymous buffers
Categories: Development
cubieboard4: Update SPL bin url to official source
* Our pull request was accepted
* Our pull request was accepted
Categories: Development
