summaryrefslogtreecommitdiffstats
path: root/image/decoders/nsBMPDecoder.h
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@wolfbeast.com>2019-02-07 22:06:24 +0100
committerwolfbeast <mcwerewolf@wolfbeast.com>2019-02-07 22:06:24 +0100
commit6992106dc7894fab3f620263e99b4083b36bf9e8 (patch)
tree2a3554cf7bfabfeee0cc56ca58b04773a902cb76 /image/decoders/nsBMPDecoder.h
parent0b6d9a47051be9ef4d064c6f7c60717da91d0bc2 (diff)
downloadUXP-6992106dc7894fab3f620263e99b4083b36bf9e8.tar
UXP-6992106dc7894fab3f620263e99b4083b36bf9e8.tar.gz
UXP-6992106dc7894fab3f620263e99b4083b36bf9e8.tar.lz
UXP-6992106dc7894fab3f620263e99b4083b36bf9e8.tar.xz
UXP-6992106dc7894fab3f620263e99b4083b36bf9e8.zip
Use existing image decoders to handle clipboard BMP data.
This gets rid of the old nsImageClipboard widget code in favor of using the nsBMPDecoder in imglib.
Diffstat (limited to 'image/decoders/nsBMPDecoder.h')
-rw-r--r--image/decoders/nsBMPDecoder.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/image/decoders/nsBMPDecoder.h b/image/decoders/nsBMPDecoder.h
index 0cf2af689..258381649 100644
--- a/image/decoders/nsBMPDecoder.h
+++ b/image/decoders/nsBMPDecoder.h
@@ -152,6 +152,7 @@ private:
enum class State {
FILE_HEADER,
+ CLIPBOARD_HEADER,
INFO_HEADER_SIZE,
INFO_HEADER_REST,
BITFIELDS,
@@ -164,8 +165,8 @@ private:
RLE_ABSOLUTE
};
- // This is the constructor used for normal BMP images.
- explicit nsBMPDecoder(RasterImage* aImage);
+ // This is the constructor used for normal and clipboard BMP images.
+ explicit nsBMPDecoder(RasterImage* aImage, bool aForClipboard = false);
// This is the constructor used for BMP resources in ICO images.
nsBMPDecoder(RasterImage* aImage, uint32_t aDataOffset);
@@ -180,6 +181,7 @@ private:
void FinishRow();
LexerTransition<State> ReadFileHeader(const char* aData, size_t aLength);
+ LexerTransition<State> ReadClipboardHeader(const char* aData, size_t aLength);
LexerTransition<State> ReadInfoHeaderSize(const char* aData, size_t aLength);
LexerTransition<State> ReadInfoHeaderRest(const char* aData, size_t aLength);
LexerTransition<State> ReadBitfields(const char* aData, size_t aLength);