instead of using boring StringItems
ColorItem draws a small colored rectangle left of the string
RainbowItem draws a rainbow colored rectangle left of the string
* The event time is managed through the main node control
loop.
* Make the mix thread to activate only when needed.
* Make the locking more simple and remove a race condition,
this will make the thread to be more silent too.
TargetHostInterfaceRoster:
- Provides a singleton interface to enumerate both the available interface
types, and all currently running instances. This will provide clients like
the TeamsWindow with a way to present the user with all available types,
as well as the necessary information to configure/instantiate them.
TargetHostInterfaceInfo:
- Provides an information object for each available type of interface,
including an optional description of the settings needed to configure it.
Callers can then use this to provide a configuration UI as needed, and
once complete, request a corresponding interface instance for the desired
configuration.
{Local}TargetHostInterface:
- Add Settings parameter to Init(). Adjust LocalTargetHostInterface
accordingly.
LocalTargetHostInterfaceInfo:
- Implementation of TargetHostInterfaceInfo for the local system case.
TargetHostInterface:
- Provide interface for tracking list of TeamDebuggers attached to this
particular interface instance. Will eventually replace the current
mechanism where the Debugger app tracks this directly.
LocalTargetHostInterface:
- Cleanups.
* The old debug system was too complex and made
troubleshooring difficult. (it also was unique
like a snowflake... which we don't want)
* Move to the classic TRACE / ERROR a large majority
of the code has changed to.
* I like trace statements, but drop some obvious ones
* Fix style issues along the way
* VESA under Intel GPU's is generally native resolution
* These never worked well pre-rewrite, so lets disable
them for now.
* I'd like testers to enable them slowly and report
problems as enhancements.
Filer is an automatic file organizer. It takes the files it's opened with or
that are dropped on its icon and moves, renames, copies or does all sorts of
other things with them according to rules created by the user.
* While no removeable media is present, ahci
ports continuously reset.
* hrev49665 made the port resets slightly more
agressive resulting in strange removeable media
behaviour.
* Lots of red herrings made this one take a while
to figure out.
* Resolves#12415
* This simplifies the reset process again while keeping
my original cleanups.
* I think trying a software reset before a hardware
reset is desireable, however lets work on base
functionality first.
* It caused parameters to change with delay, because the
event has been enqueued in the event queue with real time.
* Please don't rely on system_time.
* Fixes#5106.
* Fixes issues with launch_daemon restart.
* Rely on what the actual response from the server is
instead to naively try to kill it.
* Remove snoozing and make the restart process very fast.
* Any app should rely on notifications anyway.
* Due to some reason a few months ago the media_addon_server
locked up very often making the notification service unreliable,
today this issue looks like solved. This made possible the recent
improvements.
TeamsWindow:
- On startup, instantiate a LocalTargetHostInterface, and pass it
to the TeamsListView.
TeamsListView:
- Refactor building and updating the teams list to work via TargetHost
and its respective listener interface rather than the previous combination
of be_roster and manual polling.
- Style fixes.
LocalTargetHostInterface:
- When receiving team creation events, check if the team in question actually
contains a valid app image. The kernel's create notification is sent before
the team is completely initialized, and consequently if our get_team_info()
call gets in quickly enough, the images may not be loaded yet. If this
situation is detected, add the team ID to a wait list.
- If we have waiting teams, listen for new messages with a short timeout. If no
message is received within the timeout, walk our list of waiting teams and
see if they are fully initialized yet, and if so, dispatch the appropriate
event.