32
32
import static com .compdfkit .flutter .compdfkit_flutter .constants .CPDFConstants .ChannelMethod .IS_VERTICAL_MODE ;
33
33
import static com .compdfkit .flutter .compdfkit_flutter .constants .CPDFConstants .ChannelMethod .RELOAD_PAGES ;
34
34
import static com .compdfkit .flutter .compdfkit_flutter .constants .CPDFConstants .ChannelMethod .SET_ANNOTATION_MODE ;
35
+ import static com .compdfkit .flutter .compdfkit_flutter .constants .CPDFConstants .ChannelMethod .SET_WIDGET_BACKGROUND_COLOR ;
35
36
import static com .compdfkit .flutter .compdfkit_flutter .constants .CPDFConstants .ChannelMethod .SHOW_ADD_WATERMARK_VIEW ;
36
37
import static com .compdfkit .flutter .compdfkit_flutter .constants .CPDFConstants .ChannelMethod .SHOW_BOTA_VIEW ;
37
38
import static com .compdfkit .flutter .compdfkit_flutter .constants .CPDFConstants .ChannelMethod .SHOW_DISPLAY_SETTINGS_VIEW ;
@@ -103,9 +104,9 @@ public CPDFViewCtrlPlugin(Context context, BinaryMessenger binaryMessenger, int
103
104
104
105
public void setDocumentFragment (CPDFDocumentFragment documentFragment ) {
105
106
this .documentFragment = documentFragment ;
106
- this .documentFragment .setInitListener ((pdfView )-> {
107
+ this .documentFragment .setInitListener ((pdfView ) -> {
107
108
documentPlugin .setReaderView (pdfView );
108
- if (methodChannel != null ){
109
+ if (methodChannel != null ) {
109
110
methodChannel .invokeMethod ("onDocumentIsReady" , null );
110
111
}
111
112
pdfView .addReaderViewCallback (new CPDFIReaderViewCallback () {
@@ -140,8 +141,8 @@ public void onTapMainDocArea() {
140
141
Map <String , Object > map = new HashMap <>();
141
142
map .put ("canUndo" , cpdfUndoManager .canUndo ());
142
143
map .put ("canRedo" , cpdfUndoManager .canRedo ());
143
- if (methodChannel != null ){
144
- methodChannel .invokeMethod ("onAnnotationHistoryChanged" , map );
144
+ if (methodChannel != null ) {
145
+ methodChannel .invokeMethod ("onAnnotationHistoryChanged" , map );
145
146
}
146
147
});
147
148
@@ -152,7 +153,7 @@ public void onTapMainDocArea() {
152
153
}
153
154
});
154
155
documentFragment .setFillScreenChangeListener (isFillScreen -> {
155
- if (methodChannel != null ){
156
+ if (methodChannel != null ) {
156
157
methodChannel .invokeMethod ("onFullScreenChanged" , isFillScreen );
157
158
}
158
159
});
@@ -190,12 +191,33 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull MethodChannel.Result
190
191
break ;
191
192
case SET_READ_BACKGROUND_COLOR :
192
193
String colorHex = call .argument ("color" );
194
+ String displayMode = call .argument ("displayMode" );
193
195
readerView .setReadBackgroundColor (Color .parseColor (colorHex ));
194
- if ("#FFFFFFFF" .equals (colorHex )){
195
- pdfView .setBackgroundColor (ContextCompat .getColor (context , com .compdfkit .tools .R .color .tools_pdf_view_ctrl_background_color ));
196
- } else {
197
- pdfView .setBackgroundColor (
198
- CViewUtils .getColor (Color .parseColor (colorHex ), 190 ));
196
+ switch (displayMode ) {
197
+ case "light" :
198
+ pdfView .setBackgroundColor (ContextCompat .getColor (context ,
199
+ com .compdfkit .tools .R .color .tools_pdf_view_ctrl_background_color ));
200
+ break ;
201
+ case "dark" :
202
+ pdfView .setBackgroundColor (ContextCompat .getColor (context ,
203
+ com .compdfkit .tools .R .color .tools_pdf_view_ctrl_background_color_dark ));
204
+ break ;
205
+ case "sepia" :
206
+ pdfView .setBackgroundColor (ContextCompat .getColor (context ,
207
+ com .compdfkit .tools .R .color .tools_pdf_view_ctrl_background_color_sepia ));
208
+ break ;
209
+ case "reseda" :
210
+ pdfView .setBackgroundColor (ContextCompat .getColor (context ,
211
+ com .compdfkit .tools .R .color .tools_pdf_view_ctrl_background_color_reseda ));
212
+ break ;
213
+ }
214
+ result .success (null );
215
+ break ;
216
+ case SET_WIDGET_BACKGROUND_COLOR :
217
+ String widgetColorHex = (String ) call .arguments ;
218
+ try {
219
+ pdfView .setBackgroundColor (Color .parseColor (widgetColorHex ));
220
+ } catch (Exception e ) {
199
221
}
200
222
result .success (null );
201
223
break ;
@@ -297,9 +319,9 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull MethodChannel.Result
297
319
boolean noZoomPage = call .argument ("noZoom" );
298
320
int page = call .argument ("pageIndex" );
299
321
RectF rectF ;
300
- if (noZoomPage ){
322
+ if (noZoomPage ) {
301
323
rectF = readerView .getPageNoZoomSize (page );
302
- }else {
324
+ } else {
303
325
rectF = readerView .getPageSize (page );
304
326
}
305
327
Map <String , Float > pageSizeMap = new HashMap <>();
@@ -354,8 +376,8 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull MethodChannel.Result
354
376
String typeStr = call .arguments ();
355
377
356
378
CAnnotationType type ;
357
- try {
358
- switch (typeStr ){
379
+ try {
380
+ switch (typeStr ) {
359
381
case "note" :
360
382
type = CAnnotationType .TEXT ;
361
383
break ;
@@ -373,18 +395,18 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull MethodChannel.Result
373
395
result .success (null );
374
396
break ;
375
397
case GET_ANNOTATION_MODE :
376
- CAnnotationType annotationType = documentFragment .annotationToolbar .toolListAdapter .getCurrentAnnotType ();
377
- switch (annotationType ){
378
- case TEXT :
379
- result .success ("note" );
380
- break ;
381
- case PIC :
382
- result .success ("pictures" );
383
- break ;
384
- default :
385
- result .success (annotationType .name ().toLowerCase ());
386
- break ;
387
- }
398
+ CAnnotationType annotationType = documentFragment .annotationToolbar .toolListAdapter .getCurrentAnnotType ();
399
+ switch (annotationType ) {
400
+ case TEXT :
401
+ result .success ("note" );
402
+ break ;
403
+ case PIC :
404
+ result .success ("pictures" );
405
+ break ;
406
+ default :
407
+ result .success (annotationType .name ().toLowerCase ());
408
+ break ;
409
+ }
388
410
break ;
389
411
case ANNOTATION_CAN_UNDO : {
390
412
CPDFUndoManager annotationUndoManager = documentFragment .pdfView .getCPdfReaderView ()
@@ -398,12 +420,12 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull MethodChannel.Result
398
420
result .success (annotationUndoManager .canRedo ());
399
421
break ;
400
422
}
401
- case ANNOTATION_UNDO :{
423
+ case ANNOTATION_UNDO : {
402
424
documentFragment .annotationToolbar .annotUndo ();
403
425
result .success (null );
404
426
break ;
405
427
}
406
- case ANNOTATION_REDO :{
428
+ case ANNOTATION_REDO : {
407
429
documentFragment .annotationToolbar .annotRedo ();
408
430
result .success (null );
409
431
break ;
0 commit comments