diff --git a/Media/ImageEdit/entry/src/main/ets/entryability/EntryAbility.ts b/Media/ImageEdit/entry/src/main/ets/entryability/EntryAbility.ts index 8e1973c76da6f57bfbf24a7a77f7ee660b48e0a8..5dfb84bcb4f07694887f77902f60d0b5769b108d 100644 --- a/Media/ImageEdit/entry/src/main/ets/entryability/EntryAbility.ts +++ b/Media/ImageEdit/entry/src/main/ets/entryability/EntryAbility.ts @@ -22,6 +22,12 @@ import { ScreenManager } from '../viewModel/ScreenManager'; export default class EntryAbility extends UIAbility { onCreate(want, launchParam) { hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate'); + window.getLastWindow(this.context, (err, window) => { + if (err) { + hilog.error(0x0000, 'testTag', '%{public}s',`window loading has error: ${JSON.stringify(err)}`); + } + globalThis.statusBar = window.getWindowProperties().windowRect?.top; + }); } onDestroy() { diff --git a/Media/ImageEdit/entry/src/main/ets/pages/HomePage.ets b/Media/ImageEdit/entry/src/main/ets/pages/HomePage.ets index 9988ec0b90b9ae3ba5aab8e7fa0b2d6b748d0509..d80c5fa1788878e8267392cd13443725bde3fd27 100644 --- a/Media/ImageEdit/entry/src/main/ets/pages/HomePage.ets +++ b/Media/ImageEdit/entry/src/main/ets/pages/HomePage.ets @@ -59,7 +59,7 @@ struct HomePage { this.pixelInit(); window.getLastWindow(getContext(this), (err, window) => { if (err) { - Logger.error(`window loading has error: ${JSON.stringify(err)}`); + Logger.error(0x0000, 'testTag', '%{public}s',`window loading has error: ${JSON.stringify(err)}`); } this.statusBar = window.getWindowProperties().windowRect?.top; }); @@ -246,6 +246,7 @@ struct HomePage { break; case CropType.RECTANGLE: this.cropRatio = CropRatioType.RATIO_TYPE_16_9; + break; default: this.cropRatio = CropRatioType.RATIO_TYPE_FREE; break; @@ -257,7 +258,7 @@ struct HomePage { try { this.pixelMap.rotate(CommonConstants.CLOCK_WISE) .then(() => { - this.flushPixelMap(); + this.flushPixelMapNew(); }) } catch (error) { Logger.error(TAG, `there is a error in rotate process with ${error?.code}`); @@ -267,7 +268,7 @@ struct HomePage { try { this.pixelMap.rotate(CommonConstants.ANTI_CLOCK) .then(() => { - this.flushPixelMap(); + this.flushPixelMapNew(); }) } catch (error) { Logger.error(TAG, `there is a error in rotate process with ${error?.code}`); @@ -282,6 +283,11 @@ struct HomePage { this.updateImageInfo(); } + flushPixelMapNew() { + this.isPixelMapChange = !this.isPixelMapChange; + this.updateImageInfo(); + } + updateImageInfo() { this.pixelMap.getImageInfo().then((imageInfo) => { this.imageInfo = imageInfo; diff --git a/Media/ImageEdit/entry/src/main/ets/view/ImageSelect.ets b/Media/ImageEdit/entry/src/main/ets/view/ImageSelect.ets index f34c561b19acfa701831020e9d00ef75ada3b89f..319650c990ba930ee17f97a0b2a96f20fa2cd740 100644 --- a/Media/ImageEdit/entry/src/main/ets/view/ImageSelect.ets +++ b/Media/ImageEdit/entry/src/main/ets/view/ImageSelect.ets @@ -60,6 +60,9 @@ export struct ImageSelect { if (this.isSave) { let filter = this.cropEdit.exit(); if (filter === undefined) { + encode(this.pixelMap); + this.isSaveFresh = !this.isSaveFresh; + this.isSave = false; return; } filter.readerNew(new PixelMapWrapper(this.pixelMap, this.imageOldSize.width, this.imageOldSize.height), () => { @@ -154,7 +157,7 @@ export struct ImageSelect { try { this.defaultDisplay = display.getDefaultDisplaySync(); this.screenWidth = px2vp(this.defaultDisplay.width); - this.screenHeight = px2vp((this.defaultDisplay.height - this.statusBar) * + this.screenHeight = px2vp((this.defaultDisplay.height - this.statusBar * 2) * CommonConstants.EDIT_SCREEN_USAGE); this.calcScale(); this.cropEdit = new ImageEditCrop();