Copyright ©2001-2004 by OCSoftware. All Rights Reserved.
OCSmart Hacks 1.0 Release Notes
Overview
This file details major changes between different releases of OCSmart Hacks.
OCSmart Hacks 1.0
Mainly bug fixes and GUI improvements, new features only where I needed them badly myself ☺, plus–if you call that a feature–the registration support (I don't like it either, but honestly, would you pay unless there was one?)
- with a predefined modifier set, the main menu can be popped out at the current mouse location by a mouse click or push: right button opens directly Services menu if any, left always the main menu;
- slightly (!) improved the HTML generation, see the last paragraph of the Save as HTML Help page;
- fixed a HTML generation bug which caused the current type list information to be sometimes improper (as a result, tags were sometimes generated at bad places);
- in the HTML Generation Rules dictionary there can be an array for key "0". If so, it contains logical types which are generated before a beginning of a paragraph. A beginning of paragraph is now generated before all the other logical types;
- also, HTML generation uses a better memory management now;
- a new keyboard watcher service reports another keyboard whenever selected, described in the Power User Help page;
- the Loader logs show the host application signature (if applicable);
- now, ⌘-rightdrag works in the title too, and ⌘-rightclick works anywhere in whole window;
- when app launches, there's a slight delay before menus are torn off (see Power User doc for OCSHTearOffMenusLaunchDelay): some of dynamic menus are better supported this way (Services);
- the "Tear Off" item now can be either disabled or removed in torn-off menus;
- if a submenu of a torn-off menu would be higher than screen, the standard system pop-up is used instead. It is ugly, but it works... more or less (the menu item stays highlighted, but at least, you can select fonts in Nisus ☺);
- the level of transparency of torn-off menus can be changed (full opaqueness is not allowed);
- those prev/next Help buttons now allow to cycle (from last to first, from first to last);
- the Set Link... command does not anymore change your selection if it is nonempty;
- the special tricks "<" and ">" for Set Link... available to skip out of the attribute at the beginning or the end of the text (more in the URL Links Help page);
- it is not possible anymore to open the Set Link... sheet in more windows at once (in previous release, it brought a plethora of problems);
- fixed the problem that sometimes it was not possible to set a menu which is not torn off "for all";
- the stored name of the application torn-off menu fixed, so that it can be stored "for all";
- fixed link names in HTML generated from documents in which embedded file names contained '%';
- the code for automatic creation/maximization cleaned up. For plain users it should give much better feedback (including detailed tooltips if disabled); power users now can override by force in applications which have own code (like in Safari) or other reasons, see Power User Help page for details;
- fixed the small bug which sometimes caused that ⌘-right click selected a wrong window (not the topmost one);
- removed the possibility to move drawers or sheets independently on their main window (for drawers, see Power User defaults);
- the new OCSHShowSignature default (usage described in the Power User Help page, First Aid paragraph);
- documentation improved, like in the Power User page, it is described explicitly that defaults are stored inside host applications' domains, and more.
OCSmart Hacks β.2
A bit improved, fixed the worst bugs, added a few very simple features (mostly the feature set is fixed till the final release is out).
- fixed the bug saving the first preset (the preset folder has not been created automatically)
- added a OCSHAddSpecialCharactersMenuItem default. If set, the "Special Characters..." menu item is added at the end of the Edit menu (if possible, otherwise elswhere). There are also defaults OCSHAddSpecialCharactersKeyEquivalent and OCSHAddSpecialCharactersKeyEquivalentModifiers with the obvious meaning. In future, they will have a GUI, but not at the moment;
- added a OCSHHacksPanelKeyEquivalent default. If set, the "application name ▸ OCSmart Hacks..." gets the appropriate key equivalent. There is also the appropriate default OCSHHacksPanelKeyEquivalentModifiers with the obvious meaning (note that in this special case ⌘ is not mandatory). This key equivalent works in an active application even if there is no menu. In future, there will be a GUI, but not at the moment;
- when converting to HTML, the keypaths are interpreted a tad differently: see Power User doc. It fixes e.g. some cases when a link in the source RTF(D) was ignored when converting to HTML;
- you can use a special prefix "local:" in URLs; it will be removed to allow you to enter relative links;
- a window can be ⌘-rightdragged by any point in its contents area;
- fixed the bug that in menus which are torn off automatically at the launch time the "Tear Off" item was not disabled;
- now submenus are correctly opened left from the torn-off menu in case they would not fit the screen, similarly they are moved up at the bottom edge of the screen;
- fixed the ugly bug when, if a submenu of a torn-off menu was open and one tried to move the torn-off menu, the menu went completely off its rocker;
- the test whether an application uses its own code for deciding whether an untitled document should be open is more precise now (it used to find almost any application to have its own code);
- also, the "Create Document Automatically" alert is not shown for applications which quit when their last window is closed: you would probably want "Yes" for them anyway, for they self-evidently are window-centric. Nevertheless, you still can override the value to "No" in the OCSmart Hacks panel if you want to, presumed the application does not decide itself;
- also, there is a list of signatures not to ask whether to create an untitled document, ever: see Power User Help page for OCSHNeverAskForCreationOfUntitledDocument;
- the "The application is about to automatically open an untitled document..." and "The application is about to automatically maximize a document..." dialogues now display the application signature;
- tearing off the menus at launch time is now delayed after the application did finish launching: seems there are applications which did not like a menu shown before that time (iChat);
- the torn-off menus allows to be mixed with plain windows or to float above them (as before);
- at user's request, one ancient feature of the first alpha was resurrected: if a default OCSHTearOffSubmenuByShiftOpening is set, you can tear off submenus by Shift-opening them from torn-off menus;
- the internal structure was changed to use a very lightweight loader class which checks whether enabled, and the rest which is loaded only if so. Thus, it is not possible anymore that the mere existence of Hacks–albeit disabled and thus not run–may clash with something: with β.1 there were cases when even disabled Hacks partially worked;
- when a menu is torn off to the mouse position, it is actually a bit more to left top, to assist better grabbing it immediately (see also Power User for OCSHTearOffToMousePositionOffset);
- fixed the old problem that ⌘-click to a document title did not open the popup menu with the document path;
- fixed a bug in the menu adding routines which may have caused some rare applications to hang at launch time (with the dock icon bouncing infinitely, example: the old Apple Clock.app, which is no more part of Mac OS X);
- fixed that in a torn-off menu of a localized application the application name was shown always in English (now it should be localized properly);
- the Window "Create..." and "Maximize..." automatically Yes/No buttons, if disabled, now show the reason in a tooltip;
- updated the project so that neither the bundle nor the application should run pre-Panther;
- a few small GUI changes (like texts better fitting window size);
- the current way of conversion to HTML is (somewhat) documented;
- the fact that "Tear Off" can't stay at the end of dynamic menus is documented;
- some tear-off menu problems which cannot be fixed at the moment documented;
- some typos and mistakes in documentation and GUI fixed, tear-off written always with the hyphen if used as an adjective, and so on;
- an Italian localization added (tentative, not quite complete, Hacks bundle only);
- a French localization added (tentative, not quite complete, Hacks bundle only);
- a Czech localization added (tentative, not quite complete, both Hacks bundle and the application).
OCSmart Hacks β.1
Completely refactored, much more powerful, a number of new features!
- MailDisableHostLookup completely removed (I don't need it anymore, and it never really worked for others ☺)
- the 'don't open untitled window' functionality now tied to document based applications only, much more dependable, never again would clash with applications like Preferences or Help Viewer, easily customizable... well, it's quite a new software than before;
- the 'any window edge resize' now uses customizable modifiers to prevent a resize when you just want to click near to the window edge;
- tearoff menus completely redesigned for much easier access and better user experience;
- the 'move window back' feature changed not to clash with Command-moving anymore;
- new features, like the possibility to disable Hacks completely, or the possibility to mark URLs in TextEdit and other similar applications, or the possibility to save into HTML from TextEdit...
- there is new, user-friendly Preferences Panel;
- new documentation and new Help panel;
- Hacks are now fully localizable;
- To exploit some new functionality, OCSmart Hacks are Panther-only.
And much much more: see the documentation for details.
OCSmart Hacks α.5
The Mail quick hack removed–it never worked well.
OCSmart Hacks α.4
Unfinished yet...
- some annoying logs removed;
- added OCSDefaultTornOffMenuPosition;
- the Hacks Info Panel should now remember its size and position (application-wise);
- generated complete Tearoff menu–much easier tearing;
- tornoffs saved by name rather than by position...
- ...which allowed sensible OCSDefaultTornOffMenuList and OCSDefaultTornOffMenuPosition for global domain
OCSmart Hacks α.3
Just the Mail quick hack not to zero DisableHostLookup.
OCSmart Hacks α.2
Still not as good as to be called a beta, sorry... but some progress there might be, perhaps.
- the most grave bug of α.1, which caused application crash when a window was resized using the bottom right corner too close to the window edge fixed;
- the minimum and maximum window sizes are taken into account;
- some (not all, yet) services made configurable through defaults, see Readme;
- a preliminary support for ProjectBuilder HTML size added;
- fixed (a bit) the placement of tornoff main menu;
- possible to Cmd-drag window without backgrounding, though a weird way;
OCSmart Hacks α.1
Not much better, actually ;)
- there might be a less number of memory leaks, perhaps;
- the torn-out menus displayed when app starts are (hopefully) drawn properly now;
- it is now possible to resize window using any edge.
OCSmart Hacks α.0
First release. Does just MARGINALLY work, many problems, many errors!
Features:
- disables automatic creation of a new document whenever application goes foreground;
- supports Cmd-click title to send a window back, Cmd-rightclick title to bring it to front, without changing active application or main/active window;
- supports tear-off menus (REALLY an alpha-level code!)
Special thanks to Mike Ferris, whose TextExtras I've used as a first template.