1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 12:38:12 +00:00
serenity/Userland/Libraries/LibGUI
Nico Weber 58838db445 LibGfx: Add the start of a JBIG2 loader
JBIG2 is infamous for two things:

1. It's used in xerox scanners were it falsifies scanned numbers:

https://www.dkriesel.com/en/blog/2013/0802_xerox-workcentres_are_switching_written_numbers_when_scanning

2. It was allegedly used in an iOS zero day, in a very cool way:

https://googleprojectzero.blogspot.com/2021/12/a-deep-dive-into-nso-zero-click.html

Needless to say, we need support for it in Serenity. (...because it's
used in PDF files.)

This adds all the scaffolding, but no actual implementation yet.

It's enough for `file` to print the mime type of .jb2 files, but `image`
can't do anything with the files yet.
2024-03-09 16:01:22 +01:00
..
GML
Wizards
AboutDialog.cpp AboutDialog: Port to GML Complier 2024-02-26 13:20:42 -07:00
AboutDialog.gml AboutDialog: Port to GML Complier 2024-02-26 13:20:42 -07:00
AboutDialog.h
AboutDialogWidget.h AboutDialog: Port to GML Complier 2024-02-26 13:20:42 -07:00
AbstractButton.cpp
AbstractButton.h
AbstractScrollableWidget.cpp
AbstractScrollableWidget.h
AbstractSlider.cpp
AbstractSlider.h
AbstractTableView.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
AbstractTableView.h
AbstractThemePreview.cpp
AbstractThemePreview.h
AbstractView.cpp
AbstractView.h
AbstractZoomPanWidget.cpp
AbstractZoomPanWidget.h
Action.cpp
Action.h
ActionGroup.cpp
ActionGroup.h
Application.cpp LibGUI: Consider carriage returns when counting lines in a label 2024-03-08 14:43:33 -05:00
Application.h LibGUI+Userland: Take ByteString in set_most_recently_open_file() 2024-01-24 11:07:03 +00:00
AutocompleteProvider.cpp
AutocompleteProvider.h
BoxLayout.cpp LibGUI: Port rest of the classes to property deserializers 2024-01-06 09:15:37 -07:00
BoxLayout.h
Breadcrumbbar.cpp
Breadcrumbbar.h
Button.cpp
Button.h
Calendar.cpp LibGUI: Add Calendar property for mode 2024-02-24 18:54:51 -07:00
Calendar.h LibGUI: Add Calendar property for mode 2024-02-24 18:54:51 -07:00
CheckBox.cpp
CheckBox.h
Clipboard.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
Clipboard.h
CMakeLists.txt AboutDialog: Port to GML Complier 2024-02-26 13:20:42 -07:00
ColorFilterer.h
ColorInput.cpp
ColorInput.h
ColorPicker.cpp
ColorPicker.h
ColumnsView.cpp
ColumnsView.h
ComboBox.cpp
ComboBox.h
Command.h
CommandPalette.cpp
CommandPalette.h
CommonActions.cpp
CommonLocationsProvider.cpp Base: Create user default Music and Pictures directories 2024-02-05 16:30:52 +01:00
CommonLocationsProvider.h
CommonMenus.cpp
ConnectionToWindowManagerServer.cpp
ConnectionToWindowManagerServer.h
ConnectionToWindowServer.cpp Userland: Actually use the correct character map index from KeyEvent 2023-12-29 16:40:59 +01:00
ConnectionToWindowServer.h Userland: Actually use the correct character map index from KeyEvent 2023-12-29 16:40:59 +01:00
DatePicker.cpp LibGUI: Remove redundant Widget::update calls from DatePicker 2024-02-24 18:54:51 -07:00
DatePicker.h Calendar: Move MonthListModel into Calendar.h 2024-01-06 10:37:53 -07:00
DatePickerDialog.gml LibGUI: Add Calendar property for mode 2024-02-24 18:54:51 -07:00
Desktop.cpp
Desktop.h
Dialog.cpp
Dialog.h LibGUI: Add a MessageBox type to reveal a file 2024-01-06 20:11:12 +00:00
DisplayLink.cpp
DisplayLink.h
DragOperation.cpp
DragOperation.h
DynamicWidgetContainer.cpp Everywhere: Add deprecated_ prefix to JsonValue::to_byte_string 2024-01-12 17:41:34 -07:00
DynamicWidgetContainer.h
DynamicWidgetContainerControls.gml
DynamicWidgetContainerControls.h
EditingEngine.cpp
EditingEngine.h
EmojiInputDialog.cpp
EmojiInputDialog.gml
EmojiInputDialog.h
Event.cpp
Event.h LibGUI: Define bitwise operations for GUI::MouseButton 2024-03-06 07:46:18 +01:00
FileIconProvider.cpp LibFileSystem+Everywhere: Return ByteString from read_link() 2024-01-16 08:42:34 +00:00
FileIconProvider.h
FilePicker.cpp
FilePicker.h
FilePickerDialog.gml
FileSystemModel.cpp LibFileSystem+Everywhere: Return ByteString from read_link() 2024-01-16 08:42:34 +00:00
FileSystemModel.h
FileTypeFilter.h LibGfx: Add the start of a JBIG2 loader 2024-03-09 16:01:22 +01:00
FilteringProxyModel.cpp
FilteringProxyModel.h
FocusPolicy.h
FocusSource.h
FontPicker.cpp
FontPicker.h
FontPickerDialog.gml LibGUI+Applications: Default the SpinBox min/max to the full int range 2024-01-14 13:46:14 +00:00
Forward.h LibGUI: Add a date picker dialog 2024-01-06 10:37:53 -07:00
Frame.cpp
Frame.h
GitCommitLexer.cpp
GitCommitLexer.h
GitCommitSyntaxHighlighter.cpp
GitCommitSyntaxHighlighter.h
GlyphMapWidget.cpp
GlyphMapWidget.h
GroupBox.cpp
GroupBox.h
HeaderView.cpp LibGUI: Allow HeaderView column selectability to be toggled 2024-01-14 15:01:47 -07:00
HeaderView.h LibGUI: Allow HeaderView column selectability to be toggled 2024-01-14 15:01:47 -07:00
HorizontalSlider.h
Icon.cpp
Icon.h LibGUI: Use HashMap::keys() to hand out the available sizes of icons 2024-03-01 14:05:53 -07:00
IconView.cpp
IconView.h
ImageWidget.cpp LibGfx+Fallout: Make ImageDecoder return ErrorOr 2024-03-07 11:20:06 -05:00
ImageWidget.h
IncrementalSearchBanner.cpp
IncrementalSearchBanner.gml
IncrementalSearchBanner.h
INILexer.cpp
INILexer.h
INISyntaxHighlighter.cpp
INISyntaxHighlighter.h
InputBox.cpp
InputBox.h
ItemListModel.h
JsonArrayModel.cpp LibGUI: Remove GUI::Variant::Variant(JsonValue const&) 2024-01-21 15:47:53 -07:00
JsonArrayModel.h
Label.cpp LibGUI: Consider carriage returns when counting lines in a label 2024-03-08 14:43:33 -05:00
Label.h
LabelWithEventDispatcher.cpp
LabelWithEventDispatcher.h
Layout.cpp LibGUI: Port rest of the classes to property deserializers 2024-01-06 09:15:37 -07:00
Layout.h
LazyWidget.cpp
LazyWidget.h
LinkLabel.cpp
LinkLabel.h
ListView.cpp
ListView.h
Margins.h LibGUI: Port rest of the classes to property deserializers 2024-01-06 09:15:37 -07:00
Menu.cpp LibGUI+WindowServer: Add menu minimum width support 2024-01-29 05:29:41 -07:00
Menu.h LibGUI+WindowServer: Add menu minimum width support 2024-01-29 05:29:41 -07:00
Menubar.cpp
Menubar.h
MenuItem.cpp
MenuItem.h
MessageBox.cpp LibGUI: Add a MessageBox type to reveal a file 2024-01-06 20:11:12 +00:00
MessageBox.h LibGUI: Add a MessageBox type to reveal a file 2024-01-06 20:11:12 +00:00
Model.cpp
Model.h
ModelEditingDelegate.h
ModelIndex.cpp
ModelIndex.h
ModelRole.h
ModelSelection.cpp
ModelSelection.h
MouseTracker.cpp
MouseTracker.h
MultiView.cpp
MultiView.h
Notification.cpp
Notification.h
NumericInput.cpp LibGUI: Make NumericInput work well in GML 2024-01-10 13:13:27 +00:00
NumericInput.h LibGUI: Make NumericInput work well in GML 2024-01-10 13:13:27 +00:00
Object.cpp
Object.h LibGUI: Make old register_property a private method of Object 2024-01-06 09:15:37 -07:00
OpacitySlider.cpp
OpacitySlider.h
Painter.cpp
Painter.h
PasswordInputDialog.cpp
PasswordInputDialog.gml
PasswordInputDialog.h
PathBreadcrumbbar.cpp
PathBreadcrumbbar.h
PersistentModelIndex.cpp
PersistentModelIndex.h
Process.cpp
Process.h
ProcessChooser.cpp
ProcessChooser.h
Progressbar.cpp
Progressbar.h LibGUI: Add set_text(String) method to ProgressBar 2023-12-27 15:29:50 +01:00
Property.cpp
Property.h
PropertyDeserializer.cpp AK+Everywhere: Remove JsonValue APIs with implicit default values 2024-01-21 15:47:53 -07:00
PropertyDeserializer.h AK+Everywhere: Remove JsonValue APIs with implicit default values 2024-01-21 15:47:53 -07:00
RadioButton.cpp
RadioButton.h
RangeSlider.cpp
RangeSlider.h
RegularEditingEngine.cpp
RegularEditingEngine.h
ResizeCorner.cpp
ResizeCorner.h
ResizeDirection.h
RunningProcessesModel.cpp
RunningProcessesModel.h
ScreenLayout.cpp
ScrollableContainerWidget.cpp
ScrollableContainerWidget.h
Scrollbar.cpp
Scrollbar.h
SeparatorWidget.cpp
SeparatorWidget.h
SettingsWindow.cpp
SettingsWindow.h
Shortcut.cpp
Shortcut.h
Slider.cpp
Slider.h
SortingProxyModel.cpp
SortingProxyModel.h
SpinBox.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
SpinBox.h LibGUI+Applications: Default the SpinBox min/max to the full int range 2024-01-14 13:46:14 +00:00
Splitter.cpp
Splitter.h
StackWidget.cpp
StackWidget.h
Statusbar.cpp
Statusbar.h
SystemEffects.h
TableView.cpp
TableView.h
TabWidget.cpp LibGUI: Port rest of the classes to property deserializers 2024-01-06 09:15:37 -07:00
TabWidget.h
TextBox.cpp
TextBox.h
TextDocument.cpp
TextDocument.h
TextEditor.cpp
TextEditor.h
TextPosition.h
TextRange.h
Toolbar.cpp
Toolbar.h
ToolbarContainer.cpp
ToolbarContainer.h
Tray.cpp
Tray.h
TreeView.cpp
TreeView.h
TreeViewModel.cpp
TreeViewModel.h
UIDimensions.h LibGUI: Port rest of the classes to property deserializers 2024-01-06 09:15:37 -07:00
UndoStack.cpp
UndoStack.h
ValueSlider.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
ValueSlider.h
Variant.cpp LibGUI: Remove GUI::Variant::Variant(JsonValue const&) 2024-01-21 15:47:53 -07:00
Variant.h LibGUI: Remove GUI::Variant::Variant(JsonValue const&) 2024-01-21 15:47:53 -07:00
VimEditingEngine.cpp
VimEditingEngine.h
Widget.cpp LibGUI: Port rest of the classes to property deserializers 2024-01-06 09:15:37 -07:00
Widget.h GMLCompiler: Add common pattern for a user-defined fallible initializer 2024-01-29 05:21:48 -07:00
Window.cpp LibGUI: Port rest of the classes to property deserializers 2024-01-06 09:15:37 -07:00
Window.h
WindowMode.h
WindowType.h