Activity
From 2014-01-27 to 2014-02-09
2014-02-09
- 19:43 Feature #1727 (New): Apply colored sector lighting by sector via DED
- Many of Dday's visual effects (i.e generators, decorations, material glows etc) can be or are automatically applied t...
- 19:33 Feature #1726 (New): Remapping the colours on a texture via material def
- Something I've always wondered about, is the possibility of remapping the colours on a texture via a material def.
... - 15:36 Revision ae0231c8 (github): Refactor|libdoom: Translated braindata_t into a simple C++ class named BossBrain
- 13:35 Revision 0aa892f5 (github): Refactor|libdoom: Moved "Boss brain" to new source files
- 11:48 Revision 2f4e8dd0 (github): libcommon: Cleanup
- 11:36 Revision f7873024 (github): Refactor|libcommon: Separated saved game thinker info db into new source files
- 10:24 Revision 9fc44457 (github): Documentation|qmake: Documented some deng_* build options
- 10:07 Revision 8d79dbde (github): libcommon|MapStateWriter|MapStateReader: Moved more logic into MapStateWriter/Reader
- 09:42 Revision 4f2e70e5 (github): libcommon|MapStateReader: Throw a ReadError if a map saved state fails segment alignment check
- 08:34 Revision d03d8dd5 (github): Refactor|libcommon|MapStateWriter|MapStateReader: Better names for some MapStateWriter/Reader methods
- 08:23 Revision 919a3f98 (github): Documentation|libcommon: Improved apidocs for MapStateWriter, MapStateReader; cleanup
- 07:43 Revision 0d92b47f (github): libcommon|MapStateWriter: Typo
- 07:38 Revision 4641c7aa (github): libcommon: Continued work on remodeling saved game writing/reading
- Moved MapStateWriter/MapStateReader into new source files and applied
the pimpl idiom. All map data write/read routin... - 03:51 Revision 2bec6316 (github): libcommon|SaveInfo: Saved games now record the current map as a URI
- As the save version number has already been bumped to v14 for the
Doomsday 1.14 release, saved games made with unstab... - 01:44 Revision 732e088b (github): libcommon|SaveInfo: Removed unused map() and episode() methods of SaveInfo
- 01:38 Revision 0dd755f5 (github): libhexen: Cleanup
- 01:24 Revision 44cb574e (github): Refactor|libcommon: Use a map URI with G_NewGame() and G_DeferredNewGame()
- At present the logical episode and map numbers are parsed from the
map URI. In the future the episode should be speci...
2014-02-07
- 15:44 Revision 505632e5 (github): Refactor|Stereo 3D: Removed some of the public variables from VRConfig
- The client handles these as cvars and updates VRConfig as necessary.
- 14:58 Revision 663640bb (github): Merge remote-tracking branch 'origin/master' into oculus-refactor
- Conflicts:
doomsday/client/src/ui/widgetactions.cpp
2014-02-06
- 15:03 Revision d3af9533 (github): qmake|OS X: Using the OpenGL framework in Lion
- Untested, but should work.
- 14:49 Revision ebfd5ed0 (github): Fixed|GCC: Build failure casting templated functions
- When applying a C style cast, gcc 4.2 loses track of some vital
"contextual information" and fails to build these cas... - 14:47 Revision ae649711 (github): Fixed|qmake|OS X: Using the OpenGL framework in Snow Leopard
- In the 10.6 build, OpenGL headers were accessed from the X11 include
directory even though the correct headers are in... - 04:27 Bug #1725 (Closed): Heretic ghost mummies' floating spirits not disappearing after death
- As per the title, this only seems to affect the ghost (transparent) mummies; the solid ones are okay.
The rising s...
2014-02-05
- 22:14 Revision 82e8c4b6 (github): libcommon|SaveInfo: Added method of returning the current map URI from SaveInfo
- 20:56 Revision 94bfb439 (github): Client|UI|Network: Game selection menu fetches games from master server
- The client's ServerFinder can now fetch servers from the master
server. Currently this is done when MPSelectionWidget... - 19:54 Revision 7884ced6 (github): UI|Task Bar: Moved "Unload Game" next to "Games..."
- 19:40 Revision 5f850956 (github): Cleanup
- 19:15 Revision f0bce312 (github): libappfw: Fix build (refactoring oversight)
- 18:28 Revision d9a960b8 (github): Fixed|UI|Client: Fold title hover coloring
- Fold title hover coloring (e.g., in the Renderer Appearance editor)
has been broken since ButtonWidget was changed to... - 18:27 Revision 0836ce87 (github): libappfw|ButtonWidget: Button text hover coloring modes
- Buttons can now have a hover text color applied in two different
ways: replacing the normal color, or modulating with... - 16:14 Revision 78f81305 (github): UI|Client: Game selection menu behaves differently when game loaded
- Order groups differently and use different titles.
- 11:30 Revision 6fac3e32 (github): UI|Client: Game selection groups appear and are hidden as needed
- Also, when a fold is closed, show the number of items in parentheses
as part of the title. - 03:28 Revision 0451b69a (github): libcommon: Continued remodeling savegame writing/reading
- All high level map state write/read logic is performed by the new
MapStateWriter/MapStateReader classes. - 03:00 Revision e28539e9 (github): Fixed|libdoom: DOOM v1.9 saved game interpretation
- 02:59 Revision f053b0dc (github): Fixed|libheretic: Heretic v1.3 saved game reader
2014-02-04
- 19:36 Bug #1720 (Closed): [multiplayer] client seg fault when something moves
- 19:36 Bug #1716 (Closed): [Windows] Cannot resize console history widget if the edge meets the edge of the window
- 19:36 Bug #1715 (Closed): [Ring Zero UI] Game selection widget items clipped as they overflow (e.g., in 640x480)
- 18:44 Revision a50af7d4 (github): Fixed|libheretic: Heretic v1.3 saved game thinker translation
- XSector's specialData should point to the new thinker_t instance.
- 18:04 Revision 6553ea8d (github): qmake: Enable libdeng2 C++ API in all plugins
- 17:45 Revision a0975631 (github): Merge branch 'ui-multiplayer'
- 17:40 Revision ed87bf43 (github): Fixed|GCC|All Games: Build and link errors
- Corrected the definitions of various thinkers to be compatible with g++.
In short, one cannot define member functions... - 16:34 Revision db6a8181 (github): libdeng2|Debug: Monospace log formatting tweak
- 09:02 Revision ff82f69b (github): Fixed|FoldPanelWidget: Title is optional
- 08:46 Revision b6652fdd (github): libcommon: Removed cvar 'game-fastmonsters'
- Enabling/disabling of fast monsters and/or projectiles must be done
via the game rule mechanism. Game rules are appli... - 07:35 Revision 0807ce1b (github): libcommon: Cleanup
- 07:20 Revision 638f51d6 (github): libcommon: Ensure game rule changes are fully applied when staring a new game
- 07:09 Bug #1724 (Closed): Map briefings should be disabled when autostarting a game session from command line
- With Doomsday cut scene is shown with parameter -warp 07
With original Doom 2 cut scene is not shown with paramete... - 06:29 Revision aea33950 (github): libcommon: Cleanup
- 05:28 Revision dc3f67c8 (github): libcommon: Ensure game rule changes are fully applied when loading a savegame
- 03:36 Revision 31f84191 (github): SaveInfo|libcommon: Use 0-based logical episode and map numbers natively
- Also fixed a new regression with deserializing v.13 format info.
- 02:27 Revision 8cae7d43 (github): SaveInfo|libcommon: Cleanup
- 02:19 Revision b4e9bc5d (github): GameRuleset|libcommon: Added a (de)serialization mechanism
- The save version was bumped to v14 as previous save state formats
interleaved the game rules with other game session ... - 01:22 Revision 30d105c0 (github): libcommon: Cleanup
- 01:00 Revision 63f04fd0 (github): Refactor|SaveInfo|libcommon: Removed the old saveheader_t abstraction
- 00:13 Revision 570bd2e8 (github): SaveInfo|libcommon: Encapsulate saveheader_t within SaveInfo
2014-02-03
- 23:55 Revision f477cd27 (github): Refactor|SaveInfo|libcommon: Group values comprising the saved ruleset for the game session
- 23:21 Revision d00a767d (github): Refactor|libcommon: Updated save state IO to use SaveInfo's C++ API, directly
- 23:00 Revision b9b93e80 (github): SaveInfo|libcommon: Began transforming SaveInfo into a C++ class
- 22:57 Revision 7d7806ed (github): Refactor|UI|Client: Use reference-counted Action instances
- 22:56 Revision b61e600a (github): Refactor|libappfw: Use reference-counted Action instances
- 22:55 Revision eb973f9b (github): Refactor|libshell: Use reference-counted Action instances
- 22:55 Revision aae0f355 (github): Refactor|libdeng2|Action|Counted: Actions are reference counted
- Rather than requiring duplication of Action instances, they are now
reference counted so they can be conveniently sha... - 22:53 Revision fd92237e (github): Fixed|libdeng2|Time: Printing the correct time
- 22:28 Revision 72968209 (github): Refactor|libheretic: Switched Heretic v1.3 save state interpreter/reader to C++
- 22:02 Revision 84b2733f (github): Refactor|libdoom: Switched DOOM v1.9 save state interpreter/reader to C++
- 20:51 Revision 06b4c96b (github): Refactor|libcommon: Switched all remaining sources dealing with save state IO to C++
- 12:52 Revision c6ee1296 (github): UI|Client: Close Games dialog when a game session has been selected
- A signal is emitted from GameSelectionWidget after a selection
has been made. - 12:52 Revision 22a18166 (github): UI|Task Bar: "Games" is only accessible when not in Ring Zero
- 12:17 Revision 87fa8467 (github): UI|Client: Replaced "Multiplayer Games" with a "Games" dialog
- The Games dialog shows both the available game sessions and the
multiplayer games. It uses the same game selection wi...
2014-02-02
- 22:28 Bug #1723: [Value def's] impossible to remove pistol
- Fist as well (i.e the default weapons).
- 22:26 Bug #1723 (New): [Value def's] impossible to remove pistol
- Doomsday's value defs allow modders to set what weapon(s) a player starts with.
However, the player is always give... - 21:31 Revision e1e2107b (github): Refactor|UI|Ring Zero: Incorporate MP games in the game selection menu
- Added another subgroup into the Ring Zero game selection menu for
multiplayer games. MPSelectionWidget is a menu that... - 19:28 Revision dac63a3d (github): UI|Ring Zero: Revised game selection menu
- The game selection menu is now divided into foldable subgroups.
Incomplete games are put in a separate group.
Change... - 19:26 Revision e5d394c0 (github): libappfw|GridLayout: Added method for querying the layout's paddings
- 19:24 Revision 294bced7 (github): Fixed|libappfw|Margins: Updating margins
- The sum of the left and right margins wasn't always updated properly.
- 19:24 Revision 47c69e20 (github): libappfw|FoldPanelWidget: Fold title must be manually created
- Previously the title button would be created but never deleted, if
it was unused. - 19:22 Revision 8b30915a (github): Fixed|libappfw|MenuWidget: Take padding into account in layout
- Also added a helper template method for getting widgets representing
items. - 19:21 Revision 43549b14 (github): Fixed|libappfw: De- and re-initializing procedural images
- 19:20 Revision 32599f0b (github): libdeng2|Debug|IndirectRule: More concise description
2014-02-01
- 16:57 Revision 73f3e1cd (github): UI|Client: Added more network settings to dialog
- 16:57 Revision de244c61 (github): libappfw|SliderWidget: Use defined precision in edit popup
- 16:56 Revision 6cc8d9e4 (github): UI|Ring Zero: Center game selection menu in available space
- 16:06 Revision ea78196e (github): UI|Client: Added more network settings to the dialog
- 15:38 Revision 40cd9fe7 (github): UI|Client: Working on network settings and the multiplayer dialog
- 15:37 Revision 723a5124 (github): Fixed|LineEditWidget|libappfw: Don't animate height immediately after creation
- 15:36 Revision c1723996 (github): libdeng2|ScalarRule: Added method to finish current animation
- 15:36 Revision 88f7eeb3 (github): UI|Client|CVarLineEditWidget: Added a line editor for cvars
- 12:10 Revision da2c7823 (github): Fixed|libcommon: Compiler warnings (unused parameters)
- 10:42 Revision de7cb077 (github): libdeng2|Time: Better time formatting for log entries
- If more than an hour has elapsed, separate hours from seconds.
- 10:06 Revision 7879a29e (github): Fixed|libcommon|64-bit: Casts from integer to pointer
- Use the INT2PTR() macro to make casts with the correct integer sizes.
- 10:06 Revision 8932ee5f (github): Fixed|libcommon|64-bit: Casts from integer to pointer
- Use the INT2PTR() macro to make casts with the correct integer sizes.
- 09:51 Revision f678c919 (github): Merge branch 'master' of ssh://github.com/skyjake/Doomsday-Engine into ui-multiplayer
- 09:09 Revision 1b850e5c (github): Typos
- 08:47 Revision 44f8a2d7 (github): Debug|ACS|Hexen: Error if a script tries to address outside its local value stack
- 08:04 Revision 59142387 (github): ACS|Hexen: Simplified ACScript => BytecodeScriptInfo lookup
- ACScript instances only ever exist while the bytecode which defines
said script is in memory. Once loaded/populated, ... - 07:03 Revision 298e4504 (github): libcommon: Continued cleaning up logical episode and/or map number usage
- The goal being a straight map from URI to logical [episode &] map
number(s), allowing for dynamic reindexing of maps ... - 06:05 Revision 2a4968ac (github): libcommon|Cleanup: Added G_CurrentMapUri()
- 05:14 Revision 3265a0b1 (github): libcommon: Cleanup
- 05:05 Revision 662edcc4 (github): ACS|Hexen: Deferred script tasks now reference maps with URI
- 02:29 Revision e7225765 (github): ACS|Hexen: Cleanup
- 01:42 Revision ebeffc05 (github): Console|Hexen: Improved output of "scriptinfo"
2014-01-31
- 23:50 Revision 2a934f1f (github): Fixed|libcommon: Compiler warnings (unused parameters)
- 23:03 Revision ce17792c (github): Refactor|libcommon: Completed save state (de)serialization Reader/Writer update
- 22:04 Revision 672bbe0e (github): Refactor|libcommon: Continued updating save state (de)serialization using Reader/Writer
- 22:02 Revision 0b11cb31 (github): Fixed|libcommon|Hexen DK: Crash during hexen-dk game init (invalid nextMap)
- Until a game has begun (and a map has been loaded) there is no valid
value for the current or next map. In previous v... - 21:54 Revision ed2f9053 (github): Fixed|MapInfoParser|Hexen: Incorrect assignment of logical map numbers to map URIs
- 21:52 Revision 69d5db64 (github): Fixed|libcommon: Implicit loading when revisited a map in the same cluster (typo)
- 19:56 Revision a312b17e (github): Merge branch 'master' into ui-multiplayer
- 19:56 Revision c1172945 (github): UI|Multiplayer: MP menu shows server address and connection duration
- 14:07 Revision 4fb217b7 (github): Fixed|Oculus Rift|libappfw: Shutting down LibOVR (dangling references)
- One of the references to the created LibOVR objects was not freed, thus
causing shutdown of de::OculusRift to hang wa... - 10:05 Revision 83b73c71 (github): Debug|libdeng1: Added an assert
- 09:10 Revision 94de3c9e (github): OS X|Fixed|libgui: No Core Text font implementation in 10.6 build
- The qmake project was still including the Core Text based fonts in
the 10.6 build. - 06:00 Bug #1091: No sound effect played when pressing F7 or F8
- Wanted to add to this that no sound effect is played (a switch sound) when pressing F1 to bring up the Help screen or...
2014-01-30
- 22:15 Revision 0c9c94ce (github): UI|Client: Close MP server info popup when joining the server
- 22:14 Revision 643114e8 (github): Fixed: Build error
- 21:48 Revision 3dda1dee (github): Windows|Fixed|libgui: Accessing main window even if it doesn't exist
- During a fatal error shutdown, DisplayMode was asked to set the color
transfer function after the window had been dis... - 21:46 Revision 5af6fefe (github): Windows|Fixed|libappfw: Missing export
- 20:47 Revision 9c243b26 (github): Merge branch 'ui-multiplayer'
- 20:46 Revision 07c52dcb (github): Refactor|Client|Network: Cleaned up server info functions
- 19:25 Revision 77f0d708 (github): Merge branch 'master' of github.com:skyjake/Doomsday-Engine
- 19:23 Revision 52a23ffa (github): Refactor|XG|libcommon: Implement XG plane-mover (de)serialization in C++, with Reader/Writer
- 19:16 Revision 09977379 (github): Refactor|Hexen: Implement sound sequence (de)serialization with Reader/Writer
- 19:16 Revision cecbd1ed (github): Refactor|ACS|Hexen: Implement ACS state (de)serialization in C++, with Reader/Writer
- 19:14 Revision 22c54103 (github): Refactor|libcommon: Switched p_xgsave.c to C++
- 18:40 Revision 9572fcbd (github): Fixed|Client|All Games: Busy mode transition when map changes in netgame
- 18:40 Revision c9152b18 (github): libdeng2|Log: Print log entry timestamp using seconds since start
- More compact and informative than omitting the hour.
- 17:22 Revision 0f09aa8e (github): Refactor|Client: Moved VRConfig to libappfw
- Also, removed some of the public member variables of VRConfig.
- 15:09 Revision 01ba33d3 (github): libcommon|libdoom: Running player thinkers and their mobjs in fractional time
- Proof of concept where players and their mobjs live in fractional
time while the rest of the world uses only sharp ti... - 15:09 Revision 6731d5a3 (github): Started work branch for low-latency input and modern player movement
- The objective is to allow players (and only players) to be controlled
and moved in fractional time, i.e., as fast as ... - 15:02 Revision a2971cd2 (github): Merge branch 'master' of ssh://github.com/skyjake/Doomsday-Engine
- 14:34 Revision 9d981f3c (github): Refactor|Client|libappfw: Renamed stereo 3D mode enums
- 14:06 Revision 2bee2e23 (github): Refactor|libcommon: Implement thinker (de)serialization in C++, with Reader/Writer
- Todo: mobj_t and Hexen's polyevent_t
- 13:55 Revision ce5f6a33 (github): Refactor: Switched each games' p_lights.c to C++
- 13:03 Revision f22b3292 (github): Refactor|Oculus Rift: Migrated head tracking to libappfw
- de::OculusRift accesses LibOVR and provides head tracking information.
- 10:52 Revision ad9e78b3 (github): Refactor|Stereo 3D: Cleaning up VR state and Oculus Rift
- To objective of this is to move the generic portion of the VR state and
Oculus Rift rendering into libappfw.
2014-01-29
- 21:10 Revision 7ec77ab0 (github): UI|Task Bar: Show the MP menu when connected to a server
- The Multiplayer menu has its own class.
The task bar’s layout is now updated using a SequentialLayout
which makes it... - 19:37 Revision 8834b4a6 (github): OS X|Fixed|libgui: Use Qt fonts in the 10.6 Snow Leopard build
- The Core Graphics API is not available in 10.6.
- 19:27 Bug #1722 (Closed): Log filter default settings not applied immediately
- > [...interaction between log history and dialogs...]
The current behavior is a work in progress and will likely be ... - 16:11 Bug #1722: Log filter default settings not applied immediately
- I'll also add a small oversight.
Normally, opening the log filter settings closes the console log and vice versa, ... - 16:10 Bug #1722 (Closed): Log filter default settings not applied immediately
- The default filter settings button reset's all the values in the menu back to their defaults, but the actual log filt...
- 19:21 Revision c23425fe (github): Fixed|UI|Log: Update filter after reseting to defaults
- IssueID #1722
- 18:49 Revision 844c07b2 (github): Refactor|libcommon: Switched p_door.c to C++
- 18:48 Revision a015765d (github): Refactor|libhexen: Switched p_pillar.c and p_waggle.c to C++
- 16:51 Revision d9f4cc50 (github): Refactor|libcommon: Switched more libcommon source files to C++
- 15:11 Revision 2b495a61 (github): Refactor|ACS: Implement ACScript (de)serialization in C++ with Reader/Writer
- Also, ACScript_Thinker() now calls the C++ method ACScript::runTick()
- 15:07 Revision 28a20547 (github): libcommon: Provide a Reader/Writer to all save state (de)serialization routines
- 14:59 Revision cefbff4e (github): ACS|Cleanup: Use Uri_NewWithPath3
- 14:53 Revision 296bacb4 (github): API|Uri: Added new Uri constructor Uri_NewWithPath3
- A default scheme is set for the new Uri before then parsing a cstring
representation of a Uri, bypassing the resource... - 09:50 Revision 38373d4a (github): Client|Default Style: Text accent color in DocumentWidget
- 09:49 Revision 5fb3e440 (github): UI|Ring Zero: Close popups when game load begins
- 09:49 Revision 7721253d (github): Cleanup
2014-01-28
- 20:39 Revision 1a26df35 (github): Cleanup|Game|Updater|UI: Log messages
- 20:14 Revision 404fc222 (github): UI|Ring Zero: Improving the game selection menu
- Added additional buttons beside each game to access further
information (later, settings) about the game. Removed the... - 20:13 Revision 1c347c79 (github): Refactor|Game: Added a method for getting a text description
- The same information that is printed with ‘inspectgame’.
- 20:12 Revision 81b8be24 (github): Refactor|UI|Client: Use DocumentPopupWidget
- 20:11 Revision c24775a7 (github): libappfw: Widget improvements
- MenuWidget’s layout can be modified by outsiders (non-const accessor).
Ensure only the main thread creates widgets in... - 20:09 Revision 52d20dfe (github): Refactor|libappfw: Use DocumentPopupWidget
- 20:08 Revision 9dcb32df (github): libgui|Client: Improved handling of indents in text drawing
- Indents can be marked and reseted individually.
- 20:07 Revision f55148a5 (github): libappfw: Added DocumentPopupWidget
- Simple combination of a popup with a document widget inside. Useful
for many simple info popups (e.g., console autoco... - 10:47 Revision 0f30fa7d (github): libdeng2|Performance: String memory allocation behavior in formatter
- Reserve memory for the line in advance when filling tabs.
2014-01-27
- 22:38 Revision f887e1c0 (github): Shell|GUI: Placeholder icon
- 22:22 Revision 1198b129 (github): Merge branch 'master' of ssh://github.com/skyjake/Doomsday-Engine into ui-multiplayer
- 22:21 Revision 18b9aa94 (github): UI|Client: Joining an MP game using the Multiplayer dialog
- The game plugin is automatically switched if necessary.
- 22:20 Revision 59ae671e (github): libdeng2|Log: Monospace formatter fills tabs with spaces
- MonospaceLogSinkFormatter will now check the tab escapes in the
input text and produce a suitable amount of spaces to... - 11:45 Bug #1720 (Resolved): [multiplayer] client seg fault when something moves
- 11:35 Revision 3cec3a90 (github): Fixed|Client: Crash in multiplayer when the player attempts to fire
- The engine failed to zero the whole of mobj_t, leaving the portion
which defines the game specific extra data uniniti... - 10:15 Revision be842469 (github): Hexen|ACScriptInterpreter: Moved remaining ACS interpretation logic into ACScriptInterpreter
- Todo: Cleanup
- 09:49 Revision 94078aab (github): UI|Task Bar: Moved “Unload Game” menu item
- 09:06 Revision 0be50243 (github): ACS|Hexen: Cleanup
- 08:03 Revision 1ce427a1 (github): UI|Multiplayer: Added an info popup for full server information
- 08:03 Revision f6e171ba (github): Fixed|Client: Crashes in multiplayer
- Null pointer access and incorrect shutdown order of ServerLink.
- 08:02 Revision aa473872 (github): Log: Message styling
- Light font for headers.
- 08:02 Revision 385f9d9e (github): libdeng2: Added M-dash character symbol
- 07:27 Revision 75e7122b (github): ACS|Hexen: Moved more logic into the new interpreter class
- 06:52 Revision 832cf9fa (github): ACS|Hexen: Load bytecode string constants as static Strs, cleanup
- 06:02 Revision b20cf99c (github): libcommon: Fix build (unknown type acs_t)
- Note to self: ignore Qt Creator's unreliable refactoring tools...
- 05:39 Revision a24cbb98 (github): ACS|Hexen: Removed more unnecessary globals used by the bytecode interpreter
- 04:10 Revision 58436cc0 (github): ACS|Hexen: Cleanup
- 03:45 Revision 8f94a103 (github): ACS|Hexen: Continued work on remodeling the ACS bytecode interpreter
- 02:27 Revision eb14c981 (github): ACS|Hexen: Translate ACS script numbers when loading new bytecode
- 01:41 Revision aa6bb8e2 (github): ACS|Hexen: Ensure bytecode command functions are of the expected form
- 00:44 Revision 9d79b054 (github): ACS|Hexen: Continued moving logic into the new interpretor class
Also available in: Atom